Slack's Knowledge Classification Mechanism for Architectural Knowledge Condensation

Agile methods adoption in global software development (GSD) has revealed architectural knowledge (AK) management as a challenge, since documentation debt prevails in these environments. Thus, knowledge dissemination/acquisition becomes difficult because of the four inherent distances in GSD, which, in turn causes AK vaporization. One way to reduce this loss of knowledge is to take advantage of the AK traces that different unstructured and textual electronic means (UTEM) leave (e.g. instant messengers and email), which developers prefer on AGSD environments. These traces are valuable, but their access is difficult because these means have no tools adapted to search AK and because this knowledge is scattered in different UTEM. The AK condensation concept proposes that trough a mechanism of classification and collection of messages contained in UTEM, AK could become available for the stakeholders. This article presents a Slack complement, which implements an AK classification mechanism based on social tagging. We evaluated this mechanism with undergraduate students through a replica of a previous study. We obtained positive results in regards to usefulness and ease of use, but with tagging behavior results that differ (not statistically significant) from those obtained previously. These evidences encourage us to evaluate the AK condensation concept in its whole, in real scenarios.

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

[2]  Nicholas A. Kraft,et al.  Exploratory Study of Slack Q&A Chats as a Mining Source for Software Engineering Tools , 2019, 2019 IEEE/ACM 16th International Conference on Mining Software Repositories (MSR).

[3]  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).

[4]  Pär J. Ågerfalk,et al.  Global Software Development Challenges: A Case Study on Temporal, Geographical and Socio-Cultural Distance , 2006, 2006 IEEE International Conference on Global Software Engineering (ICGSE'06).

[5]  Grigori Melnik,et al.  Knowledge management for distributed agile processes: models, techniques, and infrastructure , 2003, WET ICE 2003. Proceedings. Twelfth IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, 2003..

[6]  Christoph Treude,et al.  How tagging helps bridge the gap between social and technical aspects in software development , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[7]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2000, The Kluwer International Series in Software Engineering.

[8]  M. Shujah Islam Sameem,et al.  A model for applying Agile practices in Distributed environment: A case of local software industry , 2017, 2017 International Conference on Communication, Computing and Digital Systems (C-CODE).

[9]  Ebrahim Bagheri,et al.  Semantic tagging and linking of software engineering social content , 2014, Automated Software Engineering.

[10]  Jan Bosch,et al.  Software Architecture: The Next Step , 2004, EWSA.

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

[12]  I. Nonaka,et al.  SECI, Ba and Leadership: a Unified Model of Dynamic Knowledge Creation , 2000 .

[13]  Ugrasen Suman,et al.  A Documented Approach in Agile Software Development , 2011 .

[14]  Patricia Lago,et al.  Architectural Knowledge Management Practices in Agile Global Software Development , 2011, 2011 IEEE Sixth International Conference on Global Software Engineering Workshop.

[15]  Peng Liang,et al.  Architectural Debt Management in Value-Oriented Architecting , 2013, Economics-Driven Software Architecture.

[16]  Fred D. Davis Perceived Usefulness, Perceived Ease of Use, and User Acceptance of Information Technology , 1989, MIS Q..

[17]  Torsten Bumgarner Software Architecture Knowledge Management Theory And Practice , 2016 .

[18]  Richard T. Vidgen,et al.  An exploration of technical debt , 2013, J. Syst. Softw..

[19]  James Noble,et al.  Knowledge Management in Distributed Agile Software Development , 2012, 2012 Agile Conference.

[20]  Janice Singer,et al.  How Software Developers Use Tagging to Support Reminding and Refinding , 2009, IEEE Transactions on Software Engineering.

[21]  Orit Hazzan,et al.  The Agile Manifesto , 2014 .