Maturity Levels
a) SEI
'Software Engineering Institute' at Carnegie-Mellon University; initiated
by the U.S. Defense Department to help improve software development processes.
b) CMM
'Capability Maturity Model', now
called the CMMI ('Capability
Maturity Model Integration'), developed by the SEI. It's a model of 5 levels of
process 'maturity' that determine effectiveness in delivering quality software.
It is geared to large organizations such as large U.S. Defense Department
contractors. However, many of the QA processes involved are appropriate to any
organization, and if reasonably applied can be helpful. Organizations can
receive CMMI ratings by undergoing assessments by qualified auditors.
Level
1 - characterized by chaos, periodic panics, and heroic efforts required by
individuals to successfully complete projects. Few if any processes in
place; successes may not be repeatable.
Level 2 - software project
tracking, requirements management, realistic planning, and configuration
management processes are in place; successful practices can be repeated.
Level
3 - standard software development and maintenance processes are
integrated throughout an organization; a Software Engineering Process Group is
is in place to oversee. Software processes, and training programs are used
to
ensure understanding and compliance.
Level 4 - metrics are used to
track productivity, processes, and products. Project performance is
predictable, and quality is consistently
high.
Level 5 - the focus is on continuous process improvement. The
impact of new processes and technologies can be predicted and effectively
implemented when required.
c) ISO
'International Organization for
Standardization' - The ISO 9001:2008 standard (which provides some
clarifications of the previous standard 9001:2000) concerns quality systems
that are assessed by outside auditors, and it applies to many kinds of
production and manufacturing organizations, not just software. It covers
documentation, design, development, production, testing, installation,
servicing, and other processes. The full set of standards consists of: (a)
Q9001-2008 - Quality Management Systems: Requirements; (b) Q9000-2000 - Quality
Management Systems: Fundamentals and Vocabulary; (c)Q9004-2000 - Quality
Management Systems: Guidelines for Performance Improvements. To be ISO 9001
certified, a third-party auditor assesses an organization, and certification is
typically good for about 3 years, after which a complete reassessment is
required. Note that ISO certification does not necessarily indicate quality products
- it indicates only that documented processes are followed.
ISO 9126 is a standard for the evaluation of software quality and defines
six high level quality characteristics that can be used in software evaluation.
It includes functionality, reliability, usability, efficiency, maintainability,
and portability.
d) IEEE
'Institute of Electrical and
Electronics Engineers' - among other things, creates standards such as 'IEEE
Standard for Software Test Documentation' (IEEE/ANSI Standard 829), 'IEEE Standard
of Software Unit Testing (IEEE/ANSI Standard 1008), 'IEEE Standard for Software
Quality Assurance Plans' (IEEE/ANSI Standard 730), and others.
e) ANSI
'American National Standards
Institute', the primary industrial standards body in the U.S.; publishes some
software-related standards in conjunction with the IEEE and ASQ (American
Society for Quality).
Other software development/IT management process assessment methods besides
CMMI and ISO 9000 include SPICE, Trillium, TickIT, Bootstrap, ITIL, MOF, and
CobiT.
No comments:
Post a Comment