Software Engineering
Software Engineering
What is CMM?
● Repeatable
● Defined
● Managed
● Optimizing
Level 1: Initial
● Initial : The software process is characterized
as ad hoc, and occasionally even chaotic. Few
processes are defined, and success depends
on individual effort.
● At this level, frequently have difficulty making
commitments that the staff can meet with an orderly
process
● Products developed are often over budget and
schedule
● Wide variations in cost, schedule, functionality and
quality targets
● Capability is a characteristic of the individuals, not
of the organization
Level 2: Repeatable
● Basic process management processes are
established to track cost, schedule, and
functionality. The necessary process
discipline is in place to repeat earlier
successes on projects with similar
applications.
● Realistic project commitments based on results
observed on previous projects
● Software project standards are defined and
faithfully followed
● Processes may differ between projects
● Process is disciplined
● earlier successes can be repeated
Level 3: Defined
● cost
● quality of software products
Consistent measurement provide
data for:
● Quantitatively expressing requirements,
goals, and acceptance criteria
● Monitoring progress and anticipating
problems
● Quantifying tradeoffs used in allocating
resources
● Predicting schedule, cost and quality
Measurements
● Historical
● Plan
● Actual
● Projections
SEI Core Measures
Examples of measurements for
size of work products
● Estimated number of requirements
● Actual number of requirements
● Estimated source lines of code (SLOC)
● Actual SLOC
● Estimated number of test cases
● Actual number of test cases
Example of measurements of
effort
● Estimated man-hours to design/code a
given module
● Actual man-hours expended for
designing/coding the module
● Estimated number of hours to run builds
for a given release
● Actual number of hours spent running
builds for the release
Examples of measurements of
quality of the work product
● Number of issues raised at
requirements inspection
● Number of requirements issues open
● Number of requirements issues closed
● Number of issues raised during code
inspection
● Number of defects opened during unit
testing
Examples of measurements of
quality of the work product
● Number of defects opened during
system testing
● Number of defects opened during UAT
● Number of defects still open
● Number of defects closed
● Defect age
Examples of measurements of
quality of the work product
● Total number of build failures
● Total number of defects fixed for a given
release
● Total number of defects verified and
accepted
● Total number of defects verified and
rejected