Nothing Special   »   [go: up one dir, main page]

skip to main content
10.5555/2663297.2663304acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Mapping architectural decay instances to dependency models

Published: 20 May 2013 Publication History

Abstract

The architectures of software systems tend to drift or erode as they are maintained and evolved. These systems often develop architectural decay instances, which are instances of design decisions that negatively impact a system's lifecycle properties and are the analog to code-level decay instances that are potential targets for refactoring. While code-level decay instances are based on source-level constructs, architectural decay instances are based on higher levels of abstractions, such as components and connectors, and related concepts, such as concerns. Unlike code-level decay instances, architectural decay usually has more significant consequences. Not being able to detect or address architectural decay in time incurs architecture debt that may result in a higher penalty in terms of quality and maintainability (interest) over time. To facilitate architecture debt detection, in this paper, we demonstrate the possibility of transforming architectural models and concerns into an extended augmented constraint network (EACN), which can uniformly model the constraints among design decisions and environmental conditions. From an ACN, a pairwise-dependency relation (PWDR) can be derived, which, in turn, can be used to automatically and uniformly detect architectural decay instances.

References

[1]
(2012) Poweredby - Hadoop Wiki. {Online}. Available: http://wiki.apache.org/hadoop/PoweredBy
[2]
A. Avritzer, D. Paulish, and Y. Cai, "Coordination implications of software architecture in a global software development project," in Proceedings of the Seventh Working IEEE/IFIP Conference on Software Architecture (WICSA 2008), ser. WICSA '08. Washington, DC, USA: IEEE Computer Society, 2008, pp. 107--116. {Online}. Available: http://dx.doi.org/10.1109/WICSA.2008.16
[3]
C. Y. Baldwin and K. B. Clark, "Design Rules, Vol. 1: The Power of Modularity," 2000.
[4]
D. Blei, A. Ng, and M. Jordan, "Latent dirichlet allocation," The Journal of Machine Learning Research, vol. 3, pp. 993--1022, 2003.
[5]
N. Brown, Y. Cai, Y. Guo, R. Kazman, M. Kim, P. Kruchten, E. Lim, A. MacCormack, R. Nord, I. Ozkaya, R. Sangwan, C. Seaman, K. Sullivan, and N. Zazworka, "Managing technical debt in software-reliant systems," in Proceedings of the FSE/SDP workshop on Future of software engineering research, ser. FoSER '10. New York, NY, USA: ACM, 2010, pp. 47--52. {Online}. Available: http://doi.acm.org.libproxy.usc.edu/10.1145/1882362.1882373
[6]
Y. Cai, S. Huynh, and T. Xie, "A framework and tool supports for testing modularity of software design," in Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering, ser. ASE '07. New York, NY, USA: ACM, 2007, pp. 441--444. {Online}. Available: http://doi.acm.org/10.1145/1321631.1321704
[7]
Y. Cai and K. Sullivan, "A formal model for automated software modularity and evolvability analysis," ACM Trans. Softw. Eng. Methodol., vol. 21, no. 4, pp. 21:1--21:29, Feb. 2013. {Online}. Available: http://doi.acm.org/10.1145/2377656.2377658
[8]
Y. Cai and K. J. Sullivan, "Simon: modeling and analysis of design space structures," in Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering, ser. ASE '05. New York, NY, USA: ACM, 2005, pp. 329--332. {Online}. Available: http://doi.acm.org/10.1145/1101908.1101962
[9]
Y. Cai and K. J. Sullivan, "Modularity analysis of logical design models," in Proceedings of the 21st IEEE/ACM International Conference on Automated Software Engineering, ser. ASE '06. Washington, DC, USA: IEEE Computer Society, 2006, pp. 91--102. {Online}. Available: http://dx.doi.org/10.1109/ASE.2006.53
[10]
M. Fowler, Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional, 1999.
[11]
J. Garcia, I. Krka, C. Mattmann, and N. Medvidovic, "Obtaining ground-truth software architectures," in International Conference on Software Engineering, 2013, to Appear.
[12]
J. Garcia, D. Popescu, C. Mattmann, N. Medvidovic, and Y. Cai, "Enhancing architectural recovery using concerns," in Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering, ser. ASE '11. Washington, DC, USA: IEEE Computer Society, 2011, pp. 552--555. {Online}. Available: http://dx.doi.org.libproxy.usc.edu/10.1109/ASE.2011.6100123
[13]
G. E. Joshua Garcia, Daniel Popescu and N. Medvidovic, "Identifying Architectural Bad Smells," in 13th European Conference on Software Maintenance and Reengineering, 2009.
[14]
A. K. Mackworth, "Consistency in networks of relations," Artificial intelligence, vol. 8, no. 1, pp. 99--118, 1977.
[15]
S. Malek, M. Mikic-Rakic, and N. Medvidovic, "A style-aware architectural middleware for resource-constrained, distributed systems," IEEE Transactions on Software Engineering, pp. 256--272, 2005.
[16]
N. R. Mehta, N. Medvidovic, and S. Phadke, "Towards a taxonomy of software connectors," in Proc. of the 22nd International Conference on Software Engineering, 2000.
[17]
K. Sethi, Y. Cai, S. Wong, A. Garcia, and C. Sant'Anna, "From retrospect to prospect: Assessing modularity and stability from software architecture," in Software Architecture, 2009 & European Conference on Software Architecture. WICSA/ECSA 2009. Joint Working IEEE/IFIP Conference on. IEEE, 2009, pp. 269--272.
[18]
M. Stal, "The beauty and quality of software," http://http://stal.blogspot.com/2011/01/beauty-and-quality-of-software.html.
[19]
R. Taylor, N. Medvidovic, K. Anderson, E. Whitehead Jr, J. Robbins, K. Nies, P. Oreizy, and D. Dubrow, "A component-and message-based architectural style for GUI software," Software Engineering, IEEE Transactions on, vol. 22, no. 6, pp. 390--406, 2002.
[20]
R. Taylor, N. Medvidovic, and E. Dashofy, "Software Architecture: Foundations, Theory, and Practice," 2009.
[21]
S. Wong and Y. Cai, "Improving the efficiency of dependency analysis in logical decision models," in Proceedings of the 2009 IEEE/ACM International Conference on Automated Software Engineering, ser. ASE '09. Washington, DC, USA: IEEE Computer Society, 2009, pp. 173--184. {Online}. Available: http://dx.doi.org/10.1109/ASE.2009.55
[22]
S. Wong, Y. Cai, G. Valetto, G. Simeonov, and K. Sethi, "Design rule hierarchies and parallelism in software development tasks," in Proceedings of the 2009 IEEE/ACM International Conference on Automated Software Engineering, ser. ASE '09. Washington, DC, USA: IEEE Computer Society, 2009, pp. 197--208. {Online}. Available: http://dx.doi.org/10.1109/ASE.2009.53

Cited By

View all
  • (2018)Improving the detection of evolutionary couplingProceedings of the 33rd Annual ACM Symposium on Applied Computing10.1145/3167132.3167283(1410-1416)Online publication date: 9-Apr-2018
  • (2015)Measure it? Manage it? Ignore it? software practitioners and technical debtProceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering10.1145/2786805.2786848(50-60)Online publication date: 30-Aug-2015

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
MTD '13: Proceedings of the 4th International Workshop on Managing Technical Debt
May 2013
71 pages
ISBN:9781467364430

Sponsors

Publisher

IEEE Press

Publication History

Published: 20 May 2013

Check for updates

Qualifiers

  • Research-article

Conference

ICSE '13
Sponsor:

Acceptance Rates

Overall Acceptance Rate 40 of 92 submissions, 43%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 01 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2018)Improving the detection of evolutionary couplingProceedings of the 33rd Annual ACM Symposium on Applied Computing10.1145/3167132.3167283(1410-1416)Online publication date: 9-Apr-2018
  • (2015)Measure it? Manage it? Ignore it? software practitioners and technical debtProceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering10.1145/2786805.2786848(50-60)Online publication date: 30-Aug-2015

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media