This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Static Architecture-Conformance Checking: An Illustrative Overview
September/October 2010 (vol. 27 no. 5)
pp. 82-89
Leonardo Passos, Federal University of the Jequitinhonha and Mucuri Valleys, Brazil
Ricardo Terra, Federal University of Minas Gerais, Brazil
Marco Tulio Valente, Federal University of Minas Gerais, Brazil
Renato Diniz, Squadra Technology, Brazil
Nabor Mendonça, University of Fortaleza, Brazil
In this article, the authors compare and illustrate the use of three static architecture-conformance techniques: dependency-structure matrices, source code query languages, and reflexion models. To highlight the similarities and differences between these three techniques, they describe how to apply some of the techniques' available supporting tools to specify and check architectural constraints for a simple personal information management system.

1. D.E. Perry and A.L. Wolf, "Foundations for the Study of Software Architecture," Software Eng. Notes, vol. 17, no. 4, 1992, pp. 40–52.
2. J. Knodel and D. Popescu, "A Comparison of Static Architecture Compliance Checking Approaches," Proc. 6th Working IEEE/IFIP Conf. Software Architecture (WICSA), IEEE, 2007, p. 12.
3. P. Kruchten, "The 4 + 1 View Model of Architecture," IEEE Software, vol. 12, no. 6, 1995, pp. 42–50.
4. N. Sangal et al., "Using Dependency Models to Manage Complex Software Architecture," Proc. 20th Conf. Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), ACM Press, 2005, pp. 167–176.
5. M. Verbaere, M.W. Godfrey, and T. Girba, "Query Technologies and Applications for Program Comprehension," Proc. 16th IEEE Int'l Conf. Program Comprehension (ICPC), IEEE CS Press, 2008, pp. 285–288.
6. G.C. Murphy, D. Notkin, and K.J. Sullivan, "Software Reflexion Models: Bridging the Gap between Source and High-Level Models," Proc. 3rd Symp. Foundations of Software Eng. (FSE), ACM Press, 1995, pp. 18–28.
7. K.J. Sullivan et al., "The Structure and Value of Modularity in Software Design," Proc. 9th Int'l Symp. Foundations of Software Eng. (FSE), ACM Press, 2001, pp. 99–108.
8. R. Terra and M.T. Valente, "A Dependency Constraint Language to Manage Object-Oriented Software Architectures," Software: Practice and Experience, vol. 32, no. 12, 2009, pp. 1073–1094.
9. J. Knodel, D. Muthig, and D. Rost, "Constructive Architecture Compliance Checking—An Experiment on Support by Live Feedback," Proc. 24th IEEE Int'l Conf. Software Maintenance (ICSM), IEEE CS Press, 2008, pp. 287–296.
10. J. Rosik et al., "An Industrial Case Study of Architecture Conformance," Proc. 2nd Int'l Symp. Empirical Software Eng. and Measurement (ESEM), IEEE CS Press, 2008, pp. 80–89.
1. D. Hou and H.J. Hoover, "Using SCL to Specify and Check Design Intent in Source Code," IEEE Trans. Software Eng., vol. 32, no. 6, 2006, pp. 404—423.
2. M. Eichberg et al., "Defining and Continuous Checking of Structural Program Dependencies," Proc. 30th Int'l Conf. Software Eng. (ICSE), IEEE CS Press, 2008, pp. 391—400.
3. R. Terra and M.T. Valente, "A Dependency Constraint Language to Manage Object-Oriented Software Architectures," Software: Practice and Experience, vo. 32, no. 12, 2009, pp. 1073—1094.
4. N. Medvidovic and R.N. Taylor, "A Classification and Comparison Framework for Software Architecture Description Languages," IEEE Trans. Software Eng., vol. 26, no. 1, 2000, pp. 70—93.
5. J. Knodel and D. Popescu, "A Comparison of Static Architecture Compliance Checking Approaches," Proc. 6th Working IEEE/IFIP Conf. Software Architecture (WICSA), IEEE, 2007, p. 12.
6. J. Rosik et al., "An Industrial Case Study of Architecture Conformance," Proc. 2nd Int'l Symp. Empirical Software Eng. and Measurement (ESEM), IEEE CS Press, 2008, pp. 80—89.

Index Terms:
architecture conformance, architectural erosion, software reflexion models, dependency-structure matrices, source code query languages
Citation:
Leonardo Passos, Ricardo Terra, Marco Tulio Valente, Renato Diniz, Nabor Mendonça, "Static Architecture-Conformance Checking: An Illustrative Overview," IEEE Software, vol. 27, no. 5, pp. 82-89, Sept.-Oct. 2010, doi:10.1109/MS.2009.117
Usage of this product signifies your acceptance of the Terms of Use.