+ All Categories
Home > Documents > Observational Models of Requirements Evolution CSC2004 Light

Observational Models of Requirements Evolution CSC2004 Light

Date post: 07-Apr-2018
Category:
Upload: wajidislam
View: 221 times
Download: 0 times
Share this document with a friend

of 36

Transcript
  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    1/36

    Massimo Felici

    2004

    CSC2004

    Observational Models of

    Requirements Evolution-

    Theory and Practice

    Massimo FeliciLFCS, School of Informatics, The University of Edinburgh

    [email protected]

    http://homepages.inf.ed.ac.uk/mfelici/

    The Critical System Conference

    29th-30th September 2004

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    2/36

    Massimo Felici2004

    CSC2004

    Overview

    o On Requirements Evolutiono Socio-technical grounds

    o Empirical analyseso Capturing Requirements Evolution

    o Observational Models of Requirements Evolutiono A bit of theory

    o Evolution as Dependability

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    3/36

    Massimo Felici

    2004

    CSC2004

    On Requirements Evolution

    Requirements Evolution is one of the main issues thataffect development activities as well as systemfeatures (e.g., system dependability). Althoughresearchers and practitioners recognise theimportance of requirements evolution, research resultsand experience are still patchy. This points out a lackof methodologies that address requirements evolution.

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    4/36

    Massimo Felici2004

    CSC2004

    On Requirements Evolution

    o Do requirements evolve? Yes!!!

    oCan requirements be frozen? No

    o you might try, but it wouldnt work

    o The completeness and correctness panaceas are just utopias

    o Why do requirements evolve?o It is possible further to understand requirements evolution from a

    socio-technical viewpointo Systems Approach, Heterogeneous Engineering, Social Shaping of

    Technology, etc.

    o Empirical analyses of requirements evolution are still patchyo Lack of support for analyzing evolutionary data

    o Organizational culture/strategyo Requirements evolution (analysis) as work practice

    o Requirements evolution captures organizational knowledge

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    5/36

    Massimo Felici

    2004

    CSC2004

    Capturing RequirementsEvolution

    Everyone talksabout Requirements

    Evolution, but justfew know how itlooks like.

    Everyone talksabout Requirements

    Evolution, but no

    one knows how itlooks like.

    No one talks aboutRequirements

    Evolution.

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    6/36

    Massimo Felici2004

    CSC2004

    Capturing Requirements Evolution [1/10]

    o Requirements evolution as trends of requirements changeso added, deleted and modified requirements

    o An increasing number of requirements is due too Stakeholders interaction, technology issues/constraints,

    further understanding of system requirements,Requirements refinements, new arising requirements,Requirements dependencies, operational usage, etc.

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    7/36

    Massimo Felici2004

    CSC2004

    o Requirements (changes) classification

    o A classification is a spatial, temporal or spatio-temporalsegmentation of the world. In an abstract, ideal sense, aclassification system exhibits the following properties:There are consistent, unique classificatory principles inoperation; The categories are mutually exclusive; Thesystem is complete.

    [Bowker and Star, 1999]

    o Classifications and Standards are closely related, but notidentical.o A standard:

    o agreed-upon rules, multi-community (users) of practice;distant and heterogeneous collaborations; legal bodies,lack of laws (or criteria) of definition (e.g., politics)

    o Classifications:o capture work practice; are ubiquitous; represent information

    infrastructures; etc.; evolve.

    Capturing Requirements Evolution [2/10]

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    8/36

    Massimo Felici2004

    CSC2004

    Capturing Requirements Evolution [3/10]

    o Example of Requirements (changes) classificationo Type of Requirement:

    o Stable or Changing (Mutable, Emergent, Consequential,Adaptive, Migration)

    o Type of change:

    o Add, Delete Modify; Partial compliance; Traceability; etc.

    o Change Rationale:

    o requirements errors, conflicts and inconsistency; evolvingcustomer system knowledge; technical, schedule or cost

    issues; changing customer priorities; environmentalchanges; organizational changes

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    9/36

    Massimo Felici2004

    CSC2004

    Capturing Requirements Evolution [4/10]

    o Requirements (changes) classifications allow the

    analysis of requirements features, in particular,requirements evolution

    Classified RequirementsChanges per Software

    Release

    Histograms of the size of the sets ofrequirements changes allocated to a single

    software release

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    10/36

    Massimo Felici2004

    CSC2004

    Capturing Requirements Evolution [5/10]

    o Requirements (changes) classifications allow theanalysis of requirements features, in particular,requirements evolution

    R

    CR

    R

    RMI

    =

    HRMI - Historical RequirementsMaturity Index

    R

    CAR

    R

    HRMI

    =

    RMI RequirementsMaturity Index

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    11/36

    Massimo Felici2004

    CSC2004

    Capturing Requirements Evolution [6/10]o Stable and Changing Requirements A functional viewpoint

    points out how diverse parts of requirements evolve. Moreover,

    it supports the analysis of requirements dependencies.

    (Functional) Requirements size

    A Functional Viewpoint

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    12/36

    Massimo Felici2004

    CSC2004

    Capturing Requirements Evolution [7/10]o Requirements Evolution Processes A functional viewpoint

    points out how diverse parts of requirements evolve. Moreover,

    it supports the analysis of requirements dependencies.

    Requirements dependencies

    Requirements evolution processes

    gamma maps from sequence analysis

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    13/36

    Massimo Felici2004

    CSC2004

    Capturing Requirements Evolution [8/10]

    o It is actually possible to identifytwo main distinct processes:

    o the software process

    o the requirements process

    [Weinberg, 1997]

    o Empirical evidence should mutually control the two processes

    o A product viewpoint identifying reusable software functionso Repeatable processes to allocate software functions to

    high level system requirements

    o Refining requirements information flow expansion

    o The gap between these processes represents the extent to whichan organization is able to identify an optimal and effective set of(reusable) software functions

    o Issues: communications across multilevel organizations, cost,visibility, controllability, etc.

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    14/36

    Massimo Felici2004

    CSC2004

    Capturing Requirements Evolution [9/10]

    o The Humanso Viewpoints Analysis

    different professionalprofiles (in terms ofresponsibility andexperience) point outdifferent understandings

    o Viewpoint Analysis -Conflicting viewpointshighlight issues inrequirements process

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    15/36

    Massimo Felici2004

    CSC2004

    Capturing Requirements Evolution [10/10]

    o Requirements Evolution Practice

    o Data Collection: difficult; integrated in work practice;otherwise, issues - increased workload, frustration, etc.

    o Tailored data organizations and goals

    o Requirements Evolution Featureso Quantitative Requirements Evolution

    o Requirements maturity (e.g., RMI, HRMI, etc.)

    o Taxonomy of requirements (changes)

    o Functional requirements evolution

    o Requirements evolution processes

    o Requirements evolution viewpoints

    o Require viewpoint management support

    o Identify requirements issues

    o Requirements evolution affects project visibility

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    16/36

    Massimo Felici

    2004

    CSC2004

    Modeling RequirementsEvolution

    Heterogeneous Engineering: People had to be engineered, too persuaded to suspend their doubts, induced to provide

    resources, trained and motivated to play their parts in aproduction process unprecedented in its demand. Successfullyinventing the technology, turned out to be heterogeneousengineering, the engineering of social as well as the physicalworld.

    [MacKenzie, 1990]

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    17/36

    Massimo Felici2004

    CSC2004

    Modeling Requirements Evolution [1/8]

    o Heterogeneous Engineeringo Provides a comprehensive account of system requirementso Stresses a holistic viewpoint that allows us to understand

    the underlying mechanisms of evolution of socio-technicalsystems

    o Requirements, as mappings between socio-technical solutionsand problems, represent an account of the history of socio-technical issues arising and being solved within industrialssettings

    o Requirements are socially shaped (I.e., constructed andnegotiated) through sequences of mappings between solutionand problem spaces.

    o The Functional Ecology Model [Bergman et al, 2002]

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    18/36

    Massimo Felici2004

    CSC2004

    Modeling Requirements Evolution [2/8]

    o The Functional Ecology Model describes solution-

    problem iterations

    o The formal (i.e., formal logic) extension of thefunctional ecology model provides a framework tomodel and capture requirements evolution

    SolutionProblemSolution

    LocalSolution Space

    Problem SpaceFuture

    Solution Space

    Objective

    Requirements

    Constraining

    RequirementsRequirementsSpecification

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    19/36

    Massimo Felici2004

    CSC2004

    Modeling Requirements Evolution [3/8]

    o Example A Reparable Clock Design

    Clock

    BrokenClock

    Tick

    Break

    The clockshould bereparable

    None statetransactionis terminal

    Clock

    BrokenClock

    Tick

    Break

    Repair

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    20/36

    Massimo Felici2004

    CSC2004

    Modeling Requirements Evolution [4/8]

    o Example A Tick-tock Clock Design

    Clock

    BrokenClock

    Tick

    Break

    Repair

    The clockshouldTick-tock

    Clock 1

    BrokenClock

    Tick

    Break

    Repair 1

    Clock 2

    Tock

    Repair 2

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    21/36

    Massimo Felici2004

    CSC2004

    Modeling Requirements Evolution [5/8]

    o The formal framework captures RequirementsEvolution in terms of solution space transformationso Requirements evolution is a co-evolutionary process.

    Requirements evolution consists of the RequirementsSpecification Evolution and the Changes Evolution.

    o Requirements evolution represents organizationalknowledge. It is part of organizational learningprocess.

    o Solution and problem spaces are socially shaped.o Issue: the social-shaping of solution and problem

    spaces is error-prone

    o Any solution requires the organization commitmentin terms of resources

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    22/36

    Massimo Felici2004

    CSC2004

    Modeling Requirements Evolution [6/8]

    o Other requirements evolution exampleso Cascade effect - Changes propagate through the

    mappings between solution and problem spaces

    o Allocation of Safety Requirements in subsequentreleases

    o Hybrid Solution Spaces System Models andHuman Cognition models

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    23/36

    Massimo Felici2004

    CSC2004

    Modeling Requirements Evolution [7/8]

    o Evolutionary dependency identifies how changeseventually propagate through emergent requirementsdependencies

    o The formal extension of the functional ecology modelcaptures requirements evolutionary dependencies (interms of solution space transformation)

    o Solutions are requirements dependencies

    o The formal framework used at an higher levelof abstraction than design

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    24/36

    Massimo Felici2004

    CSC2004

    Modeling Requirements Evolution [8/8]

    o Capturing Evolutionary Dependency

    F1Software

    Architecture

    F2Interface

    Subsystems

    F8System

    Maintenance

    Tooexpensiveandrisky!!!

    / /$

    / /$

    / /$

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    25/36

    Massimo Felici

    2004

    CSC2004

    A Taxonomy of EvolutionEvolution as Dependability

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    26/36

    Massimo Felici2004

    CSC2004

    A Taxonomy of Evolution [1/2]

    o It is possible to identify an

    evolutionary space forsocio-technical systems

    o Temporal Dimension

    o Evolution in Design

    o Evolution in Use

    o Physical Dimension

    o Hard Evolution

    o Soft Evolution

    Evolutionin Design

    SoftEvolution

    HardEvolution

    Evolutionin Use

    Temporal dimension

    Physical

    dimension

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    27/36

    Massimo Felici2004

    CSC2004

    A Taxonomy of Evolution [2/2]o The identification of a broad spectrum of evolutions

    in socio-technical systems points out strong

    contingencies between evolution and dependability

    o The better our understanding of socio-technicalevolution, the better system dependability

    Software Evolution

    Architecture (Design) Evolution

    Requirements Evolution

    Socio-technical System Evolution

    Organisation Evolution

    Evolutionin Design

    SoftEvolution

    HardEvolution

    Evolutionin Use

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    28/36

    Massimo Felici

    2004

    CSC2004

    Requirements Evolution

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    29/36

    Massimo Felici2004

    CSC2004

    Requirements Evolution

    o On Requirements Evolutiono Socio-technical grounds of Requirements Evolution

    o Empirical analyseso Capturing Requirements Evolution

    o Observational Models of Requirements Evolutiono A bit of theory

    o Evolution as Dependability

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    30/36

    Massimo Felici2004

    CSC2004

    Requirements Evolution [1/2]

    1. Heterogeneous engineering stresses a holistic viewpoint that

    allows us to understand the underlying mechanisms of evolutionof socio-technical systems.2. Requirements, as mappings between socio-technical solutions

    and problems, represent an account of the history of socio-technical issues arising and being solved within industrialsettings.

    3. The formal extension of the functional ecology model providesa framework to model and capture requirements evolution.

    4. The application of the proposed framework provides furtherevidence that it is possible to capture and model evolutionaryinformation about requirements (e.g., evolutionarydependency).

    5. The discussion of scenarios of use stresses practical

    necessities for methodologies addressing requirementsevolution.

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    31/36

    Massimo Felici2004

    CSC2004

    Requirements Evolution [2/2]

    6. The identification of a broad spectrum of evolutions in socio-

    technical systems points out strong contingencies betweensystem evolution and dependability.

    7. This presentation argues that the better our understanding ofsocio-technical evolution, the better system dependability.

    8. This presentation is concerned with software requirementsevolution in industrial settings. It introduces methodologies to

    empirically investigate and model requirements evolution, henceObservational Models of Requirements Evolution.

    9. The results provide new insights in requirements engineeringand identify a foundation for Requirements EvolutionEngineering.

    10.This presentation addresses the problem of empiricallyunderstanding and modelling requirements evolution.

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    32/36

    Massimo Felici

    2004

    CSC2004

    Observational Models of

    Requirements Evolution-

    Theory and Practice

    Massimo FeliciLFCS, School of Informatics, The University of Edinburgh

    [email protected]

    http://homepages.inf.ed.ac.uk/mfelici/

    The Critical System Conference29th-30th September 2004

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    33/36

    Massimo Felici

    2004

    CSC2004

    Background Slides

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    34/36

    Massimo Felici2004

    CSC2004

    o The socio-technical grounds of requirements (evolution)o Systems Approach: system builders include heterogeneous

    components, such as, mechanical, electrical, and organizationalparts, in a single system.

    [Hughes and Hughes, 2000]

    o Heterogeneous Engineering: People had to be engineered, too persuaded to suspend their doubts, induced to provide resources,

    trained and motivated to play their parts in a production processunprecedented in its demand. Successfully inventing thetechnology, turned out to be heterogeneous engineering, theengineering of social as well as the physical world.

    [MacKenzie, 1990]

    o Social Shaping of Technology: The mechanisms underlying thesocial design and implementation of technology systems arereferred to as the Social Shaping of Technology (SST).

    [MacKenzie, 1999]

    On Requirements Evolution [1/3]

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    35/36

    Massimo Felici2004

    CSC2004

    On Requirements Evolution [2/3]

    o Requirements Evolution vs. Reuse and Maintenanceo Current requirements engineering methodologies provide

    limited support to understand requirements evolution. Reuseand maintenance tend to focus on classifying and managingrequirements changes, rather than analyzing or evenanticipating changes.

    [Lutz and Mikulski, 2003]o Requirements evolution involves the practice on analyzing

    requirements changes in order to identify strategies dealingwith environmental changeso It is possible to classify requirements as stable or changing

    [PROTEUS Project]o It is possible to identify the stable or volatile requirements

    o Empirical analyses of requirements evolution are still patchyo Lack of support for analyzing evolutionary datao Requirements evolution (analysis) as work practiceo Organizational culture

  • 8/3/2019 Observational Models of Requirements Evolution CSC2004 Light

    36/36

    Massimo Felici2004

    CSC2004

    On Requirements Evolution [2/3]o Modeling methodologies and languages (e.g., SCR, Intent

    Specifications, etc.) advocate different design strategies.

    Although these strategies support different aspects of(software) system development, they originate in a commonSystem Approach.

    o Systems Approach: Practitioners and proponents embrace aholistic vision. They focus on the interconnections amongsubsystems and components, taking special note of theinterfaces among various parts.

    [Hughes and Hughes, 2000]o Requirements change: About four year later the original TCAS

    specification was written, experts discovered that it did notcover requirements involving the case where the pilot of anintruder aircraft does not follow his or her TCAS advisoryandthus TCAS must change the advisory to its own pilot. This

    change in basic requirements caused extensive changes in theTCAS design, some of which introduced additional subtleproblems and errors that took years to discover and rectify.

    [Leveson, 2000]


Recommended