1.3 The FoundationProject Measurement
Given measurement's strong relationship to software organizational performance, the key challenge is to implement it in a manner that has the most positive impact on each of the projects within the organization. The foundation of any organizational software measurement program is established at the project level. An organization's performance is essentially based on the success of its projects. To be successful, project and technical managers must make critical decisions related to project resources, schedule, and functional capability on a continual basis. These decisions must result in optimization of the business and technical performance of the software product within organizational and market-driven constraints. There is little room for project rework and restarts.
The software project manager must integrate all of the diverse aspects of software to be successful. Decisions are made daily, if not hourly, on how the technical product will be developed and managed, how resources will be allocated, and which issues will be addressed in what priority. The more effective these decisions are, the more successful the project. The more objective the available data and information, the better the decisions. The project manager usually must guide the project toward planned project objectives, while operating within established constraints.
The project environment is generally one of multiple and diverse cost, schedule, and technical considerations. Experience shows that even in relatively small information technology organizations, each project is unique in terms of domain application, implemented technical processes, operational interdependencies with other systems, and various constraints. Add in the usual and sometimes constant technical and management changes, and each project emerges with distinct process and product characteristics.
The organizational measurement approach must be adaptable to effectively address the unique information needs and characteristics of each project. Practical Software Measurement focuses on project-level measurement and shows how measurement can be tailored to satisfy the needs of each project.
Although the project level is the initial level for implementing measurement within an organization, there are valid information needs at higher organizational management levels. In almost all cases, objective organizational-level information is derived from the projects. You need good project data to analyze organizational performance. Organizational software measurement can be viewed as measurement across many projects, validly combining the measurement data generated by each project and using different analysis techniques to satisfy different information needs. For example, managers at many different organizational levels may be concerned with how long it takes to develop and field a given software product. The project manager is concerned with the time it takes to implement product capability and reliability and with developing the software product within cost objectives. The marketing or business manager may be concerned with the time it takes to market a new capability and the potential impact of a possible delay on market share. The process manager may be concerned with an overall increase or decrease of the average software-development time line for all of the organization's products and the related impacts from organizational process changes. In all cases, the key variable is the availability of quality data at the project level. In fact, most corporate measurement activities take place at the project level.