• Nenhum resultado encontrado

2 DESENVOLVIMENTO DA FUNDAMENTAÇÃO BIBLIOGRÁFICA

3.2 O PROCESSO DE SOFTWARE DA INSTITUIÇÃO PÚBLICA TRT12

3.2.2 Ciclo de vida do Processo

A seguir serão detalhadas as fases do processo de desenvolvimento, onde a execução de todas elas corresponde a uma iteração completa, que poderá ser executada por diversas vezes até a conclusão do projeto.

A principal adaptação no processo é onde foram explicitamente separadas as fases de Homologação e Implantação, conforme ilustração abaixo.

Figura 16 - Fases do processo de desenvolvimento da instituição pública TRT12

(Fonte: Elaboração do autor, 2014)

A definição do modelo de ciclo de vida de processo, que dará as instruções de como as atividades serão realizadas e servirá como um guia para a execução do processo de desenvolvimento, deve ser feita conforme o projeto, o perfil da equipe e o perfil da equipe de negócio. Além disso, a adoção de um modelo também deve considerar as características da

organização e as ações que melhores se adaptam para solucionar o problema em questão, entretanto, em sua totalidade, o modelo clássico em cascata é adotado.

Toda a documentação é confeccionada na ferramenta Entreprise Architect (EA), pois assim se mantém a rastreabilidade entre requisitos, as regras de negócio e casos de uso.

A linguagem de programação Java Platform (Enterprise Edition) é a padrão para os sistemas para web desenvolvidos, assim como o uso do framework JCompany, que define uma arquitetura básica para os sistemas.

Como ferramental de apoio ao processo de desenvolvimento o Subversion (SVN) é utilizado como repositório de código fonte. O ambiente de integração contínua é mantido com o auxílio do Jenkins, onde é executado um build completo no sistema após cada commit no SVN e erros são acusados a qualquer falha de construção ou nos testes unitários. O gerenciamento dos

bugs e melhorias dos sistemas é feito cadastrando tíquetes na ferramenta Atlassian Jira, que permite

também o rastreamento dos commits. Para o gerenciamento de casos de teste é utilizada a ferramenta Testlink.

Concepção

A fase de concepção do processo segue o fluxo abaixo, iniciando-se após a aprovação da demanda pelas partes envolvidas (presidência, área interessada e área de TI), seja ela um novo sistema ou melhoria de um sistema existente. Esta é a fase que responde a pergunta “O que queremos e como?”.

• A gerência prepara o documento de visão e um esboço do plano de projeto, com estimativa de cronograma, possíveis riscos e os recursos envolvidos;

• Inicia-se o levantamento de requisitos com entrevistas e discussões com usuários e entre a equipe técnica.

Figura 17 - Fase de Concepção

(Fonte:

Elaboração do autor, 2014)

• Listar e Estimar demandas

Papel responsável: Gerente de Projeto.

Artefatos de entrada: Necessidades dos clientes.

• Aprovar demandas com cliente

Papel responsável: Gerente de Projeto.

Artefatos de entrada: Lista de necessidades com estimativa de esforço e custo. Artefatos de saída: Lista de necessidades aprovadas e priorizadas.

• Planejar versão

Papel responsável: Gerente de Projeto.

Artefatos de entrada: Lista de necessidades aprovadas e priorizadas.

Artefatos de saída: Plano de projeto (Subconjunto de necessidades escolhidas para o ciclo de desenvolvimento (versão), cronograma, recursos necessários).

• Levantar requisitos e casos de uso

Papel responsável: Analista de sistemas.

Artefatos de entrada: Lista de necessidades aprovadas e priorizadas.

Artefatos de saída: Diagramas de casos de uso, requisitos, regras de negócio.

• Realizar contagem por UCP

Papel responsável: Analista de sistemas.

Artefatos de entrada: Diagramas de casos de uso, requisitos, regras de negócio. Artefatos de saída: Planilha de contagem de UCP (pontos por caso de uso).

• Atualizar plano de projeto após levantamento de requisitos Papel responsável: Gerente de projetos.

Artefatos de entrada: Planilha de contagem de UCP (pontos por caso de uso). Artefatos de saída: Cronograma e orçamento do projeto atualizados.

• Aprovar concepção com o cliente

Papel responsável: Gerente de projetos.

Artefatos de entrada: Cronograma do plano de projeto atualizado e planilha de UCP. Artefatos de saída: Lista de casos de uso, requisitos e regras de negócio aprovados e/ou rejeitados, cronograma e custo atualizados.

• Identificar Casos de Teste

Papel responsável: Analista de testes.

Artefatos de entrada: Lista de casos de uso, requisitos e regras de negócio aprovados. Artefatos de saída: Lista de candidatos a casos de teste.

Elaboração

Na fase de elaboração do processo é onde os artefatos gerados na fase de concepção são detalhados e o foco são os riscos técnicos e arquiteturais. Nesta fase aparece o papel da fábrica de software e consigo todas as questões contratuais a serem observadas e seguidas. Por sofrer auditorias, todos os artefatos definidos no contrato devem estar presentes, mesmo que sejam pouco informativos. Esta é a fase que responde a pergunta “Como faremos o que foi solicitado?”.

• Plano de projeto, documento de visão e documento de arquitetura padrão da instituição, contendo os principais componentes, são repassados à fábrica de software;

• Prazo para a entrega da elaboração é definido entre a instituição pública TRT12 e a fábrica de software;

• Fábrica de software analisa a documentação e, após o prazo previamente estabelecido, devolve a documentação da elaboração com o detalhamento de todos os casos de uso com fluxos básico e alternativo, diagramas de sequência para os casos de uso que envolvam regras de negócio adicionais ao padrão estabelecido no framework escolhido, descrição de métodos e seus comportamentos e protótipos refinados de todas as telas do sistema.

• Analistas da instituição pública TRT12 validam a elaboração entregue pela fábrica de software;

• Analistas da instituição pública TRT12 confeccionam e disponibilizam, para análise da fábrica de software, a planilha de pontos de caso de uso de cada iteração que será realizada. Mesmo não dando o aceite em relação à planilha, que poderá ser discutido em reunião específica, inicia-se o processo de construção.

Figura 18 - Fase de Elaboração

Fonte: (Elaboração do autor, 2014)

• Repassar concepção para fábrica Papel responsável: Analista de sistemas.

Artefatos de entrada: Lista de casos de uso, requisitos, regras de negócio aprovados e planilha de UCP.

Artefatos de saída: Abertura da Ordem de Serviço para a Fábrica de Software.

• Planejamento da execução

Papel responsável: Gerente de projetos da fábrica de software. Artefatos de entrada: Planilha de UCP.

Artefatos de saída: Cronograma de construção e elaboração da fábrica de software.

• Atualizar cronograma com informações da fábrica de software Papel responsável: Gerente de projetos.

Artefatos de entrada: Cronograma de construção e elaboração da fábrica de software. Artefatos de saída: Plano de projeto e Cronograma atualizados.

• Elaboração

Papel responsável: Analista de sistemas da fábrica de software.

Artefatos de entrada: Concepção (casos de uso, requisitos e regras de negócio).

Artefatos de saída: Elaboração (casos de uso extendidos, arquitetura, diagramas de sequência, classes).

• Revisar elaboração

Papel responsável: Analista de sistemas.

Artefatos de entrada: Elaboração (casos de uso extendidos, arquitetura, diagramas de sequência, classes).

Artefatos de saída: Documento de aprovação da elaboração.

• Atualizar Plano de Testes

Papel responsável: Analista de testes. Artefatos de entrada: Elaboração aprovada. Artefatos de saída: Casos de teste detalhados.

Construção

A fase de construção do processo é realizada inteiramente na fábrica de software. Ela é iniciada com o repasse do pacote de trabalho, representado na planilha de pontos de caso de uso, da primeira iteração para a fábrica de software.

• O primeiro pacote de trabalho é repassado para a fábrica de software; • Fábrica de software entrega o cronograma previsto para a construção; • Analistas da instituição pública TRT12 finalizam os cenários de teste;

• Fábrica retorna o produto de trabalho que é o código fonte, os testes unitários, a documentação de configuração do sistema e o relatório de teste do Testlink;

• Analistas de teste validam o módulo ou software entregue pela fábrica de software e liberam ou não para a homologação.

Figura 19 – Fase de construção

Fonte: (Elaboração do autor, 2014)

• Construção

Papel responsável: Programador da fábrica de software. Artefatos de entrada: Elaboração aprovada.

Artefatos de saída: Sistema (código fonte, banco de dados, evidências de teste, manuais).

Deploy no Ambiente de Testes

Artefatos de entrada: Sistema.

Artefatos de saída: Ambiente de testes pronto para execução.

• Executar Teste Fumaça

Papel responsável: Analista de Testes.

Artefatos de entrada: Sistema no ambiente de testes e lista de casos de uso. Artefatos de saída: Relatório de log de execução de testes de fumaça.

Fechar release candidate

Papel responsável: Analista de Sistema.

Artefatos de entrada: Relatório de log de execução de testes de fumaça sem incidentes. Artefatos de saída: release do sistema .

• Executar Casos de Testes

Papel responsável: Analista de Teste. Artefatos de entrada: Plano de testes.

Artefatos de saída: Relatório de log de testes.

Fazer análise de impacto dos bugs

Papel responsável: Gerente de projeto.

Artefatos de entrada: Relatório de log de testes e Elaboração.

Artefatos de saída: Relatório de defeitos conhecidos da release candidate.

Planejar nova release candidate

Papel responsável: Gerente de projeto.

Artefatos de entrada: Relatório de defeitos conhecidos da release candidate. Artefatos de saída: Lista de bugs a corrigir e atualização de cronograma.

Liberar bugs para construção

Papel responsável: Analista de sistemas. Artefatos de entrada: Lista de bugs a corrigir.

software.

• Atualizar Planilha UCP (recontagem)

Papel responsável: Gerente de projeto da fábrica de software.

Artefatos de entrada: Sistema (código fonte, banco de dados, evidências de teste, manuais).

Artefatos de saída: Planilha UCP atualizada (com casos de uso e/ou regras de negócio identificados durante a elaboração e construção).

• Revisar Planilha Recontagem UCP

Papel responsável: Analista de sistemas.

Artefatos de entrada: Planilha UCP atualizada pela fábrica de software.

Artefatos de saída: Planilha UCP revisada e consolidada (versão final), Plano de projeto com cronograma e custo atualizado.

• Atualizar Ordem de Serviço

Papel responsável: Gerente de Projetos.

Artefatos de entrada: Ordem de serviço e Planilha UCP final. Artefatos de saída: Ordem de serviço final.

Homologação

A fase de Homologação do processo, que foi personalizada, é executada somente após todas as iterações necessárias das fases anteriores, ou seja, os clientes só verão o produto final do desenvolvimento nesta fase.

Os testes realizados na fase de homologação são executados num ambiente semelhante ao de produção e sinalizam como um aceite, desde que realizados com sucesso, da equipe de negócio em relação ao produto entregue pela fábrica e desde que esteja condizente com os critérios de aceite do contrato firmado com a instituição pública TRT12.

A fase de homologação também compreende a oportunidade de efetuar o treinamento dos usuários multiplicadores.

• Analista de Sistema e Analista de Teste da instituição pública TRT12 efetuam a homologação técnica até que o software possa ser homologado pela equipe de negócio;

• Liberada a homologação, a equipe técnica realiza uma homologação assistida junto da equipe de negócio, que realiza testes livres no sistema, assim como executa testes seguindo um roteiro proposto pela equipe técnica;

• Equipe de negócio avalia a necessidade de correções e melhorias impeditivas, solicitando-as se necessário, e iniciando a construção imediatamente, se verdadeiro;

• Se aceita a versão homologada ou que as melhorias sejam implementadas posteriormente, o sistema é liberado para implantação;

Figura 20 - Fase de homologação

• Planejar Homologação

Papel responsável: Gerente de Projeto.

Artefatos de entrada: Plano de projeto e manual técnico do sistema. Artefatos de saída: Plano de Homologação.

• Preparar Testes de Aceitação

Papel responsável: Analista de Teste.

Artefatos de entrada: Necessidades e requisitos funcionais. Artefatos de saída: Lista de testes de aceitação.

Solicitar deploy em homologação

Papel responsável: Analista de sistema. Artefatos de entrada: Plano de homologação.

Artefatos de saída: Requisição de mudança (atualização do ambiente de homologação).

• Colocar versão em homologação

Papel responsável: Setor de infraestrutura.

Artefatos de entrada: Plano de homologação e requisição de deploy. Artefatos de saída: Sistema em execução no ambiente de homologação.

• Preparar ambiente de homologação

Papel responsável: Setor de infraestrutura.

Artefatos de entrada: Plano de homologação e requisição de deploy.

Artefatos de saída: Ambiente de homologação configurado (servidores, banco de dados, etc).

• Executar Testes de Aceitação

Papel responsável: Analista de Teste.

Artefatos de entrada: Lista de testes de aceitação.

Implantação

A fase de implantação do processo compreende disponibilizar o software no ambiente de produção. É nesta fase também, antes que o sistema entre em produção, que deverá ocorrer o treinamento de usuários, suporte do sistema, registro no Jira para correção de bugs, assim como implementação de melhorias que foram adiadas.

Figura 21 – Fase de implantação

Fonte: (Elaboração do autor, 2014).

• Planejar Treinamento

Papel responsável: Gerente de projeto.

Artefatos de entrada: Plano de projeto, casos de uso e requisitos funcionais. Artefatos de saída: Plano de treinamento.

• Executar treinamento

Papel responsável: Analista de sistema.

Artefatos de entrada: Manual técnico do sistema.

Artefatos de saída: Análise dos requisitos levantados para o desenvolvimento.

Papel responsável: Gerente de Projeto.

Artefatos de entrada: Plano de projeto e manual técnico do sistema. Artefatos de saída: Plano de Implantação.

Solicitar deploy em produção

Papel responsável: Analista de sistema. Artefatos de entrada: Plano de implantação.

Artefatos de saída: Requisição de mudança (atualização do ambiente de produção).

• Preparar ambiente de produção

Papel responsável: Setor de infraestrutura.

Artefatos de entrada: Plano de implantação e requisição de deploy.

Artefatos de saída: Ambiente de produção configurado (servidores, banco de dados, etc).

• Atualizar versão em produção

Papel responsável: Setor de infraestrutura.

Artefatos de entrada: Plano de implantação e requisição de deploy. Artefatos de saída: Sistema em execução no ambiente de produção.

Documentos relacionados