Mining Architecture Tactics and Quality Attributes knowledge in Stack Overflow

Tingting Bi,Peng Liang,Antony Tang,Xin Xia
DOI: https://doi.org/10.1016/j.jss.2021.111005
IF: 3.5
2021-10-01
Journal of Systems and Software
Abstract:<h3 class="u-h4 u-margin-m-top u-margin-xs-bottom">Context:</h3><p>Architecture Tactics (ATs) are architectural building blocks that provide general architectural solutions for addressing Quality Attributes (QAs) issues. Mining and analyzing QA-AT knowledge can help the software architecture community better understand architecture design. However, manually capturing and mining this knowledge is labor-intensive and difficult.</p><h3 class="u-h4 u-margin-m-top u-margin-xs-bottom">Objective:</h3><p>Using Stack Overflow (SO) as our source, our main goals are to effectively mine such knowledge; and to have some sense of how developers use ATs with respect to QA concerns from related discussions.</p><h3 class="u-h4 u-margin-m-top u-margin-xs-bottom">Methods:</h3><p>We applied a semi-automatic dictionary-based mining approach to extract the QA-AT posts in SO. With the mined QA-AT posts, we identified the relationships between ATs and QAs.</p><h3 class="u-h4 u-margin-m-top u-margin-xs-bottom">Results:</h3><p>: Our approach allow us to mine QA-AT knowledge effectively with an F-measure of 0.865 and Performance of 82.2%. Using this mining approach, we are able to discover architectural synonyms of QAs and ATs used by designers, from which we discover how developers apply ATs to address quality requirements.</p><h3 class="u-h4 u-margin-m-top u-margin-xs-bottom">Conclusions:</h3><p>We make two contributions in this work: First, we demonstrated a semi-automatic approach to mine ATs and QAs from SO posts; Second, we identified little-known design relationships between QAs and ATs and grouped architectural design considerations to aid architects make architecture tactics design decisions.</p>
computer science, theory & methods, software engineering
What problem does this paper attempt to address?