Standardizing management of software engineering projects

For a software engineering division of a company, the most important standards are those used for the management of the software engineering projects. While numerous, relevant, de jure, software engineering standards exist, national guidelines, such as the Department of Defense’s Capability Maturity Model, and corporate standards, such as the Microsoft Solutions Framework, exert a significant influence on the marketplace. A study of the existing standards shows significant similarity across them. Case studies of the use of the standards suggest that a major factor in determining the adoption of one standard over another is the environment of the adopter. A company that depends on Microsoft in important business ways is more likely to adopt the Microsoft Solutions Framework. Likewise a company that is a major customer of the Department of Defense may be inclined to use the Capability Maturity Model. The review of software engineering management standards also reveals the dearth of explicit guidance on the roles and processes to use in upper management. Financial process and audit practices influence the application and need for standards. An examination of the operation of a major manufacturing firm (referred to as Company X) shows again the challenge of managing software projects well and the remarkable success that can accrue from a systematic and standard approach across projects.