You are on page 1of 4

Weighting Actors

For each actor, determine whether it is simple,


average or complex.
Estimating Work With Use Cases • Simple Actor – represents another system with a defined
application programming interface.

• Average Actor – is either another system that interacts


through a protocol such as TCP/IP, or a person interacting
through a text based interface (Old ASCII terminal)

• Complex Actor – is a person interacting through a Graphical


User Interface

Weighting Actors Weighting Actors cont.


Actor Type Description Factor Count how many of each kind of actors you have. Then
Simple Program Interface 1 multiply each type by a weighting factor
Average Interactive, or protocol 2 For example, in Order-Processing system
driven interface • Customer – complex
Complex Graphical Interface 3 • Inventory System – simple
• Accounting System – simple
Actor Weighting Factors
• Customer Service Manager – average
• 2 simple * 1 = 2 • Customer rep – complex
• 2 average * 2 = 4 • Clerk – complex
• 3 complex * 3 = 9 • Shipping Company – average

Total actor weight for order-processing 2 + 4 + 9 = 15

Weighting Use Cases Weighting Use Cases cont.


For each use case determine whether it is Use Case Type Description Factor
Simple 3 or fewer transactions 5
simple, average or complex.
Average 4 to 7 transactions 10

Basis of this decision is the number of Complex More than 7 transactions 15


Transaction-Based Weighting Factors
transactions in a use case, including
secondary scenarios. Use Case Type Description Factor
• Transaction – is an atomic set of activities, which is Simple Fewer than 5 analysis classes 5
either performed entirely or not at all.
Average 5 to 10 analysis classes 10
Complex More than 10 analysis classes 15

Analysis Class-Based Weighting Factors

1
Weighting Use Cases cont. Weighting Use Cases cont.
Another mechanism of measuring use-case Count how many of each kind of use case you have.
Then multiply each type by a weighting factor.
complexity is based upon analysis classes.
For example, in Order-Processing system:
• Place order – average
Determine which ones are used to implement • Return product – average
a particular use case. • Cancel order – simple
• Get status on order – simple
Consider only analysis classes at this time, • Send catalog – simple
• Run sales report – simple
not classes that we will add during design. • Register complaint – simple
• Fill and Ship order – average
• Back-ordered items received - average

Weighting Use Cases Weighting Technical Factors


• Using either table, we find the following: • By considering complexity of the project,
– 5 simple * 5 = 25 calculate the technical complexity factor (TCF).
– 4 average * 10 = 40
– 0 complex * 15 = 0 • Rating 0 means the factor is irrelevant.
– Total use case weight 25 + 40 + 0 = 65 • Rating 5 means it is essential.
• Determine the UUCP (unadjusted use case points).
• UUCP will be adjusted to reflects project complexity &
experience of the people on the project
Total actor weight + Total use case weight = UCCP
15 + 65 = 80 UUCP

Weighting Technical Factors cont. Weighting Technical Factors cont.


Technical Factors for System and Weights National Widgets Numbers
Factor Number Factor Description weight Factor Weight Assigned Extended Reason
T1 Distributed System 2 Number Value Value
T2 Response or throughput performance objectives 1 T1 2 0 0 Not planning on distributing first release
T3 End-user efficiency (online) 1 T2 1 3 3 Speed is likely limited by human input
T4 Complex internal processing 1 T3 1 5 5 Needs to be efficient
T5 Code must be reusable 1 T4 1 1 1 Easy processing
T6 Easy to install 0.5 T5 1 0 0 Nice, but later
T7 Easy to use 0.5 T6 0.5 5 2.5 Needs to be easy for non-technical
people
T8 Portable 2
T7 0.5 5 2.5 Needs to be easy for non-technical
T9 Easy to change 1
people
T10 Concurrent 1
T8 2 0 0 Not at this time
T11 Includes special security features 1
T9 1 3 3 Sure
T12 Provides direct access for third parties 1
T10 1 5 5 Not exactly, but it is multi-user
T13 Special user training facilities are required 1
T11 1 3 3 Simple security
T12 1 5 5 Customers
T13 1 0 0 So easy, we don’t need training

2
Weighting Technical Factors cont. Weighting Environmental Factors
• Calculate the T factor • By considering the experience level of the people,
calculate the Environmental factor (EF).
TFactor = ∑(Tlevel) * (Weighting Factor)
• For factors F1 through F4
=0+3+5+1+0+2.5+2.5+0+3+5+3+5+0 – 0 means no experience in the subject
= 30 – 5 means expert

• Now, to calculate TCF • For factor F5


– 0 means no motivation for the project
TCF = 0.6 + (0.01 * TFactor)
– 5 means high motivation
= 0.6 + (0.01 * 30)
= 0.9

Weighting Environmental Weighting Environmental


Factors cont… Factors cont.
• For factor F6
Environmental Factors for Team and Weight
– 0 means extremely unstable requirement
– 5 means unchanging requirement Factor Number Factor Description weight
F1 Familiar with RUP 1.5
• For factor F7
F2 Application experience 0.5
– 0 means no part time technical staff F3 Object Oriented experience 1
– 5 means all part time technical staff F4 Lead analyst capability 0.5

• For factor F8 F5 Motivation 1


F6 Stable requirements 2
– 0 means easy to use programming language
F7 Part time workers -1
– 5 means very difficult programming language F8 Difficult programming language -1

Weighting Environmental
Weighting Environmental Factors
National Widgets Ratings
Factors cont.
Factor Weight Assigned Extended Reason • Calculate the E factor
Number Value Value
F1 1.5 1 1.5 Most of team unfamiliar EFactor = ∑(Flevel) * (Weighting Factor)
F2 0.5 1 0.5 Most of team not programmers
F3 1 1 1 Most of team not programmers
=1.5+.5+1+2.5+5+10+0+-2
F4 0.5 5 2.5 Gus is really good
= 18.5
F5 1 5 5 Team is really eager
F6 2 5 10 We don’t expect changes • Now, to calculate EF
F7 -1 0 0 No part timers
F8 -1 2 -2 We are looking at Visual Basic
EF = 1.4 + (-0.03 * EFactor)
= 1.4 + (-0.03 * 18.5)
= 0.845

3
Use Case Points Project Estimates
• Finally, calculate use case points (UCP). • Count how many of F1 through F6 are below 3
and how many of F7 & F8 are above 3.
UCP = UUCP * TCF * EF • If total is 2 or less – use 20 man hours/UCP
= 80 * 0.9 * 0.845 • If total is 3 or 4 – use 28 man hours/UCP
= 60.84 • If total is 5 or more – risk of failure is quite high

• Because we have 3 negative factors. So we


multiply by 28 man hours per UCP to get
1703.52 man hours.

You might also like