MOST Project
HOME ABOUT MOST PARTNERS DOCUMENTS WORK PACKAGES NEWS & EVENTS PRIVATE AREA CONTACT
MOST Project
Screencasts demonstrating the results of MOST are available.

read more >

bottom

Information and Communication Technologies

Seventh Research Framework Programme
About MOST

Introduction

The global competition challenges the competitiveness of the European software industry, requiring increased efficiency and quality of software development, improved management of huge and complex software systems, and customer-tailored software products. Model-driven software development (MDSD, often referred to as Model-Driven Architecture - MDA) provides means for separating business and implementation aspects of software at different levels of abstraction and is therefore a key for efficient development of large and complex software systems for a heterogeneous customer community.

However, although model-driven software development constitutes a huge leap forward in software development, fragmentation of the involved models on different abstraction levels, difficult configuration and customization, and the corresponding loss of oversight and understanding still imply a tremendous effort for the software developer. Key questions, such as the validity of models, the relationship between models and code, and properties of model transformations cannot be answered by today's technology.

Yet, at this point in time, we face a possible opportunity to tackle these problems: ontologies allow for managing, integrating and validating information found in different software models and code, independently of whether they are graphical models, domain-specific languages, model and software transformations or knowledge about steps in the software process. Thus, ontologies enable the developer to ask crucial questions and check validity across model fragments and process steps. Ontology technology has only recently become able to handle the scale that is required for large-scale software development. In our work-in-progress approach presented in this paper, we focus on marrying ontology and software technology (MOST).

Objectives

One major objective of the MOST approach is to leverage MDSD and other software development processes with ontology technology. This goal will be reached by implementing integration technology for ontologies into MDSD, resulting in ontology-driven software development (ODSD). This integration technology concerns all involved artefacts (ontology and modelling languages, models, tools), as well as the development processes. The artefact integration technology will include capabilities for managing software development and ontology-based validation and knowledge management in an integrated platform. For this purpose, the MOST approach will integrate ontologies and software technologies at three different levels. First, integration will be addressed at the level of modelling languages. Second, ontologies and models will be integrated (modelling level) so that ontologies can be used in models, and vice versa. Third, ontology-based queries will be integrated on the level of MDA transformations.

As a second major objective, the MOST approach creates an integrated ontology-driven, model-aware software process (ODSD). This development process will be guided by process guidance ontologies that formalize the rules, conditions and actions a software engineer has to conduct in specific development situations. Instead of specifying a workflow operationally, the ODSD will be driven by guidance ontologies that can formalize company-specific rules, conventions, and enactments. Hence, technology from the ontology engineering domain will benefit to the software process domain. Secondly, the guidance ontologies will guide the modelling engineer to change between ontology and modelling languages, i.e., to transform models to different, but more appropriate reasoning languages. Finally, to be able to guide software engineers through the development of integrated model chains, traceability information must be provided for the entire chains.

Methodology used

In our approach we follow an interdisciplinary methodology. We use and extend concepts and technologies mainly from two research domains: the software engineering domain (requirements management, metamodelling, model integration, model transformation, and traceability) and the semantic technologies domain (ontologies, reasoning).

Technology or business case description

Besides technical requirements, non-technical constraints typically capture, e.g., requirements from the legal domain which ultimately have to be supported and enforced by the technical solution. Prominent examples for such sets of constraints are the Sarbanes-Oxley Act or Basel-II. Although MDSD provides means to capture constraints, too, these constraints are limited to the structural properties of the technical models, i.e., they can only validate properties that are explicitly captured in these technical models. In contrast to that, the non-technical constraints typically affect several technical artefacts and their dependencies that stem from these non-technical constraints cannot be easily captured in the technical models. MOST will express non-technical, business-related constraints in an ontology, and use these rules to guide subsequent development activities. Furthermore, the traceability technologies will be used to ensure the links back from the technical artefacts to the constraints to allow faster adoption in case of changing requirements.

The MOST approach will be applied and evaluated in three case studies in the information systems, ERP, and telecommunications domain.

The first case study considers guidance in the solution domain, i.e., support in transforming non-technical constraints from the problem domain into recommendations during model-driven development activities.

The second case study is primarily concerned with testing the guidance of the software development process, while exploiting reasoning and traceability capabilities.

The third case study will cover the area of development of large scale Network Management Systems with focus on increasing development productivity and software quality.

Conclusions and summary

The presented MOST approach targets for higher efficiency in software development processes and higher quality in software development with a better integrated understanding of the resulting software product. The resulting process will be - to our knowledge - the worldwide first process for an ontology-driven MDSD. We expect that this will lead to improved quality of the software products, productivity of the developer teams as well as the time to market for customized solutions.