You are on page 1of 26

Analyzing User

Requirements by Use
Cases: A Goal-Driven
Approach
Authors : Jonathan Lee and Nien-Lin Xue
From : IEEE Software July/August 1999
Presented by : K.W. Lee, 26.03.2008

1
Outline
• Introduction
• Goal-Driven Use Cases
• Building Use-Case Models
• Goal Evaluation
• Conclusion

2
1 Introduction (1/3)

• Use-case-driven analysis
– Helps manage complexity
• Focuses on one specific usage aspect at a time

• However, current use-case approached


limited in supporting
– Use-case formalization
– Structuring & managing large use-case
models
3
1 Introduction (2/3)

• Rigid goal
– target system’s minimum requirement
– Must be completely satisfied

• Soft goal
– Desirable property
– Can be partially satisfied
– Dependent on rigid goal

4
1 Introduction (3/3)

• Goal-driven use cases (GDUC):


– Uses goals to structure use-case models & derive
use cases

– Differentiates between soft & rigid goals to handle


imprecise nonfunctional requirements

– Embeds goal information in the use cases

– Analyzes interactions between requirements by


investigating the relationship between goals and use
cases 5
2 Goal-Driven Use Cases
• GDUC:
– Extend use-case approaches with goals

– For requirements engineers to structure and


elicit users’ requirements (focus)
– Analyze and evaluate relationships between
requirements

6
3 Building Use-Case Models (1/16)

• 3 steps:
1. Identify original use cases

2. Identify extension use cases


2.1. Optimize/maintain a soft goal
2.2. Achieve a system-specific goal
2.3. Achieve a nonfunctional goal

3. Refine use case model

7
3 Building Use-Case Models (2/16)

1. Identify Original Use Cases – satisfy original goals

Goal

Use case

8
3 Building Use-Case Models (3/16)

• 3 steps:
1. Identify original use cases

2. Identify extension use cases


2.1. Optimize/maintain a soft goal
2.2. Achieve a system-specific goal
2.3. Achieve a nonfunctional goal

3. Refine use case model

9
3 Building Use-Case Models (4/16)

2.1. Optimize / maintain a soft goal

10
3 Building Use-Case Models (5/16)

Optimize a soft goal

11
3 Building Use-Case Models (6/16)

Maintain a soft goal

success conflict
satisfy

12
3 Building Use-Case Models (7/16)

• 3 steps:
i. Identify original use cases

ii. Identify extension use cases


1. Optimize/maintain a soft goal
2. Achieve a system-specific goal
3. Achieve a nonfunctional goal

iii. Refine use case model

13
3 Building Use-Case Models (8/16)

2.2. Achieve a system-specific goal

14
3 Building Use-Case Models (9/16)

15
3 Building Use-Case Models (10/16)

• 3 steps:
1. Identify original use cases

2. Identify extension use cases


2.1. Optimize/maintain a soft goal
2.2. Achieve a system-specific goal
2.3. Achieve a nonfunctional goal

3. Refine use case model

16
3 Building Use-Case Models (11/16)

2.3. Achieve a nonfunctional goal

17
3 Building Use-Case Models (12/16)

18
3 Building Use-Case Models (13/16)

• 3 steps:
1. Identify original use cases

2. Identify extension use cases


2.1. Optimize/maintain a soft goal
2.2. Achieve a system-specific goal
2.3. Achieve a nonfunctional goal

3. Refine use case model

19
3 Building Use-Case Models (14/16)

20
3 Building Use-Case Models (15/16)

• Refine use case model


– Extends
• both extension & original use cases have their
corresponding goals to achieve, optimize, or
maintain

– Uses
• an abstract use case enhances reusability &
does not have a goal associated with it

21
3 Building Use-Case Models (16/16)

22
4 Goal Evaluation (1/3)

23
4 Goal Evaluation (2/3)

cease

success

conflict

24
4 Goal Evaluation (3/3)

conflict

25
5 Conclusion
• GDUC’s benefits:
– Serving as a structuring mechanism to
facilitate the derivation of use-case
specifications
– Bridging the gap between the domain
description and the system requirements
– Easier handling the soft requirements and
the analysis among conflicting requirements

26

You might also like