Abstract
Models defined using the Unified Modeling Language (UML) are nowadays common parts of software documentations, specifications and sometimes even implementations. However, there is a broad variety of how UML is used. Reasons can be found, for example, in the lack of generally accepted modeling norms and guidelines, the semi-formal semantics of UML, or the complexity of the language. In practice, these factors inevitably lead to quality problems in UML models that need to be addressed.We investigate and discuss existing work in the field of quality assessment and improvement of UML models and present how we envision an integrated approach to quality assessment and improvement of UML models. We assess a model with a Factor-Criteria-Metrics (FCM) based quality model, detect issues by finding smells and violated metric thresholds in UML models, and improve UML models by applying refactorings using model-to-model transformations.
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
Neukirchen, H., Zeiss, B., Grabowski, J.: An Approach to Quality Engineering of TTCN-3 Test Specifications. International Journal on Software Tools for Technology Transfer (STTT) 10(4), 309–326 (2008)
Neukirchen, H., Zeiss, B., Grabowski, J., Baker, P., Evans, D.: Quality Assurance for TTCN-3 Test Specifications. Software Testing, Verification and Reliability (STVR) 18(2) (2008)
Object Management Group (OMG): Meta Object Facility (MOF) Core Specification, Vers. 2.0, http://www.omg.org/docs/formal/06-01-01.pdf
Object Management Group (OMG): UML Infrastructure Specification, Vers. 2.2, http://www.omg.org/docs/formal/09-02-04.pdf
Object Management Group (OMG): UML Superstructure Specification, Vers. 2.2, http://www.omg.org/docs/formal/09-02-02.pdf
Abstratt Technologies: TextUML Toolkit, http://www.abstratt.com
Object Management Group (OMG): MOF 2.0/XMI Mapping, Vers. 2.1.1, http://www.omg.org/docs/formal/07-12-01.pdf
Object Management Group (OMG): OCL Core Specification Vers. 2.0, http://www.omg.org/docs/formal/06-05-01.pdf
Fenton, N., Pfleeger, S.: Software Metrics: A Rigorous and Practical Approach. PWS Publishing, Boston (1997)
McCall, J., Richards, P., Walters, G.: Factors in Software Quality. Technical Report RADC TR-77-369, US Rome Air Development Center (1977)
International Organization for Standardization (ISO) / International Electrotechnical Commission (IEC): ISO/IEC Standard No. 9126. Software Engineering- Product Quality; Part 1-4 (2001-2004)
Basili, V.R., Weiss, D.M.: A Methodology for Collecting Valid Software Engineering Data. IEEE Transactions on Software Engineering 10(6), 728–738 (1984)
Fowler, M.: Refactoring – Improving the Design of Existing Code. Addison-Wesley, Reading (1999)
van Emden, E., Moonen, L.: Java Quality Assurance by Detecting Code Smells. In: Proceedings 9th Working Conference on Reverse Engineering (WCRE 2002), pp. 97–106. IEEE, Los Alamitos (2002)
Parnas, D.: Software Aging. In: Proceedings of the 16th International Conference on Software Engineering (ICSE), pp. 279–287. IEEE Computer Society Press, Los Alamitos (1994)
Lange, C.: Assessing and Improving the Quality of Modeling. PhD thesis, Technische Universiteit Eindhoven, Netherland (2007)
Lange, C., Chaudron, R.: Managing Model Quality in UML-Based Software Development. In: Proceedings of the 13th IEEE International Workshop on Software Technology and Engineering in Practice (STEP 2005), pp. 7–16. IEEE Computer Society, Washington (2005)
Mohagheghi, P., Aagedal, J.: Evaluating Quality in Model-Driven Engineering. In: Proceedings of the International Workshop on Modeling in Software Engineering (MISE 2007), p. 6. IEEE Computer Society Press, Washington, DC (2007)
Pareto, L., Boquist, U.: A Quality Model for Design Documentation in Model-Centric Projects. In: Proceedings of the 3rd International Workshop on Software Quality Assurance (SOQUA 2006), pp. 30–37. ACM Press, New York (2006)
Lange, C.: Improving the Quality of UML Models in Practice. In: Proceedings of 28th International Conference on Software Engineering (ICSE 2006), pp. 993–996. ACM, New York (2006)
Chidamber, S.R., Kemerer, C.: A Metric Suite for Object-Oriented Design. IEEE Transactions on Software Engineering 20(6), 476–493 (1994)
Kim, H., Boldyreff, C.: Developing Software Metrics Applicable to UML Models. In: Proceedings of the 6th ECOOP Workshop on Quantitative Approaches in Object-Oriented Engineering (2002)
Baroni, A., Braz, S., Abreu, F.B.: Using OCL to Formalize Object-Oriented Design Metrics Definitions. In: Proceedings of the 6th ECOOP Workshop on Quantitative Approaches in Object-Oriented Software Engineering (2002)
McQuillan, J., Power, J.: A Metamodel for the Measurement of Object-Oriented Systems: An Analysis using Alloy. In: Proceedings of the 2008 international Conference on Software Testing, Verification (ICST), pp. 228–297. IEEE Computer Society Press, Washington (2008)
El-Wakil, M., El-Bastawisi, A., Riad, M.B., Fahmy, A.A.: A Novel Approach to Formalize Object-Oriented Design Metrics. In: Proceedings of the 9th International Conference on Empirical Assessment in Software Engineering (2005)
Kiewkanya, M., Muenchaisri, P.: Measuring Maintainability in Early Phase using Aesthetic Metrics. In: Dosch, W., Freund, R., Mastorakis, N. (eds.) SEPADS 2005, pp. 1–6. WSEAS, Stevens Point, Wisconsin (2005)
Purchase, H., Allder, J.-a., Carrington, D.: Graph Layout Aesthetics in UML Diagrams: User Preferences. Journal of Graph Algorithms and Applications 6(3), 255–279 (2002)
Eichelberger, H., von Gudenberg, J.W.: UML Class Diagrams - State of the Art in Layout Techniques. In: Proceedings of the International Workshop on Visualizing Software for Understanding and Analysis, Amsterdam (2003)
Gronback, R.: Model Validation: Applying Audits and Metrics to UML Models (2004), http://conferences.codegear.com/jp/article/32089
Ambler, S.: The Elements of UML 2.0 Style. Cambridge University Press, Cambridge (2005)
Astels, D.: Refactoring with UML. In: Proceedings of the 3rd International Conference on eXtreme Programming and Flexible Processes in Software Engineering, XP 2002 (2002)
Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley, Reading (1999)
France, R., Bieman, J.: Multi-View Software Evolution — A UML-based Framework for Evolving Object-Oriented Software. In: Proceedings of 17th IEEE International Conference on Software Maintenance (ICSM 2001). IEEE Computer Society Press, Los Alamitos (2001)
Sunyé, G., Pollet, D., Traon, Y., Jézéquel, J.: Refactoring UML Models. In: Gogolla, M., Kobryn, C. (eds.) UML 2001. LNCS, vol. 2185, pp. 134–148. Springer, Heidelberg (2001)
Porres, I.: Model Refactorings as Rule-Based Update Transformations. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 159–174. Springer, Heidelberg (2003)
Dobrzański, L.: UML Model Refactoring- Support for Maintenance of Executable UML Models. Master’s thesis, Blekinge Institute of Technology, School of Engineering, Ronneby, Sweden (2005)
Mellor, S., Balcer, M.: Executable UML: A Foundation for Model-Driven Architecture. Addison-Wesley, Reading (2002)
Biermann, E., Ermel, C., Taentzer, G.: Precise Semantics of EMF Model Transformations by Graph Transformation. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 53–67. Springer, Heidelberg (2008)
Folli, A., Mens, T.: Refactoring of UML models using AGG. In: Proceedings of the 3rd International ERCIM Symposium on Software Evolution (2007)
Taentzer, G.: A Graph Transformation Environment for Modeling and Validation of Software. In: Pfaltz, J.L., Nagl, M., Böhlen, B. (eds.) AGTIVE 2003. LNCS, vol. 3062, pp. 446–453. Springer, Heidelberg (2004)
Battista, G.D., Eades, P., Tamassia, R., Tollis, I.G.: Graph Drawing - Algorithms for the Visualization of Graphs. Prentice-Hall, Englewood Cliffs (1998)
Castello, R., Mili, R., Tollis, I.: Automatic Layout of Statecharts. Software Practice & Experience 32(1), 25–55 (2002)
SDMetrics: The Software Design Metrics tool for the UML, http://www.sdmetrics.com
Borland: Borland Together, http://www.borland.com/us/products/together
IBM: IBM Rational Systems Developer, http://www.ibm.com/software/awdtools/developer/systemsdeveloper
ArgoUML Project: ArgoUML, http://argouml.tigris.org
Lange, C., Chaudron, R.: Empanada: Empirical analysis of architecture and design quality, http://www.win.tue.nl/empanada/tools.htm
Boger, M., Sturm, T., Fragemann, P.: Refactoring Browser for UML. In: Aksit, M., Mezini, M., Unland, R. (eds.) NODe 2002. LNCS, vol. 2591, pp. 366–377. Springer, Heidelberg (2003)
Gorp, P., Stenten, H., Mens, T., Demeyer, S.: Towards Automating Source-Consistent UML Refactorings. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 144–158. Springer, Heidelberg (2003)
Seuring, P.: Design and Implementation of a UML Model Refactoring Tool. Master’s thesis, Hasso-Plattner-Institute for Software Systems Engineering at the University of Potsdam (2005)
Zeiss, B., Vega, D., Schieferdecker, I., Neukirchen, H., Grabowski, J.: Applying the ISO 9126 Quality Model to Test Specifications – Exemplified for TTCN-3 Test Specifications. In: Proceedings of Software Engineering 2007 (SE 2007). Lecture Notes in Informatics (LNI), vol. 105, Köllen Verlag (2007)
Object Management Group (OMG): Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification, http://www.omg.org/docs/formal/08-04-03.pdf
openArchitectureWare.org: openArchitectureWare (oAW), http://www.openarchitectureware.org
Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I., Valduriez, P.: ATL: A QVT-Like Transformation Language. In: Companion to the 21st ACM SIGPLAN Symposium on Object-Oriented Programming Systems, Languages, and Applications. ACM Press, New York (2006)
Eclipse Foundation: Eclipse Model Development Tools (MDT) OCL, http://www.eclipse.org/modeling/mdt/?project=ocl
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Jalbani, A.A., Grabowski, J., Neukirchen, H., Zeiss, B. (2009). Towards an Integrated Quality Assessment and Improvement Approach for UML Models. In: Reed, R., Bilgic, A., Gotzhein, R. (eds) SDL 2009: Design for Motes and Mobiles. SDL 2009. Lecture Notes in Computer Science, vol 5719. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-04554-7_5
Download citation
DOI: https://doi.org/10.1007/978-3-642-04554-7_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-04553-0
Online ISBN: 978-3-642-04554-7
eBook Packages: Computer ScienceComputer Science (R0)