skip to main content
10.1145/1134285.1134339acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article

Instant consistency checking for the UML

Published:28 May 2006Publication History

ABSTRACT

Inconsistencies in design models should be detected immediately to save the engineer from unnecessary rework. Yet, tools are not capable of keeping up with the engineers' rate of model changes. This paper presents an approach for quickly, correctly, and automatically deciding what consistency rules to evaluate when a model changes. The approach does not require consistency rules with special annotations. Instead, it treats consistency rules as black-box entities and observes their behavior during their evaluation to identify what model elements they access. The UML/Analyzer tool, integrated with IBM Rational Rose™, fully implements this approach. It was used to evaluate 29 models with tens-of-thousands of model elements, evaluated on 24 types of consistency rules over 140,000 times. We found that the approach provided design feedback correctly and required, in average, less than 9ms evaluation time per model change with a worst case of less than 2 seconds at the expense of a linearly increasing memory need. This is a significant improvement over the state-of-the-art.

References

  1. Balzer, R.: Tolerating Inconsistency, Proceedings of 13th International Conference on Software Engineering (ICSE), May 1991, pp.158--165. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Belkhouche, B. and Lemus, C.: Multiple View Analysis and Design, Proceedings of the International Workshop on Viewpoint: Multiple Perspectives in Software Development, October 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Cheng, B. H. C., Wang, E. Y., and Bourdeau, R. H.: A Graphical Environment for Formally Developing Object-Oriented Software, Proceedings of IEEE International Conference on Tools with AI, November 1994.Google ScholarGoogle ScholarCross RefCross Ref
  4. Movie Player at http://peace.snu.ac.kr/dhkim/java/MPEG/.Google ScholarGoogle Scholar
  5. Egyed A. and Balzer B.: Integrating COTS Software into Systems through Instrumentation and Reasoning. Journal of Automated Software Engineering (JASE) 13(1), 2006, 41--64. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Emmerich, W.: GTSL | An Object-Oriented Language for Specication of Syntax Directed Tools, Proceedings of the 8th International Workshop on Software Speciation and Design, 1996, pp.26--35. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Fickas, S., Feather, M., Kramer, J.: Proceedings of the Workshop on Living with Inconsistency. Boston, USA, 1997.Google ScholarGoogle Scholar
  8. Finkelstein A., Gabbay D., Hunter A., Kramer J., and Nuseibeh B.: Inconsistency Handling in Multi-Perspective Specifications, IEEE Transactions on Software Engineering (TSE) 20(8), 1994, 569--578. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Habermann A. N. and Notkin D.: Gandalf: Software Development Environments. IEEE Transactions on Software Engineering, 12(12), 1986, 1117. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Hunter A. and Nuseibeh B.: Managing Inconsistent Specifications: Reasoning, Analysis, and Action. ACM Transactions on Software Engineering and Methodology 7(4), 1998, 335--367. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Kaplan, S. M. and Kaiser, G. E.: Incremental attribute evaluation in distributed language-based environments, Proceedings of the 5th ACM Symposium on Principles of Distributed Computing, Calgary, Canada, 1986, pp.121--130. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Mackworth A. K.: Consistency in Networks of Relations. Journal of Artificial Intelligence, 8(1), 1977, 99--118.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Nentwich C., Capra L., Emmerich W., and Finkelstein A.: xlinkit: a consistency checking and smart link generation service. ACM Transactions on Internet Technology (TOIT) 2(2), 2002, 151--185. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Nuseibeh, B. and Russo, A.: On the Consequences of Acting in the Presence of Inconsistency, Proceedings of the 9th International Workshop on Software Specification & Design, Ise-Shima, Japan, April 1998, pp.156--158. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Robins, J. and others: "ArgoUML," http://argouml.tigris.org/.Google ScholarGoogle Scholar
  16. Roussopoulos N.: An Incremental Access Method for ViewCache: Concept, Algorithms, and Cost Analysis. ACM Transactions on Database Systems 16(3), 1991, 535--563. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Taylor, R. N., Selby, R. W., Young, M., Belz, F. C., Clarce, L. A., Wileden, J. C., Osterweil, L., and Wolf, A. L.: Foundations of the Arcadia Environment Architecture, Proceedings of the 4th ACM SIGSOFT Symposium on Software Development Environments, Irvine, CA, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Tsiolakis, A. and Ehrig, H.: Consistency Analysis of UML Class and Sequence Diagrams using Attributed Graph Grammars, Proceedings of Workshop on Graph Transformation Systems (GRATRA), March 2000, pp.77--86.Google ScholarGoogle Scholar
  19. Unified Modeling Language (UML) at http://www.omg.org/.Google ScholarGoogle Scholar
  20. van Der Straeten, R., Mens, T., Simmonds, J., and Jonckers, V.: Using Description Logic to Maintain Consistency between UML Models, Proceedings of 6th International Conference on the Unified Modeling Language (UML 2003), October 2003.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Instant consistency checking for the UML

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        ICSE '06: Proceedings of the 28th international conference on Software engineering
        May 2006
        1110 pages
        ISBN:1595933751
        DOI:10.1145/1134285

        Copyright © 2006 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 28 May 2006

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article

        Acceptance Rates

        Overall Acceptance Rate276of1,856submissions,15%

        Upcoming Conference

        ICSE 2025

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader