A systematic review of code generation proposals from state machine specifications
Tài liệu tham khảo
Selic, 2003, The pragmatics of model-driven development, IEEE Software, 20, 19, 10.1109/MS.2003.1231146
OMG Model Driven Architecture, Committed Companies & Their Products, 2010. <http://www.omg.org/mda/committed-products.htm> (last visited May 2012).
OMG, UML 2.3 Superstructure Specification, Document Formal/2010-05-05, 2010. <http://www.omg.org/> (last visited May 2012).
J.V. Gurp, J. Bosch, On the implementation of finite state machines, in: Proceedings of the 3rd Annual IASTED International Conference Software Engineering and Applications, 1999.
Harel, 1987, Statecharts: a visual formulation for complex systems, Science of Computer Programming, 8, 231, 10.1016/0167-6423(87)90035-9
I.A. Niaz, J. Tanaka, Code generation from UML statecharts, in: Proc. 7th IASTED Conf. on Software Engineering and Application (SEA 2003), 2003, pp. 315–321.
I.A. Niaz, J. Tanaka, Mapping UML statecharts to java code, in: Proceedings of the IASTED Conf. on Software Engineering, 2004, pp. 111–116.
I. Azim, Automatic Code Generation From UML Class and Statechart Diagrams, PhD Dissertation, University of Tsukuba, 2005.
Jakimi, 2009, An object-oriented approach to UML scenarios engineering and code generation, International Journal of Computer Theory and Engineering (IJCTE), 1, 35, 10.7763/IJCTE.2009.V1.6
Jakimi, 2009, Automatic code generation from UML statechart, International Journal of Computer Theory and Engineering (IJCTE), 1, 165
Ali, 2010, Using Java Enums to implement concurrent–hierarchical state machines, Journal of Software Engineering, 4, 215, 10.3923/jse.2010.215.230
T. Tomura, S. Kanai, K. Uehiro, S. Yamamoto, Object-oriented design pattern approach for modeling and simulating open distributed control system, in: Proceedings of the IEEE International Conference on Robotics and Automation (ICRA 2001), 2001, pp. 211–216.
H.J. Köhler, U.A. Nickel, J. Niere, A. Zündorf, Using UML as a Visual Programming Language, Tech. Rep. tr-ri-99-205, University of Paderborn, Paderborn, Germany (August 1999).
H.J. Köhler, U. Nickel, J. Niere, A. Zündorf, Integrating UML diagrams for production control systems, in: Proc. of the 22nd International Conf. on Software Engineering (ICSE 2000), 2000, pp. 241–251.
R. Tiella, A. Villafiorita, S. Tomasi, Speciffication of the control logic of an eVoting system in UML: the ProVotE experience, in: Proceedings of the 5th International Workshop on Critical Systems Development Using Modeling Languages (CSDUML06), 2006, pp. 93–102.
R. Tiella, A. Villafiorita, S. Tomasi, FSMC+, a tool for the generation of Java code from statecharts, in: Principles and Practice of Programming in Java, 2007, pp. 93–102.
Villafiorita, 2009, Development, formal verification, and evaluation of an E-voting system with VVPAT, IEEE Transactions on Information Forensics and Security, 4, 651, 10.1109/TIFS.2009.2034903
E. Benowitz, K. Clark, G. Watney, Auto-coding UML statecharts for flight software, in: Proceedings of the Second IEEE International Conference on Space Mission Challenges for Information Technology (SMC-IT’06), 2006, pp. 413–417.
K.P. Kiri L. Wagstaff, L. Scharenbroich, From Protocol Specification to Statechart to Implementation, JPL Technical Report, Nasa, Jet Propulsion Laboratory, 2008. http://ml.jpl.nasa.gov/papers/wagstaff/wagstaff-protocol-statecharts-08.pdf (last visited May 2012).
K.L. Wagstaff, E. Benowitz, D.J. Byrne, K. Peters, G. Watney, Automatic code generation for instrument flight software, in: Proceedings of the 9th International Symposium on Artificial Intelligence, Robotics, and Automation in Space, 2008.
S. Teppola, P. Parviainen, J. Takalo, Challenges in deployment of model driven development, in: The Fourth International Conference on Software Engineering Advances (ICSEA 2009), 2009, pp. 15–20.
Gamma, 1995
B. Kitchenham, Procedures for Performing Systematic Reviews, Technical Report tr/se-0401, Keele University, 2004. <http://www.eecis.udel.edu/∼cisgsa/lib/exe/fetch.php?id=research&cache=cache&media=faq:kitchenham_2004.pdf> (last visited May 2012).
B. Kitchenham, S. Charters, Guidelines for Performing Systematic Literature Reviews in Software Engineering, Version 2 (EBSE 2007-01) (2007) 200701. <http://pages.cpsc.ucalgary.ca/sillito/cpsc-601.23/readings/kitchenham-2007.pdf> (last visited May 2012).
Petticrew, 2005
Gentleware, Poseidon for UML Case Tool, 2012. <http://www.gentleware.com/> (last visited May 2012).
Rhapsody, 2012. <http://www.ibm.com/developerworks/rational/products/rhapsody/> (last visited May 2012).
Borland Together 2008 Edition for Eclipse, 2012. <http://www.borland.com/us/products/together/> (last visited May 2012).
Executable UML, UniMod, UniMod Project, 2008. <http://unimod.sourceforge.net/> (last visited May 2012).
IBM, IBM Rational Rose, 2012. <http://www-01.ibm.com/software/awdtools/developer/rose/> (last visited May 2012).
Tigris.org, Open Source Software Engineering Tools, ArgoUML Modeling Tool, 2012. <http://argouml.tigris.org> (last visited May 2012).
T. Allegrini, Code Generation Starting from Statecharts Specified in UML, argoUML White Paper, 2002. <http://argouml.tigris.org/docs/allegrini_dissertation/tesi_en.pdf>. (last visited May 2012).
I. Niaz, Automatic Code Generation From UML Class and Statechart Diagrams, PhD Dissertation, University of Tsukuba, 2005.
K.O. Chow, W. Jia, V.P. Chan, J. Cao, Model-based generation of Java code, in: Proc. International Conf. On Parallel and Distributed Processing Techniques and Applications (PDPTA 2000), 2000.
B. Pérez, Towards Decision Facts Management Systems: The Particular Case of Clinical Guidelines, PhD Thesis, University of Zaragoza, Department of Computer Science and Systems Engineering, Zaragoza, Spain, 2011.
P. Adamczyk, The anthology of the finite state machine design patterns, in: Proceedings of the 10th Conference on Pattern Languages of Programs (PLoP), 2003.
P. Adamczyk, Selected patterns for implementing finite state machines, in: Proceedings of the 11th Conference on Pattern Languages of Programs (PLoP), 2004.
J. Ali, Implementing statecharts using Java enums, in: Proceedings of the 2nd International Conference on Education Technology and Computer (ICETC), vol. 4, 2010, pp. 413–417.
D. Babitsky, Hierarchical state machine design in C++, C/C++ Users Journal. <http://drdobbs.com/cpp/184402040> (last visited May 2012).
Chauvel, 2005, Code generation from UML models with semantic variation points, vol. 3713, 54
F. Culwin, The statechart design of a novel date input mechanism, Italics e-Journal 3 (1). <http://www.ics.heacademy.ac.uk/italics/Vol3-1/statechartpaper/statechartpaper.PDF> (last visited May 2012).
Pilitowski, 2007, Code generation and execution framework for UML 2.0 classes and state machines, 421
A. Derezinska, R. Pilitowski, Correctness issues of UML class and state machine models in the C# code generation and execution framework, in: Proceedings of the International Multiconference on Computer Science and Information Technology (IMCSIT’2008), 2008, pp. 517–524.
Derezinska, 2007, Event processing in code generation and execution framework of UML state machines, Software Engineering in Progress, 80
Derezinska, 2009, Realization of UML class and state machine models in the C# code generation and execution framework, Informatica (Slovenia), 33, 431
Douglass, 1998
B.P. Douglass, Class 505/525: state machines and statecharts, in: Proceedings of Embedded Systems Conference Fall, 2001.
C. Duby, Class 265: implementing UML statechart diagrams, in: Proceedings of Embedded Systems Conference Fall, 2001.
C. Duby, Implementing UML Statechart Diagrams, White Paper, 2004, <http://www.pathfindermda.com/wp-content/themes/pathfinder/downloads/implementing_state_charts.pdf> (last visited May 2012).
Heinzmann, 2004, Yet another hierarchical state machine, Overload Journal: Association of C & C++ Users, 14
A. Knapp, S. Merz, Model checking and code generation for UML state machines and collaborations, in: G. Schellhorn, W. Reif (Eds.), Proceedings of the 5 th Workshop on Tools for System Design and Verification (FM-TOOLS), Institut für Informatik, Universität Augsburg, Reisensburg, Germany, 2002, pp. 59–64.
A. Knapp, S. Merz, C. Rauh, Model checking – timed UML state machines and collaborations, in: Proceedings of the Formal Techniques in Real-Time and Fault-Tolerant Systems, 7th International Symposium (FTRTFT 2002), vol. 2469, Lecture Notes in Computer Science, 2002, pp. 395–416.
Lafreniere, 2000, State machine design in C++, C/C++ Users Journal, 18, 58
L. Lamour, C.M.F. Rubira, The reflective state pattern, in: Proceedings of the Pattern Languages of Program Design, TR-WUCS-98-25, 1998.
L. Lamour, C.M.F. Rubira, Reflective design patterns to implement fault tolerance, in: Proceedings of the Workshop on Reflective Programming in C++ and Java, OOPSLA’98, 1998, pp. 81–85.
P. Metz, J. O’Brien, W. Webern, Code generation concepts for statechart diagrams of the UML v1.1, in: Proc. of the Object Technology Group (OTG) Conference, 1999.
Pintér, 2003, Program code generation based on UML statechart models, Periodica Polytechnica, Electrical Engineering, 47, 087
G. Pintér, I. Majzik, Automatic code generation based on formally analyzed UML statechart models, in: Proceedings of the Workshop on Formal Methods for Railway Operation and Control Systems, Budapest, L’Harmattan Kiad, 2003, pp. 45–52.
Pintér, 2004, Impact of statechart implementation techniques on the effectiveness of fault detection mechanisms, 136
G. Pintér, Model Based Program Synthesis and runtime Error Detection for Dependable Embedded Systems, PhD Thesis, Budapest University of Technology and Economics, Department of Measurement and Information Systems, Budapest, Hungary, 2007.
G. Pintér, I. Majzik, Code Generation Based on UML Statecharts, in: Proceedings of the 10th PhD Mini-Symposium: Budapest University of Technology and Economics Department of Measurement and Information Systems, 2003, pp. 18–19.
M. Samek, Practical Statecharts in C/C++, Quantum Programming for Embedded Systems., CMP Books, 2002.
Samek, 2000, State-oriented programming, International Journal of Embedded Systems, 13, 22
M. Samek, Practical Statecharts in C/C++, CMP Books, 2002.
A.V. Saúde, R.A.S.S. Victorio, G.C.A. Coutinho, Persistent state pattern, in: Proceedings of the 17th Conference of Pattern Languages of Programs (PLoP), 2010.
A. Shalyto, N. Shamgunov, G. Korneev, State machine design pattern, in: Proceedings of the 4th International Conference on.NET Technologies, 2006, pp. 51–57.
Shlaer, 1992
J. Ali, J. Tanaka, Converting statecharts into Java code, in: Proceedings of the 5th International Conference on Integrated Design and Process Technology (IDPT’99), 1999, pp. 111–116.
Ali, 2001, Implementing the dynamic behavior represented as multiple state diagrams and activity diagrams, Journal of Computer Science and Information Management (JCSIM), 2, 24
Niaz, 2005, An object-oriented approach to generate Java code from UML statecharts, International Journal of Computer & Information Science, 6
Tomura, 2001, Developing simulation models of open distributed control system by using object-oriented structural and behavioral patterns, 428
S.M. Yacoub, H.H. Ammar, A pattern language of statecharts, in: Proceedings of the Fifth Annual Conf. on the Pattern Languages of Program (PLoP’98), 1998, pp. 98–99.
Alur, 2003
SPIN and PROMELA Reference Manual, 2011. <http://spinroot.com/spin/whatispin.html> (last visited May 2012).
HUGO Tool, 2008. <www.pst.ifi.lmu.de/projekte/hugo> (last visited May 2012).
OMG, UML 2.1.2 Superstructure Specification, Document Formal/2007-11-02, 2007. <http://www.omg.org/> (last visited May 2012).
Sun Microsystems, The Java Tutorial, 2012. <http://download.oracle.com/javase/tutorial/java/javaOO/enum.html> (last visited May 2012).
Moody, 2009, The “physics” of notations: toward a scientific basis for constructing visual notations in software engineering, IEEE Transactions on Software Engineering, 35, 756, 10.1109/TSE.2009.67
Budgen, 2011, Empirical evidence about the UML: a systematic literature review, Software: Practice & Experience, 41, 363
F. Khomh, Y.G. Guéhéneuc, Do design patterns impact software quality positively? in: Proceedings of the 12th Conference on Software Maintenance and Reengineering, IEEE Computer Society Press, 2008, 5pp (Short Paper).
Khomh, 2008, DEQUALITE: building design-based software quality models
Domı´nguez, 2010, Towards a traceable clinical guidelines application: a model driven approach, Methods of Information in Medicine, 46, 571, 10.3414/ME09-01-0038
Pérez, 2010, Authoring and verification of clinical guidelines: a model driven approach, Journal of Biomedical Informatics, 43, 520, 10.1016/j.jbi.2010.02.009