A New Approach for Code Generation from UML State Machine

(*) Corresponding author

Authors' affiliations

DOI's assignment:
the author of the article can submit here a request for assignment of a DOI number to this resource!
Cost of the service: euros 10,00 (for a DOI)


The emergence of Unified Modeling Language (UML) as a standard for modeling systems has encouraged the use of automated software tools that facilitate the development process from analysis through coding. The UML state machine diagram is used for modeling the dynamic aspects of systems and includes many concepts that are not present in most popular programming languages, like Java or C++. There exists a gap between high level modeling language and a programming language. This paper proposes an approach to narrow the gap between multiple UML models and an implemented system. The narrowing of gap is achieved by generating compact and efficient Java code directly from UML state machine having sequential and concurrent substates. The code generation is achieved by creating a mapping between UML behavior and the Java programming language. Our model can work as a basis for automatic code generation for object-oriented systems.
Copyright © 2013 Praise Worthy Prize - All rights reserved.


UML; Hierarchical/Concurrent State; Code Generation; Model-System Gap

Full Text:



Object Management Group (OMG), Unified Modeling Language (UML) specifications version 1.5, 2003. http://www.omg.org/

G. Pinter and I. Majzik, “Program Code Generation Based On UML Statechart Models”, Periodica Polytechnica, vol. 47, no. 3, 2003, pp 187-204.

G. Booch, “Object Oriented Design with Applications”, California: Benjamin/Cummins, 1991.

J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy and W. Lorenson, “Object- Oriented Modeling and Design”, New Jersey: Prentice-Hall, 1991.

I. Jacobson, “Object-Oriented Software Engineering: A Use Case Driven Approach”, Massachusetts: Addison-Wesley, 1992.

International Business Machines (IBM) Corporation, Rational Unified Process, 2003, http://www-06.ibm.com/software/awdtools/rup/

P. Coad and E. Yourdan, “Object-Oriented Analysis”, New Jersey: Prentice Hall, 1991.

Philippe Desfray, “Object Engineering: The Fourth Dimension”, Massachusetts: Addison-Wesley, 1994

G. Booch, J. Rumbaugh, and I. Jacobson, “The Unified Modeling Language: User Guide”, Massachusetts: Addison-Wesley, 1999.

Tigris.org, ArgoUML, http://argouml.tigris.org

Gentleware AG, Poseidon for UML, http://www.gentleware.com

Metamill Software, Metamill, http://www.metamill.com

MicroTOOL, objectiF, http://www.microtool.de/objectif/

No Magic Inc. MagicDraw, http://www.magicdraw.com

Objecteering Software, http://www.objecteering.com

I-Logix Inc., Rhapsody, http://www.ilogix.com.

I.A.Niaz and J.Tanaka, "An Object Oriented Approach To Generate Java Code From UML StateCharts", International Journal, of computer & Information Science, vol.6, no. 2, 2005.

Jakimi, A., Elbermi, L., Elkoutbi, M., Software development for UML scenarios: Design, fusion and code generation, (2011) International Review on Computers and Software (IRECOS), 6 (5), pp. 683-687.

Jakimi A., Elkoutbi M, " Automatic Code Generation From UML Statechart” International Journal of Engineering and Technology (IJET), Vol 1, No 2, pp.170-175, June 2009.

Jauhar Ali , 2010. “Using Java Enums to Implement Concurrent-Hierarchical State Machines”. Journal of Software Engineering, 4: 215-230

Noureddine, M., From software architecture to UML class diagrams, (2009) International Review on Computers and Software (IRECOS), 4 (3), pp. 408-413.

J. Ali, and J. Tanaka, “An Object Oriented Approach to Generate Executable Code from OMT-Based Dynamic Model”, Journal of Integrated Design and Process Science, vol. 2, no. 4 1998, pp. 65-77.

J. Ali, and J. Tanaka, “Implementing the Dynamic Behavior Represented as Multiple State Diagrams and Activity Diagrams”, Journal of Computer Science & Information Management (JCSIM), vol. 2, no. 1, 2001, pp. 24-34.


  • There are currently no refbacks.

Please send any question about this web site to info@praiseworthyprize.com
Copyright © 2005-2023 Praise Worthy Prize