Measurement and metrics in model driven software development
1. Measurement and Metrics in
Model Driven Software
Development
A short survey research
Ahmet Selman Bozkır
2. Today
Introduction
“A Model-driven Measurement Approach”
“Measuring Model Transformation in
Model Driven Development”
Conclusion
3. Intro
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)
4. 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
6. A Model-driven Measurement Approach
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
7. A Model-driven Measurement Approach
Is it possible?
To generate measurement software from
an abstract and declarative specification of
metrics?
8. 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
9. 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
10. A Model-driven Measurement Approach
Figure: Model-driven measurement: actions and artifacts
The, MSM is used to generate the measurement software itself.
(fully automated)
11. 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)
12. A Model-driven Measurement Approach
A metric specification starts with;
- declaration of its type
- a mandatory identifier
- optional description
14. 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)
16. Measuring Model Transformation in Model-
driven Development
Motoshi Saeki and Haruhiko Kaiya (Tokyo Institute of Tech.)
Proceedings of the CAiSE 2007
2007
17. 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?
18. 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.
19. 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.
20. 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.
21. Measuring Model Transformation in Model-
driven Development
Technique:
• Embed metrics and their calculation methods into a meta
model
24. 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.