+ All Categories
Home > Documents > Reasoning with optional and preferred requirements

Reasoning with optional and preferred requirements

Date post: 03-Jun-2015
Category:
Upload: neil-ernst
View: 455 times
Download: 2 times
Share this document with a friend
Description:
Presented at ER2010, November
Popular Tags:
13
Reasoning with optional and preferred requirements Neil A. Ernst , John Mylopoulos, Alex Borgida, Ivan Jureta Universities of Toronto, Trento, Rutgers, Namur [email protected]
Transcript
Page 1: Reasoning with optional and preferred requirements

Reasoning with optional and preferred requirements

Neil A. Ernst, John Mylopoulos, Alex Borgida, Ivan Jureta

Universities of Toronto, Trento, Rutgers, Namur

[email protected]

Page 2: Reasoning with optional and preferred requirements

ER – Nov 1, 2010 2

Motivation•Most RE processes assume we derive a single implementation

•RE models express a landscape of alternative solutions, from which we can select those suitable

•Q1. how do we find solutions (efficiently)?

•Q2. what solution(s) should we choose?

Page 3: Reasoning with optional and preferred requirements

ER – Nov 1, 2010 3

The requirements problem• Find a specification S which will create a

system to satisfy desired requirements R in a domain D.

↪ D, S ⊢ R1

• Let’s assume R is represented using goals.

• Then a solution to our problem is a set of input goals satisfying our mandatory goals.

• Represent this model using the Sebastiani formulation (QGM).2

1 P. Zave and M. Jackson. Four Dark Corners of Requirements Engineering. ToSEM, 6:1–30, 1997.

2 Sebastiani, R., Giorgini, P., Mylopoulos, J.: Simple and Minimum-Cost Satisfiability for Goal Models.CAISE 2004

Page 4: Reasoning with optional and preferred requirements

A

B C

OR

L

J K

OR

F

G H

AND

OR

AND

OR

D

M M

E

OROR ++

– –

1. Our solution must have {A,L}

++

– –

2. {E} would be nice, and we prefer {C} to {B} 3. S1={D,J} S2 = {D,K} S3 = {E,K} S4 = {G,H,J}

P

4. Preferred soln: {E,K}

Page 5: Reasoning with optional and preferred requirements

ER – Nov 1, 2010 5

Accounting for taste• Preferences are binary relations over

goals (prefer G1 G2)➡ prefer solutions with G1 over those

with G2.

• Options are requirements it would be nice to have in our solution (prefer O1∈S O1∉S)

• Noriaki Kano1 would call these attractive requirements, as separate from must-be or performance requirements.1Kano, N., et al. “Attractive quality and must-be quality.” Journal of

the Japanese Society for Quality Control 14, no. 2 (1984): 39-48.

Page 6: Reasoning with optional and preferred requirements

Client attitude

Requirement status

Page 7: Reasoning with optional and preferred requirements

ER – Nov 1, 2010 7

Finding solutions

1. Identify admissible models (‘possible solutions’);

2. Satisfy as many optional requirements as possible;

3. Identify alternatives; 4. Filter the set of alternatives using user-

expressed preferences.

Page 8: Reasoning with optional and preferred requirements

ER – Nov 1, 2010 8

Finding solutions (2)

1.Separate model into must-be and optional.

2.Find admissible solutions:

• one which satisfies all must-be requirements.

3. Find maximal set(s) of options which keep model admissible

Page 9: Reasoning with optional and preferred requirements

ER – Nov 1, 2010 9

Finding solutions (3)4. Identify alternatives (OR)

• Admissible solutions + options

• Boolean satisfiability solver to find #SAT

• Set of optionset + alternatives5. Prune alternatives using preferences

• Dominate(P,Q) ⇔ for every q∈Q, there is an p∈P which is preferred or equivalent

• E.g.P = (A,B,C), Q = (B,C,D), (pref A D)

• P is dominant

Page 10: Reasoning with optional and preferred requirements

ER – Nov 1, 2010 10

Initial optimizations

1.Scale option selection using cardinality or membership queries

2. Filter using preferences over options3. Find near-optimal sets with Tabu

search1

1Glover, Fred. Tabu Search--Part I. INFORMS Journal on Computing 1, no. 3 �(January 1989): 190-206.

Page 11: Reasoning with optional and preferred requirements

ER – Nov 1, 2010 11

Tabu search of options• Search the lattice formed by subset closure of option sets

• Improvements measured using cardinality

• Tabu search allows for intelligent backtracking

• Limit number of moves for speed

• No guarantees of optimality, only of termination

X

Page 12: Reasoning with optional and preferred requirements

ER – Nov 1, 2010 13

Experimental evaluation

• Implementation code at

• http://github.com/neilernst/er2010

Page 13: Reasoning with optional and preferred requirements

ER – Nov 1, 2010 14

Summary

• We have used options and preferences to select between solutions to the requirements problem.

• We introduced several optimizations in order to find solutions efficiently.

[email protected]


Recommended