Towards an Institutional Framework for Heterogeneous Formal Development in UML

— A Position Paper —
  • Alexander Knapp
  • Till Mossakowski
  • Markus Roggenbach
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8950)

Abstract

We present a framework for formal software development with UML. In contrast to previous approaches to equipping UML with a formal semantics, we propose an institution-based heterogeneous approach. This can express suitable formal semantics of the different UML diagram types directly, without the need to map everything to one specific formalism (let it be first-order logic or graph grammars). We provide ideas how different aspects of the formal development process can be coherently formalised, ranging from requirements over design and Hoare-style conditions on code to the implementation itself. The framework can be used to verify consistency of different UML diagrams both horizontally (e.g., consistency among various requirements) as well as vertically (e.g., correctness of design or implementation w.r.t. the requirements).

Keywords

UML heterogeneous formal methods institutions 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Baudin, P., Cuoq, P., Filliâtre, J.-C., Marché, C., Monate, B., Moy, Y., Prevosto, V.: ACSL: ANSI/ISO C Specification Language. Report. In: CEA 2012 (2012)Google Scholar
  2. 2.
    Bauer, S.S., Hennicker, R.: Views on Behaviour Protocols and Their Semantic Foundation. In: Kurz, A., Lenisa, M., Tarlecki, A. (eds.) CALCO 2009. LNCS, vol. 5728, pp. 367–382. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  3. 3.
    Boronat, A., Knapp, A., Meseguer, J., Wirsing, M.: What Is a Multi-modeling Language? In: Corradini, A., Montanari, U. (eds.) WADT 2008. LNCS, vol. 5486, pp. 71–87. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  4. 4.
    Broy, M., Cengarle, M.V., Grönniger, H., Rumpe, B.: Considerations and Rationale for a UML System Model. In: Lano (ed.) [25], ch. 3, pp. 43–60Google Scholar
  5. 5.
    Broy, M., Cengarle, M.V., Grönniger, H., Rumpe, B.: Definition of the System Model. In: Lano (ed.) [25], ch. 4, pp. 61–93Google Scholar
  6. 6.
    Cengarle, M.V., Knapp, A.: OCL 1.4/5 vs. 2.0 Expressions — Formal Semantics and Expressiveness. Softw. Syst. Model. 3(1), 9–30 (2004)CrossRefGoogle Scholar
  7. 7.
    Cengarle, M.V., Knapp, A., Tarlecki, A., Wirsing, M.: A Heterogeneous Approach to UML Semantics. In: Degano, P., De Nicola, R., Meseguer, J. (eds.) Concurrency, Graphs and Models. LNCS, vol. 5065, pp. 383–402. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  8. 8.
    Codescu, M., Mossakowski, T., Sannella, D., Tarlecki, A.: Specification Refinements: Calculi, Tools, and Applications (Submitted, 2014)Google Scholar
  9. 9.
    Diaconescu, R.: Grothendieck Institutions. Applied Cat. Struct. 10, 383–402 (2002)MathSciNetCrossRefMATHGoogle Scholar
  10. 10.
    Dosch, W., Mascari, G., Wirsing, M.: On the Algebraic Specification of Databases. In: Proc. 8th Int. Conf. Very Large Data Bases (VLDB 1982), pp. 370–385. Morgan Kaufmann (1982)Google Scholar
  11. 11.
    Ellison, C., Rosu, G.: An Executable Formal Semantics of C With Applications. In: Field, J., Hicks, M. (eds.) Proc. 39th ACM SIGPLAN-SIGACT Symp. Principles of Programming Languages (POPL 2012), pp. 533–544. ACM (2012)Google Scholar
  12. 12.
    Engels, G., Heckel, R., Küster, J.M.: The Consistency Workbench: A Tool for Consistency Management in UML-Based Development. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 356–359. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  13. 13.
    Fiadeiro, J.L.: Categories for Software Engineering. Springer (2005)Google Scholar
  14. 14.
    Goguen, J.A., Burstall, R.M.: Institutions: Abstract Model Theory for Specification and Programming. J. ACM 39, 95–146 (1992)MathSciNetCrossRefMATHGoogle Scholar
  15. 15.
    Goguen, J.A., Rosu, G.: Institution Morphisms. Formal Asp. Comp. 13, 274–307 (2002)CrossRefMATHGoogle Scholar
  16. 16.
    Hennicker, R., Janisch, S., Knapp, A.: On the Observable Behaviour of Composite Components. In: Proc. 5th Int. Wsh. Formal Aspects of Component Software (FACS 2008). ENTCS 260, pp. 125–153 (2010)Google Scholar
  17. 17.
    Hutchesson, S.: Chief software architect at AEC. Industrial case study outline (2012)Google Scholar
  18. 18.
    Hutchesson, S.: Chief software architect at AEC. Personal communication (2012)Google Scholar
  19. 19.
    James, P., Knapp, A., Mossakowski, T., Roggenbach, M.: Designing Domain Specific Languages – A Craftsman’s Approach for the Railway Domain Using Casl. In: Martí-Oliet, N., Palomino, M. (eds.) WADT 2012. LNCS, vol. 7841, pp. 178–194. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  20. 20.
    Knapp, A., et al.: Epk-fix: Methods and tools for engineering electronic product catalogues. In: Steinmetz, R. (ed.) IDMS 1997. LNCS, vol. 1309, pp. 199–209. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  21. 21.
    Knapp, A., Merz, S., Rauh, C.: Model checking - timed UML state machines and collaborations. In: Damm, W., Olderog, E.-R. (eds.) FTRTFT 2002. LNCS, vol. 2469, pp. 395–416. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  22. 22.
    Knapp, A., Merz, S., Wirsing, M., Zappe, J.: Specification and Refinement of Mobile Systems in MTLA and Mobile UML. Theo. Comp. Sci. 351(2), 184–202 (2006)MathSciNetCrossRefMATHGoogle Scholar
  23. 23.
    Knapp, A., Mossakowski, T., Roggenbach, M., Glauer, M.: An Institution for Simple UML State Machines. In: Egyed, A., Schaefer, I. (eds.) FASE 2015. LNCS. Springer (to appear, 2015)Google Scholar
  24. 24.
    Knapp, A., Wirsing, M.: A Formal Approach to Object-Oriented Software Engineering. Theo. Comp. Sci. 285, 519–560 (2002)MathSciNetCrossRefMATHGoogle Scholar
  25. 25.
    Lano, K.: UML 2 — Semantics and Applications. Wiley, Chichester (2009)CrossRefGoogle Scholar
  26. 26.
    Mossakowski, T.: Comorphism-Based Grothendieck Logics. In: Diks, K., Rytter, W. (eds.) MFCS 2002. LNCS, vol. 2420, pp. 593–604. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  27. 27.
    Mossakowski, T., Autexier, S., Hutter, D.: Development Graphs — Proof Management for Structured Specifications. J. Log. Alg. Program. 67(1–2), 114–145 (2006)MathSciNetCrossRefMATHGoogle Scholar
  28. 28.
    Mossakowski, T., Kutz, O., Codescu, M., Lange, C.: The Distributed Ontology, Modeling and Specification Language. In: Proc. 7th Int. Wsh. Modular Ontologies (WoMO 2013). CEUR-WS 1081, CEUR (2013)Google Scholar
  29. 29.
    Mossakowski, T., Maeder, C., Lüttich, K.: The Heterogeneous Tool Set, Hets. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 519–522. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  30. 30.
    Mossakowski, T., Sannella, D., Tarlecki, A.: A Simple Refinement Language for Casl. In: Fiadeiro, J.L., Mosses, P.D., Orejas, F. (eds.) WADT 2004. LNCS, vol. 3423, pp. 162–185. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  31. 31.
    Mosses, P.D. (ed.): CASL Reference Manual. LNCS, vol. 2960. Springer, Heidelberg (2004), Free online version available at http://www.cofi.info
  32. 32.
    Object Management Group. Unified Modeling Language. Standard, OMG (2011)Google Scholar
  33. 33.
    Sannella, D., Tarlecki, A.: Foundations of Algebraic Specification and Formal Software Development. EATCS Monographs in Theoretical Computer Science. Springer, Heidelberg (2012)CrossRefMATHGoogle Scholar
  34. 34.
    Wirsing, M., Knapp, A.: View Consistency in Software Development. In: Wirsing, M., Knapp, A., Balsamo, S. (eds.) RISSEF 2002. LNCS, vol. 2941, pp. 341–357. Springer, Heidelberg (2004)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Alexander Knapp
    • 1
  • Till Mossakowski
    • 2
  • Markus Roggenbach
    • 3
  1. 1.Universität AugsburgGermany
  2. 2.Otto-von-Guericke Universität MagdeburgGermany
  3. 3.Swansea UniversityUK

Personalised recommendations