Use Case Point Estimation

Download Report

Transcript Use Case Point Estimation

Use Case Point Estimation
Nguyen Mai
Himanshu Saxena
Lucas Grossi
4/8/2015
Use Case Point Estimation
1
Precarious Eclipse
1.
2.
1.
2.
Technical Risks are
addressed too late.
Scope is poorly defined,
will change effecting
progress of project.
Expert judgments are used
invariably.
Data from delivered
project is seldom used.
The Problem [3]
4/8/2015
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
Use Cases
• Advent of new
phase that can
flush out the
technical risks
earlier in the
SDLC.
•www.lamri.com
• 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/8/2015
Use Case Point Estimation
3
Use Cases
Use Case Point Method
PC – Geek Problem – using UCPM
Positives and Drawbacks
Experience Factory – Continuous
Agenda
Improvement
4/8/2015
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/8/2015
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/8/2015
6
Use Case Point Estimation – Process
4/8/2015
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/8/2015
Use Case Point Estimation
8
Actor
Type
Description
Weight
Simple
The actor represents
another system with
a defined Application
Programming
Interface (API)
1
The actor represents
another system
interacting through a
protocol-driver
Interface
2
The actor is a person
interacting via a
Graphical User
Interface (GUI)
3
Average
Complex
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/8/2015
Use Case Point Estimation
9
Use Case
Type
Description
Weight
Simple
Less than 3
transactions
5
Average
4 to 7
transactions
10
More than 7
transactions
15
Complex
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/8/2015
Use Case Point Estimation
10
Technical Factor
Description
Weight
T1
Distributed System
2
T2
Performance
1
T3
End User Efficiency
1
T4
Complex Internal Processing 1
T5
Reusability
1
T6
Installability
0.5
T7
Usability
0.5
T8
Portability
2
T9
Modifiability
1
T10
Concurrency
Includes special security
requirements
Provides direct access by
third parties
Special User training
facilities are required
1
T11
T12
T13
1
1
1
Technical Complexity Factor - TCF
4/8/2015
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/8/2015
Use Case Point Estimation
12
Environment
Factor
Description
Environment
Complexity Factor
- ECF
Weight
F1
Familarity with LifeCycle model used
1.5
F2
Application domain
experience
0.5
F3
Experience with
development
methodologies used
F4
Analyst capability
F5
Team motivation
Stability of
requirements
F6
F7
F8
Use of part-time team
members
Use of difficult
programming
language
1
0.5
1
2
-1
•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
-1
4/8/2015
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/8/2015
Use Case Point Estimation
14

Sales scenario
Case Study
4/8/2015
15
Component Manipulation Scenario
4/8/2015
16
PC Manipulation Scenario
4/8/2015
17
Use Case Actors
Use Case Weights
Actor
Type
Number
Wei
ght
R
Simple
0
1
0
Average
Purchase Department
2
2
Average
Warehouse
2
2
Complex
Sales Representative
3
Warehouse Employee
Use
Case
Types
Num
.
Weigh
t
R
Simple
25
5
12
5
3
Average
0
10
0
3
3
Complex
0
15
0
PD Employee
3
3
Workhouse Employee
3
3
Total
UUCW
Warehouse Employee
3
3
Total UAW
12
5
1
9
Results
4/8/2015
Use Case Point Estimation
18
ID
1
T1
Description
Distributed
System
T2
Wei
ght
Rat
ing
Val
ue
2
4
8
Performance
1
3
3
T3
End User
Efficiency
1
3
3
T4
Complex Internal
Processing
1
1
1
T5
Reusability
1
3
3
T6
Installability
Total Technical
Factor
0.5
4
2
Explanation
because the system is distributed across
many departments.
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
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
20
Technical Complexity Factor - TCF
4/8/2015
Use Case Point Estimation
19
ID
Description
TTF (previous
slide)
T7
Usability
T8
T9
Weight
Rating
Value
20
Explanation
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.
0.5
4
2
Portability
2
2
4
Modifiability
1
4
4
1
4
4
1
1
security is not a major concern as the
1 data is not critical as mentioned before.
1
0
0 no access to third parties
1
0
0 irrelevant
T10 Concurrency
Includes special
security
T11 requirements
Provides direct
access by third
T12 parties
Special User
training
facilities
T13 are required
Total
Technical
Factor
35
4/8/2015
Use Case Point Estimation
20
ID
Description
Weight
Rating
F1
Familiarity with LifeCycle model used
1.5
3
F2
Application domain
experience
0.5
3
F3
F4
F5
Experience with
develompment
methodologies used
Analyst capability
Team motivation
1
0.5
1
4
3
3
F6
Stability of
requirements
2
4
F7
Use of part-time team
members
-1
0
Use of difficult
programming
language
-1
0
F8
Environmental
Complexity
Factors
Explanation
Value
Total Environmental
Factor
making
the
assumption that we
don’t know so keeping
4.5 to average value.
the
application
belongs to strategic
domain
and
the
organisation has little
1.5 experience in it.
we assume that we
have experiece in it
and use cases will
4 help us.
1.5
3
we
expect
the
requirements not to
8 change more often
wpart
time
team
members are not part
0 of the plan
PL
will
be
in
agreement
with
current standards and
application does not
require
complex
0 language
22.5
4/8/2015
Use Case Point Estimation
21
Factors

Technical Complexity Factor
TCF = 0.6 + (0.01 x Total
Technical Factors)
 TCF = 0.6 + (0.01 x 35)
 TCF = 0.95


Environmental Complexity
Factor
ECF = 1.4 + (-0.03 x Total
Environmental Factors)
 ECF = 1.4 + (-0.03 x 22.5)
 ECF = 0.725

Estimate

Unadjusted Use Case Points
UUCP = UAW + UUCW
 UUCP = 19 + 125
 UUCP = 144

Use Case Points
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/8/2015
Use Case Point Estimation
22

Understandability
◦ Easy to learn and
quick to apply.
◦ Versatile and
extensible for
different flavors of
development and
testing projects.

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.
Positives
4/8/2015
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/8/2015
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/8/2015
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/8/2015
Use Case Point Estimation
26
Determi
ne Actor
Weights
Support
Determi
ne Use
Case
Weights
Adjust
for
Technical
Factors
Adjust
for
Environ
mental
Factors
Experience
Base
Adjusted
Use
Case
Points
Analyze
Package
4/8/2015
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/8/2015
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
Estimation.Koloski
References
4/8/2015
Use Case Point Estimation
29
Questions.
4/8/2015
Use Case Point Estimation
30