Formalizing Object-Oriented Design Metrics upon the UML Meta-Model
Resumo
This paper discusses the formalization effort of object-oriented design metrics definitions and presents some concrete examples, developed upon the UML meta-model. The Object Constraint Language (OCL), a part of the Unified Modeling Language (UML) standard, is used in the formalization. The combination of the UML meta-model and OCL allows unambiguous metrics definition, which in turn helps increasing tool support for object-oriented metrics extraction. This formalization renders possible the comparisons among different sets of metrics, as well as it may be used to establish a common vocabulary among different stakeholders. As consequence, the precision of the metrics collection increases, contributing to the overall quality of the Software Engineering process.
Referências
Y. Wand, "A Proposal for a Formal Model of Objects", in Object-Oriented Concepts, Databases, and Applications, K. Won and F. H. Lochovsky, Eds. Reading, MA, EUA: Addison-Wesley, 1989.
M. Lorenz and J. Kidd, Object-Oriented Software Metrics: A Practical Guide. Englewood Cliffs, NJ, EUA: Prentice Hall, 1994.
S. R. Chidamber and C. F. Kemerer, "A Metrics Suite for Object Oriented Design", IEEE Transactions on Software Engineering, vol. 20, pp. 476-493, 1994.
F. B. Abreu and R. Carapuça, "Object-Oriented Software Engineering: Measuring and Controlling the Development Process", presented at 4th International Conference on Software Quality, McLean, Virginia, EUA, 1994.
F. B. Abreu, "Quantitative Methods for Object-Oriented Systems", presented at 7th ERCIM Workshop on Object Oriented Databases, Lisboa, Portugal, 1995.
B. Henderson-Sellers, "The Mathematical Validity of Software Metrics", Software Engineering Notes, pp. 89-94, 1996.
G. Poels and G. Dedene, "Formal Software Measurement for Object-Oriented Business Models", presented at 7th European Software Control and Metrics Conference (ESCOM' 96), Wilmslow, UK, 1996.
A. L. Baroni, S. Braz, and F. B. Abreu, "Using OCL to Formalize Object-Oriented Design Metrics Definitions", in ECOOP'02 Workshop on Quantitative Approaches in OO Software Engineering, Lecture Notes in Computer Science: Springer-Verlag, 2002.
F. B. Abreu, "The MOOD2 Metrics Set (in Portuguese)", INESC, April 1998.
OMG, Rational Software et al, "Object Constraint Language Specification (version 1.1)", Menlo Park, CA, EUA: Object Management Group, 1997.
OMG, "Unified Modeling Language Specification (version 1.3)", Rational Software et al., Ed.: Object Management Group, 1999.
OMG, "UML Notation Guide (version 1.4)", R. e. al., Ed. Menlo Park, CA, EUA: Object Management Group, 2001.
F. B. Abreu, "Using OCL to formalize object oriented metrics definitions," INESC, ES007/2001, May 2001.
F. B. Abreu, L. M. Ochoa, and M. A. Goulão, "The GOODLY Design Language for MOOD Metrics Collection", INESC, R16/97, March 1997.
Rational Software Corporation, "Rational Rose", http://www.rational.com/products/rose/index.jsp, 2001.
Rational Software Corporation, "Rational Objectory Case Tool", http://www.inf.ufsc.br/poo/ine5383/orydemo/ory.htm, 4.1 ed, 1998.
Oracle Technology Network, "Oracle 9i JDeveloper", http://otn.oracle.com/products/jdev/content.html, 9i ed, April 2002.
Excel Software, "QuickUML", http://www.excelsoftware.com/index.html
Sybase Inc., "PowerDesigner", [link], 9.0 ed.
University of Bremen, "USE - A UML-based Specification Environment", http://dustbin.informatik.uni-bremen.de/projects/USE/
Cybernetic Intelligence GmbH, "OCL Compiler", http://www.cybernetic.org/, 1.5 ed.
Elixir Technology, "Elixer Java IDE", http://www.elixirtech.com/, 2.4 ed.
BoldSoft, "ModelRun", http://www.boldsoft.com/products/modelrun/index.html, BoldSoft MDE AB, Sweden.
F. B. Abreu, "Metrics for Object Oriented Software Development", presented at 3rd International Conference on Software Quality, Lake Tahoe, Nevada, EUA, 1993.
F. B. Abreu and J. S. Cuche, "Collecting and Analyzing the MOOD2 Metrics", presented at ECOOP' 98 Workshop - Object-Oriented Product Metrics for Software Quality Assessment, Brussels, Belgium, 1998.
D. Firesmith, B. Henderson-Sellers, and I. Graham, "OPEN Modeling Language (OML) - Core Notation Specification", OPEN Consortium Version 0.1, July 1996.
B. Henderson-Sellers and I. Graham, "OPEN: Towards Method Convergence?", IEEE Computer, vol. 29, pp. 86-89, 1996.
B. Henderson-Sellers, "The OPEN Methodology", Object Magazine, vol. 6, pp. 56-59, 1996.
B. Henderson-Sellers, T. Simons, and H. Younessi, The OPEN Toolbox of Techniques: Addison-Wesley Publishing Company, 1998.
B. Henderson-Sellers, A BOOK of Object-Oriented Knowledge. Sydney, Australia: Prentice Hall PTR, 1991.
B. Henderson-Sellers and J. M. Edwards, BOOK TWO of Object-Oriented Knowledge: the Working Object. Sydney, Australia: Prentice Hall, 1994.
I. M. Graham, "A Non-Procedural Process Model for Object-Oriented Software Development", Report on Object Oriented Analyses and Design, vol. 5, 1995.
D. G. Firesmith and B. Henderson-Sellers, The OPEN Process Framework: an Introduction: Addison-Wesley Publishing Company, 2000.
J. Odell, "Meta-Modeling", presented at OOPSLA' 95 Metamodeling Workshop, 1995