The Technical and Environmental factors are associated with the weight of the project. You have to assign a value to each factor. The value assigned to a particular factor depends on the degree of influence a factor has. The relevance values range from 0 to 5, where 0 means no influence, 3 is the average level of influence, and 5 means a strong influence.

Technical Factors

The table below lists Technical Factors

FactorTechnical
Factors
WeightDescription
T1Distributed
system
2.0The system distributed
architecture or centralized
architecture.
T2Response
adjectives
1.0The response time is one
of the important criteria.
T3End-user
efficiency
1.0The end-user efficiency.
T4Complex
processing
1.0The business process
is very complex.
T5Reusable
code
1.0The project maintains
high reusability. The
design is complex.
T6Easy to
install
0.5The project requires
simple installation.
T7Easy to
use
0.5User-friendly is one of
the important criteria.
T8Portable2.0The project requires
cross-platform implementation.
T9Easy to
change
1.0The project is highly
customizable in the future.
The architectural design is
complex.
T10Concurrent1.0The project has a large
numbers of users working
with locking support. The
architecture increases the
project complexity.
T11Security
features
1.0The project has heavy security.
T12Access for
third parties
1.0The project is dependent on
the third party’s control.
Studying and understanding
the third party is required.
T13Special training
required
1.0The application is so complex
for the user that training must
be provided.

 

Use Case Driven Model Data E3
Figure 2: Use Case Driven Model Data E3.

Technical Factor Value

Technical Factor Value (TFactor) is obtained with the multiplication of the value of each Technical factor by its weight.

TFactor = value x weight

Technical Complexity Factor

Technical Complexity Factor (TCF) is obtained with the addition of 0.6 to the sum of TFactor multiplied by 0.01.

TCF = 0.6 + (0.01 * TFactor)

Environmental Factors

The Table below lists Environmental Factors

FactorEnvironmental
Factors
WeightDescription
E1Familiar
with RUP
1.5Staff in the project are familiar
with domain and technical
details of the project.
E2Application
experience
0.5The application experience level.
E3Object-oriented
experience
1.0Staff in the project have basic
knowledge of the OOP concept.
The project is implemented
on the object oriented design.
E4Lead analyst
capability
0.5The analyst who is leading the
project has enough domain
knowledge.
E5Motivation1.0The project motivates staff to work
including how the software industry
is going on.
E6Stable
requirements
2.0The requirements are clear,
stable, and unlikely to change
in the future.
E7Part-time
workers
-1.0Part-time staff are working on
the project.
E8Difficult
programming
language
-1.0Complexity of a programming
language.

Figure 3: Use Case Driven Model Data E3.

Environmental Factor Value

Environmental Factor Value (EFactor) is obtained with the multiplication of the value of each Environmental factor by its weight.

Environmental Factor

Environmental Factor (EF) is obtained with the addition of 1.4 to the sum of EFactor multiplied by -0.03.

EF = 1.4 + (-0.03 * EFactor)

Project Estimation

Variables of Use Case Project Estimation
Figure 3: Variables of Use Case Project Estimation.

Adjusted Use Case Points

The Adjusted Use Case Point (UCP) is determined with the multiplication of Unadjusted Use Case Point (UUCP) by Technical Complexity Factor (TCF) and Environmental Factor (EF).

UCP = UUCP * TCF * EF

Estimated Effort in Person Hours

The person hours multiplier or X hours is a ratio of the number of man hours (PHM) per Use Case Point based on past projects. If no historical data has been collected, industry experts suggest using a figure between 15 and 30. A typical value is 20.

X hours = UCP * PHM

Estimated Effort in Scheduled Time

Divide X hours by the number of developers working on the project and working hours per day to determine Estimated Effort in Scheduled Time or Y days. This means that with nDev developers, it would take Y days to complete the project.

Y days = X / nDev / hay

Estimated Effort in Working Days

Divide Y days by working days per month to get the estimated effort in working days or Z months. This means that with nDev developers, it would take Z month to complete the project.

Z months = Y / d Month