Abstract
Software models are key in separating and solving independent development concerns. However, there is still a gap on how to transition design information among these separate, but related models during development and maintenance. This paper addresses the problem on how to maintain the consistency of UML class diagrams during various levels of refinement. We present a new approach to automated consistency checking called ViewIntegra. Our approach separates consistency checking into transformation and comparison. It uses transformation to translate model elements to simplify their subsequent comparison. Transformation-based consistency checking, in the manner we use it, is new since we use transformation to bridge the gap between software models. No intermediate models or model checkers are required; developers need only be familiar with the models they design with and none other. The separation of transformation and comparison makes our approach to consistency checking more transparent. It also makes our approach useful for both propagating design changes among models and validating consistency. This gives developers added flexibility in deciding when to re-generate a model from scratch or when to re- solve its inconsistencies. Although this paper emphasizes the adaptation and evaluation of class diagrams, we found our technique to be equally useful on other models. Our approach is tool supported.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Abi-Antoun, M., Ho, J., Kwan, J.: Inter-Library Loan Management System: Revised Life-Cycle Architecture (1999)
Alvarado, S.: An Evaluation of Object Oriented Architecture Models for Satellite Ground Systems. In: Proceedings of the 2nd Ground Systems Architecture Workshop (GSAW) (February 1998)
Belkhouche, B., Lemus, C.: Multiple View Analysis and Design. In: Proceedings of the Viewpoint 1996: International Workshop on Multiple Perspectives in Software Development (October 1996)
Cheng, B.H.C., Wang, E.Y., Bourdeau, R.H.: A Graphical Environment for Formally Developing Object-Oriented Software. In: Proceedings of IEEE International Conference on Tools with AI (November 1994)
Cormen, T.H., Leiserson, C.E., Rivest, R.L.: Introduction to Algorithms. MIT Press, Cambridge (1996)
Egyed, A.: A Scenario-Driven Approach to Trace Dependency Analysis. IEEE Transactions on Software Engineering (TSE) 29(2), 116–132 (2003)
Egyed, A.: Compositional and Relational Reasoning during Class Abstraction. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 121–137. Springer, Heidelberg (2003)
Egyed, A.: Heterogeneous View Integration and its Automation. PhD Dissertation, Technical Report from the University of Southern California, USA (2000)
Egyed, A.: Automated Abstraction of Class Diagrams. ACM Transaction on Software Engineering and Methodology (TOSEM) 11(4), 449–491 (2002)
Egyed, A., Medvidovic, N.: A Formal Approach to Heterogeneous Software Modeling. In: Maibaum, T. (ed.) FASE 2000. LNCS, vol. 1783, pp. 178–192. Springer, Heidelberg (2000)
Ehrig, H., Heckel, R., Taentzer, G., Engels, G.: A Combined Reference Model- and View-Based Approach to System Specification. International Journal of Software Engineering and Knowledge Engineering 7(4), 457–477 (1997)
Ford, L.R., Fulkerson, D.R.: Flows in Networks. Princeton University Press, Princeton (1962)
Gieszl, L.R.: Traceability for Integration. In: Proceedings of the 2nd Conference on Systems Integration (ICSI 1992), pp. 220–228 (1992)
Grundy, J., Hosking, J., Mugridge, R.: Inconsistency Management for Multiple-View Software Development Environments. IEEE Transactions on Software Engineering (TSE)Â 24(11) (1998)
Hunter, A., Nuseibeh, B.: Analysing Inconsistent Specifications. In: Proceedings of 3rd International Symposium on Requirements Engineering (RE 1997) (January 1997)
Jackson, J.: A Keyphrase Based Traceability Scheme. In: IEE Colloquium on Tools and Techniques for Maintaining Traceability During Design, pp. 2-1–2/4 (1991)
Khriss, I., Elkoutbi, M., Keller, R.: Automating the Synthesis of UML Statechart Diagrams from Multiple Collaboration Diagrams. In: Proceedings for the Conference of the Unified Modeling Language, June 1998, pp. 132–147 (1998)
Koskimies, K., Systä, T., Tuomi, J., Männistö, T.: Automated Support for Modelling OO Software. IEEE Software, 87–94 (1998)
Lerner, B.S., Sutton, S.M., Osterweil, L.J.: Enhancing Design Methods to Support Real Design Processes. In: IWSSD-9 (April 1998)
Liu, J., Traynor, O., Krieg-Bruckner, B.: Knowledge-Based Tranformational Programming. In: 4th International Conference on Software Engineering and Knowledge Engineering (1992)
Moriconi, M., Qian, X., Riemenschneider, R.A.: Correct Architecture Refinement. IEEE Transactions on Software Engineering 21(4), 356–372 (1995)
Partsch, H., Steinbruggen, R.: Program Transformation Systems. ACM Computing Surveys 15(3), 199–236 (1983)
Perry, D.E.: Issues in Process Architecture. In: 9th International Software Process Workshop, Airlie, VA (October 1994)
Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual. Addison Wesley, Reading (1999)
Van Der Straeten, R., Mens, T., Simmonds, J., Jonckers, V.: Using Description Logic to Maintain Consistency between UML Models. In: Proceedings of 6th International Conference on the Unified Modeling Language, San Francisco, USA, pp. 326–340 (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Egyed, A. (2004). Consistent Adaptation and Evolution of Class Diagrams during Refinement. In: Wermelinger, M., Margaria-Steffen, T. (eds) Fundamental Approaches to Software Engineering. FASE 2004. Lecture Notes in Computer Science, vol 2984. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24721-0_3
Download citation
DOI: https://doi.org/10.1007/978-3-540-24721-0_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21305-5
Online ISBN: 978-3-540-24721-0
eBook Packages: Springer Book Archive