Skip to main content
Log in

Tools for support of automata-based programming

  • Published:
Programming and Computer Software Aims and scope Submit manuscript

Abstract

A method for designing and implementing reactive object-oriented programs with explicit emphasis of states is suggested. The method relies on the automata-based programming (SWITCH-technology) and the UML notation. The UniMod tool based on this method, which is a plug-in module for the Eclipse platform, is described.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Sommerville, I., Software Engineering, Pearson Education, 2001, 6th ed.

  2. Kuznetsov, S., UML 2.0: Promises and Disappointments, Otkrytye systemy, 2006, no. 2, pp. 75–79.

  3. 1st European Conf. on Model-Driven Software Engineering, Germany, 2003, http://www.agedis.de/conference.

  4. Int. Workshop “e-Business and Model Based in System Design”, IBM EE/A. SPb.: SPb ETU, 2004.

  5. OMG Model Driven Architecture, http://www.omg.org/mda.

  6. Booch, G., Rumbaugh, J., and Jacobson, I., The Unified Modeling Language Reference Manual, Addison-Wesley, 1998.

  7. Mellor, S. and Balcer, M., Executable UML: A Foundation for Model Driven Architecture, Addison-Wesley, 2002.

  8. Raistrick, C., Francis, P., and Wright, J., Model Driven Architecture with Executable UML, Cambridge University Press, 2004.

  9. Graham, I., Object-Oriented Methods: Principles and Practice, Addison-Wesley, 2000, 3d ed.

  10. Wikipedia, Finite state machine. Tools, http://en.wikipedia.org/wiki/Finite_automaton#Tools.

  11. Sun Studio Enterprise, http://developers.sun.com/prodtech/javatools/jsenterprise/reference/techart/whatis.html.

  12. Jacobson, I., Four Macro Trends in Software Development Y2004, http://www.ivarjacobson.com/postnuke/html/modules.php?op=modload&name=UpDownload&file=index&req=getit&lid=9.

  13. Jacobson, I., Booch, G., and Rumbaugh, J., The Unified Software Development Process, Addison-Wesley, 1999.

  14. Novikov, F., Visual Program Design, Informatsionnoupravlyayushchie systemy, 2005, no. 6, pp. 9–22, http://is.ifmo.ru/works/visualcons.

  15. Harel, D., Statecharts: A Visual Formalism for Complex Systems, Sci. Comput. Program, 1987, vol. 8, pp. 231–274.

    Article  MATH  MathSciNet  Google Scholar 

  16. I-Logix Statemate, http://ilogix.com/sublevel.aspx?id=74.

  17. XJTek AnyState, http://www.xjtek.com/anystates.

  18. StateSoft ViewControl, http://www.statesoft.ie/products.html.

  19. SCOPE, http://www.itu.dk/:_wasowski/projects/scope.

  20. IAR Systems visualSTATE, http://www.iar.com/p1014/p1014_eng.php.

  21. The State Machine Compiler, http://smc.sourceforge.net.

  22. Jia X. et al., Using ZOOM Approach to Support MDD, http://se.cs.depaul.edu/ise/zoom/papers/zoom/SERP_ZOOM.pdf.

  23. Riehle, D., Fraleigh, S., Bucka-Lassen, D., and Omorogbe, N., The Architecture of a UML Virtual Machine, Proc. of the 2001 Conf. on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA’01), ACM 2001.

  24. Matilda UML Virtual Machine, http://dssg.cs.umb.edu/projects/umlvm.

  25. Kennedy Carter iUML, http://www.kc.com/products/iuml/index.html.

  26. Telelogic TAU G2, http://telelogic.com/corp/products/tau/g2/index.cfm.

  27. Shalyto, A.A., SWITCH-tekhnologiya. Algorithmizatsiya i programmirovanie zadach logicheskogo upravleniya (SWITCH-Technology: Algorithmization and Programming of Logic Control Problems), St. Petersburg: Nauka, 1998, http://is.ifmo.ru/books/switch/1.

    Google Scholar 

  28. Shalyto, A.A. and Tukkel’, N.I., SWITCH-Technology: An Automated Approach to Developing Software for Reactive Systems, Programmirovanie, 2001, no. 5, pp. 45–62. [Programming Comput. Software (Engl. Transl.), 2001, vol. 27, no. 5, pp. 260–276].

  29. Shalyto, A.A. and Tukkel’, N.I., Tanks and Automata, BYTE, Russia, 2003, no. 2, pp. 69–73, http://s.ifmo.ru/works/tanks_new.

  30. MetaObject Facility Core Specification Version 2.0. http://www.omg.org/technology/documents/formal/MOF_Core.htm.

  31. Gomaa, H., Designing Concurrent, Distributed, and Real-Time Applications with UML, Addison-Wesley, 2000.

  32. Gurov, V.S., Mazin, M.A., and Shalyto, A.A., Operational Semantics of UML State Diagrams in the UniMod Software Package, Trudy XII Vserossiiskoi nauchnometodicheskoi konferentsii “Telematika-2005” (Proc. of the XII All-Russian Scientific Conference), St. Petersburg: SpbGU ITMO, vol. 1, pp. 74–76. http://tm.ifmo.ru/tm2005/scr/224as.pdf.

  33. Velocity—Java-based template engine, http://jakarta.apache.org/velocity/index.html.

  34. Fowler, M., Brant, J., Opdyke, W., and Roberts, D., Refactoring: Improving the Design of Existing Code, Addison-Wesley, 2000.

  35. Fruchterman, T.M.J. and Reingold, E.M., Graph Drawing by Force Directed Placemen, Software—Practice and Experience, 1991, vol. 21, no. 11, pp. 1129–1164.

    Article  Google Scholar 

  36. Shalyto, A.A., A New Initiative in Programming: The Demand for Open Project Documentation, PC Week/RE, 2003, no. 40, pp. 38–42, http://is.ifmo.ru/works/open_doc.

  37. Clarke, E., Grumberg, O., and Peled, D., Model Checking, MIT, 2000.

  38. Dijkstra, E.W., Notes on Structured Programming, Structured Programming, Dahl, O.-J., Dijkstra, E.W., and Hoare, C.A.R., Eds., London: Academic, 1972.

    Google Scholar 

  39. Meyer, B., Object Oriented Software Construction, Prentice-Hall, 1997.

  40. Borland Together, http://www.borland.com/us/ products/together/index.html.

  41. Gorshkova, E.A. and Novikov, B.A., Use of Statechart Diagrams for Modeling Hypertext, Programmirovanie, 2004, no. 1, pp. 64–80 [Programming Comput. Software (Engl. Transl.), 2004, vol. 30, no. 1, pp. 47–51].

  42. Gorshkova, E.A., Novikov, B.A., Belov, D.D., Gurov, V.S., and Spiridonov, S.V., A UML-Based Modeling of Web Application Controller, Programmirovanie, 2005, no. 1, pp. 44–51 [Programming Comput. Software (Engl. Transl.), 2005, vol. 31, no. 1, pp. 29–33].

  43. Eckel, B., Thinking in Java, Prentice-Hall, 2002.

  44. Parashchenko, D.A., Tsarev, F.N., and Shalyto, A.A., Modeling Technology Based on Automata-based programming for One Class of Multiagent Systems on the Example of Game “Competition of Flying Saucers,” http://is.ifmo.ru (UniMod Projects Section).

  45. Shalyto, A.A., Two Meetings with I. Jacobson, http://is.ifmo.ru/aboutus/uml_ph, http://is.ifmo.ru/belletristic/jacobson.

  46. Gurov, V., Narvsky, A., and Shalyto, A., Executable UML from Russia, PC Week/RE, 2005, no. 26, pp. 18–19, http://is.ifmo.ru/works/_umlrus.pdf.

  47. Regan, P. and Hamilton, S., NASA’s Mission Reliable, 24–32, http://www.osp.ru/os/2004/03/045\_print.htm.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to V. S. Gurov.

Additional information

Original Russian Text © V.S. Gurov, M.A. Mazin, A.S. Narvsky, A.A. Shalyto, 2007, published in Programmirovanie, 2007, Vol. 33, No. 6.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Gurov, V.S., Mazin, M.A., Narvsky, A.S. et al. Tools for support of automata-based programming. Program Comput Soft 33, 343–355 (2007). https://doi.org/10.1134/S0361768807060059

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1134/S0361768807060059

Keywords

Navigation