Header

UZH-Logo

Maintenance Infos

Measuring abstraction with footprinting: confronting software models with their purposes


Jeanneret, Cédric. Measuring abstraction with footprinting: confronting software models with their purposes. 2013, University of Zurich, Faculty of Economics.

Abstract

A model is an abstract representation of an entity created for a given purpose. Software engineers use many kinds of models in various contexts, ranging from informal models sketched on a whiteboard to executable models deployed in a production environment. Among other qualities, a "good" model is at the right level of abstraction. Indeed, a model that is too abstract may lead to imprecise or incorrect conclusions while a model that is too detailed is larger and more complex than necessary. One way or the other, a model loses much of its value if it is at the wrong level of abstraction. Today, modelers must rely on their instinct and experience to decide how much and what detail is worth including in a model. This ad-hoc form of modeling may result in models that are either too abstract or too detailed for their intended use. We believe that building models at the right level of abstraction is too important to depend solely on the modeler's skill. Thus, our research aims at providing modelers with an objective measurement of a model's abstractness and systematic guidance to attain the right level of abstraction. In this thesis, we present MiRiA (which stands for Modeling at the Right level of Abstraction), an approach split in two parts. The first part is a metamodeling activity, where the purpose of a model is captured and operationalized with a set of model operations — such as analysis, queries, simulations and transformations — and a metamodel supporting them. This step ensures that both the modeler and the users share the same understanding of the model's purpose. The second part of MiRiA consists in confronting a model with its usage by a set of model operations. When performed on a model, an operation computes new information based on the information stored in the model. During its execution, it navigates through the content of the model and gathers relevant information from model elements. The set of elements accessed by a model operation during its execution forms the footprint of that operation. The comparison between the actual and expected footprint reveals excessive information in the model or suggests information missing from it. Based on these indications, the modelers can improve their models by simplifying or extending them until they reach the right level of abstraction.

Abstract

A model is an abstract representation of an entity created for a given purpose. Software engineers use many kinds of models in various contexts, ranging from informal models sketched on a whiteboard to executable models deployed in a production environment. Among other qualities, a "good" model is at the right level of abstraction. Indeed, a model that is too abstract may lead to imprecise or incorrect conclusions while a model that is too detailed is larger and more complex than necessary. One way or the other, a model loses much of its value if it is at the wrong level of abstraction. Today, modelers must rely on their instinct and experience to decide how much and what detail is worth including in a model. This ad-hoc form of modeling may result in models that are either too abstract or too detailed for their intended use. We believe that building models at the right level of abstraction is too important to depend solely on the modeler's skill. Thus, our research aims at providing modelers with an objective measurement of a model's abstractness and systematic guidance to attain the right level of abstraction. In this thesis, we present MiRiA (which stands for Modeling at the Right level of Abstraction), an approach split in two parts. The first part is a metamodeling activity, where the purpose of a model is captured and operationalized with a set of model operations — such as analysis, queries, simulations and transformations — and a metamodel supporting them. This step ensures that both the modeler and the users share the same understanding of the model's purpose. The second part of MiRiA consists in confronting a model with its usage by a set of model operations. When performed on a model, an operation computes new information based on the information stored in the model. During its execution, it navigates through the content of the model and gathers relevant information from model elements. The set of elements accessed by a model operation during its execution forms the footprint of that operation. The comparison between the actual and expected footprint reveals excessive information in the model or suggests information missing from it. Based on these indications, the modelers can improve their models by simplifying or extending them until they reach the right level of abstraction.

Statistics

Downloads

283 downloads since deposited on 09 Jan 2014
35 downloads since 12 months
Detailed statistics

Additional indexing

Item Type:Dissertation
Referees:Glinz Martin, France Robert
Communities & Collections:03 Faculty of Economics > Department of Informatics
Dewey Decimal Classification:000 Computer science, knowledge & systems
Language:English
Date:2013
Deposited On:09 Jan 2014 06:57
Last Modified:16 Feb 2018 18:59
Number of Pages:255
OA Status:Green
Other Identification Number:merlin-id:7990

Download

Download PDF  'Measuring abstraction with footprinting: confronting software models with their purposes'.
Preview
Filetype: PDF
Size: 2MB