The basic goal of effort estimation is to generate reasonable estimates that will work most of the time. The following are key lessons from the estimation and scheduling approaches used at Infosys:
Use past data to estimate. Prefer data from similar projects to general process capability data. Use a model to estimate, but allow flexibility for adjusting estimates to accommodate project-specific factors.
Employ different models in different situations. Bottom-up estimation is effective when project details are known. Use the top-down approach if you can estimate the size and productivity, and the use case approach when using a use-case-based development approach.
Table 4.9. Portion of the Detailed Schedule for the ACIC Project | |||||||||
Module | Program | Activity Code | Task | Duration (days) | Effort (days) | Start Date | End Date | % Complete | Resource Initials |
|
| PRS | Requirements | 8.89 days | 1.33 days | 7/10/00 8:00 | 7/21/00 17:00 | 100% | BB, BJ |
|
| PDDRV | Design review | 1 day | 0.9 days | 7/11/00 8:00 | 7/12/00 9:00 | 100% | BB, BJ, SB |
|
| PDDRW | Rework after design review | 1 day | 0.8 days | 7/12/00 8:00 | 7/13/00 9:00 | 100% | BJ, SB |
History | UC17 | PCD | View history of party details, UC17 | 2.67 days | 1.87 days | 7/10/00 8:00 | 7/12/00 17:00 | 100% | HP |
History | UC7 | PCDRV | Code walkthrough, UC17 | 0.89 days | 0.27 days | 7/14/00 8:00 | 7/14/00 17:00 | 100% | BJ, DD |
History | UC19 | PCDRV | Code walkthrough, UC19 | 0.89 days | 0.27 days | 7/14/00 8:00 | 7/14/00 17:00 | 100% | BJ, DD |
|
| PCDRW | Rework after code walkthrough | 0.89 days | 2.49 days | 7/17/00 8:00 | 7/17/00 17:00 | 100% | DD, SB, HP, BJ |
|
| PUTRW | Rework after testing | 0.89 days | 0.71 days | 7/18/00 8:00 | 7/18/00 17:00 | 100% | BJ, SB, DD, HP |
History | UC17 | PUT | Test, UC 17 | 0.89 days | 0.62 days | 7/18/00 8:00 | 7/18/00 17:00 | 100% | SB |
History | UC19 | PUT | Test, UC 19 | 0.89 days | 0.62 days | 7/18/00 8:00 | 7/18/00 17:00 | 100% | HP |
Configuration |
| PCM | Reconciliation | 0.89 days | 2.49 days | 7/19/00 8:00 | 7/19/00 17:00 | 100% | BJ, DD, SB, HP |
Management |
| PPMPT | Scheduling and tracking | 7.11 days | 2.13 days | 7/10/00 8:00 | 7/19/00 17:00 | 100% | BB |
Quality |
| PPMPT | Milestone analysis | 0.89 days | 0.62 days | 7/19/00 8:00 | 7/19/00 17:00 | 100% | BB |
For the overall schedule and the high-level milestones, use the existing flexibility to meet proposed dates. Once the overall schedule and milestones are fixed, determine the resource requirement for each phase from the phase-wise effort estimate.
Detailed scheduling is a dynamic task; take into account people issues while assigning tasks. It is not necessary to completely refine the schedule at the start. You can develop details for the tasks in the overall schedule as the need arises.
The detailed schedule forms the planned activity list for the project. Capture all activities planned in the project in this document and use it later to track activities.
From the CMM standpoint, a proper effort and schedule estimation method is a requirement for the Software Project Planning KPA at level 2. At level 4, the use of past data for estimation is expected to increase, and the goals of the Quantitative Process Management KPA cannot be satisfied unless a good estimation procedure is in place. The Integrated Software Management KPA at level 3 also assumes that good estimation methods are available to projects for planning. The requirements related to estimation in these KPAs are satisfied by methods discussed in this chapter.