Abstract
Many software companies are adapting their traditional development processes to incorporate agile practices. In this context, it is necessary to count on expert knowledge to evaluate different agile practices and configure them according to project needs. However, this expert knowledge is scarce, difficult to validate, and time-consuming, since it is applied manually. As a solution, the paper presents a model-driven approach, called SIAM, which automatically generates guidelines for the adoption of agile practices through the combination of different development methods. SIAM is supported by a meta-model architecture to implement a knowledge repository that characterizes method configuration decisions, which can be reused in different development projects. SIAM has been implemented in a tool suite that facilitates the specification of models and the identification of issues during the definition of the development processes. The approach has been successfully applied to reconfigure an industrial development process with agile methods, showing that the effort required for tailoring agile practices according to organizational standards is considerably reduced.
Similar content being viewed by others
Notes
[Blind Review Warning. It contains information about authors] The complete report generated by the SIAM Tool can be downloaded from https://doi.org/10.5281/zenodo.5718107. The original report is in Spanish.
[Blind Review Warning. It contains information about authors] The complete report generated by the SIAM report tool can be downloaded from https://doi.org/10.5281/zenodo.5718107. The original report is in Spanish.
[Blind Review Warning. It contains information about authors] The complete model for the Agile Ki Process can be downloaded from https://doi.org/10.5281/zenodo.5267178. The original model is in Spanish.
References
Ågerfalk P, Fitzgerald B (2006) Old petunias in new bowls? Commun ACM 49(10):27
Al-Zewairi M, Biltawi M, Etaiwi W, Shaout A et al (2017) Agile software development methodologies: survey of surveys. J Comput Commun 5(05):74
Atkinson C, Kühne T (2001) Processes and products in a multi-level metamodeling architecture. Int J Softw Eng Knowl Eng 11(06):761–783
Azizyan G, Magarian MK, Kajko-Matsson M (2011) Survey of agile tool usage and needs. In: 2011 Agile conference, IEEE, pp 29–38
Campanelli AS, Parreiras FS (2015) Agile methods tailoring - a systematic literature review. J Syst Softw 110:85–100
Cervone HF (2011) Understanding agile project management methods using scrum. OCLC systems and services: international digital library perspectives. Emerald Group Publishing Limited, Bingley
Cockburn A (2006) Agile software development: the cooperative game. Pearson Education, London
Digitalai (2021) 15th Annual state of agile report. https://stateofagile.com/, Accessed 23 Dec 2021
Dybå T, Dingsøyr T (2008) Empirical studies of agile software development: a systematic review. Inf Softw Technol 50(9–10):833–859
EclipseFoundation (2021) Eclipse modeling tools. https://www.eclipse.org/downloads/packages/release/2021-06/r/eclipse-modeling-toolsl, online. Accessed 23 Dec 2021
Elnagar S, Weistroffer H, Thomas M (2018) Agile requirement engineering maturity framework for industry 4.0. European, mediterranean, and middle eastern conference on information systems. Springer, Heidelberg, pp 405–418
Fonseca CM, Almeida JPA, Guizzardi G, Carvalho VA (2021) Multi-level conceptual modeling: theory, language and application. Data Knowl Eng 134(101):894
Fontana RM, Meyer V Jr, Reinehr S, Malucelli A (2015) Progressive outcomes: a framework for maturing in agile software development. J Syst Softw 102:88–108
Fontana RM, Albuquerque R, Luz R, Moises AC, Malucelli A, Reinehr S (2018) Maturity models for agile software development: what are they? European conference on software process improvement. Springer, Heidelberg, pp 3–14
Fowler M (2001) The new methodology. Wuhan Univ J Nat Sci 6(1):12–24
Franch X, Ralyté J, Perini A, Abelló A, Ameller D, Gorroñogoitia J, Nadal S, Oriol M, Seyff N, Siena A et al (2018) A situational approach for the definition and tailoring of a data-driven software evolution method. In: International conference on advanced information systems engineering. Springer, Heidelberg, pp 603–618
Frank U (2011) Some guidelines for the conception of domain-specific modelling languages. In: Nuttgens M, Thomas O, Weber B (eds) Enterprise modelling and information systems architectures (EMISA 2011). Gesellschaft fur Informatik e.V., Bonn, pp 93–106
Frank U (2019) Specification and management of methods-a case for multi-level modelling. Enterprise, business-process and information systems modeling. Springer, Heidelberg, pp 311–325
García-Borgoñon L, Barcelona MA, García-García JA, Alba M, Escalona MJ (2014) Software process modeling languages: a systematic literature review. Inf Softw Technol 56(2):103–116
Gonzalez-Perez C, Henderson-Sellers B (2007) Modelling software development methodologies: a conceptual foundation. J Syst Softw 80(11):1778–1796
Gonzalez-Perez C, Henderson-Sellers B (2008) A work product pool approach to methodology specification and enactment. J Syst Softw 81(8):1288–1305. https://doi.org/10.1016/j.jss.2007.10.001
Gonzalez-Perez C, Henderson-Sellers B, McBride T, Low GC, Larrucea X (2016) An ontology for ISO software engineering standards: 2 proof of concept and application. Comput Stand Interface 48:112–123
Gren L, Torkar R, Feldt R (2015) The prospects of a quantitative measurement of agility: a validation study on an agile maturity model. J Syst Softw 107:38–49
Heimicke J, Dühr K, Krüger M, Ng GL, Albers A (2021) A framework for generating agile methods for product development. Procedia CIRP 100:786–791
Henderson-Sellers B (2006) Method engineering: theory and practice. In: Information systems technology and its applications, 5th international conference ISTA 2006, Gesellschaft für Informatik eV
Henderson-Sellers B, Ralyté J, Ågerfalk PJ, Rossi M (2014) Situational method engineering. Springer, Heidelberg
Henriques V, Tanner M (2017) A systematic literature review of agile and maturity model research. Interdiscipl J Inf Knowl Manag 12:53–73
International Organization for Standardization (ISO) (2000) ISO 9001:2000 quality management systems-requirements
Jossic A, Del Fabro MD, Lerat JP, Bézivin J, Jouault F (2007) Model integration with model weaving: a case study in system architecture. In: 2007 International conference on systems engineering and modeling, IEEE, pp 79–84
Khalil C, Khalil S (2020) Exploring knowledge management in agile software development organizations. Int Entrep Manag J 16(2):555–569
Kiv S, Heng S, Kolp M, Wautelet Y (2018) Agile manifesto and practices selection for tailoring software development: a systematic literature review. International conference on product-focused software process improvement. Springer, Heidelberg, pp 12–30
Kurapati N, Manyam VSC, Petersen K (2012) Agile software development practice adoption survey. In: International conference on agile software development. Springer, Heidelberg, pp 16–30
Liu S (2010) An approach to applying sofl for agile process and its application in developing a test support tool. Innov Syst Softw Eng 6(1):137–143
Łukasiewicz K, Miler J (2012) Improving agility and discipline of software development with the scrum and CMMI. IET Softw 6(5):416–422
Lycett M, Macredie RD, Patel C, Paul RJ (2003) Migrating agile methods to standardized development practice. Comput 36(6):79–85
Maciel CP, de Souza ÉF, de Almeia Falbo R, Felizardo KR, Vijaykumar NL (2018) Knowledge management diagnostics in software development organizations: a systematic literature review. In: Proceedings of the 17th Brazilian symposium on software quality, pp 141–150
Mahanti A (2006) Challenges in enterprise adoption of agile methods-a survey. J Comput Inf Technol 14(3):197–206
Manesh MF, Pellegrini MM, Marzi G, Dabic M (2020) Knowledge management in the fourth industrial revolution: mapping the literature and scoping future avenues. IEEE Trans Eng Manag 68(1):289–300
Mutafelija B, Stromberg H (2003) Systematic process improvement using ISO 9001: 2000 and CMMI. Artech House, London
OMG (2008) Software and systems process engineering meta-model (SPEM) specification. Version 2
OMG (2011) Business process model and notation (BPMN) specification. Version 2.0
OMG (2017) Unified modeling language (UML) specification. Version 2(5):1
Paulk MC (2001) Extreme programming from a CMM perspective. IEEE Softw 18(6):19–26
Qumer A, Henderson-Sellers B (2008) A framework to support the evaluation, adoption and improvement of agile methods in practice. J Syst Softw 81(11):1899–1919
Rao KN, Naidu GK, Chakka P (2011) A study of the agile software development methods, applicability and implications in industry. Int J Softw Eng Appl 5(2):35–45
Ratiu D, Nordmann A, Munk P, Carlan C, Voelter M (2021) Fasten: an extensible platform to experiment with rigorous modeling of safety-critical systems. Domain-specific languages in practice. Springer, Heidelberg, pp 131–164
Runeson P, Host M, Rainer A, Regnell B (2012) Case study research in software engineering: guidelines and examples. Wiley, Hoboken
Ruy FB, de Almeida Falbo R, Barcellos MP, Guizzardi G (2014) An ontological analysis of the iso/iec 24744 metamodel. In: Fois, pp 330–343
Sandkuhl K, Seigerroth U (2019) Method engineering in information systems analysis and design: a balanced scorecard approach for method improvement. Softw Syst Model 18(3):1833–1857
Schwaber K, Beedle M (2002) Agile software development with scrum, vol 1. Prentice Hall, Upper Saddle River
SEI (2006) CMMI for development (cmmi-dev). Version 1:2
Singh A, Singh K, Sharma N (2012) Managing knowledge in agile software development. Int J Adv Comput Sci Appl. https://doi.org/10.14569/IJACSA.2011.020411
Sousa K, Vanderdonckt J, Henderson-Sellers B, Gonzalez-Perez C (2012) Evaluating a graphical notation for modelling software development methodologies. J Vis Lang Comput 23(4):195–212
Sreenivasan S, Kothandaraman K (2019) Improving processes by aligning capability maturity model integration and the scaled agile framework®. Glob Bus Organ Excell 38(6):42–51
Tripp JF, Armstrong DJ (2014) Exploring the relationship between organizational adoption motives and the tailoring of agile methods. In: 47th Hawaii international conference on system sciences, IEEE, pp 4799–4806
Valdés G, Visconti M, Astudillo H (2011) The tutelkan reference process: a reusable process model for enabling spi in small settings. In: European conference on software process improvement, Springer, pp 179–190
de la Vara JL, Marín B, Ayora C, Giachetti G (2020) An empirical evaluation of the use of models to improve the understanding of safety compliance needs. Inf Softw Technol 126(106):351
Wohlin C, Runeson P, Höst M, Ohlsson MC, Regnell B, Wesslén A (2012) Experimentation in software engineering. Springer, Heidelberg
Yin A, Figueiredo S, da Silva MM (2011) Scrum maturity model. In: Proceedings of the ICSEA, pp 20–29
Acknowledgements
The work leading to this paper has received funding from the VALU3S (H2020-ECSEL ref. 876852; MCIN/AEI/ 10.13039/501100011033 ref. PCI2020-112001; European Union NextGenerationEU/PRTR), iRel40 (H2020-ECSEL ref. 876659; MCIN/AEI/ 10.13039/501100011033 ref. PCI2020-112240; European Union NextGenerationEU/PRTR), and Treasure (JCCM ref. SBPLY/19/180501/000270; ERDF A way of making Europe) projects, and from the Ramon y Cajal Program (MCIN/AEI/ 10.13039/501100011033 ref. RYC-2017-22836; ESF Investing in your future); and SIAM (Chile’s CORFO-INNOVA ref. 16COTE-60218), and from NISUM Technologies Chile.
Author information
Authors and Affiliations
Corresponding author
Additional information
Accepted after 1 revision by Pnina Soffer.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Giachetti, G., de la Vara, J.L. & Marín, B. Mastering Agile Practice Adoption through a Model-Driven Approach for the Combination of Development Methods. Bus Inf Syst Eng 65, 103–125 (2023). https://doi.org/10.1007/s12599-022-00785-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s12599-022-00785-5