Abstract
Automated analysis of object-oriented design models can provide insight into the quality of a given software design. Data obtained from automated analysis, however, is often too complex to be easily understood by a designer. This paper examines the use of an automated analysis tool on industrial software UML class models, where one set of models was created as part of the design process and the other was obtained from reverse engineering code. The analysis was performed by DesignAdvisor, a tool developed by Siemens Corporate Research, that supports metrics-based analysis and detection of design guideline violations. The paper describes the lessons learned from using the automated analysis techniques to assess the quality of these models. We also assess the impact of design pattern use in the overall quality of the models. Based on our lessons learned, identify design guidelines that would minimize the occurrence of these errors.
This work is supported in part by Siemens Corporate Research, NSF grants EIA-0000433, CDA-9700732, CCR-9901017, Department of the Navy, and Office of Naval Research under Grant No. N00014-01-1-0744, and in cooperation with Siemens Transportation and Detroit Diesel Corporation.
Please contact B. Cheng for all correspondences
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
Rational Software: The Rational Unified Process (2002)
Chidamber, S.R., Kemerer, C.F.: A metrics suite of object oriented design. IEEE Transactions on Software Engineering 20 (1994)
Eder, J., Kappel, G., Schrefl, M.: Coupling and cohesion in object-oriented systems. In: Conference on Information and Knowledge Management, Baltimore, USA (1992)
Li, W., Henry, S.: Object-oriented metrics that predict maintainability. Journal of Systems and Software 23, 111–122 (1993)
Lorenz, M., Kidd, J.: Object-Oriented Software Metrics: A Practical Guide. Prentice-Hall, Englewood Cliffs (1994)
Harrison, R., Counsell, S., Nithi, R.: Coupling metrics for object-oriented design. In: 5th International Symposium on Software Metrics, pp. 150–157 (1998)
Tahvildari, L., Kontogiannis, K.: A metric-based approach to enhance design quality through meta-pattern transformations. In: Seventh European Conference on Software Maintenance and Reengineering, pp. 183–192 (2003)
Berenbach, B.: The evaluation of large, complex UML analysis and design models. In: 26th IEEE International Conference on Software Engineering, ICSE 2004 (2004)
Berenbach, B., Hartman, J.: DesignAdvisor, A UML-based Architectural Design Tool. Siemens Corporate Research (2002)
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)
The Object Modelling Group: OMG Unified Modelling Specification Version 1.5. Object Management Group, Needham MA (2003)
Babin, G., Lustman, F.: Formal data and behavior requirements engineering: a scenario based approach. In: 3rd annual IASTED International Conference on Software Engineering and Applications, pp. 119–125 (1999)
Jackson, M.: Formalism and informality in RE. In: Fifth IEEE International Symposium on Requirements Engineering, p. 269 (2001)
Li, X., Liu, Z., He, J.: Formal and use-case driven requirement analysis in UML. In: 25th Annual International Computer Software and Appliations Conference, pp. 215–224 (2001)
McUmber, W.E., Cheng, B.H.C.: A general framework for formalizing UML with formal languages. In: 23rd IEEE International Conference on Software Engineering (ICSE 2001), pp. 433–442 (2001)
Riel, A.J.: Object-Oriented Design Heuristics. Addison-Wesley, Reading (1996)
Campbell, L., Cheng, B.H.C., McUmber, W., Stirewalt, R.E.K.: Automatically detecting and visualizing errors in UML diagrams. Requirements Engineering Journal (2002)
Briand, L.C., Daly, J.W., Wüst, J.: A unified framework for cohesion measurement in object-oriented systems. Empirical Software Engineering: An International Journal 3, 65–117 (1998)
Chae, H.S., Kwon, Y.R.: A cohesion measure for classes in object-oriented systems. In: 5th International Symposium on Software Metrics, pp. 158–166 (1998)
Erni, K., Lewerentz, C.: Applying design-metrics to object-oriented frameworks. In: 3rd International Software Metrics Symposium, pp. 64–74 (1996)
Muthanna, S., Ponnambalam, K., Kontogiannis, K., Stacey, B.: Kontogiannis, K., Stacey, B.: A maintainability model for industrial software systems using design level metrics. In: 7th Working Conference on Reverse Engineering, pp. 248–257 (2000)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cheng, B.H.C., Stephenson, R., Berenbach, B. (2005). Lessons Learned from Automated Analysis of Industrial UML Class Models (An Experience Report) . In: Briand, L., Williams, C. (eds) Model Driven Engineering Languages and Systems. MODELS 2005. Lecture Notes in Computer Science, vol 3713. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11557432_24
Download citation
DOI: https://doi.org/10.1007/11557432_24
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-29010-0
Online ISBN: 978-3-540-32057-9
eBook Packages: Computer ScienceComputer Science (R0)