Abstract
Inconsistencies and semantic variation points of the UML specification are a source of problems during code generation and execution of behavioral models. We discuss the interpretation of history concepts of UML 2.x state machines. Especially, history in complex states with orthogonal regions was considered. The clarification of this interpretation was proposed and explained by an example. The history issues and other variation points had to be resolved within the Framework for eXecutable UML (FXU). The FXU was the first framework supporting all elements of UML 2.x behavioral state machines in code generation and execution for C# code.
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
Unified Modelling Language, http://www.uml.org
Yeung, W.L., Leung, K.R.P.H., Wang, J., Wei, D.: Modelling and Model Checking Suspendible Business Processses via Statechart Diagrams and CSP. Science of Computer Programming 65, 14â29 (2007)
van Langenhove, S.: Towards the Correctness of Software Behavior in UML. PhD Thesis, Ghent University, Belgium (2005)
Harel, D., Pnueli, A., Schmidt, J.P., Sherman, R.: On the Formal Semantics of State Machines. In: 2nd IEEE Symp. on Logic in Computer Science, pp. 54â64. IEEE Press, Los Alamitos (1987)
Harel, D., Kugler, H.: The Rhapsody Semantics of Statecharts (or On the Executable Core of the UML) (preliminary version). In: Ehrig, H., Damm, W., Desel, J., GroĂe-Rhode, M., Reif, W., Schnieder, E., WestkĂ€mper, E. (eds.) INT 2004. LNCS, vol. 3147, pp. 325â354. Springer, Heidelberg (2004)
Crane, M., Dingel, J.: On the Semantics of UML State Machines: Categorization and Comparison. Technical Report 2005-501. School of Computing, Queens University of Kingston, Ontario, Canada (2005)
STL: UML 2 Semantics Project, References, Queenâs University, http://www.cs.queensu.ca/home/stl/internal/uml2/refs.htm
Crane, M., Dingel, J.: UML vs. Classical vs. Rhapsody Statecharts: Not All Models are Created Equal. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 97â112. Springer, Heidelberg (2005)
Jurjens, J.: A UML Statecharts Semantics with Message-Passing. In: ACM Symp. on App. Comp., SAC 2002, pp. 1009â1013 (2002)
Beck, M.: A Structured Operational Semantics for UML Statecharts. Software and System Modeling 1(2), 130â141 (2002)
Taleghani, A., Atlee, J.M.: Semantic Variations Among UML StateMachines. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 245â259. Springer, Heidelberg (2006)
Chauvel, F., Jezequel, J.-M.: Code Generation from UML Models with Semantic Variation Points. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 54â68. Springer, Heidelberg (2005)
Jin, Y., Esser, R., Janneck, J.W.: A Method for Describing the Syntax and Semantics of UML Statecharts. Software and System Modeling 3(2), 150â163 (2004)
Fecher, H., Schönborn, J., Kyas, M., Roever, W.P.: 29 New Unclarities in the Semantics of UML 2.0 State Machines. In: Lau, K.-K., Banach, R. (eds.) ICFEM 2005. LNCS, vol. 3785, pp. 52â65. Springer, Heidelberg (2005)
Fecher, H., Schönborn, J.: UML 2.0 state machines: Complete formal semantics via core state machines. In: Brim, L., Haverkort, B.R., Leucker, M., van de Pol, J. (eds.) FMICS 2006 and PDMC 2006. LNCS, vol. 4346, pp. 244â260. Springer, Heidelberg (2007)
Lano, K., Clark, D.: Direct Semantics of Extended State Machines. Journal of Object Tecnology 6(9), 35â51 (2007)
Lam, V.S.W., Padget, J.: Analyzing Equivalences of UML Statechart Diagrams by Structural Congruence and Open Bisimulations. In: UML ZWI. LNCS, vol. 2185, pp. 406â421. Springer, Heidelberg (2001)
Lilius, J., Paltor, I.P.: Formalising UML State Machines for Model Checking. In: France, R.B., Rumpe, B. (eds.) UML 1999. LNCS, vol. 1723, pp. 430â444. Springer, Heidelberg (1999)
Hölscher, K., Ziemann, P., Gogolla, M.: On translating UML models into graph transformation systems. Journal of Visual Languages and Computing 17, 78â105 (2006)
Niaz, I.A., Tanaka, J.: Mapping UML Statecharts into Java code. In: IASTED Int. Conf. Software Engineering, pp. 111â116 (2004)
Knapp, A., Merz, S., Rauh, C.: Model Checking Timed UML State Machines and Collaborations. In: 7th Int. Symposium on Formal Techniques in Real-Time and Fault Tolerant Systems, pp. 395â414 (2002)
Rhapsody, http://www.telelogic.com/
Derezinska, A., Pilitowski, R.: Event Processing in Code Generation and Execution Framework of UML State Machines. In: Madeyski, L., et al. (eds.) Software Engineering in progress, Nakom, PoznaĆ, pp. 80â92 (2007)
Pilitowski, R., Derezinska, A.: Code Generation and Execution Framework for UML 2.0 Classes and State Machines. In: Sobh, T. (ed.) Innovations and Advanced Techniques in Computer and Information Sciences and Engineering, pp. 421â427. Springer, Heidelberg (2007)
Pilitowski, R.: Generation of C# code from UML 2.0 class and state machine diagrams (in Polish). Master thesis, Inst. of Comp. Science, Warsaw Univ. of Technology, Poland (2006)
Mellor, S.J., Balcer, M.J.: Executable UML a Foundation for Model-Driven Architecture. Addison-Wesley, Reading (2002)
Carter, K.: iUMLite - xUML modeling tool, http://www.kc.com
Semantics of a foundation subset for executable UML models (FUML) (2008), http://www.omg.org/spec//FUML/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
DereziĆska, A., Pilitowski, R. (2009). Interpretation of History Pseudostates in Orthogonal States of UML State Machines. In: Feldman, Y.A., Kraft, D., Kuflik, T. (eds) Next Generation Information Technologies and Systems. NGITS 2009. Lecture Notes in Computer Science, vol 5831. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-04941-5_5
Download citation
DOI: https://doi.org/10.1007/978-3-642-04941-5_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-04940-8
Online ISBN: 978-3-642-04941-5
eBook Packages: Computer ScienceComputer Science (R0)