Download - Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Transcript
Page 1: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Surpassing the Function Perspective: The Complexity of Goal Modeling

Support from

A Research Celebration for Professor John MylopoulosJune 27, 2009

Julio Cesar Sampaio do Prado LeiteDepartamento de Informática

Pontifícia Universidade Católica do Rio de Janeiro (PUC-Rio)

Page 2: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

2

Page 3: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

A Very Hard Problem

We are dealing with a very difficult problem, as expressed by Fred Brooks:" The hardest part of building a system is deciding what to

build. No other part of the conceptual work is as difficult as establishing the detailed technical requirements, including all interfaces to people, to machines and to other software systems. No other part is more difficult to rectify later"

F. Brooks, Essence and Accidents to Software Engineering, IEEE Computer, 4(3):10-19, 1987

3

Page 4: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Software Quality

basic quality – functionality,

– reliability,

– ease of use,

– economy and

– safety

extra quality – flexibility,

– reparability,

– adaptability,

– reparability ,

– understandability,

– documentation and

– enhanceability

Peter Freeman´s taxonomy

4

Page 5: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Quality is Job One

• Several accounts regarding software failure point to the lack of attention in dealing with other qualities

• An analysis of the LAS is typical. Several problems can be traced for the lack of consideration of quality issues at planning time.

• Other disciplines focus on quality as the customer requirements.

5

Page 6: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

LAS – Case Study“Multitude of Opinions – the social organization surrounding the development of the LAS system was a

very complex one. A great number of actors were involved, to some degree, with the system and its deployment. To name just a few there were ambulance crews, ground staff and management, each party with different opinions in relation to the LAS system. This section takes a deeper look into this situation and its consequences. There are 19 passages referenced in this section.

Evolution – in this section we take a closer look at the system in order to understand the evolution of events that ultimately resulted in its downfall. Based on some key issues we tried to uncover the rationale behind design decisions and take a look at documentation. Issues such as changes to the software, specifications (both hardware and software) and technology trade-offs are among the ones addressed. There are 17 passages referenced in this section.

Environmental aspects – this section concentrates in the social aspects surrounding the development and deployment of the system. Issues such as company policies, regulations and the impact the system might have in the organization are central to this discussion. There are 19 passages referenced in this section.

Non-Functional aspects – this section is concerned with aspects that although not directly related to the system, played an important role in its outcome. We believe one of the most significant ones is the communication problem. The system did not take into account that in an environment as crowded as London, radio communications are sometimes difficult, and that resulted in a series of reported malfunctions. Less critical issues, such as cost and the trade-off between desired performance and user interface, among other problems, are identified and addressed in this section. There are 28 passages referenced in this section.”

Karin Koogan Breitman, Julio Cesar Sampaio do Prado Leite, Anthony Finkelstein: The worlds a stage: a survey on requirements engineering using a real-life case study. J. Braz. Comp. Soc. 6(1): 13-37 (1999)

6

Page 7: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

QFD“In the area of engineering and management, the well known QFD (Quality Function Deployment) strategy [7] distinguishes positive quality from negative quality: “QFD is quite different in that it seeks out both "spoken" and "unspoken" customer requirements and maximizes "positive" quality (such as ease of use, fun, luxury) that creates value. Traditional quality systems aim at minimizing negative quality (such as defects, poor service)”. One of the techniques used by QFD strategies is the House of Quality [8], in which the process starts "...with the customer, whose requirements are called customer attributes (CA´s) - phrases customers use to describe products and product characteristics...". Incidentally, none of the examples of the CA´s in [8] is related to functionality or just functionality alone.”

Lawrence Chung and Julio Cesar Sampaio do Prado Leite, On Non-Functional Requirements in Software EngineeringA.T. Borgida et al. (Eds.): Mylopoulos Festschrift, LNCS 5600, pp. 363–379, 2009.

7

Page 8: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Function First

• Most of the representations for software specification stress functionality.

• Software requirements is anchored on functionality

• Even when using non procedural paradigms the center piece is functionality.

• Representation is “flat” (one dimension).

8

Page 9: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

The Legacy of Automata Theory

“(3) Assuming that formal descriptions focus on actions, it is essential to identify which actions are controlled by the environment, which actions of the environment are controlled by the machine, and which actions of the environment are shared with the machine. All types of actions are relevant to requirements engineering, and they might need to be described or constrained formally. If formal descriptions focus on states, then the same basic principles apply in a slightly different form.”

Pamela Zave, Michael Jackson: Four Dark Corners of Requirements Engineering. ACM Trans. Softw. Eng. Methodol. 6(1): 1-30 (1997)

9

Page 10: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Vera Maria Bejamim Werneck, Antonio de Padua Albuquerque Oliveira,Julio Cesar Sampaio do Prado Leite: Comparing GORE Frameworks: i-star and KAOS. Wer 2009 (to appear).

KAOS

10

Page 11: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

A KAOS Tutorial -- Respect-IT, 2007http://www.objectiver.com/fileadmin/download/documents/KaosTutorial.pdf

11

KAOS

Page 12: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

A KAOS Tutorial -- Respect-IT, 2007http://www.objectiver.com/fileadmin/download/documents/KaosTutorial.pdf

12

KAOS

Page 13: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Luiz Marcio Cysneiros, Julio Cesar Sampaio do Prado Leite: Nonfunctional Requirements: From Elicitation to Conceptual Models. IEEE Trans. Software Eng. 30(5): 328-350 (2004)

NFR

13

Page 14: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

NFR - UMLLu

iz M

arci

o C

ysne

iros,

Jul

io C

esar

Sam

paio

do

Prad

o Le

ite: N

onfu

nctio

nal R

equi

rem

ents

: Fr

om E

licita

tion

to C

once

ptua

l Mod

els.

IEE

E T

rans

. Sof

twar

e E

ng.3

0(5)

: 328

-350

(200

4)

14

Page 15: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

NFR - UMLLu

iz M

arci

o C

ysne

iros,

Jul

io C

esar

Sam

paio

do

Prad

o Le

ite: N

onfu

nctio

nal R

equi

rem

ents

: Fr

om E

licita

tion

to C

once

ptua

l Mod

els.

IEE

E T

rans

. Sof

twar

e E

ng.3

0(5)

: 328

-350

(200

4)

15

Page 16: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

http://www.me.utexas.edu/~me366j/QFD/Notes.html

Dr. Crawford's Slides on QFD

HA

US

ER

, JR

. CLA

US

ING

, D. T

he h

ouse

of q

ualit

y. H

arva

rd B

usin

ess

Rev

iew

. v. 6

6. n

. 3,

p. 6

3-73

, may

-jun.

198

8.QFD

16

Page 17: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

http

://w

ww

.me.

utex

as.e

du/~

me3

66j/Q

FD/N

otes

.htm

l

Dr. Crawford's Slides on QFDHA

US

ER

, JR

. CLA

US

ING

, D. T

he h

ouse

of q

ualit

y. H

arva

rd B

usin

ess

Rev

iew

. v. 6

6. n

. 3,

p. 6

3-73

, may

-jun.

198

8.QFD

17

Page 18: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Quantitative Risk-based Requirements Reasoning; M.S. Feather & S.L. Cornford; Requirements Engineering Journal (Springer); Vol 8 No 4, 2003 pp 248-265

Requirements, Failure Modes, and PACTs (Preventions, Analyses,process Controls, and Tests).

Defect Detection and Prevention

18

Page 19: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Quantitative Risk-based Requirements Reasoning; M.S. Feather & S.L. Cornford; Requirements Engineering Journal (Springer); Vol 8 No 4, 2003 pp 248-265

Defect Detection and Prevention

19

Page 20: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Information Models Ontologies

• Static ontology – checking constraints (spatial reasoning)

• Dynamic ontology – simulation finite state machine, model checking

• Intentional ontolgy – goal (and/or) graphs analysis

• Social ontology – means-ends analysis

John Mylopoulos: Information Modeling in the Time of the Revolution. Inf. Syst. 23(3-4): 127-155 (1998)

20

Page 21: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

21

The Evolution• Roussopoulos, N., Mylopoulos, J., "Using Semantic Networks for Database Management", Proceedings of the First International

Conference on Very Large Databases, September 1975, 144-172. ( PDF )

• Mylopoulos, J., Bernstein, P. and Wong, H., "A language facility for designing interactive database-intensive applications", ACM Transactions on Database Systems 5(2), June 1980. ( PDF )

• Greenspan, S., Mylopoulos, J. and Borgida, A., "Capturing more world knowledge in the requirements specification", in the Proceedings of the Sixth International Conference on Software Engineering, Tokyo, 1982. ( PDF )

• Brodie, M., Mylopoulos, J. and Schmidt, J.,(eds.) On Conceptual Modelling: Perspectives from Artificial Intelligence, Databases and Programming Languages, Springer Verlag, 1984.

• Mylopoulos, J., Borgida, A., Jarke, M. and Koubarakis, M., "Telos: Representing Knowledge About Information Systems" ACM Transactions on Information Systems 8(4), October 1990. ( PDF )

• Mylopoulos, J., Chung L., and Nixon, B., "Representing and using non-functional requirements: a process-oriented approach", IEEE Transactions on Software Engineering, June 1992. ( PDF )

• Borgida, A., Mylopoulos, J. and Reiter R., "On the frame problem in procedure specifications", IEEE Transactions on Software Engineering, October 1995. ( PDF )

• Mylopoulos, J., Chaudhri, V., Plexousakis, D., Shrufi, A. and Topaloglou, T., "Building Knowledge Base Management Systems", VeryLarge Databases Journal 5(4), October 1996. ( PDF )

• Gal, A., Kerr, S., and Mylopoulos, J., "Information Services for the Web: Building and Maintaining Domain Models", InternationalJournal of Cooperative Information Systems 8(4), December 1999, 227-254

• Castro, J., Kolp, M., Mylopoulos, J., "Towards Requirements-Driven Software Development Methodology: The Tropos Project," Information Systems, June 2002. ( PDF )

21

Page 22: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Languages – The Evolution

Taxis

RML

Telos

Tropos

i*

Page 23: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Aspects

23

Yijun Yu, Julio Cesar Sampaio do Prado Leite, John Mylopoulos: From Goals to Aspects: Discovering Aspects from Requirements Goal Models. RE 2004: 38-47

Page 24: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Aspects (cross)

24

Lyrene Fernandes da Silva, Julio Cesar Sampaio do Prado Leite An Aspect-Oriented Approach for Requirements Modeling (submited)

Page 25: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Variability

25

Bruno González-Baixauli, Julio Cesar Sampaio do Prado Leite, John Mylopoulos: Visual Variability Analysis for Goal Models. RE 2004: 198-207

Page 26: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Variability

26

Bruno González-Baixauli, Julio Cesar Sampaio do Prado Leite, John Mylopoulos: Visual Variability Analysis for Goal Models. RE 2004: 198-207

Page 27: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Variability

27

Bruno González-Baixauli, Julio Cesar Sampaio do Prado Leite, John Mylopoulos: Visual Variability Analysis for Goal Models. RE 2004: 198-207

Page 28: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

John Mylopoulos, Goal-Oriented Requirements Engineering: Part II14th IEEE Requirements Engineering Conference

Minneapolis, September 15, 200628

Page 29: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

John Mylopoulos, Goal-Oriented Requirements Engineering: Part II14th IEEE Requirements Engineering Conference

Minneapolis, September 15, 200629

Page 30: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Ver

a M

aria

Bej

amim

Wer

neck

, A

nton

io d

e Pa

dua

Albu

quer

que

Oliv

eira

,Ju

lio C

esar

Sam

paio

do

Prad

o Le

ite: C

ompa

ring

GO

RE

Fra

mew

orks

: i-s

tar a

nd

KA

OS

. Wer

200

9 (to

app

ear).

30

Page 31: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

31

John Mylopoulos, Goal-Oriented Requirements Engineering: Part II14th IEEE Requirements Engineering Conference

Minneapolis, September 15, 2006

Page 32: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Herbet de Souza Cunha : Uso de estratégias orientadas a metas para modelagem de requisitos de segurança, Dissertação de Mestrado, PUC-Rio, 2007.

32

Impact Analysis

Page 33: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

J. Horkoff, E. Yu, L. Liu. (2006) Analyzing Trust in Technology Strategies. International Conference on Privacy, Security and Trust (PST 2006)

33

Impact Analysis

Page 34: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Jord

i Cab

ot, S

teve

Eas

terb

rook

, Jen

nife

r Hor

koff,

Jos

-Nor

berto

Maz

n, L

ysan

ne L

essa

rd,

Sot

irios

Lia

skos

: Int

egra

ting

Sust

aina

bilit

y i n

Dec

isio

n-M

akin

g Pr

oces

ses:

A M

odel

ling

Stra

tegy

. IC

SE 2

009

New

Idea

s an

d Em

ergi

ng R

esul

ts (N

IER

’09)

.

34

Softgoal Driven Model

Page 35: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

35

agents

∀ agent occupies position X agent plays ∀ role covered by position X.

positions

roles

Strategic Actors Transparency

SA Model Organizational Structure

AgentTaxonomy Responsibilities

Page 36: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Process Transparency

36

Page 37: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

37

The Rationale

Software is deemed transparent if it makes the information it deals with transparent (information transparency) and if it, itself, is transparent, that is it informs about itself, how it works, what it does and why (process transparency).

37

Page 38: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

Claudia Cappelli : Modelando Aspetos de Transparência para Processos Organizacionais, Tese de Doutorado, PUC-Rio, 2009 38

Softgoal Interpedence Graph

Page 39: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

The role of Requirements Engineering

“Transparency is an interesting quality because it makes it necessary to attach requirements models to software”

Professor John Mylopoulos

39

Page 40: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

WHY?

40

Page 41: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

“... We're not sure," the pet-shop owner replied. "But the other two call him

Professor."

$ 1,000.00 $ 2,000.00 $ 5,000.00

41

Page 42: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

WHY?

42

Page 43: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

43

Looking Beyond

Page 44: Surpassing the Function Perspective: The Complexity of ...julio/Slct-pub/john-celebration.pdf · Surpassing the Function Perspective: The Complexity of ... No other part of the conceptual

44

Aigaio Pelagos

http

://w

ww

.flic

kr.c

om/p

hoto

s/81

4075

0@N

06/1

2378

7175

8/

Quality in a classical Greek sense is how to live with grace and intelligence, with bravery and mercy.Theodore White

http://www.flickr.com/photos/8140750@N06/1237871758/

By Marcel Germain