Software Quality
Engineering
Ch. # 7: Integrating quality activities in the
project life cycle
7.1 Classic and other software development
methodologies
Four models of the software development process are discussed in this
section:
• The Software Development Life Cycle (SDLC) model
• The prototyping model
• The spiral model
• The object-oriented model.
7.1.1 The software development life cycle (SDLC)
model
• The classic Software Development Life Cycle (SDLC) model is a linear
sequential model that begins with requirements definition and ends with
regular system operation and maintenance.
7.1.2 The prototyping model
• When applying the prototyping methodology, future users of the system are
required to comment on the various versions of the software prototypes
prepared by the developers.
• Prototyping as a software development methodology has been found to be
efficient and effective mainly for small- to medium-sized software
development projects.
7.1.3 The spiral model
software development is perceived to be an iterative process; at each iteration,
the following activities are performed:
• Planning
• Risk analysis and resolution
• Engineering activities according to the stage of the project: design, coding,
testing, installation and release
• Customer evaluation, including comments, changes and additional
requirements, etc.
7.1.4 The object-oriented model
• The object-oriented model differs from the other models by its intensive
reuse of software components.
• Economy – The cost of integrating a reusable software component is much
lower than the cost of developing new components.
Continue…
• Improved quality – Used software components are expected to contain
considerably fewer defects than newly developed software components due
to detection of faults by former users.
• Shorter development time – The integration of reusable software
components reduces scheduling pressures.
7.3 Verification, validation and qualification
• “Verification – The process of evaluating a system or component to deter
mine whether the products of a given development phase satisfy the
conditions imposed at the start of that phase.”
Continue…
• “Validation – The process of evaluating a system or component during or at
the end of the development process to determine whether it satisfies
specified requirements.”
• “Qualification – The process used to determine whether a system or
component is suitable for operational use.”