Abstract
Using model-to-model transformations to generate analysis models or code from architecture models is sought to promote compliance and reuse of components. The maintainability of transformations is influenced by various characteristics - as with every programming language artifact. Code metrics are often used to estimate code maintainability. However, most of the established metrics do not apply to declarative transformation languages (such as QVT Relations) since they focus on imperative (e.g. object-oriented) coding styles. One way to characterize the maintainability of programs are code metrics. However, the vast majority of these metrics focus on imperative (e.g., object-oriented) coding styles and thus cannot be reused as-is for transformations written in declarative languages. In this paper we propose an initial set of quality metrics to evaluate transformations written in the declarative QVT Relations language. We apply the presented set of metrics to several reference transformations to demonstrate how to judge transformation maintainability based on our metrics.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Becker, S.: Quality of Service Modeling Language. In: Eusgeld, I., Freiling, F.C., Reussner, R. (eds.) Dependability Metrics. LNCS, vol. 4909, pp. 43–47. Springer, Heidelberg (2008)
Becker, S., Hauck, M., Trifu, M., Krogmann, K., Kofroň, J.: Reverse Engineering Component Models for Quality Predictions. In: Proceedings of the 14th European Conference on Software Maintenance and Reengineering, European Projects Track (2010)
Boehm, B.W., Brown, J.R., Lipow, M.: Quantitative evaluation of software quality. In: ICSE 1976: Proceedings of the 2nd international conference on Software engineering, pp. 592–605. IEEE Computer Society Press, Los Alamitos (1976)
Czarnecki, K., Eisenecker, U.W.: Generative Programming (2000)
Brito, F., Abreu.: Using ocl to formalize object oriented metrics definitions. Technical report, FCT/UNL and INSC (2001)
Fenton, N.E.: Software Metrics: A Rigorous Approach. Chapman & Hall, Ltd., London (1991)
Fowler, M., Beck, K., Brant, J., Opdyke, W., Roberts, D.: Refactoring: Improving the Design of Existing Code (1999)
Goldschmidt, T., Kuebler, J.: Towards Evaluating Maintainability Within Model-Driven Environments. In: Software Engineering 2008, Workshop Modellgetriebene Softwarearchitektur - Evolution, Integration und Migration (2008)
Goldschmidt, T., Wachsmuth, G.: Refinement transformation support for QVT Relational transformations. In: 3rd Workshop on Model Driven Software Engineering, MDSE 2008 (2008)
Happe, J., Friedrich, H., Becker, S., Reussner, R.H.: A Pattern-Based Performance Completion for Message-Oriented Middleware. In: Proceedings of the 7th International Workshop on Software and Performance (WOSP 2008), pp. 165–176. ACM, New York (2008)
Harrison, R., Samaraweera, L.G., Dobie, M.R., Lewis, P.H.: Estimating the quality of functional programs: an empirical investigation. Information and Software Technology 37(12), 701–707 (1995)
Henderson-Sellers, B.: Object-oriented metrics: measures of complexity. Prentice-Hall, Inc., Upper Saddle River (1996)
Kapova, L., Becker, S.: Systematic refinement of performance models for concurrent component-based systems. In: Proceedings of the Seventh International Workshop on Formal Engineering approches to Software Components and Architectures (FESCA 2010). Electronic Notes in Theoretical Computer Science (2010)
Kübler, J., Goldschmidt, T.: A Pattern Mining Approach Using QVT. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 174–189. Springer, Heidelberg (2009)
Lange, C.F.J.: Phd thesis: Assessing and improving the quality of modeling a series of empirical studies (2007)
Masak, D.: Legacysoftware. Springer, Heidelberg (2005)
Object Management Group. MOF 2.0 Query/View/Transformation, version 1.0 (2008)
Reynoso, L., Genero, M., Piattini, M., Manso, E.: Assessing the impact of coupling on the understandability and modifiability of ocl expressions within uml/ocl combined models. In: 11th IEEE International Symposium on Software Metrics, September 19-22 , p. 10 (2005)
Rubey, R.J., Hartwick, R.D.: Quantitative measurement of program quality. In: Proceedings of the 1968, 23rd ACM national conference, pp. 671–677. ACM, New York (1968)
Solso, R.L.: Cognitive Psychology. Allyn and Bacon (2001)
Stammel, J., Reussner, R.: Kamp: Karlsruhe architectural maintainability prediction. In: Proceedings of the 1. Workshop des GI-Arbeitskreises Langlebige Softwaresysteme (L2S2): Design for Future - Langlebige Softwaresysteme, pp. 87–98 (2009)
van Amstel, M.F., Lange, C.F.J., van den Brand, M.G.J.: Metrics for analyzing the quality of model transformations. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 239–248. Springer, Heidelberg (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kapová, L., Goldschmidt, T., Becker, S., Henss, J. (2010). Evaluating Maintainability with Code Metrics for Model-to-Model Transformations. In: Heineman, G.T., Kofron, J., Plasil, F. (eds) Research into Practice – Reality and Gaps. QoSA 2010. Lecture Notes in Computer Science, vol 6093. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13821-8_12
Download citation
DOI: https://doi.org/10.1007/978-3-642-13821-8_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-13820-1
Online ISBN: 978-3-642-13821-8
eBook Packages: Computer ScienceComputer Science (R0)