209 Pages
English
Gain access to the library to view online
Learn more

A methodology for modeling usage behavior of multi-functional systems [Elektronische Ressource] / Sabine Rittmann

-

Gain access to the library to view online
Learn more
209 Pages
English

Description

Institut für Informatikder Technischen Universität MünchenA methodology for modeling usage behavior ofmulti-functional systemsSabineRittmannVollständiger Abdruck der von der Fakultät für Informatik der TechnischenUniversität München zur Erlangung des akademischen Grades einesDoktors der Naturwissenschaften (Dr. rer. nat.)genehmigten Dissertation.Vorsitzender: Univ.-Prof. Dr. Uwe BaumgartenPrüfer der Dissertation:1. Univ.-Prof. Dr. Dr. h.c. Manfred Broy2. Prof. Dr. Martin Glinz, Universität Zürich / SchweizDie Dissertation wurde am 26.02.2008 bei der Technischen Universität Müncheneingereicht und durch die Fakultät für Informatik am 02.09.2008 angenommen.2AbstractToday we face a trend toward more and more complex systems. The complexity doesnot only arise because of distributed or heterogeneous hardware solutions. So calledmulti-functional systems which are characterized by a high degree of dependenciesbetween functional units are also a major challenge. Often, the complex interactionsbetween pieces of functionality (often referred to as feature interaction) are not under-stood and cause inconsistencies and unwanted behavior.In order to handle this intricacy, new development techniques have to be createdtargeting at handling different aspects in isolation. This can be achieved by specify-ing the system functionality separately, i. e. with no structural and technical detailsinvolved.

Subjects

Informations

Published by
Published 01 January 2008
Reads 26
Language English
Document size 1 MB

Exrait

Institut für Informatik
der Technischen Universität München
A methodology for modeling usage behavior of
multi-functional systems
SabineRittmann
Vollständiger Abdruck der von der Fakultät für Informatik der Technischen
Universität München zur Erlangung des akademischen Grades eines
Doktors der Naturwissenschaften (Dr. rer. nat.)
genehmigten Dissertation.
Vorsitzender: Univ.-Prof. Dr. Uwe Baumgarten
Prüfer der Dissertation:
1. Univ.-Prof. Dr. Dr. h.c. Manfred Broy
2. Prof. Dr. Martin Glinz, Universität Zürich / Schweiz
Die Dissertation wurde am 26.02.2008 bei der Technischen Universität München
eingereicht und durch die Fakultät für Informatik am 02.09.2008 angenommen.2Abstract
Today we face a trend toward more and more complex systems. The complexity does
not only arise because of distributed or heterogeneous hardware solutions. So called
multi-functional systems which are characterized by a high degree of dependencies
between functional units are also a major challenge. Often, the complex interactions
between pieces of functionality (often referred to as feature interaction) are not under-
stood and cause inconsistencies and unwanted behavior.
In order to handle this intricacy, new development techniques have to be created
targeting at handling different aspects in isolation. This can be achieved by specify-
ing the system functionality separately, i. e. with no structural and technical details
involved. This functional model can then be mapped to the technical architecture.
As the mere of a system can be very complex again, both a local and a
global view have to be provided. A local view describes pieces of functionality sep-
arately which reduces complexity and assures reuse. A global view integrates local
views to form a larger (up to the whole) system functionality and sketches the "big
picture".
Currently there is no methodology for specifying the functionality of a multi-
functional system adequately. Most techniques mix up different aspects. They do not
clearly separate the design of functionality and structure, or do not distinguish be-
tween interface behavior and realization, and between local system views and global
system views. Especially the integration of functional specifications is not clearly un-
derstood. So-called (unwanted) feature interaction and dependencies between func-
tionalities often pose major problems. Most approaches also lack a formal founda-
tion. Another problem is the gap between the informal requirements phase (dealing
with texts in natural language) and the formal design phase (dealing with models).
In this thesis, we introduce concepts, suggestions for notational techniques, and method-
ological support for designing usage behavior of multi-functional systems. Hereby,
we only model the behavior as it can be observed at the system boundaries (black
box behavior). The basic building blocks of the methodology are services. Services are
pieces of (partial) behavior that relate system inputs to system outputs. The basic
idea behind the approach is the following: modular services (local view) and the re-
lationships between these services are captured. Based on the relationships between
the services, the modular service specifications are combined step by step until the
overall system functionality (global view) is obtained. Depending on the relationships
pointing at a service, a service can be influenced differently (e. g. disabled or inter-
rupted). The (modular) service specification has to be modified in order to handle
these influences (e. g. it has to provide a special behavior while being disabled). This
modification is done schematically and specific to the service relationships pointing
at a service. We introduce so-called standard control interfaces which the modular ser-
vice specification has to implement in order to handle the influences of the service
relationships. Furthermore, we investigate how conflicting can be han-
dled.
The contribution of this thesis is a methodology to formally specify the usage behav-
ior of multi-functional systems. Our approach is a model-based requirements engineer-
ing approach enabling the stepwise transition from informal texts written in natural
language to formal models of the system functionality. The result is a formal model ofthe overall black box system functionality. During the formalization process, missing
requirements can be detected. Furthermore, contradictories can be identified. Vari-
ous applications of the system model can be thought of. For example, model-based
testing can be applied to the formal models to test the correctness of the integrated
behavior.
As far as the development process is concerned, the issues covered by this thesis are
situated at the end of the requirements phase at the transition to the design phase.
Furthermore, we focus on the specification of multi-functional systems.
Although our approach is not specific to a particular domain, we make use of a run-
ning example from the automotive domain in order to illustrate our concepts and to
present the methodology.Acknowledgements
My thanks go to Prof. Dr. Dr. h.c. Manfred Broy for having invited me to work
in his research group and having provided me with the opportunity of writing this
thesis. It was a pleasure to work within the great atmosphere of this chair, to be able
to work together with industry, and to have insights in so many interesting topics.
Furthermore, I would like to thank for comments on work presented in this thesis.
Additional thanks go to Prof Dr. Martin Glinz for also supervising my PhD thesis.
I am very thankful for the detailed and constructive comments on how to improve
this thesis.
Furthermore, I am grateful to Markus Bechter, Florian Deißenböck, Alexander
Harhurin, Judith Hartmann, Herrmannsdörfer, Florian Hölzl, Johannes
Grünbauer, and Birgit Penzenstadler for fruitful and patient discussions and com-
ments on drafts of this thesis.
A very special "thank you" also goes to Silke Müller and Bernhard Schätz for taking
care of the chair in many regards!
I am also very grateful to my colleagues Andreas Fleischmann, Eva Geisberger, Ju-
dith Hartmann, Markus Herrmannsdörfer, Michael Meisinger, Stefano Merenda,
and Doris Wild. I appreciated to work with you very much! I would also like to
thank Markus Pister, Wassiou Sitou, and especially Bernd Spanfelner for always
joking around, standing my sense of humor, and brightening my workdays.
Sincere thanks go to all of my friends. You made an excellent work life balance
possible! Finally, I want to thank my family - especially my Mum, Dad, and sister
Marion. You always lovingly supported and encouraged me in life. Thank you for
all the things you enabled me to do! I love you."... for systems with a large number of internal states, it is easier, and
more natural, to modularize the specification by means of features per-
ceived by the customer." ([Davis, 1982])Contents
1. Introduction 1
1.1. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Content of this thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.1. Rough outline of the approach . . . . . . . . . . . . . . . . . . . 6
1.2.2. Scoping - What system classes is the approach for? . . . . . . . 8
1.2.3. - Where in the software development process is the
approach situated? . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.4. Scoping - What issues are not covered by the approach? . . . . 11
1.3. Contributions of this thesis . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4. State of the Art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4.1. Requirements engineering approaches . . . . . . . . . . . . . . . 13
1.4.2. Formal modeling of the system functionality . . . . . . . . . . . 16
1.4.3. Work on feature interaction . . . . . . . . . . . . . . . . . . . . . 17
1.4.4. Feature modeling within product line development . . . . . . . 18
1.4.5. Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.5. Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2. Running example 21
2.1. General requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2. Requirements for the manual adjustment . . . . . . . . . . . . . . . . . 22
2.3. for the adjustment by memory . . . . . . . . . . . . . . . 22
2.3.1. Requirements for the memory functionality triggered by the
seat button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.3.2. Requirements for the memory functionality triggered by the
car key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3. Notational techniques (Overview) 25
3.1. System Structure Diagrams (SSDs) . . . . . . . . . . . . . . . . . . . . . 26
3.1.1. Intuitive description . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.1.2. Graphical representation . . . . . . . . . . . . . . . . . . . . . . . 26
3.2. State Transition Diagrams (STDs) . . . . . . . . . . . . . . . . . . . . . . 27
3.2.1. Intuitive description . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.2.2. Graphical representation . . . . . . . . . . . . . . . . . . . . . . . 30
3.2.3. Semantics of STDs . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.2.4. of the combination of STDs and SSDs . . . . . . . . . 33
ix3.3. Service hierarchy and service graph . . . . . . . . . . . . . . . . . . . . 35
3.4. Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.5. Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4. Methodology 37
4.1. Basic considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.1.1. Underlying system model . . . . . . . . . . . . . . . . . . . . . . 38
4.1.2. Constituents of functional requirements . . . . . . . . . . . . . . 40
4.1.3. Specialties with embedded systems . . . . . . . . . . . . . . . . 41
4.2. Overview of methodological steps . . . . . . . . . . . . . . . . . . . . . 42
4.3. Starting point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.3.1. Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.3.2. Application to the case study . . . . . . . . . . . . . . . . . . . . 47
4.4. Identification of atomic services . . . . . . . . . . . . . . . . . . . . . . . 47
4.4.1. Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.4.2. Notational technique(s) . . . . . . . . . . . . . . . . . . . . . . . 49
4.4.3. Methodological steps . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.4.4. Application to the case study . . . . . . . . . . . . . . . . . . . . 50
4.5. Logical syntactic system interface . . . . . . . . . . . . . . . . . . . . . . 53
4.5.1. Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.5.2. Notational technique(s) . . . . . . . . . . . . . . . . . . . . . . . 56
4.5.3. Methodological steps . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.5.4. Application to the case study . . . . . . . . . . . . . . . . . . . . 57
4.6. Identification of service relationships . . . . . . . . . . . . . . . . . . . . 62
4.6.1. Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.6.2. Notational technique(s) . . . . . . . . . . . . . . . . . . . . . . . 69
4.6.3. Methodological steps . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.6.4. Application to the case study . . . . . . . . . . . . . . . . . . . . 71
4.7. Formal specification of atomic services . . . . . . . . . . . . . . . . . . . 75
4.7.1. Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4.7.2. Notational technique(s) . . . . . . . . . . . . . . . . . . . . . . . 77
4.7.3. Methodological steps . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.7.4. Application to the case study . . . . . . . . . . . . . . . . . . . . 79
4.8. Combination of services on basis of the service relationships . . . . . . 83
4.8.1. Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.8.2. Notational technique(s) . . . . . . . . . . . . . . . . . . . . . . . 94
4.8.3. Methodological steps . . . . . . . . . . . . . . . . . . . . . . . . . 94
4.8.4. Application to the case study . . . . . . . . . . . . . . . . . . . . 97
4.9. Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.10. Further considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
4.10.1. Views onto the service graph . . . . . . . . . . . . . . . . . . . . 108
4.10.2. Dependency analyses . . . . . . . . . . . . . . . . . . . . . . . . 109
4.10.3. Guidelines for the informal specification of functional require-
ments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
5. Extension of basic service relationships 113
5.1. Requirements of another case study (memory cell) . . . . . . . . . . . . 114
5.2. Informal introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
5.2.1. Basic considerations . . . . . . . . . . . . . . . . . . . . . . . . . 115