Synthesizing researches on Knowledge Management and Agile Software Development using the Meta-ethnography method

Abstract Context: Software development processes are considered as knowledge intensive and therefore Knowledge Management (KM) can be applied to efficiently manage the knowledge generated. Agile practices can benefit software organizations in terms of KM. Some studies have already presented evidence about this relationship. However, the intersection of these two areas still requires further clarification. Objective: This study synthesizes research on KM and Agile Software Development (ASD) using the meta-ethnography method considering Scrum and XP frameworks. Method: In order to achieve the proposed goal, first, a diagnostic was conducted in different project domains with agile and traditional software development in order to identify the performance of KM activities. Second, the phases of the meta-ethnography analysis method were applied in a set of studies selected from a tertiary review on KM and ASD, as well as classic guides and area references. Finally, the relationships that were identified among the areas investigated were analyzed from interviews with agile development methodology experts. Results: The most common activity investigated between KM and ASD is knowledge sharing. However, in the practical view of software development companies, the attention is on how to use the generated knowledge. Conclusion: The clarification of how KM is present in each agile value, practices, and artifacts allows a reflection on how much knowledge was created, shared, and applied during ASD. Besides, such results presented in this study enable organizations to know each other better and to explore more each KM activity, thus contributing to delivering more value to the customer.

[1]  Xin Huang,et al.  A Review of Meta-ethnographies in Software Engineering , 2019, EASE.

[2]  K. Hannes,et al.  Synthesizing Qualitative Research: Choosing the Right Approach , 2012 .

[3]  Ruth L. Williams,et al.  The Knowledge Management Fieldbook , 1999 .

[4]  R. Likert “Technique for the Measurement of Attitudes, A” , 2022, The SAGE Encyclopedia of Research Design.

[5]  Tony Gorschek,et al.  Knowledge Management Strategies and Processes in Agile Software Development: A Systematic Literature Review , 2018, Int. J. Softw. Eng. Knowl. Eng..

[6]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[7]  Javier Andrade Garda,et al.  An architectural model for software testing lesson learned systems , 2013, Inf. Softw. Technol..

[8]  Pankaj Kamthan On the role of Wiki for managing knowledge in agile software development , 2013, 2013 International Conference on Collaboration Technologies and Systems (CTS).

[9]  Alberto L. Morán,et al.  Review of approaches to manage architectural knowledge in Agile Global Software Development , 2017, IET Softw..

[10]  H. D. Rombach,et al.  THE EXPERIENCE FACTORY , 1999 .

[11]  Mário André de Freitas Farias,et al.  Impacts of agile requirements documentation debt on software projects: a retrospective study , 2016, SAC.

[12]  Alberto L. Morán,et al.  Understanding Architectural Knowledge Sharing in AGSD Teams: An Empirical Study , 2016, 2016 IEEE 11th International Conference on Global Software Engineering (ICGSE).

[13]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2012, Springer Berlin Heidelberg.

[14]  Nandamudi Lankalapalli Vijaykumar,et al.  Using meta-ethnography to synthesize research on knowledge management and agile software development methodology , 2018, SBQS.

[15]  Ricardo de Almeida Falbo,et al.  Knowledge management initiatives in software testing: A mapping study , 2015, Inf. Softw. Technol..

[16]  Giancarlo Succi,et al.  The Experience Factory , 2014 .

[17]  Jing Tian,et al.  A Survey on Knowledge Management in Software Engineering , 2015, 2015 IEEE International Conference on Software Quality, Reliability and Security - Companion.

[18]  K. North,et al.  Knowledge Management: Value Creation Through Organizational Learning , 2014 .

[19]  Tony Clear,et al.  Documentation and agile methods: striking a balance , 2003, SGCS.

[20]  Jeff Sutherland,et al.  The Scrum Guide , 2012 .

[21]  Jörg Thomaschewski,et al.  Agile Values and Their Implementation in Practice , 2015, Int. J. Interact. Multim. Artif. Intell..

[22]  A. M. Talib,et al.  A model of knowledge management system in managing knowledge of software testing environment , 2011, 2011 Malaysian Conference in Software Engineering.

[23]  Daniela Cruzes,et al.  Recommended Steps for Thematic Synthesis in Software Engineering , 2011, 2011 International Symposium on Empirical Software Engineering and Measurement.

[24]  Robert Amor,et al.  Understanding Knowledge Management in Agile Software Development Practice , 2017, KSEM.

[25]  Torgeir Dingsøyr,et al.  Knowledge management in software engineering: A systematic review of studied concepts, findings and research methods used , 2008, Inf. Softw. Technol..

[26]  Luiz Fernando Capretz,et al.  Using Meta-ethnography to Synthesize Research: A Worked Example of the Relations between Personality and Software Team Processes , 2013, 2013 ACM / IEEE International Symposium on Empirical Software Engineering and Measurement.

[27]  Peter Wendorff,et al.  The Knowledge Management Strategy of Agile Software Development , 2005, ECKM.

[28]  Xuexiang Li,et al.  Ontology-Based Testing Platform for Reusing , 2012, 2012 Sixth International Conference on Internet Computing for Science and Engineering.

[29]  Nandamudi L. Vijaykumar,et al.  A tool for automation of knowledge management diagnostics in software development companies , 2019 .

[30]  I. Nonaka,et al.  How Japanese Companies Create the Dynamics of Innovation , 1995 .

[31]  Jeff Sutherland,et al.  Manifesto for Agile Software Development , 2013 .

[32]  Ramon R. Palacio,et al.  Ontology for knowledge condensation to support expertise location in the code phase during software development process , 2020, IET Softw..

[33]  Frank Maurer,et al.  Requirements engineering and agile software development , 2003, WET ICE 2003. Proceedings. Twelfth IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, 2003..

[34]  Frank Maurer,et al.  Information Visualization for Agile Software Development , 2014, 2014 Second IEEE Working Conference on Software Visualization.

[35]  Daniela Cruzes,et al.  Research synthesis in software engineering: A tertiary study , 2011, Inf. Softw. Technol..

[36]  Marcelo Blois Ribeiro,et al.  Knowledge Management in Agile Software Projects: A Systematic Review , 2014, J. Inf. Knowl. Manag..

[37]  Miguel de Castro Neto,et al.  Knowledge creation and sharing in software development teams using Agile methodologies: Key insights affecting their adoption , 2011, 6th Iberian Conference on Information Systems and Technologies (CISTI 2011).

[38]  Dana Indra Sensuse,et al.  A Systematic Literature Review of Improved Knowledge Management in Agile Software Development , 2019, ICSIM 2019.

[39]  Xavier Franch,et al.  Non-functional Requirements Documentation in Agile Software Development: Challenges and Solution Proposal , 2017, PROFES.

[40]  Muhammad Ali Babar,et al.  Empirical Study of Architectural Knowledge Management Practices , 2014, 2014 IEEE/IFIP Conference on Software Architecture.

[41]  Orit Hazzan,et al.  Knowledge management in practice: The case of agile software development , 2009, 2009 ICSE Workshop on Cooperative and Human Aspects on Software Engineering.

[42]  Daniel E. O'Leary,et al.  Enterprise Knowledge Management , 1998, Computer.

[43]  Kimiz Dalkir,et al.  Knowledge Management in Theory and Practice , 2005 .

[44]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[45]  Mario Piattini,et al.  A framework to analyze information systems as knowledge flow facilitators , 2008, Inf. Softw. Technol..

[46]  Aurora Vizcaíno,et al.  Towards a reduction in architectural knowledge vaporization during agile global software development , 2019, Inf. Softw. Technol..

[47]  K. Wiig Knowledge Management Foundations: Thinking About Thinking - How People and Organizations Represent, Create and Use Knowledge , 1994 .

[48]  S. Vasanthapriyan,et al.  Knowledge Management in Agile Software Development- A Literature Review , 2018, 2018 National Information Technology Conference (NITC).