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

Chapter 2

The document discusses software quality assurance (SQA) and outlines best practices for developing and implementing an SQA plan. It describes SQA as a process that monitors all software development activities and work products to ensure they comply with defined standards. The document then provides a five-step approach to developing an SQA plan, which includes documenting the plan, obtaining management and development acceptance, planning implementation, and executing the plan. It also discusses the roles and responsibilities of an SQA group in activities like reviews, audits, and enforcing standards.

Uploaded by

Genet Gezehagn
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
123 views

Chapter 2

The document discusses software quality assurance (SQA) and outlines best practices for developing and implementing an SQA plan. It describes SQA as a process that monitors all software development activities and work products to ensure they comply with defined standards. The document then provides a five-step approach to developing an SQA plan, which includes documenting the plan, obtaining management and development acceptance, planning implementation, and executing the plan. It also discusses the roles and responsibilities of an SQA group in activities like reviews, audits, and enforcing standards.

Uploaded by

Genet Gezehagn
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 25

Chapter Two

Software Quality Assurance


Quality Assurance
 QA is the process of defining how software quality can be
achieved and how the development organization knows that
the software has the required level of quality.
 QA is a planned and systematic pattern of all actions
necessary to provide adequate confidence that an item or
product conforms to established technical requirements.
 The goal of QA is to provide management with the data
necessary to be informed about product quality and
confidence that product quality is meeting its goals.
 QA is an effective approach for producing high quality
product.
 QA is a process-oriented activity and it is oriented to bug
prevention.
2
Software Quality Assurance
 Is a process which assures that all software engineering
process, method , activities and work items are monitored
and comply against the defined standards.
 Incorporate all software development process starting from
requirement to coding until release.
 Software Quality Assurance(SQA) is an umbrella activity that
is applied throughout the software process.
 SQA encompasses-
1) A software quality assurance process
2) Specific quality assurance and quality control tasks
3) Effective software engineering practice
4) Control of all software work products
5) Software development standards
6) Measurement and reporting mechanisms
3
The Purpose of SQA
 Monitoring processes and products throughout the
software development lifecycle to ensure the quality of the
delivered product(s)
 Monitoring the processes
 Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analyses
 Monitoring the products
 Focus on the quality of product within each phase of the
SDLC
 e.g., requirements, test plan, architecture, etc.

4
Steps to Develop and Implement a Software Quality
Assurance Plan

Step 1: Document the Plan

Step 2: Obtain Management Acceptance

Step 3: Obtain Development Acceptance

Step 4: Plan for Implementation of the SQA Plan

Step 5: Execute the SQA Plan

5
Step 1: Document the Plan

 The software quality assurance plan should include the following sections:
Purpose Section
Reference Document Section
Management Section
Documentation Section
Standards, Practices, Conventions, and Metrics Section
Reviews and Inspections Section
Software Configuration Management Section
Problem Reporting and Corrective Action Section
Tools, Techniques, and Methodologies Section
Code Control Section
Records Collection, Maintenance, and Retention Section
Testing Methodology

6
Step 2: Obtain Management Acceptance
 Management participation is necessary for the successful
implementation of an SQA plan.
Management is responsible for both ensuring the quality of a
software project and for providing the resources needed for
software development.
 In the management approval process, management
relinquishes tight control over software quality to the SQA
plan administrator in exchange for improved software quality.
Software quality is often left to software developers. Quality is
desirable, but management may express concern as to the cost
of a formal SQA plan.
7
Step 3: Obtain Development Acceptance
 Because the software development and maintenance
personnel are the primary users of an SQA plan, their
approval and cooperation in implementing the plan are
essential.
 The software project team members must adhere to the
project SQA plan; everyone must accept it and follow it.
 No SQA plan is successfully implemented without the
involvement of the software team members and their
managers in the development of the plan.

8
Step 4: Plan for Implementation of the SQA Plan

 The process of planning, formulating, and drafting an SQA plan


requires staff and word-processing resources. The individual
responsible for implementing an SQA plan must have access to
these resources.
 In addition, the commitment of resources requires management
approval and, consequently, management support.
 To facilitate resource allocation, management should be made
aware of any project risks that may impede the implementation
process (e.g., limited availability of staff or equipment).
 A schedule for drafting, reviewing, and approving the SQA plan
should be developed.
9
Step 5: Execute the SQA Plan
 The actual process of executing an SQA plan by the
software development and maintenance team involves
determining necessary audit points for monitoring it.
 The auditing function must be scheduled during the
implementation phase of the software product so that
improper monitoring of the software project will not
hurt the SQA plan.
 Audit points should occur either periodically during
development or at specific project milestones (e.g., at
major reviews or when part of the project is delivered).
10
SQA Group Activities
 Participates in the development of the projects software process
description
 Reviews software engineering activities to verify compliance
with the defined software process.
 Audits designated software work products to verify compliance
with those defined as part of the software process.
 Ensures that deviations in software work and work products are
documented and handled according to a document procedure.
 Records any non-compliance and reports to senior management.

11
Software Quality Team
The major role of the Software Quality Team is to review
applications.
Reviewing Applications
 It also includes the following:
1. Software reviews and inspections
2. Traceability of software deliverables
3. Testing
4. Auditing of selected key software items
5. Standards and Guidelines

12
1. Software Reviews and Inspections
A software review is an evaluation of a software element
to ascertain discrepancies from planned results and to
recommend improvements.
– e.g. Design Review, Code Review

 Different types, e.g.:


 Walkthrough
 Software Inspection
 Technical Review

13
2. Traceability
– Forwards Traceability
» each input to a phase must be matched to
an output of the same phase to show
completeness

– Backwards Traceability
» each output is traceable to an input of a
phase

14
3. Testing
 Testing is the evaluation of a system or
component to:
• confirm that it satisfies requirements
• identify differences between actual and
expected results

 Testing may be 50% of project costs;


 so use cheaper methods before testing starts,
i.e., walkthroughs and inspections
15
4. Auditing
 Audits are independent reviews that assess compliance with
specifications, standards and procedures
 Perform an audit before software release:
• Physical audit
 check that all items identified as part of the
configuration are present
• Functional audit
 check that unit, integration and acceptance tests have
been carried out and that records show their success or
failure

16
5. Software Quality Standards
Standards and Guidelines
 ‘A standard is an approved, documented, and available set of
criteria used to determine the adequacy of an action (process
standard) or object (product standard).’
 ‘A guideline is a well-defined and documented set of criteria
that guides an activity or task.’ (Dorfman & Thayer, 1990)
• differ from standards - allows for judgement and flexibility

Categories of Standards and Assessment


– Product Standards
– Calibration/ adjustment and Measurement Standards
– Quality Management Systems Standards
17
SQA-Reviews
 ‘Filter’ for the software engineering process

 ‘Purify’ the software work products that occur as a


result of analysis, design, and coding.
 Achieve technical work of more uniform, greater and
more predictable quality.
 Detect errors and problems at the earliest possible
time.
18
Formal Technical Reviews
 To uncover errors in function, logic, or
implementation for any representation of the
software.
 To verify that software meets its requirements.
 To ensure that software representation meets
predefined standards.
 To achieve software development in a uniform
manner.
 To make projects more manageable.
19
The Players
standards bearer/ carrier (SQA)
review
leader

producer

maintenance
oracle

recorder reviewer
user rep

20
Review Guidelines..
 Review the product, not  Limit the number of
producer participants and insist
 Set an agenda and upon advance reparation
maintain it  Develop a checklist for
 Limit the debate each work product to be
 Enunciate problem areas, reviewed
not to solve every  Training for all
problem noted reviewer’s
 Take written notes  Reviewing earlier
 Allocate resources and time reviews
schedule.

21
SQA- Audit
 Software quality assurance involves-

 planning and conducting audits;

 reporting the results to the affected groups;

 tracking the assigned audit actions to completion;

 and conducting follow up audits, as appropriate.

22
SQA-Auditing Activities
S No. Activity Description
 Select projects/areas to be audited during period.
Audit  Agree audit dates with affected groups
1. planning Agree scope of Audit & advise what needs to be
brought to the meeting.
 Book room & send invitation to the attendees.
 Prepare/update the Audit Schedule

Audit Ask attendees as to their specific role in the


2. project, the activities performed & determine the
meeting
extent to which the process is followed.
Employ an Audit Checklist as an aid
Review agreed documentation.
Determine if processes are appropriately followed
23
SQA-Auditing Activities
S No. Activity Description
3. Audit  Revise notes from the Audit Meeting and review
reporting any required additional documents.
 Prepare draft audit report, detail audit actions,
and obtain feedback to ensure accuracy.
 Agree closure dates of the audit actions.
Circulate approved report to
attendees/management.
4. Track Track audit actions to closure.
actions Record the audit action status
Escalation (as appropriate) to resolve open
actions
5. Audit Once all actions are resolved the audit is closed
closure
24
Thank you

25

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy