Publicação
Automatização do processo de deployment
| datacite.subject.fos | Engenharia e Tecnologia | |
| datacite.subject.sdg | 09:Indústria, Inovação e Infraestruturas | |
| dc.contributor.advisor | Carvalho, Piedade Barros Lopez | |
| dc.contributor.author | RODRIGUES, RÚBEN ALEX FERREIRA | |
| dc.date.accessioned | 2025-10-01T13:23:06Z | |
| dc.date.available | 2025-10-01T13:23:06Z | |
| dc.date.issued | 2025-07-25 | |
| dc.description.abstract | Num contexto organizacional cada vez mais exigente, a automatização do processo de deployment tornou-se uma componente crítica na melhoria da eficiência, fiabilidade e previsibilidade dos ciclos de entrega de software. Esta dissertação teve como objetivo conceber, desenvolver e validar uma solução de automatização do processo de deployment, adaptada à realidade de uma organização tecnológica de grande escala, com múltiplas equipas, ambientes e restrições operacionais. A investigação seguiu a metodologia Design Science Research (DSR), articulando uma fase de diagnóstico com iterações de conceção, implementação e validação. O trabalho inicia-se com uma revisão do estado da arte, abordando práticas consolidadas em DevOps e CI/CD, como testes de sanidade automatizados, rollbacks condicionais, monitorização contínua e reporting automático. São também analisadas ferramentas como Jenkins, GoCD, Splunk, Sensu e Grafana, avaliando a sua aplicabilidade no contexto da pipeline da organização. A solução proposta materializou-se no desenvolvimento de uma aplicação autónoma — o Release Assistant — que centraliza e automatiza etapas críticas do deployment, como a gestão de tráfego, validações pós-deployment (sanity checks, métricas, alarmes) e produção de relatórios. A arquitetura modular permite integração com sistemas existentes e reutilização em múltiplos serviços e ambientes. Os resultados demonstram uma redução objetiva no esforço manual e no tempo de execução. Com base em medições, registou-se uma redução média de 15 minutos por execução, equivalente a cerca de 41% da duração dos deployments, refletindo-se diretamente na eficiência operacional. A solução aumentou ainda a fiabilidade das validações, assegurando maior consistência nos testes e deteção precoce de falhas. Em termos de contributo, o trabalho apresenta uma abordagem replicável de automatização de validações integrada em pipelines CI/CD, validada num ambiente de produção real e sustentada por evidência quantitativa e feedback qualitativo. Apesar dos resultados positivos, reconhece-se que a solução depende da estrutura atual das pipelines e da existência de sistemas de monitorização acessíveis por API. A adoção noutros contextos poderá exigir adaptações. Ainda assim, o trabalho demonstra o potencial da automatização como vetor de transformação digital orientado à melhoria contínua dos sistemas e processos operacionais. | por |
| dc.description.abstract | In an increasingly demanding organizational context, deployment automation has become a critical component in improving the efficiency, reliability, and predictability of software delivery cycles. This dissertation aimed to design, develop, and validate a deployment automation solution tailored to the reality of a large-scale technology organization with multiple teams, environments, and operational constraints. The research followed the Design Science Research (DSR) methodology, combining a diagnostic phase with iterative cycles of design, implementation, and validation. The work begins with a state-of-the-art review, covering established DevOps and CI/CD practices such as automated sanity checks, conditional rollbacks, continuous monitoring, and automated reporting. Tools such as Jenkins, GoCD, Splunk, Sensu, and Grafana are analyzed, assessing their applicability within the organization’s pipeline. The proposed solution took the form of a standalone application — the Release Assistant — which centralizes and automates critical deployment stages, including traffic management, post-deployment validations (sanity checks, metrics, alarms), and report generation. Its modular architecture enables seamless integration with existing orchestration systems and reuse across multiple services and environments. The results demonstrate a measurable reduction in manual effort and execution time. Based on recorded measurements, an average reduction of 15 minutes per deployment was achieved — approximately 41% of the total execution time — directly enhancing operational efficiency. Additionally, the solution improved validation reliability by ensuring greater consistency in postdeployment testing and enabling early fault detection. As a contribution, this work presents a replicable approach to automating validation processes within CI/CD pipelines, validated in a real production environment and supported by quantitative evidence and qualitative feedback from technical users. Despite the positive results, the solution has limitations. Its effectiveness depends on the current pipeline structure and the availability of monitoring systems with accessible APIs. Adoption in other contexts may require architectural or integration model adaptations. Nonetheless, the project demonstrates the potential of automation as a driver of digita | eng |
| dc.identifier.tid | 204007143 | |
| dc.identifier.uri | http://hdl.handle.net/10400.22/30522 | |
| dc.language.iso | por | |
| dc.rights.uri | N/A | |
| dc.subject | DEvOps | |
| dc.subject | CI/CD | |
| dc.subject | Automatização | |
| dc.subject | Deployment | |
| dc.subject | Sanity checks | |
| dc.subject | Monitorização | |
| dc.subject | Orquestração | |
| dc.subject | Observabilidade | |
| dc.subject | Automation | |
| dc.subject | Monitoring | |
| dc.subject | Orchestration | |
| dc.subject | Observability | |
| dc.title | Automatização do processo de deployment | por |
| dc.title.alternative | Automation of the deployment process | eng |
| dc.type | master thesis | |
| dspace.entity.type | Publication | |
| thesis.degree.name | Mestrado em Engenharia Informática |
