1.9 Measuring
The major steps involved with measuring an architecture-centric software project are summarized in Figure 1.5.
Figure 1.5 Project Measuring.
The architecture design will serve to drive the project planning to the point where a proposed software development plan can be written. From the software development plan, a number of metrics will be defined as target goals for the project. These target goals will include measures such as the development budget as calculated from the staffing plan, key milestone dates from the development schedule, size measures, and quality measures. These measures should be consistent with the overall project goals. Managing the project will involve making trade-offs among these goals, and the measures will yield insights with respect to achieving the goals. The goals and measures will likely require trade-offs among meeting the time schedule, providing desired functionality, achieving the quality of the resulting release, and the development costs.
As the software is developed, progress will be made and containing the measures tracked. An important measure for the overall project progress will be whether or not the incremental release dates are being met. After a release containing the last planned major set of features, you will likely perform a postmortem review on your project. Here you will compare the goals you set during planning with the measures tracked during development. The review will give you insights into how well the project wentsuch as whether you met your schedule, budget, quality, and functionality goalsand how you can better plan and manage your next project.