Mining Architecture Tactics and Quality Attributes knowledge in Stack Overflow

被引:24
作者
Bi, Tingting [1 ,3 ]
Liang, Peng [1 ]
Tang, Antony [2 ,4 ]
Xia, Xin [3 ]
机构
[1] Wuhan Univ, Sch Comp Sci, Wuhan 430072, Peoples R China
[2] Swinburne Univ Technol, Fac Sci Engn & Technol, Melbourne, Vic 3122, Australia
[3] Monash Univ, Fac Informat Technol, Melbourne, Vic 3166, Australia
[4] Vrije Univ Amsterdam, Software & Serv Res Grp, NL-1101 Amsterdam, Netherlands
基金
国家重点研发计划;
关键词
Architecture Tactic; Quality Attribute; Knowledge mining; Empirical analysis; Stack Overflow; SOFTWARE; REPRESENTATION;
D O I
10.1016/j.jss.2021.111005
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Context: Architecture Tactics (ATs) are architectural building blocks that provide general architectural solutions for addressing Quality Attributes (QAs) issues. Mining and analysing QA-AT knowledge can help the software architecture community better understand architecture design. However, manually capturing and mining this knowledge is labour-intensive and difficult. Objective: 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. Methods: 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. Results: Our approach allows us to mine QA-AT knowledge accurately 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. Conclusions: 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. (C) 2021 Elsevier Inc. All rights reserved.
引用
收藏
页数:18
相关论文
共 49 条
  • [41] Categorizing the Content of GitHub README Files
    Prana, Gede Artha Azriadi
    Treude, Christoph
    Thung, Ferdian
    Atapattu, Thushari
    Lo, David
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2019, 24 (03) : 1296 - 1327
  • [42] Quinlan J. R, 1993, C4.5: Programs for machine learning
  • [43] Decision Model for Software Architectural Tactics Selection based on Quality Attributes Requirements
    Sabry, Ahmed E.
    [J]. INTERNATIONAL CONFERENCE ON COMMUNICATIONS, MANAGEMENT, AND INFORMATION TECHNOLOGY (ICCMIT'2015), 2015, 65 : 422 - 431
  • [44] Architectural Knowledge for Technology Decisions in Developer Communities An Exploratory Study with StackOverflow
    Soliman, Mohamed
    Galster, Matthias
    Salama, Amr R.
    Riebisch, Matthias
    [J]. 2016 13TH WORKING IEEE/IFIP CONFERENCE ON SOFTWARE ARCHITECTURE (WICSA), 2016, : 128 - 133
  • [45] Augmenting API Documentation with Insights from Stack Overflow
    Treude, Christoph
    Robillard, Martin P.
    [J]. 2016 IEEE/ACM 38TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2016, : 392 - 403
  • [46] Gender, Representation and Online Participation: A Quantitative Study
    Vasilescu, Bogdan
    Capiluppi, Andrea
    Serebrenik, Alexander
    [J]. INTERACTING WITH COMPUTERS, 2014, 26 (05) : 488 - 511
  • [47] Toward Social Learning Environments
    Vassileva, Julita
    [J]. IEEE TRANSACTIONS ON LEARNING TECHNOLOGIES, 2008, 1 (04): : 199 - 214
  • [48] Knowledge representation and information extraction for analysing architectural patterns
    Velasco-Elizondo, Perla
    Marin-Pina, Rosario
    Vazquez-Reyes, Sodel
    Mora-Soto, Arturo
    Mejia, Jezreel
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 2016, 121 : 176 - 189
  • [49] Text mining and software engineering: an integrated source code and document analysis approach
    Witte, R.
    Li, Q.
    Zhang, Y.
    Rilling, J.
    [J]. IET SOFTWARE, 2008, 2 (01) : 3 - 16