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 条
  • [1] What Do Developers Use the Crowd For? A Study Using Stack Overflow
    Abdalkareem, Rabe
    Shihab, Emad
    Rilling, Juergen
    [J]. IEEE SOFTWARE, 2017, 34 (02) : 53 - 60
  • [2] Analyzing Preferences and Interactions of Software Quality Attributes Using Choquet Integral Approach
    Alashqar, Abdelkareem M.
    Elfetouh, Ahmad Abo
    El-Bakry, Hazem M.
    [J]. INTERNATIONAL CONFERENCE ON INFORMATICS AND SYSTEMS (INFOS 2016), 2016, : 298 - 303
  • [3] Alebrahim A., 2017, BRIDGING GAP REQUIRE
  • [4] [Anonymous], MINING ARCHITECTURE
  • [5] [Anonymous], 2010, P 2 INT WORKSH SOFTW, DOI DOI 10.1145/2401736.2401738
  • [6] Bachmann F., 2007, SOFTWARE ENG I SOFTWARE ENG I
  • [7] Bass L., 1997, SOFTWARE ARCHITECTUR
  • [8] Architecture Patterns, Quality Attributes, and Design Contexts: How Developers Design with Them?
    Bi, Tingting
    Liang, Peng
    Tang, Antony
    [J]. 2018 25TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2018), 2018, : 49 - 58
  • [9] A systematic mapping study on text analysis techniques in software architecture
    Bi, Tingting
    Liang, Peng
    Tang, Antony
    Yang, Chen
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2018, 144 : 533 - 558
  • [10] Using architectural modifiability tactics to examine evolution qualities of Service- and Microservice-Based Systems
    Bogner, Justus
    Wagner, Stefan
    Zimmermann, Alfred
    [J]. SICS SOFTWARE-INTENSIVE CYBER-PHYSICAL SYSTEMS, 2019, 34 (2-3): : 141 - 149