Just as periodic checks of your stocks and bonds are important to see if they are growing as hoped, so are periodic reviews of your portfolio of projects to see if they are progressing as planned. In this section, we'll look at a report you may find useful for tracking the progress of large numbers of projects in the portfolio. The report tracks the progress of projects in terms of the status of the use cases that make up each project. Status of Use CasesA type of metadata commonly associated with requirements is status. A good way to think of the status of a use case is in terms of the life cycle of a use case, progressing from conception to implementation and validation, at which time it is shipped to the customer in the form of implemented code. Table 8.4 provides typical values for tracking the status of implementation of a use case.[20]
Use casesand their cousin, the Extreme Programming (XP) storyhave a number of benefits as a basis for tracking progress in a project:
Figure D.1 in Appendix D shows an extension of the use case metadata to cover the status of use cases in your requirements management tool or source code CM system. Now let's see how to leverage use case status for tracking the progress of large numbers of projects in the portfolio. Tracking the Progress of Projects with the Status of Use CasesOne straightforward approach for tracking the progress of a project is to track the number of use cases by status type (e.g., the number in draft versus number implemented). As Wiegers (1999) has noted, tracking the number of requirements that are in discrete categories (e.g., draft versus implemented) is more realistic than trying to track, for example, percent completion of each individual requirement. Wiegers (1999) provides example run charts for tracking requirement status in this fashion.[21] But using the number of use cases has the drawback that not all use cases require the same effort to implement. For instance, if you implemented and validated all but 20% of your project's use cases that remaining 20% could well represent 80% of the remaining effort of your project.
An alternate approach is to use the sum of effort of use cases by status type; it is a more accurate indicator of project progress. Again, the work we have already done on estimating use case effort and assigning use cases to projects is just what we need. Figures 8.3 and 8.4 present Excel-based reports that are useful for tracking the progress of large numbers of projects in your project portfolio; bars remain legible with as many as 100 projects. (See Appendix D, "Reports for Tracking Progress of Projects in Portfolio" for details on how to produce a report like this.) Figure 8.3 presents the Y-axis as total effort, which is useful for comparison of the sizes of projects. Figure 8.4 presents the same data but with the Y-axis showing % of total effort; this can be useful when comparing projects with widely varying efforts. Figure 8.3. Report for tracking status of projects in the portfolio by use case status and effort (staff days).[22]
Figure 8.4. Report for tracking status of projects in the portfolio by use case status and percentage of effort.In this report, each project is shown with a single bar; if you have a very large portfolio of projects (such as more than 100), you may want to do separate reports for meaningful subsets, for example by project type (e.g., new product development versus research). Each bar provides a visual cue as to the readiness of the project to release in terms of the status of the use cases which make it up. Project 1, for example, has about 35% of its use case effort with status implemented and another 65% completely finished. Overall, Project 1 is nearly done. To the far right on the X-axis is Project 6, with a start date much later than that of Project 1. You can see that 100% of its use case effort is in draft status. Notice that each project name (X-axis) is prefixed with the start date of the project (you can use completion date if you prefer). This allows us to sort the projects with time increasing from left to right along the X-axis. This orientation along the X-axis, from earlier to later, means that, in general, we expect to see more advanced progress in projects as we scan left to right. This provides an additional sanity check on projects, allowing us to look for projects in the portfolio that don't appear to be progressing adequately. In all, the report is a good tool for getting a high level, "at-a-glance" look at the progress of large numbers of projects in your portfolio, as illustrated in Figure 8.5. Figure 8.5. Report allows "at-a-glance" review of progress of large numbers of projects in your portfolio. |