- by Gersi Mirashi
- October 4, 2023
Some model driven software development approaches
By, MSc. Shaqir SULAJ
Abstract
A model is a simplification of a reality, an abstraction, which neglects all of the irrelevant aspects of a software and focuses on the ones which define the software. Through modeling, we can visualize the software in a way which is understandable from both computers and people. Unified Modeling Language (UML) is a language, which stands in a higher level of abstraction than any programming language and through it, we can build software models from the simplest to the most complicated ones. However, even though through UML we are able to design software’s and to generate a considerable amount of code, still we need to write tons of lines of code in a certain object – oriented language. In order to be totally independent from the execution environment and to focus entirely in business logic as what really defines a software we need to go further. To achieve this goal, the executable UML and state machines concept is introduced. “An executable UML model is one with a behavioral specification detailed enough that it can effectively be run as a program” (Seidewitz, 2011). Through executable model a higher programmer productivity could be achieved and the system is not affected by the year after year change in development technologies, which require that the system to be upgraded each time there are changes in run-time environments. On the other hand, through state machines we are able to simulate the execution of a program through the model. Thus we can develop information systems using techniques which stand in a higher level of abstraction and platform independent that can be translated in whichever specific platform of implementation.
Key words: model driven development, software, state machines, executable UML.
How to cite: Sulaj, S. (2021). Some model driven software development approaches. Ingenious, 1(2), 110–123.
https://doi.org/10.58944/oumr7402
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.