Abstract
Modeling static structure and modeling behavior are often regarded as two distinct topics, however, in UML they are not. They are even tightly coupled as can be seen e.g. by looking at attributes: That an attribute holds values at runtime is defined within the Classes language unit whereas the act of setting or getting a concrete value of an attribute is defined in the Actions language unit.
Tool support for modeling static structure is far more advanced than for modeling behavior. In particular, further model processing for activities like transformations or code generation is in a rudimentary stage.
In this paper, we present an approach for code generation for activities preceded by model transformations. Besides advancing model-driven development to properly include behavior, our contribution also enhances structural modeling by providing generation of code for accessing structural features based on the UML semantics of Actions.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Bhattacharjee, A., Shyamasundar, R.: Validated Code Generation for Activity Diagrams. In: Chakraborty, G. (ed.) ICDCIT 2005. LNCS, vol. 3816, pp. 508–521. Springer, Heidelberg (2005)
Bock, C.: UML 2 Activity and Action Models Part 2: Actions. Journal of Object Technology 2(5), 41–56 (2003)
Broy, M.: Challenges in Automotive Software Engineering. Proceedings of the ICSE 2006, pp. 33–42 (2006)
Crane, M.L.: Slicing UML’s Three-layer Architecture: A Semantic Foundation for Behavioural Specification. PhD thesis, Queen’s University, Kingston, Ontario, Canada (January 2009)
Eclipse Foundation, Inc. Eclipse Model Development Tools (MDT) (2011), http://www.eclipse.org
Eichelberger, H., Eldogan, Y., Schmid, K.: A Comprehensive Analysis of UML Tools, their Capabilities and their Compliance. Software Systems Engineering, Institut für Informatik, Universität Hildesheim (2009)
Fujaba Associations Specification (2005), http://www.se.eecs.uni-kassel.de/~fujabawiki/index.php/Fujaba/~Associations/~Specification
Gessenharter, D.: Implementing UML Associations in Java: A Slim Code Pattern for a Complex Modeling Concept. In: RAOOL 2009: Proceedings of the Workshop on Relationships and Associations in Object-Oriented Languages, pp. 17–24. ACM, New York (2009)
Gessenharter, D.: Extending The UML Semantics for a Better Support of Model Driven Software Development. In: Software Engineering Research and Practice, pp. 45–51 (2010)
Gessenharter, D.: UML Activities at Runtime - Experiences of Using Interpreters and Running Generated Code. In: Trujillo, J., Dobbie, G., Kangassalo, H., Hartmann, S., Kirchberg, M., Rossi, M., Reinhartz-Berger, I., Zimányi, E., Frasincar, F. (eds.) ER 2010. LNCS, vol. 6413, pp. 275–284. Springer, Heidelberg (2010)
Harel, D.: From Play-In Scenarios to Code: An Achievable Dream. Computer 34, 53–60 (2001)
Koch, N., Kraus, A.: The Expressive Power of UML-based Web Engineering (2002)
Koch, N., Zhang, G., Baumeister, H.: UML-Based Web Engineering: An Approach Based on Standards. In: Web Engineering: Modelling and Implementing Web Applications, pp. 157–191 (2008)
LMU: Ludwig-Maximilians-Universität München, Institute for Informatics Programming and Software Engineering. UWE Examples (December 2009), http://uwe.pst.ifi.lmu.de/exampleAddressBookWithContentUpdates.html
Mellor, S.J., Balcer, M.: Executable UML: A Foundation for Model-Driven Architectures. Addison-Wesley Longman Publishing Co., Inc., Boston (2002); Foreword By-Jacoboson, Ivar
Object Management Group. Introduction to OMG’s Unified Modeling Language (UML) (July 2005), http://www.omg.org/gettingstarted/what_is_uml.htm
Object Management Group. Action Language for Foundational UML (Alf), Concrete Syntax for a UML Action Language, FTF Beta 1, OMG Document Number: ptc/2010-10-05 (2010)
Object Management Group. Unified Modeling Language (OMG UML), Superstructure Version 2.3 (2010), OMG Document Number: formal/2010-05-05
Object Management Group. Semantics of a Foundational Subset for Executable UML Models (fUML), v1.0 (2011), OMG Document Number: formal/2011-02-01
Sarstedt, S.: Semantic Foundation and Tool Support for Model-Driven Development with UML 2 Activity Diagrams. PhD thesis, Ulm University (2006)
Sulistyo, S., Prinz, A.: Recursive Modeling for Completed Code Generation. In: Proceedings of the 1st Workshop on Behaviour Modelling in Model-Driven Architecture, BM-MDA 2009, pp. 6:1–6:7. ACM, New York (2009)
Usman, M., Nadeem, A.: Automatic Generation of Java Code from UML Diagrams using UJECTOR. International Journal of Software Engineering and Its Applications 3(2), 21–37 (2009)
Blu Age Corp., Blu Age (2011), http://wiki.bluage.com/ , §3.5.1
Mentor Graphics Corp., BridgePoint UML Suite (2010), http://www.mentor.com
Fujaba Development Group, Fujaba Tool Suite 4.3.2 (2007), http://www.fujaba.de/
Papyrus, Open Source Tool (2011), http://www.papyrusuml.org
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Gessenharter, D., Rauscher, M. (2011). Code Generation for UML 2 Activity Diagrams. In: France, R.B., Kuester, J.M., Bordbar, B., Paige, R.F. (eds) Modelling Foundations and Applications. ECMFA 2011. Lecture Notes in Computer Science, vol 6698. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21470-7_15
Download citation
DOI: https://doi.org/10.1007/978-3-642-21470-7_15
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-21469-1
Online ISBN: 978-3-642-21470-7
eBook Packages: Computer ScienceComputer Science (R0)