Lecture 04
Lecture 04
Lecture 04
OSHADHI MUNASINGHE
OUTLINE
•4.1 The SQA system – an SQA architecture
•4.2 Pre-project components
•4.3 Software project life cycle components
•4.4 Infrastructure components for error prevention
•4.5 Management SQA components
•4.6 SQA standards, system certification, and assessment
•4.7 Organizing for SQA – the human components
•4.8 The considerations guiding construction of an organization’s SQA system
THE SQA SYSTEM – AN SQA ARCHITECTURE
•Software is…
➢ High complexity.
➢ Invisible product.
➢ Hard to search and fix defect(bug).
THE SQA SYSTEM – AN SQA ARCHITECTURE…
•Schedules
•Required manpower and hardware resources
•Risk evaluations
•Organizational issues; team members, subcontracts and partnerships
•Project methodology, development tools etc..
•Software reuse plans
THE MAIN ISSUES TREATED IN THE PROJECT’S QUALITY
PLAN
Three aspects of quality assurance of the software product (a report, code, etc.)
Verification – The process of evaluating a system or component to determine whether the products
of a given development phase satisfy the conditions imposed at the start of that phase.
Example:
https://www.guru99.com/verification-v-s-validation-in-a-software-testing.html
•Qualification – The process used to determine whether a system
or component is suitable for operational use.
➢focuses on operational aspects, where maintenance is the main issue.
➢Qualification reviews project application of professional standards and
coding procedures, based on the assumption that applying these standards
facilitates maintenance.
SOFTWARE PROJECT LIFE CYCLE COMPONENTS
As these documents are products of the project’s initial phases, reviews acquire
special importance in the SQA process because they provide early detection and
prevent the passing of design and analysis errors “downstream”, to stages where error
detection and correction are much more intricate, cumbersome, and therefore costly.
REVIEWS
• Formal design reviews, variously called “design reviews”, “DRs” and “formal technical reviews (FTR)”,
differ from all other review instruments by being the only reviews that are necessary for approval of
the design product.
➢Without this approval, the development team cannot continue to the next phase of the software development
project.
• Formal design reviews may be conducted at any development milestone requiring completion of an
analysis or design document, whether that document is a requirement specification or an
installation plan.
SOME COMMON FORMAL DESIGN REVIEWS
PRESSMAN’S 13 “GOLDEN GUIDELINES” FOR A
SUCCESSFUL DESIGN REVIEW
Some include….
Design review infrastructure:
➢Develop checklists for each type of design document, or at least for the common
ones.
The design review team:
➢Review teams should be limited in size, with 3–5 members usually
being the optimum.
PRESSMAN’S 13 “GOLDEN GUIDELINES” FOR A
SUCCESSFUL DESIGN REVIEW
Post-review activities:
➢Prepare the review report (DR Report), which summarizes the issues discussed and
the action items.
➢Establish follow-up procedures to ensure the satisfactory performance of all the
corrections included in the list of action items.
THE FORMAL DESIGN REVIEW PROCESS
UCSC - 2019
29
PEER REVIEWS
• Formality :
➢Inspection is the more formal of the two.
• Objective :
➢Inspection emphasizes the objective of corrective action.
➢Whereas a walkthrough’s findings are limited to comments on the document
reviewed.
• Significance :
➢An inspection’s findings are also incorporated into efforts to improve
development methods per se.
➢Inspections, as opposed to walkthroughs, are therefore considered to
contribute more significantly to the general level of SQA
SOFTWARE PROJECT LIFE CYCLE COMPONENTS…
Reviews
Expert opinions
Software testing
Software maintenance
Assurance of the quality of the subcontractor’s work and the customer
supplied parts
Software testing
Software tests are formal SQA components that are targeted toward review of the
actual running of the software. -> Test report
•The tests are based on a prepared list of test cases that represent a variety of
expected scenarios.
•Examines software modules, software integration or entire software packages
(systems).
•Recurrent tests (“regression tests”) are carried out after correction of previous test
findings, and continued till satisfactory results are obtained.
SOFTWARE PROJECT LIFE CYCLE COMPONENTS…
• Reviews
• Expert opinions
• Software testing
• Software maintenance
• Assurance of the quality of the subcontractor’s work
and the customer supplied parts.
Software maintenance components
• Reviews
• Expert opinions
• Software testing
• Software maintenance
• Assurance of the quality of the subcontractor’s work and the customer supplied parts.
ASSURANCE OF THE QUALITY OF THE EXTERNAL
PARTICIPANT’S WORK
➢managers
➢testing personnel
➢the SQA unit and practitioners interested in software quality (SQA
trustees, SQA committee members and SQA forum members)