Abstract
Artificial intelligence through machine learning is increasingly used in the digital society. Solutions based on machine learning bring both great opportunities, thus coined “Software 2.0,” but also great challenges for the engineering community to tackle. Due to the experimental approach used by data scientists when developing machine learning models, agility is an essential characteristic. In this keynote address, we discuss two contemporary development phenomena that are fundamental in machine learning development, i.e., notebook interfaces and MLOps. First, we present a solution that can remedy some of the intrinsic weaknesses of working in notebooks by supporting easy transitions to integrated development environments. Second, we propose reinforced engineering of AI systems by introducing metaphorical buttresses and rebars in the MLOps context. Machine learning-based solutions are dynamic in nature, and we argue that reinforced continuous engineering is required to quality assure the trustworthy AI systems of tomorrow.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Giray, G.: A software engineering perspective on engineering machine learning systems: state of the art and challenges. J. Syst. Softw. 180, 111031 (2021)
Ebert, C., Gallardo, G., Hernantes, J., Serrano, N.: DevOps. IEEE Softw. 33(3), 94–100 (2016)
Diebold, P., Theobald, S.: How is agile development currently being used in regulated embedded domains? J. Softw. Evol. Process 30(8), e1935 (2018)
Hanssen, G.K., Stålhane, T., Myklebust, T.: SafeScrum®-Agile Development of Safety-Critical Software. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99334-8
Kim, M., Zimmermann, T., DeLine, R., Begel, A.: The emerging role of data scientists on software development teams. In: Proceedings of the 38th International Conference on Software Engineering, pp. 96–107 (2016)
Sletholt, M.T., Hannay, J.E., Pfahl, D., Langtangen, H.P.: What do we know about scientific software development’s agile practices? Comput. Sci. Eng. 14(2), 24–37 (2011)
Sculley, D., et al.: Hidden technical debt in machine learning systems. In: Proceedings of the 28th International Conference on Neural Information Processing Systems, pp. 2503–2511 (2015)
Amershi, S., et al.: Software engineering for machine learning: a case study. In: Proceedings of the 41st International Conference on Software Engineering, pp. 291–300 (2019)
Wan, Z., Xia, X., Lo, D., Murphy, G.C.: How does machine learning change software development practices? IEEE Trans. Software Eng. 47(9), 1857–1871 (2021)
Vogelsang, A., Borg, M.: Requirements engineering for machine learning: perspectives from data scientists. In: Proceedings of the 27th International Requirements Engineering Conference Workshops, pp. 245–251 (2019)
Chattopadhyay, S., Prasad, I., Henley, A.Z., Sarma, A., Barik, T.: What’s wrong with computational notebooks? Pain points, needs, and design opportunities. In: Human Factors in Computing Systems, pp. 1–12 (2020)
Jakobsson, M., Henriksson, J.: Sharing local files with Kubernetes clusters. MSc thesis, Lund University (2021). http://lup.lub.lu.se/student-papers/record/9066685/file/9066686.pdf
Knuth, D.E.: Literate programming. Comput. J. 27(2), 97–111 (1984)
Knuth, D.E.: Literate Programming. Center for the Study of Language and Information, Stanford, US (1992)
Hannay, J.E., MacLeod, C., Singer, J., Langtangen, H.P., Pfahl, D., Wilson, G.: How do scientists develop and use scientific software? In: Proceedings of the ICSE Workshop on Software Engineering for Computational Science and Engineering, pp. 1–8. IEEE (2009)
Vognstrup Fog, B., Nylandsted Klokmose, C.: Mapping the landscape of literate computing. In: Proceedings of the 30th Annual Workshop of the Psychology of Programming Interest Group (2019)
Kery, M.B., John, B.E., O’Flaherty, P., Horvath, A., Myers, B.A.: Towards effective foraging by data scientists to find past analysis choices. In: Human Factors in Computing Systems, pp. 1–13 (2019)
Kery, M.B., Myers, B.A.: Interactions for untangling messy history in a computational notebook. In: Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing, pp. 147–155 (2018)
Head, A., Hohman, F., Barik, T., Drucker, S.M., DeLine, R.: Managing messes in computational notebooks. In: Human Factors in Computing Systems, pp. 1–12 (2019)
Singer, J.: Notes on notebooks: is Jupyter the bringer of jollity? In: Proceedings of the ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software, pp. 180–186 (2020)
Nielsen, J.: Usability Engineering. Morgan Kaufmann Publishers, Burlington (1993)
Kuusela, H., Paul, P.: A comparison of concurrent and retrospective verbal protocol analysis. Am. J. Psychol. 113(3), 387–404 (2000)
Bosch, J., Holmström Olsson, H., Crnkovic, I.: Engineering AI systems: a research agenda. In: Artificial Intelligence Paradigms for Smart Cyber-Physical Systems, pp. 1–19. IGI Global (2021)
Tapia, P., Palacios, E., Noël, L., et al.: Implementing Operational AI in telecom environments. Tupl White Paper 7 (2018)
Fitzgerald, B., Stol, K.J.: Continuous software engineering: a roadmap and agenda. J. Syst. Softw. 123, 176–189 (2017)
Jabbari, R., Ali, N., Petersen, K., Tanveer, B.: Towards a benefits dependency network for DevOps based on a systematic literature review. J. Softw. Evol. Process 30(11), e1957 (2018)
Treveil, M., et al.: Introducing MLOps. O’Reilly Media Inc., Sebastopol (2020)
Hummer, W., et al.: ModelOps: cloud-based lifecycle management for reliable and trusted AI. In: Proceedings of the International Conference on Cloud Engineering, pp. 113–120 (2019)
Borg, M., et al.: Safely entering the deep: a review of verification and validation for machine learning and a challenge elicitation in the automotive industry. J. Automot. Softw. Eng. 1(1), 1–19 (2019)
Falcini, F., Lami, G., Costanza, A.M.: Deep learning in automotive software. IEEE Softw. 34(3), 56–63 (2017)
Jiang, F., et al.: Artificial intelligence in healthcare: past, present and future. Stroke Vasc. Neurol. 2(4), 230–243 (2017)
Vidot, G., Gabreau, C., Ober, I., Ober, I.: Certification of embedded systems based on machine learning: a survey. arXiv preprint arXiv:2106.07221 (2021)
High-Level Expert Group on Artificial Intelligence: Ethics guidelines for trustworthy artificial intelligence. Technical report, European Commission, Brussels, Belgium (2019)
Borg, M., Englund, C., Duran, B.: Traceability and deep learning-safety-critical systems with traces ending in deep neural networks. In: Proceedings of the Grand Challenges of Traceability: The Next Ten Years, pp. 48–49 (2017)
Gilpin, L.H., Bau, D., Yuan, B.Z., Bajwa, A., Specter, M., Kagal, L.: Explaining explanations: an overview of interpretability of machine learning. In: Proceedings of the 5th International Conference on Data Science and Advanced Analytics, pp. 80–89 (2018)
European Commission: Proposal for a Regulation of the European Parliament and of the Council laying down harmonised rules on artificial intelligence (Artificial Intelligence Act) and amending certain union legislative acts, 21 April 2021. https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX
European Commission: Regulation (EU) 2016/679 of the European Parliament and of the Council on the protection of natural persons with regard to the processing of personal data and on the free movement of such data, and repealing Directive 95/46/ec (General Data Protection Regulation). Off. J. Eur. Union 119, 1–88 (2016)
Borg, M., Jabangwe, R., Åberg, S., Ekblom, A., Hedlund, L., Lidfeldt, A.: Test automation with Grad-CAM heatmaps - a future pipe segment in MLOps for vision AI? In: Proceedings of the 14th International Conference on Software Testing, Verification and Validation Workshops, pp. 175–181 (2021)
D’Amour, A., et al.: Underspecification presents challenges for credibility in modern machine learning. arXiv preprint arXiv:2011.03395 (2020)
Ahmad, K., Bano, M., Abdelrazek, M., Arora, C., Grundy, J.: What’s up with requirements engineering for artificial intelligence systems? In: Proceedings of the 29th International Requirements Engineering Conference, pp. 1–12 (2021)
Habibullah, K.M., Horkoff, J.: Non-functional requirements for machine learning: understanding current use and challenges in industry. In: Proceedings of the 29th International Requirements Engineering Conference, pp. 13–23 (2021)
Siebert, J., et al.: Construction of a quality model for machine learning systems. Softw. Qual. J., 1–29 (2021)
Zhang, J.M., Harman, M., Ma, L., Liu, Y.: Machine learning testing: survey, landscapes and horizons. IEEE Trans. Softw. Eng. (2020)
Riccio, V., Jahangirova, G., Stocco, A., Humbatova, N., Weiss, M., Tonella, P.: Testing machine learning based systems: a systematic mapping. Empir. Softw. Eng. 25(6), 5193–5254 (2020)
Xiang, W., et al.: Verification for machine learning, autonomy, and neural networks survey. arXiv preprint arXiv:1810.01989 (2018)
Bjarnason, E., et al.: Challenges and practices in aligning requirements with verification and validation: a case study of six companies. Empir. Softw. Eng. 19(6), 1809–1855 (2014)
Bjarnason, E.: Integrated Requirements Engineering - Understanding and Bridging Gaps in Software Development. Lund University, Sweden (2013). https://lucris.lub.lu.se/ws/portalfiles/portal/3427902/4117182.pdf
Cleland-Huang, J., Marrero, W., Berenbach, B.: Goal-centric traceability: using virtual plumblines to maintain critical systemic qualities. IEEE Trans. Software Eng. 34(5), 685–699 (2008)
Acknowledgements
Martin Jakobsson and Johan Henriksson are the co-creators of the solution presented in Sect. 2 and deserve all credit for this work. Our thanks go to Backtick Technologies for hosting the MSc thesis project and Dr. Niklas Fors, Dept. of Computer Science, Lund University for acting as the examiner. This initiative received financial support through the AIQ Meta-Testbed project funded by Kompetensfonden at Campus Helsingborg, Lund University, Sweden and two internal RISE initiatives, i.e., “SODA - Software & Data Intensive Applications” and “MLOps by RISE.”
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 Springer Nature Switzerland AG
About this paper
Cite this paper
Borg, M. (2022). Agility in Software 2.0 – Notebook Interfaces and MLOps with Buttresses and Rebars. In: Przybyłek, A., Jarzębowicz, A., Luković, I., Ng, Y.Y. (eds) Lean and Agile Software Development. LASD 2022. Lecture Notes in Business Information Processing, vol 438. Springer, Cham. https://doi.org/10.1007/978-3-030-94238-0_1
Download citation
DOI: https://doi.org/10.1007/978-3-030-94238-0_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-94237-3
Online ISBN: 978-3-030-94238-0
eBook Packages: Computer ScienceComputer Science (R0)