Logic-Based Model-Level Software Development with F-OML [chapter]

Mira Balaban, Michael Kifer
2011 Lecture Notes in Computer Science  
Models are at the heart of the emerging Model-driven Engineering (MDE ) approach in which software is developed by repeated transformations of models. Intensive efforts in the modeling community in the past two decades have produced an impressive variety of tool support for models. Nonetheless, models are still not widely used throughout the software evolution life cycle and, in many cases, they are neglected in later stages of software development. To make models more useful, one needs a
more » ... ul model-level IDE that supports a wide range of object modeling tasks. Such IDEs must have a consistent formal foundation. This paper introduces F-OML, a language intended as an expressive, executable formal basis for model-level IDEs. F-OML supports a wide variety of model-level activities, such as extending UML diagrams, defining design patterns, reasoning about UML diagrams, testing UML diagrams, specification of Domain Specific Modeling Languages, and meta-modeling. F-OML is a semantic layer on top of an elegant logic programming language of guarded path expressions, called PathLP. We believe that a combination of current object technology with F-OML as an underlying language can lay the basis for a powerful model-level IDE.
doi:10.1007/978-3-642-24485-8_38 fatcat:ldywbcboqfapbjtzena2a4pjoy