Conference proceeding
Design Rule Spaces: A New Form of Architecture Insight
36TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2014), (1), pp 967-977
01 Jan 2014
Abstract
In this paper, we investigate software architecture as a set of overlapping design rule spaces, formed by one or more structural or evolutionary relationships and clustered using our design rule hierarchy algorithm. Considering evolutionary coupling as a special type of relationship, we investigated (1) whether design rule spaces can reveal structural relations among error-prone files; (2) whether design rule spaces can reveal structural problems contributing to error-proneness. We studied three large-scale open source projects and found that error-prone files can be captured by just a few design rule sub-spaces. Supported by our tool, Titan, we are able to flexibly visualize design rule spaces formed by different types of relationships, including evolutionary dependencies. This way, we are not only able to visualize which error-prone files belong to which design rule spaces, but also to visualize the structural problems that give insight into why these files are error prone. Design rule spaces provide valuable direction on which parts of the architecture are problematic, and on why, when, and how to refactor.
Metrics
Details
- Title
- Design Rule Spaces: A New Form of Architecture Insight
- Creators
- Lu Xiao - Drexel UniversityYuanfang Cai - Drexel UniversityRick Kazman - University of Hawaii System
- Contributors
- P Jalote (Editor)L Briand (Editor)A VanderHoek (Editor)
- Publication Details
- 36TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2014), (1), pp 967-977
- Publisher
- Assoc Computing Machinery
- Number of pages
- 11
- Resource Type
- Conference proceeding
- Language
- English
- Academic Unit
- Computer Science
- Web of Science ID
- WOS:000387829200085
- Scopus ID
- 2-s2.0-84993660418
- Other Identifier
- 991019167812804721
InCites Highlights
Data related to this publication, from InCites Benchmarking & Analytics tool:
- Collaboration types
- Domestic collaboration
- Web of Science research areas
- Computer Science, Software Engineering