Information Technology Reference
In-Depth Information
Dealing with Known Unknowns: Towards a
Game-Theoretic Foundation for Software
Requirement Evolution
Le Minh Sang Tran and Fabio Massacci
Universita degli Studi di Trento, I-38100 Trento, Italy
{ tran,fabio.massacci } @disi.unitn.it
Abstract. Requirement evolution has drawn a lot of attention from
the community with a major focus on management and consistency of
requirements. Here, we tackle the fundamental, albeit less explored, al-
ternative of modeling the future evolution of requirements.
Our approach is based on the explicit representation of
evo-
lutions vs observable evolutions, which can only be estimated with a cer-
tain probability. Since classical interpretations of probability do not suit
well the characteristics of software design, we introduce a game-theoretic
approach to give an explanation to the semantic behind probabilities.
Based on this approach we also introduce quantitative metrics to support
the choice among evolution-resilient solutions for the system-to-be.
To illustrate and show the applicability of our work, we present and
discuss examples taken from a concrete case study (the security of the
SWIM system in Air Trac Management).
control lable
Keywords: software engineering, requirement evolution, observable and
controllable rules, game-theoretic.
1
Introduction
“...There are known unknowns: that is to say, there are things
that we now know we don't know...”
— Donald Rumsfeld, United States Secretary of Defense
In the domain of software, evolution refers to a process of continually updating
software systems in accordance to changes in their working environments such
as business requirements, regulations and standards. While some evolutions are
unpredictable, many others can be predicted albeit with some uncertainty (e.g.
a new standard does not appear overnight, but is the result of a long process).
The term software evolution has been introduced by Lehman in his work on
laws of software evolution [17, 18], and was widely adopted since 90s. Recent
studies in software evolutions attempt to understand causes, processes, and ef-
fects of the phenomenon [2, 14, 16]; or focus on the methods, tools that manage
the effects of evolution [19, 25, 28].
This work is supported by the European Commission under project EU-FET-IP-
SECURECHANGE.
 
Search WWH ::




Custom Search