Towards Paradigm-Independent Software Assessment

The milestones of the history of software development are paradigm shifts. Each paradigm brought its own features and new ways of composing them to assemble software systems. Understanding the impact of paradigm shifts encompasses making comparisons among systems built with different paradigms. Performing this kind of assessments is a very difficult exercise since the characterization of software assets is generally performed using paradigm-specific quantifications. In this paper we propose a metamodel for describing software products (either source code or design models) that is paradigm-independent. This metamodel, combined with a formal quantification approach, can help performing paradigm-independent software systems assessment. We illustrate the use of the proposed metamodel on a case study comparing functionally-equivalent systems produced with OOP andAOP.

[1]  Gerardo Canfora,et al.  Using Test Cases as Contract to Ensure Service Compliance Across Releases , 2005, ICSOC.

[2]  Siobhán Clarke,et al.  06302 Summary -- Aspects For Legacy Applications , 2006, Aspects For Legacy Applications.

[3]  J. E. Barone,et al.  Comparing apples and oranges: a randomised prospective study , 2000, BMJ : British Medical Journal.

[4]  Venkataraman Ramesh,et al.  Research in computer science: an empirical study , 2004, J. Syst. Softw..

[5]  Venkataraman Ramesh,et al.  Research in software engineering: an analysis of the literature , 2002, Inf. Softw. Technol..

[6]  A. vanDeursen,et al.  A JHotDraw: A showcase for refactoring to aspects , 2005 .

[7]  Marvin V. Zelkowitz,et al.  Experimental validation in software engineering , 1997, Inf. Softw. Technol..

[8]  Colin J. Theaker,et al.  Measuring the Impact of Migration to an Object Oriented Paradigm , 1999, ECOOP Workshops.

[9]  Baowen Xu,et al.  Measuring Aspect Cohesion , 2004, FASE.

[10]  Terry A. Halpin,et al.  Information Modeling and Higher-order Types , 2004, CAiSE Workshops.

[11]  Carlos José Pereira de Lucena,et al.  Quantifying the Effects of Aspect-Oriented Programming: A Maintenance Study , 2006, 2006 22nd IEEE International Conference on Software Maintenance.

[12]  Carlos José Pereira de Lucena,et al.  On the Reuse and Maintenance of Aspect-Oriented Software: An Assessment Framework , 2003, SBES.

[13]  G. Kiczales,et al.  Aspect-oriented programming and modular reasoning , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[14]  Paul Lukowicz,et al.  Experimental evaluation in computer science: A quantitative study , 1995, J. Syst. Softw..

[15]  Mourad Badri,et al.  A Cohesion Measure for Aspects , 2006, J. Object Technol..