<- previous index next ->
The SEI Capability Maturity Model Integration is a process improvement
and certification program and service that a software development
organization may need or may be required to certify at a specific
level.
While I was a software engineering manager at the Westinghouse
Defense and Space Center, we were required to get level 3
SEI CMMI certification in order to bid on some DoD jobs. As
shown below this required us to define our software development
process and have a software quality assurance organization to
document that we were following the written process.
The CMMI was developed by a group of experts from industry,
government, and the Software Engineering Institute, SEI, at
Carnegie Mellon University, CMU. The maturity level certification
was based on having a managed, measurable process with the
capabilities in the following levels. An inspection team would
come and conduct interviews, observations, records inspection,
and would either certify the organization for a specific level,
or provide a list of deficiencies.
For software development:
Maturity Level 2 - named Repeatable
Configuration Management on all software products
Measurement and Analysis of the development process
Project Monitoring and Control
Project Planning with required documents
Process and Product Quality Assurance
Requirements Management with required documents
Supplier Agreement Management of any subcontracted modules
Maturity Level 3 - named Defined
Decision Analysis and Resolution of process problems
Integrated Project Management
Organizational Process Definition more than just on a project
Organizational process Focus involvement of higher management
organizational Training in the software development process
Product Integration using the process as a normal way of working
Requirements Development for every project
Risk Management having backup plans
Technical Solution rather than hiding problems
Validation part of V and V, checking specifications for correctness
Verification that the product meets the specifications
Maturity Level 4 - named Quantitatively Managed
Organizational Process Performance measured and recorded
Quantitative Project Management monitored measured and recorded
Maturity Level 5 - named Optimizing
Causal Analysis and Resolution observing and improving the process
Organizational Performance Management having many levels of
management knowledgeable about the process and
supporting process improvement.
Additional list of requirements, with much overlap,
are specified for "services" and "acquisition".
Thus, "trickle down requirements"!
Upper management support is needed and working level
professional cooperation is needed to achieve level 3 and
above. A formal quality assurance organization is required and
must be funded by projects or overhead or a combination
of both. The objective is to have the cost of implementing
the formal process be mitigated by not having high cost
disasters from failed projects and better company reputation
by delivering better quality products. The data on failed
software development projects is frightening. One study
published the results that are:
With data like this from one study, commercial software products:
32% were successful
44% had problems
24% failed completely
gets managements interest.
management support, companies organization chart
SEI CMMI is not the only game in town.
ISO 9000 series of standards
The International Standards Organization, ISO, has standards
and certifications related to software process.
There may be multiple standards organizations, sometimes
you may see ISO, IEC. International Electrotechnical Commission.
ISO, ANSI. American National Standards Institute.
Many programming language standards are ISO, ANSI standards.
www.open-std.org/jtc1/sc22/wg14/www/standards C
jtc1 ISO Joint Technical Committee One
wg14 Working Group 14 There is a working group for every language
The standard is the published standard including approved corrigendums
e.g. C language standard vs. Kernighan and Ritchie vs. gcc vs. M$.
jtc1 sc22 wg5 Fortran
jtc1 sc22 wg9 Ada
+-----------------------+ More Sayings and Signs in Lecture 26
| The Software Industry |
| Is The Problem |
+-----------------------+
The System Requirements Specification, SRS is assigned
CS447 Project Page
Your team needs to set up a way to produce this and the
following five documents. The initial templates are in
Microsoft Word format. The way you are going to store
and update your documents may be used in your SRS.
Plan on how defects will be reported, recording user,
date, time, document. This may be used in your SRS.
The SRS will specify an administrator who can set
op projects and assign users to projects. Users may
update only documents on the project to which they
are assigned. All activities must be recorded so
the project report, when asked for, will show a
history of the project activities.
Basically, plan how you are going to do the project,
then you may use that plan or a different plan in
the SRS. You may later submit revisions to the SRS
as you work the project.
Revised 12/15/13
<- previous index next ->