15-16 novembre 2001

40
1 Enhancing Requirements Engineering by Quality Modelling: a structured Framework Paolo Donzelli Dept of Informatics Office of the Prime Minister Rome, Italy [email protected] (Cranfield University, RMCS – Shrivenham UK) 15-16 novembre 2001

description

15-16 novembre 2001. Enhancing Requirements Engineering by Quality Modelling: a structured Framework Paolo Donzelli Dept of Informatics Office of the Prime Minister Rome, Italy [email protected] (Cranfield University, RMCS – Shrivenham UK). Outline. Problem description - PowerPoint PPT Presentation

Transcript of 15-16 novembre 2001

Page 1: 15-16 novembre 2001

1

Enhancing Requirements Engineeringby Quality Modelling:

a structured Framework

Paolo Donzelli Dept of Informatics

Office of the Prime MinisterRome, Italy

[email protected]

(Cranfield University, RMCS – Shrivenham UK)

15-16 novembre 2001

Page 2: 15-16 novembre 2001

2

Outline

• Problem description

• The Requirements Engineering Framework

• The Framework at work: a case study

• From RE to system implementation

Page 3: 15-16 novembre 2001

3

Problem description

Page 4: 15-16 novembre 2001

4

Introducing an IT system into an organisation

• a successful system implementation relies on

• a firm understanding of the application domain

• our ability of envisioning its impact

• but the application domain is far from being stable

• drives the IT system development

• but must evolve to exploit the system capabilities

• The system must become an "organic" component of the re-engineered company (the to-be company)

Page 5: 15-16 novembre 2001

5

Envisioning the to-be company (a difficult task)

• The system and its application domain form a larger social-technical system whose overall needs are the ones to be fulfilled.

• Organisations are made of people: the goals, the expectations, and the needs of all the stakeholders, have to be explicitly addressed

• Customer satisfaction becomes an organisation-wide concept, beyond the simple individual customer or user point of view.

Page 6: 15-16 novembre 2001

6

Advances in Requirements Engineering (1)

• Process modelling-based techniques have been suggested to support the Early RE Phases (requirements discovery, validation and verification), by providing a collaborative environment between analysts and stakeholders to:

• understand the application domain

• translate application domain needs into system requirements

• design the to-be company (by reasoning through feasible alternatives)

(i*)

Page 7: 15-16 novembre 2001

7

Initial Why/What

OtherApplication

Process

HOW

Why/WhatWhy/What

Why/WhatWhy/What

Why/What

SE

Why/ WhatWhy/What

How

Application Domain (Equipment Procurement)

Application Process (T&E)

Application System (to perform T&E)

Synthetic Environment(to support T&E)

the WHYas

driving factor of the requirementsdiscovery/modelling

process

(KAOS – I*)

Advances in Requirements Engineering (2)

Page 8: 15-16 novembre 2001

8

Genesis of the proposed RE Framework (1)

• adopt new RE techniques (i.e. process modelling-based and “why”-oriented approaches)

• encompass Quality Modelling approaches, to better deal with stakeholders’ quality issues

• move from “slow, reactive, adversarial, separated software engineering and systems engineering processes to unified, concurrent processes”, which will also include business process reengineering.

Page 9: 15-16 novembre 2001

9

WHAT

HOW

WHY

assures feasibility

constraints

rationalises

Organisation Modelling

satisfies

specifiesGoal Modelling

Hard Goal Modelling (Functional Aspects)

Soft Goal Modelling (Quality Aspects)

Genesis of the proposed RE Framework (2)

Reasoning about the Why, the What and the How

Page 10: 15-16 novembre 2001

10

Main Objectives

• Support discovery, and early verification and validation of both user-oriented and organisation-oriented requirements

• Facilitate envisioning and designing the to-be company

• Force reasoning about non-functional requirements since the outset of the project, while dealing with functional ones

• Soft goals play a central role, providing a systematic and organized way of handling non-functional requirements constraints in operational terms, or fit criteria for assessment purposes!

Page 11: 15-16 novembre 2001

11

The Requirements EngineeringFramework

Main characteristics, Notation, Process

Page 12: 15-16 novembre 2001

12

The RE Framework: main characteristics

constraints

hard goals

map

ping

to

orga

nisa

tion

soft goals

hard

goa

ls

Soft GoalModelling

OrganisationModelling

Hard GoalModelling

DevelopmentFlow

VerificationFlow

Elicitation &Validation

Flow

stakeholders &analysts

Process

Soft Goalmodelling

Hard Goalmodelling

Organisationmodelling

case study

Page 13: 15-16 novembre 2001

13

Organisation Modelling (1)

Task

Hard GoalAgent

Resource

Soft Goal

dependency link

deals with the application domain structure

basic elements

Page 14: 15-16 novembre 2001

14

Organisation Modelling (2)

Agent 1

Task

Hard Goal

Resource

Agent 4

Agent 2

Soft Goal

Data

Agent 3.2

Agent 3.1

CloudAgent 3

complexagent

simpleagent

Page 15: 15-16 novembre 2001

15

Soft Goal Modelling

link

constraintSG112

A A

AA

OO

link

constraintSG121

link

constraint

soft goals

hard goalderived from

a soft goal

constraint upona hard goal or a task(indicated by the link

field)

A

O

AND decomposition

OR decomposition

SG 1

SG 11 SG 12

SG 122

derived Hard GoalHG 111

HG

dependency link

produces operational definitions of the soft goals, decomposing them into sub hard goals and constraints

Page 16: 15-16 novembre 2001

16

Hard Goal Modelling

hard goal

task

A

O

AND decomposition

OR decomposition

resource

dependency link

HG 1

TASK 12

resource

A A

OO

Task 112

Task 111HG 122

HG 11

....

determines how to achieve hard goals, by decomposing them into sub hard goals and tasks

Page 17: 15-16 novembre 2001

17

Combining soft and hard goal models

HG1 SG 1

Agent

HG1

TasK12

A

HG122

A

A

.....

.....

SG1

HG11

constraint121 constraint 122

SG12

A A

A A

HG1

TasK12

resource1111

A

OO

TasK112

Task111

HG122

HG11

Task 112

constraint121 HG122

constraint122

A

.....

A

.....

Agent’s behaviour

(simple or complex)

Page 18: 15-16 novembre 2001

18

Applying the Framework: the process

• Development Flow

• from top organisational level, down to simple agents level, the models feed each others, in a continuous loop. The complete organisation model will result into a flat network of interrelated goals, tasks, and resources, with agents acting as a modularization mechanism

• Elicitation and Validation Flow

• where interaction with the stakeholders occurs

• Verification Flow

• to guarantee consistency between models

Page 19: 15-16 novembre 2001

19

A Case Study

Page 20: 15-16 novembre 2001

20

The case study

• Strongly interrelated with the application domain, highly complex and expensive, they require a RE process strongly focused on the early verification and validation

• Synthetic Environments are distributed interactive simulations of real-world systems, used to support operational, political and economic decisions

• RE process for a ground-based simulator suitable to investigate the feasibility of equipping an aircraft with a new avionics sub-system

Page 21: 15-16 novembre 2001

21

A ground-based simulator

Ethernet

Software Testing Station

Software Development Stations

AirborneComputer

RadarRadar

Altimeter

NavigationSensors

ThermalPod

controls

Air DataSensors

Radio

Aircraft Model

Simulated Equipments

Head-downDisplays

Head-upDiplay

NavigationDisplays Stick

ThrottleSelectorsThermal

Pod

Real Equipments

Airborne Network System

Page 22: 15-16 novembre 2001

22

The Organisation Model

ProjectLeader

developThermal Pod

prototypeintegration

evaluateintegrationfeasibility

AirborneSW

Expert

AvionicsSystemExpert

AvionicsSystem Rig

Flight TestCrew

developprototypeavionics

integration

evaluateavionics

integrationfeasibility

collocatethe pod

in its avionicsenvironment

judgment inoperativeconditions

try the pod inflight conditions

podavionics

environmentrealism

flight conditionsrealism

T&EApplication

Process

evaluatenew aircraft

capability

quick / low costprototype

integration

SE trained

SE

evaluatecrew

workload

........

crewjudgement

monitoravionicssystem

behavior

.....

evaluatesoftware

integrationfeasibility

developprototypesoftware

integration

......

providecrew interface

displays

provideairborne

computers

.....

from goals to req.s

clashingreq.s

Page 23: 15-16 novembre 2001

23

Soft goal upon the Project Leader

A

evaluateintegrationfeasibility

evaluatefinal integration

time & cost

evaluatefinal integration

risks

A

A

estimate final integration

time & cost

evaluatetechnicalfeasibility

A

A

AA

A

evaluate crewworkload

evaluateavionics integration

feasibility.....20% tolerance

A

A

interface ThermalPod

with realequipments

evaluatesoftware integration

feasibility

Page 24: 15-16 novembre 2001

24

Hard goals upon the Project Leader

developThermal Pod

prototypeintegration

A

AA

A

developprototype

integration

A

estimate final integration

time & cost

A

.....

20%tolerance

developprototypeavionics

integration

.....develop

prototype SWintegration

A

forecast final avionics

time & cost

A

forecastfinal

time & cost

A

interface ThermalPod with realequipments

allocateresource &

staff

A

.....A

.....

.....

Page 25: 15-16 novembre 2001

25

From high level goals to system requirements

• there is not one single set of global goals that has to be achieved (from which the others are refined in a top-down way)• an organisation consists of numerous processes

occurring simultaneously, involving various agents, following different paths, and intersecting each other

• an agent may operate as goal generator, as well as a goal transformer

• goals propagate through the organisation in complex patterns and may even conflict

• It is from the set of goals and constraints placed upon the system that the final requirements can be obtained

Page 26: 15-16 novembre 2001

26

Clashing Requirements: detecting and resolving them through soft goals

• Agents may have different opinions, and their goals collide. How can Soft Goals help?

• provide a way to reason about trade-offs, to freeze temporary solutions, and to formalise final decisions

• encourage interactions and a common terminology

• force us to clarify, very early in the project, concepts that are usually left blurred until it is too late (or too expensive) for any corrective intervention

Page 27: 15-16 novembre 2001

27

“Realism” soft goal for the Flight Test Crew

AA

Flight Crewinterfacerealism

externalcontextrealism

commands &controlsrealism

A

stick, throttleand selectors

realism displaysrealism

AA

realstick, throttleand selectors

realdisplays

AA

A

..... wrap-aroundprojected

display

conflict with AvionicsSystem Expert Soft Goal

provide pilotcockpit view

A

A

ASRmovements

AA

.....

provide amotion

platform

A.....

flight conditions realism

A

sensors &aircraft model

realism

A

5% errortolerance for

altitude sensors

.....A

aircraft model toprovide complete

flight envelope

A

A

A

Page 28: 15-16 novembre 2001

28

“Realism” soft goal for the Avionics System Expert

A

Flight Crewinterfacerealism

commands &controlsrealism

A

stick, throttleand selectors

realism

displaysrealism

AA

realstick, throttleand selectors

O O

syntheticstick, throttleand selectors

realdisplays

O O

external contextrealism

A

podavionics

environmentrealism

sensors &aircraft model

realismavionics system

realism

AA

.....A

A

.....A

A

.....

conflict with Flight Test

Crew Soft Goal

Arealon-board

computers

10% errortolerance for

sensorsA

.....A

aircraft model toprovide only

basic flight envelope

A

no externalview

A

conflict with Flight Test

Crew Soft Goal

realon-boarddata-links

A

syntheticdisplays

Page 29: 15-16 novembre 2001

29

Resolved “Realism” soft goal

A

Flight Crewinterfacerealism

commands &controlsrealism

A

stick, throttleand selectors

realismdisplaysrealism

A

A

realstick, throttleand selectors

A A

real displays(when pod related)

external contextrealism

provide pilotcockpit view

.....A

A

.....

pilot viewon flat screen

A

ASRmovements

A

provideno movement

A

A

A

Page 30: 15-16 novembre 2001

30

Deliverables of the RE Framework

Quality Modelsto

CertificationAuthority

SERequirements

toDevelopment

OrganisationModels

toManagement

Page 31: 15-16 novembre 2001

31

Have the objectives been achieved?

• The RE Framework improves the early-stage verification and validation of the requirements of a IT system:• Verification is improved by reconciling the different

models• Validation is improved because of the visibility of the

decisions made by stakeholders.

• Application results suggest that the Framework offers benefits to accreditation and maintenance activities, mainly thanks to the two-way goal <-> requirement link• Accreditation should be made easier by tracing the IT

system properties to application domain needs• Maintainability is improved because changes in the

application domain may be easily linked to system changes.

Page 32: 15-16 novembre 2001

32

From RE to System Implementation

Page 33: 15-16 novembre 2001

33

Deriving the System Requirements Architecture

• the RE framework allows us to model the application domain at a social-technical level, by providing a systematic approach to deal with agents, soft goals, hard goals and their incremental refinement

• requirements are expressed as a collection of hard goals and constraints placed upon the system by other agents

Page 34: 15-16 novembre 2001

34

An Extract from the Organisation Model

AvionicsSystemExpert

AvionicsSystem Rig

Flight TestCrew

collocate thepod in itsavionics

environment

try the pod inflight conditions

podavionics environment

realism

flightconditions

realism

SE

monitoravionicssystem

behavior

Page 35: 15-16 novembre 2001

35

The RE Framework outcomea set of Hard Goals and Constraints

realon-board

computers

real on-boarddata-links

aircraft model toprovide basic

flight envelope

realstick, throttleand selectors

real displays(pod related)

pilot viewon flat screen

provideno movement

AvionicsSystemExpert

AvionicsSystem Rig

Flight TestCrew

collocate thepod in itsavionics

environment

try the pod inflight conditions

monitoravionicssystem

behavior

provide pilotcockpit view

10% errortolerance for noaltitude sensors

aircraft model toprovide low-altitude flight

capability

5% errortolerance for

altitude sensors

Soft Goals- derived

Constraints&

Hard Goals

....

....

....

Page 36: 15-16 novembre 2001

36

RE Framework as forerunner for UML

• the front-end activity of any UML-based approach is the use-case modelling, i.e. capturing the ways in which the users intend to interact with it.

• use-case analysis can benefit from supporting methods (Business Process Modelling and Black Box approaches) that help to identify both the actors, and their goals

• the output from our RE Framework, in the form of a set of hard goals and constraints placed upon the system by well-defined agents, is entirely consistent with this.

Page 37: 15-16 novembre 2001

37

Use-cases as a Goal-refinement Strategy

• a hard goal can lead to one or more use-cases

• constraints will become non-functional requirements

• use-cases offer a systematic and intuitive means of capturing functional requirements

• constraints enrich and complete the use-cases, by providing a systematic and intuitive means of dealing with non-functional requirements.

Page 38: 15-16 novembre 2001

38

Avionics System Expert: Use-case Diagram

.....real

on-boarddata links

connect pod to avionicssystem

perform pod on-groundoperations

Avionics System Expert

(down)-loadinternal software

perform built-intest procedures

uses

uses

basic flight envelope

track object on ground

object on ground positionacquisition

acquisition supported byradar altimeter

acquisition supported byGPS

extends

extends

collocate thepod in itsavionics

environment

realon-board

computers

perform pod in-flightoperations

uses

uses

uses

.....extends

collect data

monitoravionicssystem

behaviour

aircraft model toprovide low-altitude

flight capability

.....

real displays(pod related)

aircraft model toprovide basic flight

envelope realstick, throttleand selectors

Constraintsderived from

Soft Goal Modelling

pilot viewon flat screen

providepilot cockpit

view

Hard Goalderived from

Soft Goal Modelling

constraints

goals

Page 39: 15-16 novembre 2001

39

The Use-case Diagram

.....real

on-boarddata links

connect pod to avionicssystem

perform pod on-groundoperations

Avionics System Expert

(down)-loadinternal software

perform built-intest procedures

uses

uses

basic flight envelope

acquisition supported byradar altimeter

acquisition supported byGPS

extendsextends

collocate thepod in itsavionics

environment

realon-board

computers

perform pod in-flightoperations

uses

uses

uses

.....

extends

collect data

monitoravionicssystem

behaviour

aircraft model toprovide low-altitude

flight capability

.....

real displays(pod related)

aircraft model toprovide basic flight

envelope realstick, throttleand selectors

pilot viewon flat screen

providepilot cockpit

view

track object on ground

object on ground positionacquisition

aircraft model toprovide low-altitude

flight capability

.....

real displays(pod related)

perform pre-, post-and in-flight checks

"fly" the aircraft

Flight Test Crew

low-altitude flight envelope uses

uses

use pod in isolation

use pod combined with other subsystems

try the podin flight

conditions

aircraft model toprovide basic flight

enveloperealstick, throttleand selectors

providepilot cockpit

view

use pod in operative profiles(e.g search & rescue)

uses

uses

uses

uses

uses

uses

low and/or night visibilityconditions

uses

pilot viewon flat screen

.....

uses

uses

uses

Airborne SW Expert

Page 40: 15-16 novembre 2001

40

Building the conceptual model: the class diagram

Flight Test Crew

Avionics System Expert

thermal podselectors

thermal pod

airbornecomputer

aircraft modelview fromcockpit

thermal poddisplay

move, centre, stabilise

activate podselect pod

move, centre,stabilise

external view

pod image

move, centre,stabilise

aircraft position

aircraft position

pod orientation

realon-board

computers

realstick, throttleand selectors

real displays(pod related)

pilot viewon flat screen

10% errortolerance for

sensors

realpod

Crew selectors& controls