Towards C# Application Development Using UML State Machines: A Case Study
Anna Derezińska , Marian Szczykulski
AbstractUsing a state machine for modeling a class behavior can assist effective development of an application. We discuss a model-driven approach to building a C# application based on UML class models and behavioral state machines. A case study addressed in the paper is devoted to a social network of mobile users. The core of the system is a presence server for the status services in the network. There are three main tasks performed by the server: subscription of a status of another user, publication of a new status with given rules and notification another user about a status. The system architecture and exemplary state machine models are presented. Model to code transformation and development of an executable application was realized by a Framework for eXecutable UML (FXU). Verification of the application was supported by tracing of program execution in terms of model elements using FXU Tracer. On the basis of the gathered experience, we discuss design guidelines for carrying out the approach.
|Book||Sobh Tarek, Elleithy Khaled (eds.): Emerging Trends in Computing, Informatics, Systems Sciences, and Engineering, Lecture Notes in Electrical Engineering, vol. 151, 2013, New York Heidelberg Dordrecht London, Springer, ISBN 978-1-4614-3557-0, 1169 p., DOI:10.1007/978-1-4614-3558-7|
|Keywords in English||MDA UML State machine C# Model transformation Code generation|
|Project||Development of new methods and algorithms in the following areas: computer graphics, artificial intelligence, and information systems, and distributed systems . Project leader: Rybiński Henryk,
, Phone: +48 22 234 7731, start date 29-05-2012, planned end date 31-12-2012, end date 30-11-2013, II/2012/DS/1, Completed
|Score||= 5.0, 01-02-2020, MonographChapterAuthor|
|Publication indicators||= 3; : 2013 = 0.187|
|Citation count*||8 (2020-05-10)|
* presented citation count is obtained through Internet information analysis and it is close to the number calculated by the Publish or Perish system.