Project Estimation
November 22, 2009 Leave a Comment
Estimate project & Functional points.
- We need to first understand first EI, EQ, EO, ILF, EIF which are main factors deriving the functional points.
- External Input (EI) - Used in understanding fields and input screens for a module. An elementary process in which data crosses the boundary from outside to inside. This data may come from a data input screen or another application. The data may be used to maintain one or more internal logical files. The data can be either control information or business information. If thedata is control information it does not have to update an internal logical file.
- External Output (E0) – Used in searches result page, search page
- External Query / External Inquiry (EQ) – Used in Reports, combo boxes , (Drop down boxes). An elementary process with both input and output components that result in data retrieval from one or more internal logical files and external interface files.
- Inter Logical Files (ILF) – Used in Table creation, table aleration. An user identifiable group of logically related data that resides entirely within the applications boundary and is maintained through external inputs.
- External Interface Files (EIF) used in WEBSERVICE, EXTERNAL THIRD PARTY SYSTEMS. An user identifiable group of logically related data that is used for reference purposes only. The data resides entirely outside the application and is maintained by another application. The external interface file is an internal logical file for another application.
- After understanding, we need to fill these parameters.
| Function Description | EI | EO | EQ | ILF | EIF | |||||||||||
| Module | L | A | H | L | A | H | L | A | H | L | A | H | L | A | H | |
| Rights and Workflow | Module 1 | 2 | ||||||||||||||
| Right Combinations | Module 1 | 4 | ||||||||||||||
| Manage Custom Field Pages | Module 1 | 1 | ||||||||||||||
| Property Window | Module 2 | 1 | 1 | 0 | ||||||||||||
By filling these parameters we will get the result – Functions Summary
| Functions Summary | ||||
| Low | Avg. | High | Total | |
| External Input | 7 | 0 | 0 | 7 |
| External Output | 2 | 0 | 0 | 2 |
| External Queries | 1 | 0 | 0 | 1 |
| Internal Logical Files | 0 | 0 | 0 | 0 |
| External Interface Files | 0 | 0 | 0 | 0 |
| Total | 10 | 0 | 0 | 10 |
| Unadjusted Function Points | 32 | |||
| Overall Proc.Complexity (DI) | 44 | |||
| Value Adjustment Factor | 1.09 | |||
| Adjusted Function Points | 34.88 | |||
A question comes in mind, how unadjusted function points are showing as 32 where as total is 10. The reason is EI, EQ, EO, ILF, EIF all have a standard rating for Low,Avg,High. For e.g. by filling 1 in EI, the unadjusted function points are added by 2 but similarly when filling 1 in EQ, it adds 3. So Unadjusted Function Points are calculated now. Now find out Overall Proc.Complexity (DI) by using following General System Characteristics (GSCs)
2. To calculate General System Characteristics (GSCs) put RATING on 0-5 based on comments as a standard process, see the excel sheet to understand how to put degrees. It will give us the Adjusted Function Points based on ratings and total degree of influence
| Characteristic | Degree of Influence | ||
| 1. Data Communications | 3 | ||
| 2. Distributed Functions | 3 | ||
| 3. Performance | 2 | ||
| 4. Heavily Used Configuration | 4 | ||
| 5. Transaction Rate | 0 | ||
| 6. On-line Data Entry | 4 | ||
| 7. End-user Efficiency | 3 | ||
| 8. On-Line Update | 0 | ||
| 9. Complex Processing | 3 | ||
| 10. Reusability | 2 | ||
| 11. Installation Ease | 2 | ||
| 12. Operational Ease | 2 | ||
| 13. Multiple Sites | 3 | ||
| 14. Facilitate Change | 4 | ||
| Total Degree of Influence | 44 | ||
3) We need to calculate Efforts in Person Hours and Months based on technology and Productivity in Hours. The table of technologies is a standard sheet. For example see table
| Technologies/ Tools/ Languages | |||||||||
| Effort Estimation | Ansi COBOL-85 | 16 | |||||||
| Adjusted Function Points | 281.22 | C++ | 10.6 | ||||||
| Efforts in Person Hours | 3374.64 | CRYSTAL REPORTS | 8 | ||||||
| Efforts in Person Months | 21.09 | FORTRAN | 16 | ||||||
| Efforts for Contingency | 4.22 | FOCUS | 8 | ||||||
| Total SDLC Effort | 25.31 | INFORMIX | 8 | ||||||
| JAVA | 10.6 | ||||||||
| * In case of Internet Technology the effort will not be picked up from this sheet. The effort will be picked up from this sheet only in the case of Non-Internet technology. | ORACLE | 8 | |||||||
| DEVELOPER 2000 | 7.3 | ||||||||
| PERL | 8 | ||||||||
| POWERBUILDER | 6.6 | ||||||||
| PRO C | 8 | ||||||||
| SQL | 5 | ||||||||
| SYBASE | 8 | ||||||||
| VISUAL BASIC | 8.5 | ||||||||
| VISUAL C++ | 9.5 | ||||||||
| INGRESS | 8 | ||||||||
4) We need to multiply 281.22 * 10.6 (JAVA) and we need to calculate 20% of “Efforts in Person Months”. We need to put also Productivity in Hours per FP based on that the calculation will be generated
| Productivity in Hours per FP | 10 |
| Hours Per Month | 160 |
| Contingency(%age) | 20 |