Quantifying the Analyzability of Software Architectures

被引:21
作者
Bouwers, Eric [1 ,2 ]
Correia, Jose Pedro [1 ]
van Deursen, Arie [2 ]
Visser, Joost [1 ]
机构
[1] Software Improvement Grp, Amsterdam, Netherlands
[2] Delft Univ Technol, Delft, Netherlands
来源
2011 9TH WORKING IEEE/IFIP CONFERENCE ON SOFTWARE ARCHITECTURE (WICSA) | 2011年
关键词
QUALITY; METRICS;
D O I
10.1109/WICSA.2011.20
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The decomposition of a software system into components is a major decision in any software architecture, having a strong influence on many of its quality aspects. A system's analyzability, in particular, is influenced by its decomposition into components. But into how many components should a system be decomposed to achieve optimal analyzability? And how should the elements of the system be distributed over those components? In this paper, we set out to find answers to these questions with the support of a large repository of industrial and open source software systems. Based on our findings, we designed a metric which we call Component Balance. In a case study we show that the metric provides pertinent results in various evaluation scenarios. In addition, we report on an empirical study that demonstrates that the metric is strongly correlated with ratings for analyzability as given by experts.
引用
收藏
页码:83 / 92
页数:10
相关论文
共 26 条
[1]  
[Anonymous], 2008, AGGREGATION FUNCTION
[2]  
[Anonymous], 2001, ISO/IEC 9126-1:2001
[3]   A framework for classifying and comparing software architecture evaluation methods [J].
Babar, MA ;
Zhu, LM ;
Jeffery, R .
2004 AUSTRALIAN SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2004, :309-318
[4]  
Baggen R., 2010, 4 INT WORKSH SOFTW Q
[5]   The measurement of software design quality [J].
Blundell, JK ;
Hines, ML ;
Stach, J .
ANNALS OF SOFTWARE ENGINEERING, 1997, 4 :235-255
[6]  
Bouwers E., 2010, P 18 INT C PROGR COM
[7]   A Lightweight Sanity Check for Implemented Architectures [J].
Bouwers, Eric ;
van Deursen, Arie .
IEEE SOFTWARE, 2010, 27 (04) :44-50
[8]  
Christensen HB, 2010, LECT NOTES COMPUT SC, V6285, P118, DOI 10.1007/978-3-642-15114-9_11
[9]  
Clements P., 2003, SEI S SOFTW
[10]  
CLEMENTS P, 2005, EVALUATING SOFTWARE