09.08.2013 Views

SPES 2020 Deliverable 1.4.B-3 Concepts for an Integrated Tool ...

SPES 2020 Deliverable 1.4.B-3 Concepts for an Integrated Tool ...

SPES 2020 Deliverable 1.4.B-3 Concepts for an Integrated Tool ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Generic editor framework. A front-end provides a user interface <strong>for</strong> authoring models in the<br />

repository. The front-end should constitute a generic framework that c<strong>an</strong> be parametrized<br />

by the applied modeling l<strong>an</strong>guages. The front-end provides editors to author a model in its<br />

concrete representation by using the concrete syntax of the modeling l<strong>an</strong>guage. Furthermore,<br />

the front-end offers the operations to the modeler, which are defined by the modeling l<strong>an</strong>guage<br />

(vertical) <strong>an</strong>d operations that are common to all l<strong>an</strong>guages (horizontal).<br />

These operations have to be intuitive to support the engineers in working with the models in <strong>an</strong><br />

efficient m<strong>an</strong>ner. For example, the operations that support configuration m<strong>an</strong>agement should<br />

allow the engineers to commit the ch<strong>an</strong>ges on models <strong>an</strong>d to update parts of the models. In<br />

case of a conflict, we need a merge operation that allows the visualization of the differences<br />

between models in their concrete syntax. The Eclipse plat<strong>for</strong>m is a perfect c<strong>an</strong>didate <strong>for</strong> a<br />

front-end, as its service-oriented architecture makes it highly extensible [Foub].<br />

Workflow engine. Our experiences show that a defined process is often not followed by its<br />

particip<strong>an</strong>ts, as long as it is not supported by the modeling tool. To prevent deviation from the<br />

process, the developers should be guided through the defined process by the tooling plat<strong>for</strong>m.<br />

In order to operationalize the process, the workflow engine interprets the process definition of<br />

the modeling l<strong>an</strong>guage. When interpreting a process model, the progress <strong>an</strong>d current activities<br />

that need to be per<strong>for</strong>med are always available through the workflow engine. To <strong>for</strong>ce a modeler<br />

to per<strong>for</strong>m the current activities, all operations <strong>an</strong>d interpreters not required <strong>for</strong> the activity<br />

have to be suppressed. The rights m<strong>an</strong>agement of the tooling plat<strong>for</strong>m has to ensure that<br />

certain activities are only per<strong>for</strong>med by certain roles. When modelers log on to the tooling<br />

plat<strong>for</strong>m, they c<strong>an</strong> only per<strong>for</strong>m activities which are currently available based on the process<br />

definition <strong>an</strong>d which correspond to one of the roles they own.<br />

Model interpretation engine. It provides the facilities to per<strong>for</strong>m complex tasks such as<br />

<strong>an</strong>alysis <strong>an</strong>d synthesis based on the sem<strong>an</strong>tical definition of the l<strong>an</strong>guage. To per<strong>for</strong>m complex<br />

editing <strong>an</strong>d refactoring facilities, <strong>an</strong> in-place model-to-model tr<strong>an</strong>s<strong>for</strong>mation engine is necessarily<br />

integrated in the front-end. For <strong>an</strong> automated generation of code <strong>an</strong>d other process<br />

artifacts, <strong>an</strong> out-of-place model-to-model as well as a model-to-text tr<strong>an</strong>s<strong>for</strong>mation engine is<br />

needed. Since such generation tasks might need a lot of time <strong>an</strong>d computing power they should<br />

be located at a different machine in the back-end. In order to be able to execute <strong>an</strong> operational<br />

sem<strong>an</strong>tics, a generic simulation framework is necessary which should be also located in<br />

the back-end because of resource consumption issues.<br />

4.2 Building-Block Principle<br />

To operationalize <strong>an</strong> integrated model theory <strong>for</strong> practice, a comp<strong>an</strong>y may aim at defining <strong>an</strong><br />

integrated modeling l<strong>an</strong>guage that covers the whole development process. As a consequence,<br />

such <strong>an</strong> integrated modeling l<strong>an</strong>guage is quite extensive <strong>an</strong>d thus difficult to develop. The<br />

development costs are reduced by developing <strong>an</strong> integrated modeling l<strong>an</strong>guage that is reused<br />

<strong>for</strong> several comp<strong>an</strong>ies. However, this approach is usually not feasible, as a comp<strong>an</strong>y may<br />

request a modeling l<strong>an</strong>guage tailored to its specific needs.<br />

22

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!