Personal tools
You are here: Home Tools and Methods
Document Actions

MUSIC methodologies

by Jan Thomassen last modified 2008-11-20 12:46

MUSIC is maturing and details on the MUSIC methodologies will follow is due course.

MUSIC Methodology

MUSIC will provide a design methodology and distributed system architecture for the design and implementation of self-adapting applications in ubiquitous computing environments. This will be complemented with enhanced modelling languages for the specification of context dependencies and adaptation capabilities, supported by model specification, validation and simulation tools.

The MUSIC Methodology for developing adaptive applications will closely follow the MADAM methodlogy, which is briefly presented with the help of the following diagram.


MADAM Methodology

Figure 1: Steps involved in the MADAM application development methodology

Analysis of requirements

As a first step, the application developer must analyse the requirements of the application. Thus he will find the context and resource dependency of the application based on the possible application scenarios. He will also have to analyse the involved components, their communications and the possible variants of those components. For the MDA-based development, the developer should also be aware of the modeling requirements of the application.

Modeling adaptibility

After the requirements phase, a model of the application's adaptive behavior is built. In MADAM, the model is built on the UML 2.0. A UML profile provides the support to incorporate required concepts in the model. UML modeling tools support the use of the UML profile.

Model transformation

The model is transformed to Java source code using the MOFScript model-to-text transformation tool, developed in the MODELWARE project.

Code completion

Some concepts are not completely presented in the model. For example, the format of the utility function and property predictors are not fixed. Threfore, in the model only a skeleton is provided for these functions, while their actual implementation is later decided by the developer. Thus, at places (marked by TODOs) the developer manually insert code for those missing functions.

Packaging and deployment

The generated source code can not be directly deployed to the middleware. It is packaged in a .jar file and the users can then install the application by selectig this jar file.

Testing and validation

After deploying the application, the developer has to validate its functional correctness. He has to come up with some possible scenarios and observe the adaptation behavior. The MADAM middleware provides a graphical user interface that can be set to the 'Simulation Mode' in order to perform these tests. In addition, instructins are provided how to test the performance metrics as well.

MUSIC methodology will be colsely alligned with the methodology described above. However, each of the steps will be improved by removing their limitations and by incorporating all the required MUSIC concepts.

Tools

Within the development methodology, tools are required at several stages. In MUSIC, we need tool for building the adaptation model of the application as well as for transforming the platform independent model to platform-specific model and appropriate source code. In addition to this, as a a major improvement to MADAM, in MUSIC we use tools also for simulation, testing and tuning. In order to provide ease to the developers, all these tools will be integrated within the MUSIC development studio.

Eclipse Ontology Definition Metamodel

EODM is an implementation of RDF(S)/OWL metamodels of the Ontology Definition Metamodel (ODM) using the Eclipse Modelling Framework (EMF) with additional parsing, inference, model transformation and editing functions. EODM is part of the IBM Integrated Ontology Development Toolkit (IODT) and uses Eclipse and the EMF extension to drive this integration. It is the first design and implementation of ODM within the Eclipse, EMF and Semantic Web community. EODM allows users to load a RDF/OWL ontology into EMF-based Java objects, to manipulate and infer the EMF Java objects which represents the RDF/OWL ontology in memory, and to serialize the Java objects to an ontology in RDF/XML syntax. EODM also provides model transformation capabilities between RDF/OWL and other modeling languages, such as ECore, UML and ER etc.


Protégé

Protégé is a free, open source ontology editor and knowledge-base framework. The Protégé platform supports two main ways of modeling ontologies: via the Protégé-Frames and Protégé-OWL editors. Protégé ontologies can be exported into a variety of formats including RDF(S), OWL, and XML Schema. It is based on Java, is extensible, and provides a plug-and-play environment that makes it a flexible base for rapid prototyping and application development.


Enterprise Architect

Enterprise Architect is a comprehensive UML analysis and design tool that fulfills almost all the MUSIC requirements. It supports advanced Model Driven Architecture (MDA) transformations using easy to edit and develop transformation templates. The tool is very user-friendly and it supports the XMI versions 1.0, 1.1, 1.2 and 2.1 for import and export. From the perspective of an open source project, the short-coming of Enterprise Architect is that it is not completely free. However, the tool is not that expensive.


Links

A glossary of terms in MUSIC can be found in: glossary.



Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: