measurement and metrics in model driven software development

Post on 09-May-2015

913 Views

Category:

Education

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Measurement and Metrics in Model Driven Software Development

A short survey research

Ahmet Selman Bozkır

Introduction “A Model-driven Measurement

Approach” “Measuring Model Transformation in

Model Driven Development” Conclusion

Today

Model driven software development is a kind of new concept after object oriented approach in software development field.

Model Driven Engineering (MDE) is an approach to software development that advocates the creation of domain-specific languages (DSLs)

Intro

DSL is specified with a metamodel, from the point of view of MDE and a program written in a DSL is called a model.

To address safety-critical concerns and quality assurance, models need to be measured

Intro

Intro

A Model-driven Measurement Approach

Martin Monperrus, Jean-Marc Jezequel, Joel Champeau and Bridgette Hoeltze

ACM/IEEE 11th International Conference on Model Driven Engineering Languages

2008

A Model-driven Measurement Approach

Is it possible?

To generate measurement software from an abstract and declarative specification of metrics?

A Model-driven Measurement Approach

They named their contribution as model-driven measurement approach

It specifies metrics as instance of metric specification meta-model and then these metric specifications are used to generate a complete measurement software

A Model-driven Measurement Approach

Core Contributions:

-it measures models of a model-driven development process-it uses models as unique and consistent metric specifications (metric specification metamodel)-it serves application & domain independent measurement

A Model-driven Measurement Approach

A Model-driven Measurement Approach

Figure: Model-driven measurement: actions and artifacts

The, MSM is used to generate the measurement software itself. (fully automated)

A Model-driven Measurement Approach

DerivedMetricSpecification: arithmetic and function based metrics.CollectionBasedDerivedMetricSpecification: high order metrics. Statistical operators.Predicate: is a function from the set of model elements to the truth values.SigmaMetric: is the count of model elements that satisfy a predicate. Predicate can be as complex as needed.TauMetric: is the count of model links (i.e: link between two model elements)

A metric specification starts with;

- declaration of its type- a mandatory identifier- optional description

A Model-driven Measurement Approach

A Model-driven Measurement Approach

A Model-driven Measurement Approach

A Case Study:

Maritime Surveilliance System

-16 domain metrics implemented- took 1 week (1 day for metrics, 4 days to solve bugs in the measurement software generator prototype)-for comparision – agent based similator took several months

-it reduces the development cost of by an order by magnitude (involves creation of domain metamodel from scratch)

A Model-driven Measurement Approach

Motoshi Saeki and Haruhiko Kaiya (Tokyo Institute of Tech.)

Proceedings of the CAiSE 2007

2007

Measuring Model Transformation in Model-driven Development

Measuring Model Transformation in Model-driven Development

How to identify what transformation can show the improvement of the model quality?

How to define metrics for model transformation?

Measuring Model Transformation in Model-driven Development

• In MDD, model transformation is one the most important steps. • If a metrics value can express the quality of a model, a positive increasing the metrics vales during the transformation process can present the model quality.

•For this, the formal definition of a transformation must cover the definition of metrics of model quality in order to calculate.

Measuring Model Transformation in Model-driven Development

Contribution:

Use a meta modeling method to describe model-specific metrics.

Develop a graph rewriting system to formalize model transformation.

Measuring Model Transformation in Model-driven Development

Technique:

•Adopt a class diagram of UML to specify meta models

•Use Object Contraint Language (OCL) for constraints on models.

Measuring Model Transformation in Model-driven Development

Technique:

• Embed metrics and their calculation methods into a meta model

Measuring Model Transformation in Model-driven Development

Measuring Model Transformation in Model-driven Development

Measuring Model Transformation in Model-driven Development

•Authors propose the technique to specify the metrics of model transformations based on graph rewriting systems

•Authors state the importance of collecting useful definitions of metrics. Furthermore, evaluation of these metrics is also a good future direction.

top related