Abstract
To most in the software community, "modeling" is drawing pictures, something much different than "coding". While programming languages must be specified precisely enough to be executable, this has not necessarily been the case for modeling languages. Indeed, the well-known Unified Modeling Language (UML) has for years had a specification that is far from precise.
However, precise models are quite common in other engineering disciplines, and there has been a minority even in software engineering that have created models that are precise enough to be, themselves, executable. Over the last decade, the UML community has more generally come to realize the benefits of having at least a subset of UML specified with precise execution semantics. While not all models need to be executable, executable models can support early testing and analysis of the design of critical software systems, as well as supporting simulation for communities using UML for modeling beyond just software (such as SysML for systems engineering).
As a result, there has been a great deal of work in recent years toward the standardization of precise, executable semantics for UML models - the "meaning" behind the pictures: Foundational UML (fUML), the Action Language for fUML (Alf) and the recently completed Precise Semantics for UML Composite Structures. These new specifications provide the promise of widespread support for executable modeling across the many UML tools now on the market.
- Abstract Solutions. MDA with Executable UML. http://www.kc.com/XUML/Google Scholar
- Corcoran, D. 2011. Model Driven Development and Executable UML at Ericsson. http://www.omg.org/news/meetings/tc/agendas/va/xUML_pdf/Corcoran.pdfGoogle Scholar
- Eclipse Foundation. Papyrus/UserGuide/ModelExecution. https://wiki.eclipse.org/Papyrus/UserGuide/ModelExecutionGoogle Scholar
- Harel, D., and Politi, M. 1998. Modeling Reactive Systems with Statecharts: The Statement Approach. McGraw-Hill. Google Scholar
Digital Library
- InterCAX. Products. http://www.intercax.com/products/Google Scholar
- Lieber Lieber Software. Advanced Modeling Using Simulation and Execution (AMUSE). http://www.lieberlieber.com/model-engineering/amuse/Google Scholar
- Mentor Graphics. Bridgepoint. http://www.mentor.com/products/sm/model_development/bridgepoint/Google Scholar
- Model Driven Solutions. fUML Reference Implementation. http://fuml.modeldriven.orgGoogle Scholar
- Model Driven Solutions. Alf Reference Implementation. http://alf.modeldriven.orgGoogle Scholar
- Mutschall, J. 2014. ALF: The Standard Programming Language for UML. Code Generation 2014, Cambridge UK. http://www.slideshare.net/JuergenMutschall/code-generation-2014-alf-the-standard-programming-language-for-umlGoogle Scholar
- No Magic. Cameo Simulation Toolkit. http://www.nomagic.com/products/magicdraw-addons/cameo-simulation-toolkit.htmlGoogle Scholar
- Object Management Group. 2003. MDA Guide Version 1.0.1. OMG Document omg/03-06-01, June 2003. http://www.omg.org/mda/Google Scholar
- Object Management Group. 2011. UML Profile for MARTE: Modeling and Analysis of Real-Time Embedded Systems, Version 1.1. OMG Document formal/11-06-02. http://www.omg.org/spec/MARTE/1.1/Google Scholar
- Object Management Group. 2012. OMG Systems Modeling Language (OMG SysML?), Version 1.3. OMG Document formal/12-06-01. http://www.omg.org/spec/SysML/1.3/Google Scholar
- Object Management Group. 2013. Semantics of a Foundational Subset for Executable UML Models (fUML), Version 1.1. OMG Document formal/13-08-06, August 2013. http://www.omg.org/spec/FUML/1.1/Google Scholar
- Object Management Group. 2013. Action Language for Foundational UML (Alf): Concrete Syntax for a UML Action Language, Version 1.0.1. OMG Document formal/13-09-01, October 2013. http://www.omg.org/spec/ALF/1.0.1/Google Scholar
- Object Management Group. 2013. OMG Unified Modeling Language (OMG UML?), Version 2.5 Beta 2. OMG Document formal/13-09-05, September 2013. http://www.omg.org/spec/UML/2.5/Beta2Google Scholar
- Object Management Group. 2014. Precise Semantics of UML Composite Structures, Version 1.0 Beta 1. OMG Document Number ptc/2014-06-15. http://www.omg.org/spec/PSCS/1.0/Beta1/Google Scholar
- Mellor, S. J. and Balcer, M. J. 2002. Executable UML: A Foundation for Model-Driven Architecture. Addison-Wesley. Google Scholar
Digital Library
- Selic, B., Gullekson, G. and Ward, P. 1994. Real-Time Object-Oriented Modeling. Wiley. Google Scholar
Digital Library
- Shlaer, S. and Mellor, S. J. 1988.Object-Oriented Systems Analysis: Modeling the World in Data. Prentice Hall. Google Scholar
Digital Library
- Shlaer, S. and Mellor, S. J. 1991. Object Lifecycles: Modeling the World in States. Prentice Hall. Google Scholar
Digital Library
- Shubert, G. 2011. Executable UML Information Day Panelist Presentation. Lockheed-Martin Space Systems Company. http://www.omg.org/news/meetings/tc/agendas/va/xUML_pdf/Shubert.pdfGoogle Scholar
Index Terms
UML with meaning: executable modeling in foundational UML and the Alf action language
Recommendations
UML with meaning: executable modeling in foundational UML and the Alf action language
HILT '14: Proceedings of the 2014 ACM SIGAda annual conference on High integrity language technologyTo most in the software community, "modeling" is drawing pictures, something much different than "coding". While programming languages must be specified precisely enough to be executable, this has not necessarily been the case for modeling languages. ...
Agile programming with executable models: an open-source, standards-based eclipse environment
SPLASH '14: Proceedings of the companion publication of the 2014 ACM SIGPLAN conference on Systems, Programming, and Applications: Software for HumanityWhy can it be so hard to extract the "truth" from the code, especially on important big-picture, architectural issues in large systems? Models designed for human understanding can display these things much more clearly, but how do you keep the models in ...
Using UML as a Domain-Specific Modeling Language: A Proposal for Automatic Generation of UML Profiles
CAiSE '09: Proceedings of the 21st International Conference on Advanced Information Systems EngineeringNowadays, there are several MDD approaches that have defined Domain-Specific Modeling Languages (DSML) that are oriented to representing their particular semantics. However, since UML is the standard language for software modeling, many of these MDD ...







Comments