access icon free Review of approaches to manage architectural knowledge in Agile Global Software Development

Nowadays, Agile and Global Software Development (AGSD) has brought benefits and new challenges to the software industry. Among the main challenges is Architecture Knowledge Management (AKM), due to the following reasons: (i) in Agile Software Development team members prefer to convey knowledge in a face-to-face manner, over transmitting it through formal documents; and (ii) an efficient AKM in Global Software Development involves managing explicit knowledge. These opposite paradigms turn AKM into an unsolved issue in AGSD. In this study, the authors present a systematic mapping review about AKM in AGSD. From this review, they identified nine approaches that AGSD companies use to overcome the AKM challenge, which are grouped in three areas: (i) documentation artefact-based, (ii) communication-based, and (iii) methodological-based. Also, they found that the selected papers evenly support the three phases of the integrated knowledge management cycle (creation/capture, sharing/dissemination and acquisition/application), although only 7% of them support the capture of architectural knowledge in a formalised way. Finally, they conclude proposing critical points to consider in the implementation of AKM solutions in AGSD, and presenting their directions of future work.

Inspec keywords: software architecture; software prototyping

Other keywords: communication-based; documentation artefact-based; software industry; architecture knowledge management; AKM; methodological-based; AGSD; agile global software development

Subjects: Software management; Software engineering techniques

References

    1. 1)
      • 32. Capilla, R., Jansen, A., Tang, A., et al: ‘10 years of software architecture knowledge management: practice and future’, J. Syst. Softw., 2015, 116, pp. 191205.
    2. 2)
      • 11. Dorairaj, S., Noble, J., Malik, P.: ‘Knowledge management in distributed Agile software development’. 2012 Agile Conf., 2012, pp. 6473.
    3. 3)
      • 42. Read, K., Maurer, F.: ‘Issues in scaling Agile using an architecture-centric approach: a tool-based solution’, Lect. Notes Comput. Sci. (including Subser. Lect. Notes Artif. Intell. Lect. Notes Bioinfor.), 2003, 2753, pp. 142150.
    4. 4)
      • 47. O'Reilly, C., Bustard, D., Morrow, P.: ‘The war room command console: shared visualizations for inclusive team coordination’. Proc. of the 2005 ACM Symp. on Software Visualization, 2005, pp. 5765.
    5. 5)
      • 58. Paasivaara, M., Lassenius, C.: ‘Communities of practice in a large distributed Agile software development organization – case Ericsson’, Inf. Softw. Technol., 2014, 56, (12), pp. 15561577.
    6. 6)
      • 44. Sohan, S.M., Richter, M.M., Maurer, F.: ‘Auto-tagging emails with user stories using project context’, Lect. Notes Bus. Inf. Process., 2010, 48 LNBIP, pp. 103116.
    7. 7)
      • 76. Moraes, A., Silva, E., da Trindade, C., et al: ‘Recommending experts using communication history’. Second Int. Workshop on Recommendation Systems for Software Engineering – RSSE ‘10, 2010, pp. 4145.
    8. 8)
      • 38. Razzak, M.A., Smite, D.: ‘Knowledge management in globally distributed Agile projects – lesson learned’. Tenth Int. Conf. on Global Software Engineering (ICGSE), 2015, 2015, pp. 8189.
    9. 9)
      • 66. Shen, X., Li, Y., Sun, Y.: ‘An Agile enterprise architecture-driven model for geographically distributed Agile development’, Transform Healthcare Through Inf. Syst., 2016, 17, pp. 185197.
    10. 10)
      • 51. Zimmermann, O., Wegmann, L., Koziolek, H., et al: ‘Architectural decision guidance across projects-problem space modeling, decision backlog management and cloud computing knowledge’. Proc. 12th Working IEEE/IFIP Conf. on Software Architecture, WICSA 2015, 2015, pp. 8594.
    11. 11)
      • 22. Bjørnson, F.O., Dingsøyr, T.: ‘Knowledge management in software engineering: a systematic review of studied concepts, findings and research methods used’, Inf. Softw. Technol., 2008, 50, (11), pp. 10551068.
    12. 12)
      • 54. Šmite, D., Ågerfalk, P.J., Moe, N.B.: ‘Coordination between global Agile teams: from process to architecture’. Agility Across Time and Space: Implementing Agile Methods in Global Software Projects, 2010, pp. 1341.
    13. 13)
      • 45. Antonino, P.O., Keuler, T., Antonino, P., et al: ‘A non-invasive approach to trace architecture design, requirements specification, and Agile artifacts’. 23rd Australian Software Engineering Conf. (ASWEC), 2014, 2014, pp. 220229.
    14. 14)
      • 41. Stettina, C.J., Heijstek, W.: ‘Necessary and neglected? An empirical study of internal documentation in Agile software development teams’. Proc. of the 29th ACM Int. Conf. on Design of Communication (SIGDOC 2011), 2011, pp. 159166.
    15. 15)
      • 7. Smith, G., Sidky, A.: ‘Becoming Agile: in an imperfect world’ (Manning, 2009).
    16. 16)
      • 5. Sommerville, I.: ‘Software engineering’ (Addison-Wesley, 2010, 9th edn.).
    17. 17)
      • 4. da Silva, F.Q.B., Prikladnicki, R., França, A.C.C., et al: ‘Research and practice of distributed software development project management: a systematic mapping study’, Inf. Syst. Technol., 2012, 24, (6), pp. 625642.
    18. 18)
      • 3. Vizcaíno, A., García, F., Piattini, M., et al: ‘El Desarrollo Global del Software’, in Vizcaíno, A., García, F., Piattini, M. (Eds.): ‘Desarrollo global de software’ (Rama, 2014), pp. 3758.
    19. 19)
      • 68. Avritzer, A., Bronsard, F., Matos, G.: ‘Improving global development using Agile – how Agile processes can improve productivity in large distributed projects’, in Šmite, D., Moe, N.B., Ågerfalk, P.J. (Eds.): ‘Agility across time and space: implementing Agile methods in global software projects’ (Springer-Verlag, 2010), pp. 133148.
    20. 20)
      • 82. Sneed, H.M.: ‘Dealing with technical debt in Agile development projects’, Lect. Notes Bus. Inf. Process., 2014, 166 LNBIP, pp. 4862.
    21. 21)
      • 31. Stol, K.J., Babar, M.A., Avgeriou, P., et al: ‘A comparative study of challenges in integrating open source software and inner source software’, Inf. Softw. Technol., 2010, 53, (12), pp. 13191336.
    22. 22)
      • 64. Bass, J.M.: ‘Artefacts and Agile method tailoring in large-scale offshore software development programmes’, Inf. Softw. Technol., 2016, 75, pp. 116.
    23. 23)
      • 80. Ferreira, N., Santos, N., Soares, P., et al: ‘Transition from process- to product-level perspective for business software’, in Poels, G. (Ed.): ‘Enterprise Information Systems of the Future: 6th IFIP WG 8.9 Working Conference, CONFENIS 2012, Ghent, Belgium, 19–21 September 2012, Revised Selected Papers’ (Springer Berlin Heidelberg, 2013), pp. 268275.
    24. 24)
      • 43. Urrego, J., Munoz, R., Mercado, M., et al: ‘Archinotes: a global Agile architecture design approach’, Lect. Notes Bus. Inf. Process., 2014, 179 LNBIP, pp. 302311.
    25. 25)
      • 20. Beck, K., Beedle, M., van Bennekum, A., et al: ‘The Agile manifesto’, 2001.
    26. 26)
      • 70. Del Nuevo, E., Piattini, M., Pino, F.J.: ‘Scrum-based methodology for distributed software development’. Proc. – 2011 6th IEEE Int. Conf. on Global Software Engineering, ICGSE 2011, 2011, pp. 6674.
    27. 27)
      • 39. Van Hillegersberg, J., Ligtenberg, G., Aydin, M.N.: ‘Getting Agile methods to work for Cordys global software product development’, in Kotlarsky, J., Willcocks, L.P., Oshri, I. (Eds.): ‘New studies in global IT and business service outsourcing’ (Springer Berlin Heidelberg, 2011), pp. 133152.
    28. 28)
      • 14. Dingsøyr, T., Vliet, H.V.: ‘Introduction to software architecture’, no date, (7491).
    29. 29)
      • 21. Dingsøyr, T., Conradi, R.: ‘A survey of case studies of the use of knowledge management in software engineering’, Int. J. Softw. Eng. Knowl. Eng., 2002, 12, (4), pp. 391414.
    30. 30)
      • 19. Levy, M., Hazzan, O.: ‘Knowledge management in practice: the case of Agile software development’. 2009 ICSE Work. Coop. Hum. Asp. Software Engineering, 2009, pp. 6065.
    31. 31)
      • 2. Conchúir, E.Ó., Ågerfalk, P.J., Olsson, H.H.: ‘Global software development: where are the benefits?’, Commun. ACM, 2009, 52, (8), pp. 127131.
    32. 32)
      • 15. Kruchten, P., Lago, P., Vliet, H.V.: ‘Building up and reasoning about architectural knowledge’. Proc. of the Second Int. Conf. on Quality of Software Architectures, 2006, pp. 4358.
    33. 33)
      • 17. Holz, H., Maurer, F.: ‘Knowledge management support for distributed Agile software processes’, Adv. Learn. Softw. Organ., 2003, 2640, pp. 6080.
    34. 34)
      • 23. Earl, M.: ‘Knowledge management strategies: toward a taxonomy’, J. Manag. Inf. Syst., 2001, 18, (1), pp. 215233.
    35. 35)
      • 26. Yanzer Cabral, A.R., Ribeiro, M.B., Noll, R.P.: ‘Knowledge management in Agile software projects: a systematic review’, J. Inf. Knowl. Manag., 2014, 13, (1), p. 1450010.
    36. 36)
      • 35. Rost, D., Naab, M., Lima, C., et al: ‘Architecture documentation for developers: a survey’, in Drira, K. (Ed.): ‘Software architecture’ (Springer Berlin Heidelberg, 2013), pp. 7288.
    37. 37)
      • 55. Esbensen, M., Tell, P., Cholewa, J.B., et al: ‘The dBoard: a digital scrum board for distributed software development’. Proc. of the 2015 Int. Conf. on Interactive Tabletops & Surfaces – ITS ‘15, 2015, pp. 161170.
    38. 38)
      • 59. Harrison, R., Veerappa, V.: ‘Social media collaboration in software projects’, in Ruhe, G., Wohlin, C. (Eds.): ‘Software project management in a changing world’ (Springer Berlin Heidelberg, 2014), pp. 4014014.
    39. 39)
      • 56. Schmidt, N., Meures, C.: ‘‘Mind the Gap’: an analysis of communication in Agile global outsourced software development projects’. 49th Hawaii Int. Conf. on System Sciences, 2016, pp. 501510.
    40. 40)
      • 30. Kitchenham, B., Charters, S.: ‘Guidelines for performing systematic literature reviews in software engineering’, 2007.
    41. 41)
      • 8. Dumitriu, F., Oprea, D., Mesnita, G.: ‘Issues and strategy for Agile global software development adoption’, Gavriluta, N., Raducanu, R., Iliescu, M., et al (Eds.): ‘Proceeding of the 3rd World Multiconference on Applied Economics, Business and Development, AEBD’ (WSEAS Press, 2011), pp. 3742.
    42. 42)
      • 40. Kim, W., Chung, S., Endicott-popovsky, B.: ‘Software architecture model driven reverse engineering approach to open source software development’. Proc. of the 3rd Annual Conf. on Research in Information Technology, 2014, pp. 914.
    43. 43)
      • 46. Gayer, S., Herrmann, A., Keuler, T., et al: ‘Lightweight traceability for the Agile architect’, IEE Comput., 2016, 49, (5), pp. 6471.
    44. 44)
      • 33. Clerc, V., Lago, P., Vliet, H.V.: ‘Architectural knowledge management practices in Agile global software development’. 2011 IEEE Sixth Int. Conf. on Global Software Engineering Workshop, 2011, pp. 18.
    45. 45)
      • 28. Petersen, K., Vakkalanka, S., Kuzniarz, L.: ‘Guidelines for conducting systematic mapping studies in software engineering: an update’, Inf. Softw. Technol., 2015, 64, pp. 118.
    46. 46)
      • 65. Martini, A., Bosch, J.: ‘Role of architects in Agile organizations’, in Bosch, J. (Ed.): ‘Continuous software engineering’ (Springer International Publishing, 2014), pp. 1226.
    47. 47)
      • 52. Sharp, H., Giuffrida, R., Melnik, G.: ‘Information flow within a dispersed Agile team: a distributed cognition perspective’, in Wohlin, C. (Ed.): ‘Agile processes in software engineering and extreme programming SE – 5’ (Springer Berlin Heidelberg, 2012), pp. 6276.
    48. 48)
      • 78. Cockburn, A.: ‘Agile software development joins the ‘Would-Be’ crowd what's your center?’, 2002, (January), pp. 612.
    49. 49)
      • 69. Boehm, B., Lane, J.A., Koolmanojwong, S., et al: ‘Architected Agile solutions for software reliant systems’, in Dingsøyr, T., Dybå, T., Moe, N.B. (Eds.): ‘Agile software development’ (Springer Berlin Heidelberg, 2010), p. 31.
    50. 50)
      • 34. Bruun, L., Hansen, M.B.: ‘Handling design-level requirements across distributed teams: developing a new feature for 12 Danish mobile banking apps’. 22nd Int. Requirements Engineering Conf. (RE), 2014, 2014, pp. 335343.
    51. 51)
      • 71. Tanveer, M.: ‘Agile for large scale projects – a hybrid approach’. 2015 National Software Engineering Conf. (NSEC 2015), 2015, pp. 1418.
    52. 52)
      • 72. Dingsøyr, T.: ‘Strategies and approaches for managing architectural knowledge’, in Babar, M.A., Dingsøyr, T., Lago, P., van Vliet, H. (Eds.): ‘Software architecture knowledge management’ (Springer Berlin Heidelberg, 2009), pp. 5968.
    53. 53)
      • 6. Boehm Turner, R.: ‘Balancing agility and discipline: a guide for the perplexed’ (Addison-Wesley Longman Publishing Co., Inc., 2003).
    54. 54)
      • 62. Moe, N.B., Börjesson, A., Andréasson, P.: ‘Networking in a large-scale distributed Agile project’. Proc. of the 8th ACM/IEEE Int. Symp. on Empirical Software Engineering and Measurement, 2014, p. 8.
    55. 55)
      • 13. Bass, L., Clements, P., Kazman, R.: ‘Software architecture in practice’ (Addison-Wesley Professional, 2003, 2nd edn.).
    56. 56)
      • 36. Nowak, M., Pautasso, C.: ‘Architectural decision modeling with reuse: challenges and opportunities’. ‘SHARK ‘10 Proc. of the 2010 ICSE Workshop on Sharing and Reusing Architectural Knowledge, 2010, pp. 1320.
    57. 57)
      • 24. Ali, N., Beecham, S., Mistrik, I.: ‘Architectural knowledge management in global software development: a review’. Fifth IEEE Int. Conf. on Global Software Engineering (ICGSE), 2010, 2010, pp. 347352.
    58. 58)
      • 63. Eeles, P.: ‘Building a platform for innovation: architecture and Agile as key enablers’, in Babar, M.A., Brown, A.W., Koskimies, K., Mistrik, I. (Eds.): ‘Agile software architecture: aligning Agile processes and software architectures’ (Elsevier Inc., 2013), pp. 315333.
    59. 59)
      • 29. Dalkir, K.: ‘Knowledge management in theory and practice’, 2005.
    60. 60)
      • 81. Nonaka, I., Takeuchi, H.: ‘The knowledge-creating company: how Japanese companies create the dynamics of innovation’ (Oxford University Press, 1995).
    61. 61)
      • 1. Herbsleb, J.D.: ‘Global software engineering: the future of socio-technical coordination’. Int. Conf. on Software Engineering, 2007, p. 10.
    62. 62)
      • 53. Young, C., Terashima, H.: ‘How did we adapt Agile processes to our distributed development?Proc. Agile 2008 Conf., 2008, pp. 304309.
    63. 63)
      • 10. Hansen, M.T., Nohria, N., Tierney, T.: ‘What's your strategy for managing knowledge?’, Harv. Bus. Rev., 1999, 77, (2), pp. 106116.
    64. 64)
      • 50. Díaz, J., Pérez, J., Garbajosa, J.: ‘Agile product-line architecting in practice: a case study in smart grids’, Inf. Softw. Technol., 2014, 56, (7), pp. 727748.
    65. 65)
      • 27. Yang, C., Liang, P., Avgeriou, P.: ‘A systematic mapping study on the combination of software architecture and Agile development’, J. Syst. Softw., 2016, 111, pp. 157184.
    66. 66)
      • 49. de Graaf, K.A., Liang, P., Tang, A., et al: ‘An exploratory study on ontology engineering for software architecture documentation’, Comput. Ind., 2014, 65, (7), pp. 10531064.
    67. 67)
      • 16. Vliet, H.V.: ‘Software architecture knowledge management’. 19th Software Engineering, ASWEC 2008, 2008, pp. 2431.
    68. 68)
      • 60. Yagüe, A., Garbajosa, J., Díaz, J., et al: ‘An exploratory study in communication in Agile global software development’, Comput. Stand. Interfaces, 2016, 48, pp. 184197.
    69. 69)
      • 73. Klobas, J.E., Beesley, A.: ‘Wikis: tools for information work and collaboration’ (Chandos, 2006).
    70. 70)
      • 77. Wenger, E., McDermott, R., Snyder, W.: ‘Cultivating communities of practice: a guide to managing knowledge’ (Harvard Business School Press, 2002).
    71. 71)
      • 75. Ellis, C.A., Gibbs, S.J., Rein, G.L.: ‘Groupware: some issues and experiences’, Commun. ACM, 1991, 34, (l), pp. 3958.
    72. 72)
      • 9. Jalali, S., Wohlin, C.: ‘Global software engineering and Agile practices: a systematic review’, J. Softw. Evol. Process, 2012, 24, pp. 643659.
    73. 73)
      • 83. Clear, T.: ‘Documentation and Agile methods: striking a balance’, SIGCSE Bull., 2003, 35, (2), pp. 1213.
    74. 74)
      • 37. Babar, M.A.: ‘An exploratory study of architectural practices and challenges in using Agile software development approaches’. 2009 Joint Working IEEE/IFIP Conf. on Software Architecture & European Conf. on Software Architecture, 2009, pp. 8190.
    75. 75)
      • 67. Costa, N., Santos, N., Ferreira, N.: ‘Delivering user stories for implementing logical software architectures by multiple scrum teams’, in Murgante, B., Misra, S., Rocha, A.C., et al (Eds.): ‘Computational science and its applications – ICCSA 2014 SE – 55’ (Springer International Publishing, 2014), pp. 747762.
    76. 76)
      • 48. Pérez, J., Díaz, J., Garbajosa, J., et al: ‘Flexible working architectures: Agile architecting using PPCs’, Lect. Notes Comput. Sci. (including Subser. Lect. Notes Artif. Intell. Lect. Notes Bioinfor.), 2010, 6285 LNCS, pp. 102117.
    77. 77)
      • 18. Uikey, N., Suman, U., Ramani, A.: ‘A documented approach in Agile software development’, Int. J. Softw., 2011, 2, (2), pp. 1322.
    78. 78)
      • 57. Korkala, M., Maurer, F.: ‘Waste identification as the means for improving communication in globally distributed Agile software development’, J. Syst. Softw., 2014, 95, pp. 122140.
    79. 79)
      • 25. Beecham, S., Noll, J., Richardson, I., et al: ‘Crafting a global teaming model for architectural knowledge’. Proc. 5th Int. Conf. Global Software Engineering, ICGSE 2010, 2010, pp. 5563.
    80. 80)
      • 12. Jiménez, M., Piattini, M., Vizcaíno, A.: ‘Challenges and Improvements in distributed software development: a systematic review’, Adv. Softw. Eng., 2009, 2009, (710971), p. 14.
    81. 81)
      • 61. Phalnikar, R., Deshpande, V.S., Joshi, S.D.: ‘Applying Agile principles for distributed software development’. Proc. Int. Conf. on Advanced Computer Control, ICACC 2009, 2009, pp. 535539.
    82. 82)
      • 74. Paredes, J., Anslow, C., Maurer, F.: ‘Information visualization for Agile software development teams’. 2014 Second IEEE Working Conf. on Software Visualization, 2014, pp. 157166.
    83. 83)
      • 79. Eloranta, V., Koskimies, K.: ‘Aligning architecture knowledge management with Scrum’. Proc. of the WICSA/ECSA 2012, 2012, pp. 112115.
http://iet.metastore.ingenta.com/content/journals/10.1049/iet-sen.2016.0197
Loading

Related content

content/journals/10.1049/iet-sen.2016.0197
pub_keyword,iet_inspecKeyword,pub_concept
6
6
Loading