0% found this document useful (0 votes)
14 views

Lecture 4

The document discusses the components of a software quality assurance (SQA) system, which can be classified into six classes: pre-project components, software project life cycle components, infrastructure components for error prevention and improvement, management SQA components, SQA standards system certification and assessment components, and organizing for SQA. It describes each of these component classes and their objectives in the SQA process.

Uploaded by

Huda Ghazi
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views

Lecture 4

The document discusses the components of a software quality assurance (SQA) system, which can be classified into six classes: pre-project components, software project life cycle components, infrastructure components for error prevention and improvement, management SQA components, SQA standards system certification and assessment components, and organizing for SQA. It describes each of these component classes and their objectives in the SQA process.

Uploaded by

Huda Ghazi
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 48

SOFTWARE MAINTENACE AND

QUALITY ASSURANCE
LECTURE 4: COMPONENTS OF THE SQA
SYSTEM

Agreen AlBaqal
Software Engineering
Spring Semester 2024
Topics
§ The SQA system
§ Pre-project component
§ Software project life cycle components
§ Infrastructure components for error prevention and
improvement
§ Management SOA components
§ SOA standards, system certification, and assessment
components
Topics
§ Organizing for SQA
§ Considerations guiding construction of an
organization's SQA system
The SQA system-an SQA architecure

Ø Software is…
High complexity.
Invisible product.
Hard to search and fix defect(bug).

Ø SQAsystem components can be


classified into sixclasses:
The SQA system SQAsystemcomponentscanbe
classified into six classes
1. Pre-Project components

resources required
2. Components of project life cycle
activities assessment
–Reviews
–Expert opinions
–Software testing.

Operation
maintenance
3. Components of infrastructure
error prevention and imporivement

to eliminate or at least
reduce the rate of errors
4. Components of software quality
management
prevent or minimize
schedule and
budget failuresand their
outcomes.
5. Components of standardization
certification, and SQA ystem assessment
The main objectives of (5.)
standards
Ø utilization of international
professional knowledge.

Ø improvement of coordination of the


organizational quality systems with
other organizations.

Ø assessment of the achievements of


quality systems according to a common
scale.
6-
Organizing for SQA – the human
components
initiate and support
the implementation
of SQA components,
detect deviations
fromSQA
procedures and
methodology, and
suggest
improvements.
The SQA system
Pre-Project components-contract
review
Ø Contract- the development unit is committed to an
agreed-upon functional specification, budget and schedule.

Ø examination of…
§ the project proposal draft.
§ the contract drafts.
Contract review activities (1/2)

Ø Clarification of the customer’s requirements

Ø Review of the project’s schedule and


resource requirement estimates

Ø Evaluation of the professional staff’s


capacity to carry out the proposed project
Contract review activies (2/2)

Ø Evaluation of the customer’s capacity to


fulfill his obligations

Ø Evaluation of development risks.


Pre project components
-Development and Quality plans
a plan is prepared of the project (“development
plan”) and its integrated quality assurance
activities (“quality plan”).These plans include
additional details and needed revisions based
on prior plans that provided the basis for the
current proposal andcontract.

It is quite common for several months to pass


between the tender submission and the
signing of the contract.
The main issues treated in the
project development plan are:
Ø Schedules
Ø Required manpower and hardware resources
Ø Risk evaluations
Ø Organizational issues:team members,
subcontractors andpartnerships
Ø Project methodology, development
tools, etc.
Ø Software reuseplans.
The main issues treated in the
project development plan are:
Ø Quality goals, expressed in the
appropriate measurable terms

Ø Criteria for starting and ending each


project stage

Ø Lists of reviews, tests, and other


scheduled verification and validation
activities.
The SQA system
Software project life cycle components

Ø Reviews

Ø Expert opinions

Ø Software testing

Ø Software maintenance

Ø Assurance of the quality of the external


participants’ work
Reviews

Ø The design phase of the development process


produces a variety of documents. The printed
products include design reports, software test
documents, software installation plans and software
manuals,among others.
Reviews can be categorizedas

§ formal design reviews(DRs)


§ peer reviews.
Formal design reviews (DRs)

Ø The committees are composed of senior


professionals, including the project leader
and, usually, the department manager, the
chief software engineer, and heads of
other related departments.

Ø The DR report itself includes a list of


required corrections (termed “action
items”).
Formal design reviews (DRs)
Ø When a design review committee sits in order to decide
upon the continuation of the work completed so far, one
of the following options is usually open for
consideration:
§ Immediate approval of the DR document and continuation to
the next developmentphase.

§ Approval to proceed to the next development phase after all


the action items have been completed and inspected by the
committee’s representative.

§ An additional DR is required and scheduled to take place after


all the action items have been completed and inspected by the
committee’s representative.
Peer reviews

Ø Peer reviews (inspections and


walkthroughs) are directed at reviewing
short documents, chapters or parts of a
report, a coded printout of a software
module.

Ø usually, the reviewers are all peers,


not superiors, who provide
professional assistance to
colleagues.
Peer reviews

Ø The main objective of inspections and


walkthroughs is to detect as many design
and programming faults aspossible.

Ø The output is a list of detected faults and,


for inspections, also a defect summary
and statistics to be used as a database for
reviewing and improving development
methods.
Expert options

Ø Expert opinions support quality


assessment efforts by introducing
additional external capabilities into the
organization’s in-house development
process. Turning to outside experts may
be particularly useful in the following
situations:
Expert options

Ø Insufficient in-house professional


capabilities in a givenarea.

Ø In small organizations in many cases it is


difficult to find enough suitable candidates
to participate in the design review teams.

Ø In cases of major disagreement among


the organization’s
Software testing

Ø Software tests are formal SQA components


that are targeted toward review of the
actual running of the software. The tests
are based on a prepared list of test cases
that represent a variety of expected
scenarios.

Ø The test report will include a detailed list


of the faults detected and
recommendations.
Software maintenance components

Ø Software maintenance services vary in


range and are provided for extensive
periods, often several years. These services
fall into the following categories:

Ø Corrective maintenance – User’s support


services and correction of soft-ware code
and documentation failures
Software maintenance components

Ø Adaptive maintenance –Adaptation of


current software to new circumstances
and customers without changing the
basic software product.

Ø Functionality improvement maintenance–


The functional and performance related
improvement of existing software, carried
out with respect to limited issues.
Assurance of the quality of the
external perticipant’s work
Ø Subcontractors and customers frequently
join the directly contracted developers
(the “supplier”) in carrying out software
development projects.The larger and
more complex the project, the greater
the likelihood that external participants
will be required, and the larger the
proportion of work trans-mitted to them
The SQA system
Infrastructure components for error
prevention and imporvement
Ø Procedures and work instructions
Ø Templates and checklists
Ø Staff training, retraining, and
certification
Ø Preventive and correctiveactions
Ø Configuration management
Ø Documentation control.
Management SQA components
Management SQA components

Ø Project progress control(including


maintenance contract control)

Ø Software quality metrics

Ø Software quality costs.


SQA standards system certification
and assessment components
SQA standards system certification
and assessment components
Ø Quality management standards
§ SEI CMM assessmentstandard
§ ISO 9001 and ISO 9000-3standards.

Ø Project process standards


§ IEEE 1012 standard
§ ISO/IEC 12207standard.
§ ISO/IEC 29110standard
Organizing for SQA
-The human components
Organizing for SQA
-The human components
Ø Management’s role in SQA
§ The responsibilities of top management

Ø The SQAunit
§ This unit and software testers are the only parts of
the SQA organizational base that devote
themselves full-time to SQAmatters.
Organizing for SQA
-The human components

Ø SQA trustees, committeesand forums


§ SQA trustees are members of development and
maintenance teams who have a special interest in
software quality and are prepared to devote part
of their time to these issues.
Considerations guiding construction of
an organization’s SQA system
Ø Decisions regarding the organization’s
software quality management sys-tem
fall into two main categories:

1. The SQA organizational base


2. The SQAcomponents to be
implemented within the organization
and the extent of their use.
Organizational considerations

Ø The type of software development clientele.


Ø The type of software maintenance clientele.
Ø The range of products.
Ø The size ofthe organization.
Ø The degree and nature of cooperation with
other organizations carrying out related
projects.
Ø Optimization objectives.
Project and maintenance service
considerations
Ø The level of software complexity
and difficulty.

Ø The degree of staff experience with


project technology.

Ø The extent of software reuse in new


projects.
Professional staff considerations

Ø Professional qualifications.

Ø Level of acquaintance with team members.


Reference

Ø Chapter 4:DanielGalin. SOFTWAREQUALITYASSURANCEFrom


theory to implementation. Pearson Education Limited,2004.
Thanks

You might also like