Use Case Point Estimation

advertisement

Use Case Point Estimation

Nguyen Mai

Himanshu Saxena

Lucas Grossi

4/17/2020 Use Case Point Estimation 1

Precarious Eclipse

1.

2.

Technical Risks are addressed too late.

Scope is poorly defined, will change effecting progress of project.

1.

2.

Expert judgments are used invariably.

Data from delivered project is seldom used.

The Problem [3]

4/17/2020 Use Case Point Estimation 2

Experience

Factory

• Maintaining experience base with past experiences of effort estimates of old successful projects can help to get more accurate results resulting in continuous improvement.

Technical Risk

Phase

• Advent of new phase that can flush out the technical risks earlier in the

SDLC.

•www.lamri.com

Use Cases

• UC can define and manage the scope

• They by far are the best way for articulating users view of the system

Potential Solution – Our Perspective

4/17/2020 Use Case Point Estimation 3

Use Cases

Use Case Point Method

PC – Geek Problem – using UCPM

Positives and Drawbacks

Agenda

Improvement

4/17/2020 Use Case Point Estimation 4

Use cases tries to provide an approximate answer to the right question. – which according to John Tukey is far better than exact answer to approximate question.

Can provide estimates earlier in SDLC.

◦ Before architectural decisions are made

◦ Before implementation.

Use Cases provide user-specific perspective to requirements and have been a successful way to explore the requirements.

Use case models are used in OO analysis for capturing and describing functional requirements of a system.

Use Cases

4/17/2020 Use Case Point Estimation 5

Describe the typical interactions between the users of a system and the system itself.

Specify a form of requirements of what the system has to do

(remember, only what, not how).

Rules:

◦ related to at least one actor

◦ has an initiator (i.e. an actor)

◦ leads to a relevant result (a result with “business value”)

Use Cases

4/17/2020 6

Use Case Point Estimation – Process

4/17/2020 Use Case Point Estimation 7

The UCP equation is composed of four variables:

- Unadjusted Use Case Point (UUCP)

- The Technical Complexity Factor (TCF)

- The Environment Complexity Factor (ECF)

- The Productivity Factor (PF)

UCP = UUCP * TCF * ECF * PF

UUCP is the sum of Unadjusted Actor Weight (UAW) and

Unadjusted Use Case Weight (UUCW).

UUCP = UAW + UUCW

Use Case Point Estimation [4]

4/17/2020 Use Case Point Estimation 8

Actor

Type

Description Weight

Simple The actor represents another system with a defined Application

Programming

Interface (API)

Average The actor represents another system interacting through a protocol-driver

Interface

1

2

Complex The actor is a person interacting via a

Graphical User

Interface (GUI)

3

Unadjusted Actor

Weight

Actor initiates an interaction with the system to accomplish some goals.

Does not represent the

physical people or systems, but their role.

4/17/2020 Use Case Point Estimation 9

Use Case

Type

Simple

Description Weight

Less than 3 transactions

5

Average

Complex

4 to 7 transactions

10

More than 7 transactions

15

Unadjusted Use

Case Weight

Based on the total number of activities contained in all the use case scenarios

• does not represent the

physical people or systems, but their role.

4/17/2020 Use Case Point Estimation 10

T5

T6

T7

T8

T9

T10

T11

Technical Factor

T1

T2

T3

T4

T12

T13

Description

Distributed System

Performance

End User Efficiency

Complex Internal Processing 1

Reusability 1

Installability

Usability

0.5

0.5

Portability

Modifiability

Concurrency

Includes special security requirements

Provides direct access by third parties

Special User training facilities are required

2

1

1

1

1

1

Weight

2

1

1

Technical Complexity Factor - TCF

4/17/2020 Use Case Point Estimation 11

Each factor is given a perceived complexity value from 0 to 5 according to its impact

Technical Total Factor is computed as the sum of all the weights multiplied by their corresponding perceived values

Technical Complexity Factor (TCF):

TCF = 0.6 + (0.01*Technical Total Factor)

Technical Complexity Factor (TCF)

4/17/2020 Use Case Point Estimation 12

F3

F4

F5

F6

Environment

Factor

Description

F1

F2

Familarity with Life-

Cycle model used

Application domain experience

F7

F8

Experience with development methodologies used

Analyst capability

Team motivation

Stability of requirements

Use of part-time team members

Use of difficult programming language

Weight

1.5

0.5

-1

-1

1

0.5

1

2

Environment

Complexity Factor

- ECF

Reflects the development team’s experience

ECF = 1.4 + (-

0.03*Environment

Total Factor)

Environment Total

Factor is the sum of each factor weight multiplied by the perceived value

4/17/2020 Use Case Point Estimation 13

Convert the UCP number into meaningful value in terms of man-hours required.

The value may range from 16 to 30 manhour/UCP.

Productivity Factor (PF)

4/17/2020 Use Case Point Estimation 14

Sales scenario

Case Study

4/17/2020 15

Component Manipulation Scenario

4/17/2020 16

PC Manipulation Scenario

4/17/2020 17

Use Case Actors

Actor

Type

Simple

Average

Average

Complex

Total UAW

Number

0

Purchase Department 2

Wei ght

1

Warehouse 2

Sales Representative 3

Warehouse Employee 3

PD Employee 3

Workhouse Employee 3

Warehouse Employee 3

R

3

3

1

9

3

3

2

3

0

2

Results

Use Case Weights

Use

Case

Types

Simple

.

Num Weigh t

R

25 5

Average 0

Complex 0

Total

UUCW

10

15

12

5

0

0

12

5

4/17/2020 Use Case Point Estimation 18

ID

1

T1

Description

Distributed

System

T2 Performance

T3

T4

End User

Efficiency

Complex Internal

Processing

T5 Reusability

Wei ght

2

1

1

1

1

Rat ing

4

3

3

1

3

Val ue Explanation

8 because the system is distributed across many departments.

3

3 the performance is not a concern as we are not dealing with any criticality of time or data.

the system don’t need to be fast/swift but also not too slow that it effects the business categorically.

the system does not have complex business rules present internally, it is

1

3

2 more of data being addded, deleted or modified.

the approach of the compnay conincides with cmmi level 3 and the software can be used for different other solutions.

Reusability is encouraged it should be easy to install the system as there are many departments and the system should be easy to install everywhere T6 Installability

Total Technical

Factor

0.5

4

20

Technical Complexity Factor - TCF

4/17/2020 Use Case Point Estimation 19

ID Description

TTF (previous slide)

Weight Rating Value Explanation

20

T7

T8

T9

Usability

Portability

Modifiability

0.5

2

1

1

4

2

4

4

2

4

4

4 usability is imperative as it has strong human interactions.

we are not thinking about changing the platform, configuration, location etc etc.

so portability is not a concern.

modifibility will depend on the business but we expect the business to grow.

the employees will be accessing the system concurrently for information and making changes.

T10 Concurrency

Includes special

T11 security requirements

T12

T13

Provides direct access by third parties

Special User training facilities are required

Total

Technical

Factor

1

1

1

1

0

0

1 security is not a major concern as the data is not critical as mentioned before.

0 no access to third parties

0 irrelevant

35

4/17/2020 Use Case Point Estimation 20

ID

F1

F2

F3

F4

F5

F6

F7

Description

Familiarity with Life-

Cycle model used

Application domain experience

Experience with develompment methodologies used

Analyst capability

Team motivation

Stability of requirements

Use of part-time team members

F8

Environmental

Complexity

Factors

Use of difficult programming language

Total Environmental

Factor

Weight

1.5

0.5

1

0.5

1

2

-1

-1

Rating

3

3

4

3

3

4

0

0

Value

4.5

1.5

4

1.5

3

Explanation making the assumption that we don’t know so keeping to average value.

the application belongs to strategic domain and the organisation has little experience in it.

we assume that we have experiece in it and use cases will help us.

8

0

0 we expect the requirements not to change more often wpart time team members are not part of the plan be PL will agreement require language in with current standards and application does not complex

4/17/2020

22.5

Use Case Point Estimation 21

Factors Estimate

Technical Complexity Factor

Unadjusted Use Case Points

TCF = 0.6 + (0.01 x Total

Technical Factors)

TCF = 0.6 + (0.01 x 35)

TCF = 0.95

UUCP = UAW + UUCW

UUCP = 19 + 125

UUCP = 144

Use Case Points

Environmental Complexity

Factor

ECF = 1.4 + (-0.03 x Total

Environmental Factors)

ECF = 1.4 + (-0.03 x 22.5)

ECF = 0.725

UCP = UUCP x TCF x ECF

UCP = 144 x 0.95 x 0.725

UCP = 99.18 use case points

Estimate = UCP x PF

Estimate = 99.18 x 20

Estimate = 1983.6 man hours

PC – Geek Final Results

4/17/2020 Use Case Point Estimation 22

Understandability

◦ Easy to learn and quick to apply.

◦ Versatile and extensible for different flavors of development and testing projects.

Positives

Well Suited

◦ When the complexity of the system resides in the interaction between the actor and system.

◦ Objected Oriented

Applications / Systems.

◦ Development time is too short. e.g. Web

Applications.

◦ Management intends to have an early project estimate for planning.

4/17/2020 Use Case Point Estimation 23

Use Cases have some limitations. E.g. flight reservation system, UCPM will be unsuitable for such applications.

Many variations in Use Case specifications formalities and styles

Syntax and Semantics to describe Use Case Models and scenarios are incomplete and not precise.

Heuristics and rules are still missing which define the right degree of detail imperative for correct estimation.

There is no use case point standard. Therefore, it is difficult to use case point values across companies.

Drawbacks

4/17/2020 Use Case Point Estimation 24

Results Lessons Learnt

Promising Results for

UCPM.

Use Case can be used successfully in conjunction with expert estimates.

TCF and ECF can be reused across similar projects.

Industrial Case Study [5]

4/17/2020 Use Case Point Estimation 25

What is EF

EF is to use the past experiences and since we believe that the effort estimates of old projects in more accurate definitions of new estimates.

Benefits

 With experience we will develop sensible heuristics.

 The availability of data from previous projects will contribute to the accuracy of estimates

 Reuse of TCF and ECF as they remain constant across similar projects.

Experience Factory [6]

4/17/2020 Use Case Point Estimation 26

Determi ne Actor

Weights

Determi ne Use

Case

Weights

Adjust for

Technical

Factors

Adjust for

Environ mental

Factors

Adjusted

Use

Case

Points

Support

Experience

Base

Analyze

Package

4/17/2020 Use Case Point Estimation 27

There is no secret formula which will work for everything.

UCPM has the potential to become a mature and widely accepted estimation tool like FP.

◦ It can have significant impact when used with other estimates like expert knowledge.

Further Studies are required for precision of UCPM in different kinds of projects.

Improvements in dimension of solving the problem areas can help making it a success.

Conclusions

4/17/2020 Use Case Point Estimation 28

◦ [1]Presentation, Gem-Up

Consulting.www.gem-up.com

◦ [2] Webpage, Microsoft Office Project, http://office.microsoft.com/enus/project/HA010211801033.aspx

◦ [3]Presentations, Lamri Ltd, www.lamri.com

◦ [4]Article, Project Estimation With Use Case

Points .Clemmons.

◦ [5]Paper, estimating Software Development

Effort Based on Use Cases – Experiences from

Industry.

◦ [6]Paper, Experience Factory to Improve

Software Development Effort

References

4/17/2020 Use Case Point Estimation 29

Questions.

4/17/2020 Use Case Point Estimation 30

Download