Finally, the mapping functions used in defining the semantics are readily imple-
mentable and allows for a prototyping approach to the semantic definition, ie. we ex-
perimented with the software tool that implemented the mapping functions while devel-
oping and refining the mapping itself. Currently, we are still continuing to extend and
refine the mapping to cater for more features of statechart diagrams such as concurrent
states and actions.
Acknowledgements
The first author is supported by Research Grant DR05A1 from Lingnan University.
The third and fourth authors are supported by National Natural Science Foundation of
China Grants No. 60233020, 60303013. The authors would like to thank the anonymous
referees for their helpful comments and suggestions.
References
1. Object Management Group: OMG Unified Modeling Language Specification Version 1.5.
(2003)
2. Harel, D.: Statecharts: A visual formalism for complex systems. Science of Computer
Programming 8 (1987) 231–274
3. Ng, M.Y., Butler, M.: Towards Formalizing UML State Diagrams in CSP. In: Proc. 1st IEEE
International Conference on Software Engineering and Formal Methods. Lect. Notes Comp.
Sci., IEEE Computer Society (2003) 138–147
4. Yeung, W.L., Leung, K.R.P.H., Wang, J., Dong, W.: Improvements towards formalizing
UML state diagrams in CSP. In: Proc. 12th Asia Pacific Software Engineering Conference,
December, 2005, Taipei. (2005)
5. Hoare, C.A.R.: Communicating Sequential Processes. Prentice Hall (1985)
6. Roscoe, A.W.: The Theory and Practice of Concurrency. Prentice Hall (1998)
7. Formal Systems (Europe) Ltd.: Failures-Divergence Refinement: FDR2 User Manual. (2003)
8. Ho, W.M., Jquel, J.M., Guennec, A.L., Pennaneac’h, F.: UMLAUT: An extendible UML
transformation framework. In: Proc. Automated Software Engineering 1999. (1999) 275–
278
9. Schafer, T., Knapp, A., Merz, S.: Model checking UML state machines and collaborations.
Electronic Notes in Theoretical Computer Science 47 (2001) 1–13
10. Gnesi, S., Mazzanti, F.: On the fly model checking of communicating UML State Machines.
In: Proc. Second ACIS International Conference on Software Engineering Research Man-
agement and Applications (SERA2004), Los Angeles, USA, May, 2004. (2004)
11. Parnas, D.: On the criteria to be used in decomposing systems into modules. Comm. ACM
(1972)
12. Yeung, W.L.: Towards formalizing UML state diagrams with history in CSP. Technical
report, Lingnan University (2005) http://cptra.ln.edu.hk/ wlyeung/history.ps.
13. der Beeck, M.V.: A comparison of statecharts variants. In: Proc. Formal Techniques in Real
Time and Fault Tolerant Systems. Volume 863 of LNCS., Springer (1994) 128–148
14. Lam, V.S.W., Padget, J.: Formalization of UML statechart diagrams in the pi-calculus. In:
Proc. 13th Australian Software Engineering Conference. (2001) 213–223
15. Cheng, B., Campbell, L., Wang, E.: Enabling Automated Analysis Through the Formaliza-
tion of Object-Oriented Modeling Diagrams. In: Proceedings of IEEE International Confer-
ence on Dependable Systems and Networks, IEEE (2000) 305–314
106