Detectando e propondo melhorias em cenário DevOps de uma empresa de desenvolvimento de software
Abstract
DevOps (Development and Operations) refers to a culture of collaborative software development in which two distinct teams are defined: (i) development team, responsible for creating new functionalities and products; (ii) operation team, responsible for maintenance and adjustments. DevOps automates processes in order to promote deliveries in less time, increase team collaboration, and less cost to solve problems. However, the deployment of the DevOps culture is delicate and complex due to several factors, such as a lack of cooperation among the team, the need to change habits, the implementation of information/knowledge sharing mechanisms, etc. The present study presents a strategy for the detection of critical points for the improvement of DevOps scenarios in companies that are starting with the philosophy. From a survey that was designed and executed in a real scenario of a software development company, this study presents the following contributions: (i) proposal of a generic method to detect problems in DevOps scenarios; and (ii) an empirical validation that may be a reference for similar studies.
References
CATechnologies (2015). Assembling the devops jigsaw. https://www.ca.com/us/modern-software-factory/content/assembling-the-devops-jigsaw.html, Setembro.
Cruz, F. (2015). Scrum e Agile em Projetos: Guia completo. Brasport, Rio de Janeiro.
Davis, J. and Daniels, K. (2016). Effective DevOps: Building a Culture of Collaboration, Affinity, and Tooling at Scale. O’Reilly Media, Inc., Sebastopol.
Freitas, H., Oliveira, M., Saccol, A. Z., and Moscarola, J. (2000). O método de pesquisa survey. Revista de Administração da Universidade de S˜ao Paulo, 35(3):105–112.
Jabbari, R., bin Ali, N., Petersen, K., and Tanveer, B. (2016). What is devops?: A systematic mapping study on definitions and practices. In Proceedings of the Scientific Workshop Proceedings of XP2016 (XP 2016), pages 1–11, New York. ACM.
Kamuto, M. B. and Langerman, J. J. (2017). Factors inhibiting the adoption of devops in large organisations: South african context. In Proceedings of the 2nd International Conference on Recent Trends in Electronics, Information Communication Technology (RTEICT 2017), pages 48–51, Bangalore. IEEE.
Kim, G., Debois, P., Willis, J., and Humble, J. (2016). The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations. IT Revolution Press, Portland.
Machado, P. H. A. (2017). Redução de desperdícios no desenvolvimento de software de grande porte por meio de ferramentas lean. Dissertação (mestrado em engenharia de produção e sistemas), Universidade Tecnológica Federal do Paraná, Pato Branco. Pressman, R. (2010). Engenharia de Software: Uma abordagem profissional. McGraw-Hill Education, New York, 7th edition.
Puppet (2017). 2017 state of devops report. https://puppet.com/resources/whitepaper/2017-state-of-devops-report, Setembro.
Samarawickrama, S. S. and Perera, I. (2017). Continuous scrum: A framework to enhance scrum with devops. In Proceedings of the 17th International Conference on Advances in ICT for Emerging Regions (ICTer), pages 19–15, Colombo. IEEE.
Sato, D. (2017). DevOps na prática - entrega de software confiável e automatizada. Casa do Código, S˜ao Paulo.
Serrador, P. and Pinto, J. (2015). Does agile work? — a quantitative analysis of agile project success. International Journal of Project Management, 33(5):1040–1051.
Society, I. C., Bourque, P., and Fairley, R. E. (2014). Guide to the Software Engineering Body of Knowledge (SWEBOK(R)): Version 3.0. IEEE Computer Society Press, Los Alamitos, CA, USA, 3rd edition.
Sommerville, I. (2010). Software Engineering. Addison-Wesley Publishing Company, USA, 9th edition.
Vadapalli, S. (2017). Hands-on DevOps: Explore the concept of continuous delivery and integrate it with data science concepts. Packt Publishing, Birmingham.
Vasanthapriyan, S., Tian, J., and Xiang, J. (2015). A survey on knowledge management in software engineering. In Proceedings of the International Conference on Software
Quality, Reliability and Security (QRS 2015), pages 237–244,Washington. IEEE Computer Society.
Wettinger, J., Andrikopoulos, V., and Leymann, F. (2015). Automated capturing and systematic usage of devops knowledge for cloud applications. In Proceedings of the 3rd International Conference on Cloud Engineering (IC2E 2015), pages 60–65, Tempe. IEEE Computer Society.
Wohlin, C., Runeson, P., H¨ost, M., Ohlsson, M. C., Regnell, B., and Wesslén, A. (2012). Experimentation in Software Engineering. Springer, New York.
