Abstract
Continuous Delivery (CD) and, in general, Continuous Software Engineering (CSE) is becoming the norm. Still, current practices and available integration platforms are too code-oriented. They are not well adapted to work with other, non text-based, software artifacts typically produced during early phases of the software engineering life-cycle. This is especially problematic for teams adopting a Model-Driven Engineering (MDE) approach to software development where several (meta)models (and model transformations) are built and executed as part of the development process. Typically, (part of) the code is automatically generated from such models. Therefore, in a complete CD process, changes in a model should trigger changes on the generated code when appropriate.
A step further would be to apply CD practices to the development of modeling artefacts themselves. Analogously to “traditional” CD, where the goal is to have the mainline codebase always in a deployable state, the aim would be to have the modeling infrastructure always ready to be used. Those models could be the final product themselves or an intermediate artifact in a complete CSE process as described above.
Either way, a tighter integration between CD and MDE would benefit software practitioners by providing them with complete CSE, covering also analysis and design stages of the process.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
https://github.com/jokingarcia/ContinuousEvolution. Accessed 9 July 2018
Ambler, S.W.: Agile software development. In: Encyclopedia of Software Engineering, pp. 29–46. Taylor & Francis (2010)
Artač, M., Borovšak, T., Di Nitto, E., Guerriero, M., Tamburri, D.A.: Model-driven continuous deployment for quality DevOps. In: Proceedings of the 2nd International Workshop on Quality-Aware DevOps (2016)
Beck, K., et al.: Manifesto for Agile Software Development (2001)
Brambilla, M., Cabot, J., Wimmer, M.: Model-Driven Software Engineering in Practice. Morgan & Claypool Publishers (2012)
Brambilla, M., Fraternali, P.: Interaction Flow Modeling Language. Morgan Kaufmann, Burlington (2015)
Brosch, P., et al.: Adaptable model versioning in action. In: Modellierung (2010)
Demuth, A., Riedl-Ehrenleitner, M., Lopez-Herrejon, R.E., Egyed, A.: Co-evolution of metamodels and models through consistent change propagation. J. Syst. Softw. 111, 281–297 (2016)
Di Ruscio, D., Lämmel, R., Pierantonio, A.: Automated co-evolution of GMF editor models. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 143–162. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-19440-5_9
Ferry, N., Solberg, A.: Models@Runtime for continuous design and deployment. In: Di Nitto, E., Matthews, P., Petcu, D., Solberg, A. (eds.) Model-Driven Development and Operation of Multi-Cloud Applications. SAST, pp. 81–94. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-46031-4_9
Fitzgerald, B., Stol, K.-J.: Continuous software engineering: a roadmap and agenda. J. Syst. Softw. 123, 1–14 (2015)
García, J., Diaz, O., Azanza, M.: Model transformation co-evolution: a semi-automatic approach. In: Czarnecki, K., Hedin, G. (eds.) SLE 2012. LNCS, vol. 7745, pp. 144–163. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-36089-3_9
García-Díaz, V., Espada, J.P., Núñez-Valdéz, E.R., García-Bustelo, B.C.P., Cueva Lovelle, J.M.: Combining the continuous integration practice and the model-driven engineering approach. Comput. Inf. 35, 299–337 (2016)
Holmes, T., Zdun, U., Dustdar, S.: MORSE: a model-aware service environment. In: 4th IEEE Asia-Pacific Services Computing Conference (2009)
Humble, J., Farley, D.: Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Pearson Education, London (2010)
Koegel, M., Helming, J.: EMFStore: a model repository for EMF models. In: International Conference on Software Engineering (2010)
Kolovos, D.S., Paige, R.F., Polack, F.A.C.: Merging models with the epsilon merging language (EML). In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MODELS 2006. LNCS, vol. 4199, pp. 215–229. Springer, Heidelberg (2006). https://doi.org/10.1007/11880240_16
Kolovos, D.S., Paige, R.F., Polack, F.A.C.: A framework for composing modular and interoperable model management tasks. In: MDTPI Workshop (2008)
Paige, R.F., Matragkas, N., Rose, L.M.: Evolving models in model-driven engineering: state-of-the-art and future challenges. J. Syst. Softw. 111, 272–280 (2016)
Sandobalin, J., Insfrán, E., Abrahão, S.: An infrastructure modelling tool for cloud provisioning. In: International Conference on Services Computing, pp. 354–361 (2017)
Toulmé, A.: Presentation of EMF compare utility. In: Eclipse Modeling Symposium (2006)
Whittle, J., Hutchinson, J., Rouncefield, M.: The state of practice in model-driven engineering. IEEE Softw. 31, 79–85 (2014)
Whittle, J., Hutchinson, J., Rouncefield, M., Burden, H., Heldal, R.: Industrial adoption of model-driven engineering: are the tools really the problem? In: Moreira, A., Schätz, B., Gray, J., Vallecillo, A., Clarke, P. (eds.) MODELS 2013. LNCS, vol. 8107, pp. 1–17. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-41533-3_1
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Garcia, J., Cabot, J. (2019). Stepwise Adoption of Continuous Delivery in Model-Driven Engineering. In: Bruel, JM., Mazzara, M., Meyer, B. (eds) Software Engineering Aspects of Continuous Development and New Paradigms of Software Production and Deployment. DEVOPS 2018. Lecture Notes in Computer Science(), vol 11350. Springer, Cham. https://doi.org/10.1007/978-3-030-06019-0_2
Download citation
DOI: https://doi.org/10.1007/978-3-030-06019-0_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-06018-3
Online ISBN: 978-3-030-06019-0
eBook Packages: Computer ScienceComputer Science (R0)