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

264 downloads since deposited on 09 Jan 2014
69 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:05 Apr 2016 17:22
Number of Pages:255
Other Identification Number:merlin-id:7990

Download

Preview Icon on Download
Preview
Filetype: PDF
Size: 2MB

TrendTerms

TrendTerms displays relevant terms of the abstract of this publication and related documents on a map. The terms and their relations were extracted from ZORA using word statistics. Their timelines are taken from ZORA as well. The bubble size of a term is proportional to the number of documents where the term occurs. Red, orange, yellow and green colors are used for terms that occur in the current document; red indicates high interlinkedness of a term with other terms, orange, yellow and green decreasing interlinkedness. Blue is used for terms that have a relation with the terms in this document, but occur in other documents.
You can navigate and zoom the map. Mouse-hovering a term displays its timeline, clicking it yields the associated documents.

Author Collaborations