Standards
The predominant contribution of standards is two fold:
Software engineering standards focus on one or both of the following:
The general trend in standards development is to focus on the process. The rationale behind this is that a robust process will produce a good products, but the converse is not necessarily true. Having good outlines for development documentation (e.g., requirements, design, test plans) does not necessarily produce a good system. The process specific standards sometimes identify content requirements for the documentation products, but no mandated specific outlines.
A major challenge inherent in the use of standards is that there is no “one size fits all” in software engineering solutions. Projects vary greatly in size, degree of difficulty of the technical challenge, aggressiveness of the schedule, size of staff, need for post-release reliability, etc. As a result, virtually all standards need to be “tailored”: a process of modifying the standards based expectations to fit a system’s specific set of needs. The tailoring can often be done for a group of systems, even of a whole organization. The tailoring (with associated options) needs to be revisited periodically to ascertain if any updates are required.