Advertisement

Semantically Configurable Consistency Analysis for Class and Object Diagrams

  • Shahar Maoz
  • Jan Oliver Ringert
  • Bernhard Rumpe
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6981)

Abstract

Checking consistency between an object diagram (OD) and a class diagram (CD) is an important analysis problem. However, several variations in the semantics of CDs and ODs, as used in different contexts and for different purposes, create a challenge for analysis tools. To address this challenge in this paper we investigate semantically configurable model analysis. We formalize the variability in the language’s semantics using a feature model: each configuration that the model permits induces a different semantics. Moreover, we develop a parametrized analysis that can be instantiated to comply with every legal configuration of the feature model. Thus, the analysis is semantically configured and its results change according to the semantics induced by the selected feature configuration. The ideas are implemented using a parametrized transformation to Alloy. The work can be viewed as a case study example for a formal and automated approach to handling semantic variability in modeling languages.

Keywords

Feature Model Object Model Class Diagram Parametrized Transformation Software Product Line 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Alloy Analyzer website, http://alloy.mit.edu/ (accessed July 2011)
  2. 2.
    Anastasakis, K., Bordbar, B., Georg, G., Ray, I.: On challenges of model transformation from UML to Alloy. Software and Systems Modeling 9(1), 69–86 (2010)CrossRefGoogle Scholar
  3. 3.
    Batory, D.S.: Feature models, grammars, and propositional formulas. In: Obbink, H., Pohl, K. (eds.) SPLC 2005. LNCS, vol. 3714, pp. 7–20. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  4. 4.
    Broy, M., Cengarle, M.V., Grönniger, H., Rumpe, B.: Considerations and Rationale for a UML System Model. In: Lano, K. (ed.) UML 2 Semantics and Applications. Wiley, Chichester (2009)Google Scholar
  5. 5.
    Broy, M., Cengarle, M.V., Grönniger, H., Rumpe, B.: Definition of the System Model. In: Lano, K. (ed.) UML 2 Semantics and Applications. Wiley, Chichester (2009)Google Scholar
  6. 6.
    Cabot, J., Clarisó, R., Riera, D.: UMLtoCSP: a tool for the formal verification of UML/OCL models using constraint programming. In: ASE, pp. 547–548. ACM, New York (2007)CrossRefGoogle Scholar
  7. 7.
    Cengarle, M.V., Grönniger, H., Rumpe, B.: System Model Semantics of Class Diagrams. Informatik-Bericht 2008-05, Technische Universität Braunschweig (2008)Google Scholar
  8. 8.
    Cengarle, M.V., Grönniger, H., Rumpe, B.: Variability within modeling language definitions. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 670–684. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  9. 9.
    Czarnecki, K., Eisenecker, U.: Generative Programming Methods, Tools, and Applications. Addison-Wesley, Reading (2000)Google Scholar
  10. 10.
    Evans, A., France, R.B., Lano, K., Rumpe, B.: The UML as a Formal Modeling Notation. In: Bézivin, J., Muller, P.-A. (eds.) UML 1998. LNCS, vol. 1618, pp. 336–348. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  11. 11.
    FreeMarker, http://freemarker.org/ (accessed July 2011)
  12. 12.
    Gogolla, M., Büttner, F., Richters, M.: USE: A UML-based specification environment for validating UML and OCL. Sci. Comput. Program 69(1-3), 27–34 (2007)CrossRefzbMATHMathSciNetGoogle Scholar
  13. 13.
    Jackson, D.: Software Abstractions: Logic, Language, and Analysis. MIT Press, Cambridge (2006)Google Scholar
  14. 14.
    Kästner, C., Thüm, T., Saake, G., Feigenspan, J., Leich, T., Wielgorz, F., Apel, S.: FeatureIDE: A tool framework for feature-oriented software development. In: ICSE, pp. 611–614 (2009)Google Scholar
  15. 15.
    Krahn, H., Rumpe, B., Völkel, S.: MontiCore: a framework for compositional development of domain specific languages. Int. J. on Software Tools for Technology Transfer (STTT) 12(5), 353–372 (2010)CrossRefGoogle Scholar
  16. 16.
    Lu, Y., Atlee, J.M., Day, N.A., Niu, J.: Mapping template semantics to SMV. In: ASE, pp. 320–325. IEEE Computer Society, Los Alamitos (2004)Google Scholar
  17. 17.
    Maoz, S., Ringert, J.O., Rumpe, B.: CD2Alloy: Class diagrams analysis using Alloy revisited. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS. LNCS, vol. 6981, pp. 592–607. Springer, Heidelberg (2011)Google Scholar
  18. 18.
    Mendonça, M., Branco, M., Cowan, D.D.: S.P.L.O.T.: software product lines online tools. In: OOPSLA Companion, pp. 761–762 (2009), http://www.splot-research.org/
  19. 19.
    MontiCore project, http://www.monticore.org/
  20. 20.
    Niu, J., Atlee, J.M., Day, N.A.: Template semantics for model-based notations. IEEE Trans. Software Eng. 29(10), 866–882 (2003)CrossRefGoogle Scholar
  21. 21.
    Perlis, A.J.: Epigrams on programming. SIGPLAN Notices 17(9), 7–13 (1982)CrossRefGoogle Scholar
  22. 22.
    Prout, A., Atlee, J.M., Day, N.A., Shaker, P.: Semantically configurable code generation. In: Busch, C., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 705–720. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  23. 23.
    Rumpe, B.: Modellierung mit UML. Springer, Heidelberg (2004)CrossRefzbMATHGoogle Scholar
  24. 24.
    Semantic variability project website, http://www.se-rwth.de/materials/semvar/
  25. 25.
    Simmonds, J., Bastarrica, M.C.: A tool for automatic UML model consistency checking. In: ASE, pp. 431–432. ACM, New York (2005)CrossRefGoogle Scholar
  26. 26.
    Soeken, M., Wille, R., Kuhlmann, M., Gogolla, M., Drechsler, R.: Verifying UML/OCL models using Boolean satisfiability. In: DATE, pp. 1341–1344. IEEE, Los Alamitos (2010)Google Scholar
  27. 27.
    Van Der Straeten, R., Mens, T., Simmonds, J., Jonckers, V.: Using Description Logic to Maintain Consistency between UML Models. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 326–340. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  28. 28.
    Taleghani, A., Atlee, J.M.: Semantic variations among UML stateMachines. In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 245–259. Springer, Heidelberg (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Shahar Maoz
    • 1
  • Jan Oliver Ringert
    • 1
  • Bernhard Rumpe
    • 1
  1. 1.Software EngineeringRWTH Aachen UniversityGermany

Personalised recommendations