Skip to main content
Log in

Exploring knowledge management in agile software development organizations

  • Published:
International Entrepreneurship and Management Journal Aims and scope Submit manuscript

Abstract

Knowledge represents a sustainable asset for innovative firms and specifically software industries working in unpredictable environments. Until the late 90’s, the most widely used software development approaches advocated extensive documentation and traceability. The emphasized knowledge is mainly explicit. However, with the dynamics of progress of technologies and the market changing demands, extensive planning and documentation are quickly becoming obsolete. As such, more flexible methods, called agile methods, have gained popularity. These methods value collective learning and close collaboration between team members. To this day, little research has shown how agile software development supports knowledge management initiatives. This research helps fill this gap by reviewing the related work on agile software development by focusing on and examining knowledge management initiatives in agile organizations. We developed a theoretical model of knowledge management in agile environments. Our findings highlight the way knowledge management is embedded in agile practices, including continuous communication, iterative development, knowledge repositories and engineering practices. It also emphasizes the importance of knowledge management in Information Technology development organizations.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1

Similar content being viewed by others

Notes

  1. DSDM is an agile project delivery framework, primarily used as a software development method. First released in 1994, DSDM advocates iterative and incremental development approach, user involvement, quality, frequent communication, delivery on time, etc.

  2. Scrum employs an iterative and incremental approach for managing projects. Three pillars uphold the development process: transparency, inspection and adaptation (Sutherland and Schwaber 2010).

  3. Extreme programming method relies on a set of engineering practices (unit-test, continuous integration) and collaboration practices (iterative development, client-on-site, pair programming) that ensure knowledge capitalization and enhance communication and code quality (Beck and Andres 2004).

  4. Lean development consists of a set of principles (eliminate wastes, build quality, create knowledge, defer commitment, deliver fast) and practices (e, unit-tests) that aim at eliminating waste and delivering on a time a product with a good quality (Poppendieck and Poppendieck 2003; Poppendieck and Poppendieck 2006).

  5. Unit-tests are created before the code itself is written.

  6. It consists on integrating and building the system many times a day, every time a task is completed.

  7. Based on the classification by the OECD found on: https://data.oecd.org/entrepreneur/enterprises-by-business-size.htm

References

  • Aizpurúa, L. I., Saldaña, P. E. Z., & Saldaña, A. Z. (2011). Learning for sharing: an empirical analysis of organizational learning and knowledge sharing. International Entrepreneurship and Management Journal, 7(4), 509–518.

    Article  Google Scholar 

  • Alavi, M., & Leidner, D. E. (2001). Knowledge management and knowledge management systems: conceptual foundations and research issues. MIS Quarterly, 25(1), 107–136.

    Article  Google Scholar 

  • Audretsch, D. B., Castrogiovanni, G. J., Ribeiro, D., & Roig, S. (2005). Linking entrepreneurship and management: welcome to the international entrepreneurship and management journal. International Entrepreneurship and Management Journal, 1(1), 5–7.

    Article  Google Scholar 

  • Beck, K., & Andres, C. (2004). Extreme programming explained: Embrace change 2nd edn. Reading: Addison-Wesley Professional.

  • Begel, A., & Nagappan, N. (2007). Usage and perceptions of agile software development in an industrial context: An exploratory study. In Proceedings of the First International Symposium on Empirical Software Engineering and Measurement (pp. 255–264). Madrid: IEEE Computer Society.

    Google Scholar 

  • Berczuk, S. (2007). Back to basics: The role of agile principles in success with a distributed scrum team. In Proceedings of Agile Conference (pp. 382–388). Washington: IEEE Computer Society.

    Google Scholar 

  • Birk, A. (2000). A knowledge management infrastructure for systematic improvement in software engineering. Thesis Dissertation, University of Kaiserslautern, Department of Informatics.

  • Bjørnson, F.O. (2007). Knowledge management in software process improvement. Thesis Dissertation, Norwegian University of Science and Technology, Department of Computer and Information Science.

  • Bjørnson, F. O., & Dingsøyr, T. (2008). Knowledge management in software engineering: a systematic review of studied concepts, findings and research methods used. Information and Software Technology, 50(11), 1055–1068.

    Article  Google Scholar 

  • Chewar, C.M., & McCrickard, D.S. (2005). Links for a human-centered science of design: Integrated design knowledge environments for a software development process. Proceedings of the Hawaii International Conference on System Sciences, Hawaii, United States.

  • Chong, J. (2005). Social behaviors on XP and non XP: a comparative study. Proceedings of Agile Development Conference, Computer Society, 39–48.

  • Conboy, K., & Fitzgerald, B. (2004). Toward a conceptual framework of agile methods: A study of agility in different disciplines. Proceedings of XP/Agile Universe, Springer Verlag.

  • Davenport, T. H., & Prusak, L. (1998). Working knowledge. Boston: Harvard Business School Press.

    Google Scholar 

  • Dingsøyr, T. (2002). Knowledge management in medium-sized software consulting companies. Thesis Dissertation, Norwegian University of Science and Technology, Department of Computer and Information Science.

  • Dingsøyr, T., & Royrvik, E. (2003). An empirical study of an informal knowledge repository in a medium-sized software consulting company. Proceedings of the International Conference on Software Engineering, Portland, United States, 84–92.

  • Drucker, P. (1993). Post-capital society. New York: Harper & Collins.

    Google Scholar 

  • Edwards, S. (2003). Managing software engineers and their knowledge. In A. Aurum et al. (Eds.), Managing software engineering knowledge (pp. 5–27). Berlin: Springer Verlag.

    Chapter  Google Scholar 

  • Falbo, R., Arantes, D.O. & Natali, A.C.C. (2004). Integrating knowledge management and groupware in a software development environment. Lecture Notes in Artificial Intelligence Subseries of Lecture Notes in Computer Science, 94–105.

  • Fernandes, C. I., Ferreira, J. J., & Raposo, M. L. (2013). Drivers to firm innovation and their effects on performance: an international comparison. International Entrepreneurship and Management Journal, 9(4), 557–580.

    Article  Google Scholar 

  • Fischer, G., & Ostwald, J. (2001). Knowledge management: problems, promises, realities and challenges. IEEE Intelligent Systems, 16(1), 60–73.

    Article  Google Scholar 

  • Gibson, W. J., & Brown, A. (2009). Working with qualitative data. UK: Sage Publications.

    Book  Google Scholar 

  • Grant, R. (1995). A knowledge-based theory of inter-firm collaboration. Academy of Management - Best Paper Proceedings, 17–21.

  • Highsmith, J., & Cockburn, A. (2001). Agile software development: the business of innovation. Computer, 34(9), 120–122.

    Article  Google Scholar 

  • Karlström, D., & Runeson, P. (2005). Combining agile methods with stage-gate project management. IEEE Computer Society, 22(3), 43–49.

    Google Scholar 

  • Khalil, C., & Dudezert, A. (2014). Entre autonomie et contrôle : quelle régulation pour les systèmes de gestion des connaissances. Système d’Information et Management, 19(1), 51–76.

    Article  Google Scholar 

  • Khalil, C., Fernandez, V., & Houy, T. (2013). Can agile collaboration practices enhance knowledge creation between cross-functional teams. Digital Enterprise Design and Management Conference, Paris, France.

  • Kurniawati, F., & Jeffery, R. (2004). The long-term effects of an EPG/ER in a small software organization. Proceedings of the Australian Software Engineering Conference, Melbourne, Australia, 128–136.

  • Martin, A., Biddle, R., & Noble, J. (2004). The XP customer role in practice: Three studies. Proceedings of the Agile Development Conference, Computer Society, Utah, 42–54.

  • Mathiassen, L., & Vogelsang, L. (2005). The role of networks and networking in bringing software methods to practice. Proceedings of the Hawaii International Conference on System Sciences, Hawaii, United States.

  • Middleton, P., Flaxel, A., & Cookson, A. (2005). Lean software management case study: Timberline Inc. Extreme Programming and Agile Processes in Software Engineering, Lecture notes in computer science, 3556(1297–1298), 1–9.

    Google Scholar 

  • Nonaka, I. (1994). A dynamic theory of organizational knowledge creation. Organization Science, 5(1), 14–37.

    Article  Google Scholar 

  • Nonaka, I., & Takeuchi, H. (1995). The knowledge-creating company. New York: Oxford University Press.

    Google Scholar 

  • Paasivaara, M., Durasiewicz, S., & Lassenius, C. (2008). Distributed agile development: Using scrum in a large project. Proceedings of the 3rd IEEE International Conference on Global Software Engineering ICGSE 2008, 87–95.

  • Paasivaara, M., Durasiewicz, S., & Lassenius, C. (2009). Using scrum in distributed agile development: A multiple case study. Proceedings of the 4th IEEE International Conference on Global Software Engineering, Limerick, 195– 204.

  • Poole, C. J. (2004). Distributed product development using extreme programming. Lecture Notes in Computer Science, 60–67.

  • Poppendieck, M., & Poppendieck, T. (2003). Lean software development: An agile toolkit. Upper Saddle River: Addison-Wesley.

  • Poppendieck, M., & Poppendieck, T. (2006). Implementing lean software development: From concept to cash. Boston: Addison-Wesley.

  • Robinson, H. & Sharp, H. (2004). The characteristics of XP teams. Extreme Programming and Agile Processes in Software Engineering, Lecture Notes in Computer Science, 139–147.

  • Sharp, H., & Robinson, H. (2007). Collaboration and coordination in mature extreme programming teams. International Journal of Human Computer Studies, 66(7), 506–518.

    Article  Google Scholar 

  • Sharp, H., Robinson, H., & Petre, M. (2009). The role of physical artifacts in agile software development: two complementary perspectives. Interacting with Computers, 21(1–2), 108–116.

    Article  Google Scholar 

  • Skuce, D. (1995). Knowledge management in software-design – a tool and a trial. Software Engineering Journal, 10(5), 183–193.

    Article  Google Scholar 

  • Sommer, A. F., Hedegaard, C., Dukovska-Popovska, I., & Steger-Jensen, K. (2015). Improved product development performance through agile/stage-gate hybrids: the next-generation stage-gate process? Research-Technology Management, 58(1), 34–45.

    Article  Google Scholar 

  • Sutherland, J. & Schwaber, K. (2010). The Scrum papers: Nut, bolts and origins of an agile framework. Cambridge: Scrum.

  • Sutherland, J., Viktorov, A., Blount, J., & Puntikov, N. (2007). Distributed scrum: Agile project management with outsourced development teams. Proceedings of the 40th Hawaii International Conference on System Sciences HICCS-40, 274a.

  • Svensson, H., & Host, M. (2005). Views from an organization on how agile development affects its collaboration with software development team. International conference on product focused software process improvement, Lecture Notes in Computer Science, 487–501.

  • Tessem, B. (2003). Experiences in learning XP practices : a qualitative study. Proceedings 4th International conference on Extreme Programming and Agile Processes in Software Engineering, Italy, 131–137.

  • Von Krogh, G. (1998). Care in knowledge creation. California Management Review, 40(3), 133–153.

    Article  Google Scholar 

  • Von Krogh, G., Ichijo, K., & Nonaka, I. (2000). Enabling knowledge creation: How to unlock the mystery of tacit knowledge and release the power of innovation. New York: Oxford University Press.

    Book  Google Scholar 

  • Williams, L., & Cockburn, A. (2003). Agile software development: it's about feedback and change. Computer, 36(6), 39–43.

  • Williams, L., Kessler, R., Cunningham, R. W., & Jeffries, R. (2000). Strengthening the case for pair programming. IEEE Software, 17(4), 19–25.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Carine Khalil.

Additional information

Publisher’s note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Khalil, C., Khalil, S. Exploring knowledge management in agile software development organizations. Int Entrep Manag J 16, 555–569 (2020). https://doi.org/10.1007/s11365-019-00582-9

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11365-019-00582-9

Keywords

Navigation