Download presentation
Presentation is loading. Please wait.
Published byMaximilian Goodwin Modified over 9 years ago
1
On the Representation of Intangible Objects such as Software in a Measurement Context Miguel Lopez Valérie Paulus Grégory Seront Simon Alexandre
2
Questions Are software so intangible that measurement of such abstract beings is impossible? Is the nature of software so impalpable? How can we formulate the software representation problem in order to allow measurement?
3
More Questions Is it relevant to measure software representations in order to make decisions concerning this software? Are the representations of software relevant and suitable for measurement?
4
Software Models To measure, we need a representation of the software because of its intangible nature. The representation of a software is called a model.
5
Different Software Models In the literature, a lot of languages for representing software can be found. UML Graphs Source Code ….
6
Software Meta-Model The concepts and their relations used for building a model are explained in a meta-model. So, meta-models exist for UML, graphs, and so on.
7
Software Meta-Model Problem How can we select a relevant and suitable meta-model in measurement context? Is that always necessary to use meta- models in order to measure a software? For an external measure, do we have to work with meta-models?
8
Meta-model for Measurement Measure Definition: Mapping between an empirical set onto a mathematical set. A mapping between an empirical set of objects A and a mathematical set of objects B. Set A Set B
9
Set A Problem Set A is a set of empirical objects. By definition, tangible objects. Are software tangible objects? Is all the software intangible? Or, just some parts, some attributes? Some software attributes are intangible. Coupling, cohesion, complexity,efficiency,…
10
Set A Problem So, to perceive those attributes, they need representation or model. Set A is replaced by a set A’ which contains representations of objects of set A. The transformation A -> A’ transforms intangible objects into tangible objects.
11
Set A Problem Does the transformation A -> A’ keeps the structure of Set A? When measuring an element of A’, are we measuring the corresponding element of A? Set A Set A’ Set B
12
Build Set A’ To build the set of representations or models, we need to define the elements used for modeling. These elements are formalized in a meta-model.
13
Meta-Model So, the meta-model must be relevant and suitable in regard with: Measurement Goal Entity: products, projects, process Attribute: properties of the entity: efficiency, coupling,…
14
Measurement Method A measurement method must at least define: Its goal The considered entity The attribute to be measured In regard with these three elements, a suitable and relevant meta-model must be built or selected.
15
Entity & Meta-model In this presentation, only the entity software product is considered. The meta-modelisation aims at modeling the entity. Several types of software product entities exist: Requirements Document Design Document Source Code Executable
16
Entity & Meta-model The meta-model depends on the type of entity. For example: Design Document: Meta-model of UML: class, relations,… Meta-model of graphs: nodes, edges,…
17
Entity, Meta-model, & Attribute But, the meta-model also depends on the type of attribute. In regard with the attribute, some meta- models are more relevant and suitable than others.
18
Entity, Meta-model, & Attribute For example, measuring the functional size of a software product with Cosmic- FFP: Entity: Requirements Document Attribute: Functional size
19
Entity, Meta-model, & Attribute Meta-Model: Cosmic-FFP
20
How to verify the meta-model? Two methods: Expert-based: the relevance and the suitability of the meta-model is evaluated by a set of experts. Empirical: the relevance and the suitability is of the meta-model is evaluated within a set of entities coming real projects.
21
How to verify the meta-model? Problems with these two methods: Expert-based: Reliability of the experts judgment. Representativity of the experts sample. Empirical: What does mean suitable and relevant in operational terms? How can we make representative samples?
22
Advantages to explicit the meta-model An explicit meta-model allows to better understand the entity and the attribute to be measured. To meta-model an entity like design, source code in terms of a given attribute (coupling,…), it is important to understand and clearly define these terms.
23
Advantages to explicit the meta-model An explicit meta-model allows to identify early in the measurement method, the limits of measurement: Cosmic-FFP meta-model does not take into account the complexity of the data movement. So, the software with complex algorithms are not sized by COSMIC-FFP
24
Meta-model for all types of measurement Meta-model in external measures are often implicit. It is not necessary to explicit the meta- model of the entity for external measures. Response time: which is the meta- model of the entity?
25
Conclusion Does the entity meta-model a critical activity in software measurement? Must this activity be explored in details?
26
Questions ??
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.