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
Factor | Technical Factors | Weight | Description |
---|
T1 | Distributed system | 2.0 | The system distributed architecture or centralized architecture. |
T2 | Response adjectives | 1.0 | The response time is one of the important criteria. |
T3 | End-user efficiency | 1.0 | The end-user efficiency. |
T4 | Complex processing | 1.0 | The business process is very complex. |
T5 | Reusable code | 1.0 | The project maintains high reusability. The design is complex. |
T6 | Easy to install | 0.5 | The project requires simple installation. |
T7 | Easy to use | 0.5 | User-friendly is one of the important criteria. |
T8 | Portable | 2.0 | The project requires cross-platform implementation. |
T9 | Easy to change | 1.0 | The project is highly customizable in the future. The architectural design is complex. |
T10 | Concurrent | 1.0 | The project has a large numbers of users working with locking support. The architecture increases the project complexity. |
T11 | Security features | 1.0 | The project has heavy security. |
T12 | Access for third parties | 1.0 | The project is dependent on the third party’s control. Studying and understanding the third party is required. |
T13 | Special training required | 1.0 | The application is so complex for the user that training must be provided. |
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
Factor | Environmental Factors | Weight | Description |
---|
E1 | Familiar with RUP | 1.5 | Staff in the project are familiar with domain and technical details of the project. |
E2 | Application experience | 0.5 | The application experience level. |
E3 | Object-oriented experience | 1.0 | Staff in the project have basic knowledge of the OOP concept. The project is implemented on the object oriented design. |
E4 | Lead analyst capability | 0.5 | The analyst who is leading the project has enough domain knowledge. |
E5 | Motivation | 1.0 | The project motivates staff to work including how the software industry is going on. |
E6 | Stable requirements | 2.0 | The requirements are clear, stable, and unlikely to change in the future. |
E7 | Part-time workers | -1.0 | Part-time staff are working on the project. |
E8 | Difficult programming language | -1.0 | Complexity of a programming language. |
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
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