Hostname: page-component-77c89778f8-m8s7h Total loading time: 0 Render date: 2024-07-18T22:19:17.119Z Has data issue: false hasContentIssue false

DESIGN METHODS FOR DIAGNOSING AND LOCATING ENTANGLED TECHNICAL DEBT IN DEVOPS FRAMEWORKS

Published online by Cambridge University Press:  19 June 2023

Jose Bonet Faus*
Affiliation:
Mines de Paris;
Pascal Le Masson
Affiliation:
Mines de Paris;
Ugo Pelissier
Affiliation:
Mines de Paris;
Nafissa Jibet
Affiliation:
Mines de Paris;
Antoine Bordas
Affiliation:
Mines de Paris;
Sebastien Pajot
Affiliation:
Ubisoft
*
Bonet Faus, Jose, Ubisoft, France, pbonetfaus@gmail.com

Abstract

Core share and HTML view are not available for this content. However, as you have access to this content, a full PDF is available via the ‘Save PDF’ action button.

In the IT landscape, DevOps is the preferred approach for developing and maintaining rapidly evolving systems that require continuous improvements. Yet, DevOps frameworks do not entirely prevent the accumulation of Technical Debt (TD), and under certain circumstances DevOps can even contribute to generating TD. This paper focuses on a specific type of TD, Entangled Technical Debt (ETD), that corresponds to the implicit complexification of a system's design and the appearance of unintentional couplings in its architecture over time. Our work seeks to inform methods for Diagnosing and Locating ETD in DevOps frameworks. Through a research partnership with Ubisoft's IT branch, an experimental case-study was conducted. It takes the form of an assessment of 6 innovative IT projects and a subsequent in-depth architecture analysis of an individual IT system, which enabled the characterization of the mechanisms linking DevOps to ETD. This allowed us to develop and test practical methods for diagnosing and locating ETD in IT systems.

Type
Article
Creative Commons
Creative Common License - CCCreative Common License - BYCreative Common License - NCCreative Common License - ND
This is an Open Access article, distributed under the terms of the Creative Commons Attribution-NonCommercial-NoDerivatives licence (http://creativecommons.org/licenses/by-nc-nd/4.0/), which permits non-commercial re-use, distribution, and reproduction in any medium, provided the original work is unaltered and is properly cited. The written permission of Cambridge University Press must be obtained for commercial re-use or in order to create a derivative work.
Copyright
The Author(s), 2023. Published by Cambridge University Press

References

Baldwin, C.Y., Woodard, C.J. et al. (2009), “The architecture of platforms: A unified view”, Platforms, markets and innovation, Vol. 32, pp. 1944, http://doi.org/10.4337/9781849803311.Google Scholar
Beck, K., Beedle, M., Van Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., Grenning, J., Highsmith, J., Hunt, A., Jeffries, R. et al. (2001), “Manifesto for agile software development”, Available at: http://agilemanifesto.org/.Google Scholar
Benet, J. (2014), “Ipfs-content addressed, versioned, p2p file system”, arXivpreprint arXiv:1407.3561, http://doi.org/10.48550/arXiv.1407.3561.CrossRefGoogle Scholar
Browning, T.R. (2001), “Applying the design structure matrix to system decomposition and integration problems: a review and new directions”, IEEE Transactions on Engineering management, Vol. 48 No. 3, pp. 292306, http://doi.org/10.1109/17.946528.CrossRefGoogle Scholar
Clark, K.B. and Baldwin, C.Y. (2005), “Designs and design architecture: The missing link between'knowledge'and the'economy”‘, http://doi.org/10.2139/ssrn.664043.CrossRefGoogle Scholar
Clarkson, P.J., Simons, C. and Eckert, C. (2004), “Predicting change propagation in complex design”, J. Mech. Des., Vol. 126 No. 5, pp. 788797, http://doi.org/10.1115/L1765117.CrossRefGoogle Scholar
Colomo-Palacios, R. et al. (2020), “Continuous practices and technical debt: a systematic literature review”, in: 2020 20th International Conference on Computational Science and Its Applications (ICCSA), IEEE, pp. 4044, http://doi.org/10.1109/iccsa50381.2020.00018.Google Scholar
Cunningham, W. (1992), “The wycash portfolio management system”, ACM SIGPLAN OOPS Messenger, Vol. 4 No. 2, pp. 2930, http://doi.org/10.1145/157710.157715.CrossRefGoogle Scholar
D'Amelio, V., Chmarra, M.K. and Tomiyama, T. (2011), “Early design interference detection based on qualitative physics”, Research in Engineering Design, Vol. 22, pp. 223243, http://doi.org/10.1007/s00163-011-0108-7.CrossRefGoogle Scholar
Dong, A., Sarkar, S., Moullec, M.L. and Jankovic, M. (2016), “Eigenvector rotation as an estimation of architectural change”, in: International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, Vol. 50190, American Society of Mechanical Engineers, p. V007T06A014, http://doi.org/10.1115/detc2016-59114.CrossRefGoogle Scholar
Fowler, M. (2009), “Technical debt quadrant”, Martin Fowler, pp. 14-0.Google Scholar
James, D., Sinha, K. and de Weck, O. (2011), “Technology insertion in turbofan engine and assessment of architectural complexity”, in: DSM2011: Proceedings of the 13th International DSM Conference.Google Scholar
Li, Z., Avgeriou, P. and Liang, P. (2015), “A systematic mapping study on technical debt and its management”, Journal of Systems and Software, Vol. 101, pp. 193220, http://doi.org/10.1016/jjss.2014.12.027.CrossRefGoogle Scholar
Liodden, D. (2020), “3 main types of technical debt and how to manage them”, in: annual CTO summit, FirstMark.Google Scholar
Martini, A., Bosch, J. and Chaudron, M. (2014), “Architecture technical debt: Understanding causes and a qualitative model”, in: 2014 40th EUROMICRO Conference on Software Engineering and Advanced Applications, IEEE, pp. 8592, http://doi.org/10.1109/seaa.2014.65.CrossRefGoogle Scholar
McConnell, S. (2007), “Technical debt”, Software Best Practices, Nov.Google Scholar
Ohno, T. (2019), Toyota production system: beyond large-scale production, Productivity press, http://doi.org/10.4324/9780429273018.CrossRefGoogle Scholar
Rahman, A., Mahdavi-Hezaveh, R. and Williams, L. (2019), “A systematic mapping study of infrastructure as code research”, Information and Software Technology, Vol. 108, pp. 6577, http://doi.org/10.1016/j.infsof.2018.12.004.CrossRefGoogle Scholar
Sarica, S. and Luo, J. (2019), “An infinite regress model of design change propagation in complex systems”, IEEE systems journal, Vol. 13 No. 4, pp. 36103618, http://doi.org/10.1109/jsyst.2019.2899988.CrossRefGoogle Scholar
Shahin, M., Babar, M.A. and Zhu, L. (2017), “Continuous integration, delivery and deployment: a systematic review on approaches, tools, challenges and practices”, IEEE Access, Vol. 5, pp. 39093943, http://doi.org/10.1109/ACCESS.2017.2685629.CrossRefGoogle Scholar
Suh, N.P. and Suh, N.P. (2001), Axiomatic design: advances and applications, Vol. 4, Oxford university press New York.Google Scholar
Suh, N.P. and Suh, P.N. (1990), The principles of design, 6, Oxford University Press on Demand.Google Scholar
Zhu, L., Bass, L. and Champlin-Scharff, G. (2016), “Devops and its practices”, IEEE Software, Vol. 33 No. 3, pp. 3234, http://doi.org/10.1109/ms.2016.81.CrossRefGoogle Scholar