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).
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
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)
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)
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)
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–60
Broy, M., Cengarle, M.V., Grönniger, H., Rumpe, B.: Definition of the System Model. In: Lano (ed.) [25], ch. 4, pp. 61–93
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)
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)
Codescu, M., Mossakowski, T., Sannella, D., Tarlecki, A.: Specification Refinements: Calculi, Tools, and Applications (Submitted, 2014)
Diaconescu, R.: Grothendieck Institutions. Applied Cat. Struct. 10, 383–402 (2002)
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)
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)
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)
Fiadeiro, J.L.: Categories for Software Engineering. Springer (2005)
Goguen, J.A., Burstall, R.M.: Institutions: Abstract Model Theory for Specification and Programming. J. ACM 39, 95–146 (1992)
Goguen, J.A., Rosu, G.: Institution Morphisms. Formal Asp. Comp. 13, 274–307 (2002)
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)
Hutchesson, S.: Chief software architect at AEC. Industrial case study outline (2012)
Hutchesson, S.: Chief software architect at AEC. Personal communication (2012)
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)
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)
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)
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)
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)
Knapp, A., Wirsing, M.: A Formal Approach to Object-Oriented Software Engineering. Theo. Comp. Sci. 285, 519–560 (2002)
Lano, K.: UML 2 — Semantics and Applications. Wiley, Chichester (2009)
Mossakowski, T.: Comorphism-Based Grothendieck Logics. In: Diks, K., Rytter, W. (eds.) MFCS 2002. LNCS, vol. 2420, pp. 593–604. Springer, Heidelberg (2002)
Mossakowski, T., Autexier, S., Hutter, D.: Development Graphs — Proof Management for Structured Specifications. J. Log. Alg. Program. 67(1–2), 114–145 (2006)
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)
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)
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)
Mosses, P.D. (ed.): CASL Reference Manual. LNCS, vol. 2960. Springer, Heidelberg (2004), Free online version available at http://www.cofi.info
Object Management Group. Unified Modeling Language. Standard, OMG (2011)
Sannella, D., Tarlecki, A.: Foundations of Algebraic Specification and Formal Software Development. EATCS Monographs in Theoretical Computer Science. Springer, Heidelberg (2012)
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)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Knapp, A., Mossakowski, T., Roggenbach, M. (2015). Towards an Institutional Framework for Heterogeneous Formal Development in UML. In: De Nicola, R., Hennicker, R. (eds) Software, Services, and Systems. Lecture Notes in Computer Science, vol 8950. Springer, Cham. https://doi.org/10.1007/978-3-319-15545-6_15
Download citation
DOI: https://doi.org/10.1007/978-3-319-15545-6_15
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-15544-9
Online ISBN: 978-3-319-15545-6
eBook Packages: Computer ScienceComputer Science (R0)