Workshop Proceedings
The TWOMDE 2009 Proceedings are available on CEUR-WS.org.
Workshop Program
8:30-9:00: Welcome (Chasm Creek A)
9:00-10:00: Invited Talk
Dragan Gasevic: Ontologies and Software Modeling: Potentials, Experience and Challenges.
.
10:00-10:30: Coffee break (Mesa Verde Foyer)
10:30-12:30: Modeling and Representing with Ontologies
10:30-11:15: Towards semantic modelling of network physical devices. Krzysztof Miksa, Marek Kasztelnik, Pawel Sabina and Tobias Walter.
![]()
.
11:15-12:00: Mapping MOF-based requirements representations to ontologies for software reuse. Katharina Wolter, Michal Smialek, Lothar Hotz, Stephanie Knab, Jacek Bojarski and Wiktor Nowakowski.
![]()
.
12:30-14:00: Lunch (Atrium 2nd floor)
14:00-14:45: Integrating Ontologies and MDE
14:00-14:45: Combining ontology-enriched Domain-Specific Languages. Tobias Walter and Jürgen Ebert.
![]()
.
14:45-15:30: Towards a Model-driven Approach for Reverse Engineering Design Patterns. Awny Alnusair and Tian Zhao.
![]()
.
15:30-16:00 Coffee break (Mesa Verde Foyer)
16:00-16:40 Tool Presentation
Fernando Silva Parreiras. OWL into UML in Software Engineering">TwoUse Toolkit..
16:40-17:30 Discussion
Invited Talk: Dragan Gasevic on Ontologies and Software Modeling: Potentials, Experience and Challenges
Model Driven Engineering (MDE) and the Ontologies represent two key areas with a far-reaching vision for the future of software engineering. The main promise of MDE is to raise the level of abstraction from technology-platform-specific concepts to the higher levels of software modeling. Ontologies, on the other hand, are introduced to provide formal and explicit definitions of shared conceptualizations different domains. Besides software engineering, ontologies play the main role other areas such as the Semantic Web and information systems.
Although ontologies and MDE have been developed by two different communities, they share a number of principles and goals, and there are important synergies that can be achieved by combining them with each other. The Ontology Definition Metamodel (ODM) standard by the OMG can be viewed as a first step towards their happy marriage. While this is certainly a big success of the community, there are many open research challenges such as the levels of abstraction where ontologies and modeling languages can be integrated; tasks in which ontologies and software models can be optimally used together; and software processes that can fully leverage the potential of this happy marriage.
In this talk, we will start from the main principles of MDE and ontologies, and discuss present achievements and experience gained in various projects and domains. Looking to the future, we will then tackle some of the key research challenges and discuss some on-going initiatives such as the use of ontologies in the development of service-oriented architectures and staged configuration of software product lines.
Accepted Papers
Krzysztof Miksa, Marek Kasztelnik, Pawel Sabina and Tobias Walter. Towards semantic modelling of network physical devices
One of the challenges faced by network management systems is the increasing need for consistent management of physical network equipment. We propose a solution where equipment is modelled using a dedicated Domain Specific Language (DSL) enriched with the power of logic-based reasoning services. This enables us to define a rich layer of semantics on top of the structural description of the devices. This way, the configuration related constraints are expressed declaratively, in a platform independent manner, and are managed in an integrated way with the structural model. The information kept in the model can then be used on runtime to give guidance to the system user.
Katharina Wolter, Michal Smialek, Lothar Hotz, Stephanie Knab, Jacek Bojarski and Wiktor Nowakowski. Mapping MOF-based requirements representations to ontologies for software reuse
In this paper, we combine MOF-based software representations and description logic-based mechanisms for facilitating software reuse. All software representations (requirements specifications, design models, code) arising from one project are combined in a so-called software case and stored in a repository for later retrieval. For reuse purposes, we use requirements as search indexes. We map metamodel-based requirements specifications to an ontology and use a Description Logic reasoner for classification. This makes implicit taxonomical relations explicit. The inferred taxonomical hierarchy is then used to compute the taxonomical similarity between the current (initial) requirements and those in the repository. Doing so, we retrieve software cases with a high reuse potential. This approach has already been validated in an industrial context.
Tobias Walter and Jürgen Ebert. Combining ontology-enriched Domain-Specific Languages
Domain-specific languages (DSLs) are high-level and should provide abstractions and notations for a better understanding and easier modeling of applications in a special domain. It is essential to combine different DSLs while modeling a complete system. Hence the question arises: How can we combine DSLs and in addition integrate their semantics and constraints? Based on a case study from an industrial partner, in this paper we first show how DSLs can be enriched by the ontology language OWL to define additional constraints and semantics within the DSL. Then we give an answer of how to combine these ontology-enriched DSLs and present a solution of integrating constraints and semantics of several languages.
Awny Alnusair and Tian Zhao. Towards a Model-driven Approach for Reverse Engineering Design Patterns
The size and complexity of software systems is rapidly increasing. Meanwhile, the ability to understand and maintain such systems is decreasing almost as fast. Model Driven Engineering (MDE) promotes the notion of modeling to cope with software complexity; in this paper we report on our research that utilizes ontological modeling for understanding complex software systems. We focus the discussion on recovering design pattern information from source code. We thus argue that an effective recovery approach need to utilize semantic reasoning to properly match an ontological representation of both: conceptual source code knowledge and design pattern descriptions. Since design patterns can take different forms when implemented in code; we argue that hard-coding their descriptions limits the flexibility and usability of a detection mechanism.
