Pipeline de testes automatizados para integração e entrega cont´ınua de software B2B em desenvolvimento Agile

Data
2019-12-19
Título da revista
ISSN da revista
Título do Volume
Editora
Projetos de investigação
Unidades organizacionais
Fascículo
Resumo
No desenvolvimento de software de acordo com a metodologia Agile, a satisfação do cliente é a principal prioridade. Assim sendo, a entrega contínua de software funcional, compatível com os requisitos e em formatos confiáveis, é o que caracteriza esta técnica de gestão de projetos. Uma vez que os objetivos da garantia de qualidade vão de encontro aos pressupostos dos princípios do manifesto Agile, a implementação de uma pipeline de integração e entrega contínua pode ser uma das soluções para dar resposta às necessidade de adaptação a constantes mudanças sentidas pelas empresas. Nos casos em que este tipo de práticas são comuns verifica-se efetivamente um aumento da resiliência. A existência de uma pipeline de entrega contínua é bastante benéfica na medida em que permite possuir um ecossistema de apoio ao desenvolvimento, com um sistema de controlo de versões, um orquestrador de processos que, por sua vez, vai coordenar uma ferramenta de integração contínua que realiza análise estática, testes unitários e testes de integração. Posteriormente, um sistema de transição estados, atualiza as fases dos projetos de development para staging, pre-live e live. Todas estas ferramentas e automatizações têm como principais objetivos o suporte no desenvolvimento de software com qualidade, a otimização do tempo de desenvolvimento e, sempre que acontecem problemas, o apoio na tomada de decisão para aumentar a celeridade da resposta.
In software development according to the Agile philosophy, consumer satisfaction is the priority. Therefore, the continuous delivery of functional software, compliant with the requirements in reliable formats, supports this technique of project management. Once the focus of quality assurance meets the assumptions of the principles of the Agile manifesto, implementing a pipeline of continuous integration and continuous delivery is one of the possible solutions to answer the needs felt by the organizations to constantly adapt to market changes. In most of the cases, these practices are verified to improve resilience. The existence of a continuous delivery pipeline brings much benefit since it supports the existence of an ecosystem with a version control system, a process orchestrator that coordinates a continuous integration tool that performs static analyzes, unit tests and integration tests. In another stage, a state transition system updates the phases of the projects from the testing phase, to staging, pre-live and live. All these tools and automations combined have the purpose of supporting high quality software development, the optimization of the development process and, whenever problems occur, support decision makers to improve their response.
Descrição
Relatório de estágio submetido à UNIVERSIDADE DE TRAS-OS-MONTES E ALTO DOURO ´ para obtenção do grau de MESTRE em Engenharia Informática
Palavras-chave
Quality assurance , Integração contínua
Citação