+ All Categories
Home > Documents > lecture 2

lecture 2

Date post: 16-Jul-2016
Category:
Upload: muhammad-naeem
View: 213 times
Download: 0 times
Share this document with a friend
Description:
lecture 2
39
Lecture-2 Software Quality Assurance and SDLC By: M. Shumail Qureshi
Transcript
Page 1: lecture 2

Lecture-2 Software Quality Assurance and

SDLCBy: M. Shumail Qureshi

Page 2: lecture 2

SQA

• A planned and systematic pattern of all actions necessary to provide adequate confidence that an item or product conforms to established functional and non-functional requirements.

• SQA Ensures Product and Process evaluation

Page 3: lecture 2

SQA Role

• A Person responsible of SQA activities is called “Software Quality Analyst”

Page 4: lecture 2

Software Quality Assurance Activities

• Products are monitored for conformance to standards and processes are monitored for conformance to procedures.

• Audits are a key technique used to perform product evaluation and process monitoring.

• Review of the Management Plan should ensure that appropriate SQA approval points are built into these processes.

Product evaluation and process monitoring are the SQA activities that assure the software development and control processes described in the project's

management plan are correctly carried out and that the project's procedures and standards are followed.

Page 5: lecture 2

Product evaluation• Product evaluation is an SQA activity that assures

product standards are being followed. Ideally, the first products monitored by SQA should be the project's standards and procedures.

• SQA assures that clear and achievable standards exist and then evaluates compliance of the software product to the established standards.

• Product evaluation assures that the software product reflects the requirements of the applicable standard's as identified in the Management Plan

Page 6: lecture 2

Process monitoring • Process monitoring is an SQA activity that

ensures that appropriate steps to carry out the process are being followed.

• SQA monitors processes by comparing the actual steps carried out with those in the documented procedures.

• The Assurance section of the Management Plan specifies the methods to be used by the SQA process monitoring activity

Page 7: lecture 2

Audit • A fundamental SQA technique is the audit, which looks at

a process and/or a product in depth, comparing them to established procedures and standards.

• Audits are used to review management, technical, and assurance processes to provide an indication of the quality and status of the software product.

• The purpose of an SQA audit is to assure that proper control procedures are being followed, that required documentation is maintained, and that the developer's status reports accurately reflect the status of the activity.

• The SQA product is an audit report to management consisting of findings and recommendations to bring the development into conformance with standards and/or procedures.

Page 8: lecture 2

SQA Activities Flow

• Preparation of SQA plans for a project• Review software engineering activities to

verify its compliance with the defined software process

• Ensure that deviance in software work and work products are documented and handled according to a documented procedure.

• Records and reports to senior management

Page 9: lecture 2

SQA Relationships to Other Assurance Activities

• Some of the more important relationships of SQA to other management and assurance activities are with– Configuration Management Monitoring – Verification and Validation Monitoring – Formal Test Monitoring

Page 10: lecture 2

Software configuration management

• is the task of tracking and controlling changes in the software. Configuration management practices include revision control and the establishment of baselines.

Page 11: lecture 2

Configuration Management Monitoring

• SQA assures that software Configuration Management (CM) activities are performed in accordance with the CM plans, standards, and procedures.

• SQA reviews the CM plans for compliance with software CM policies and requirements and provides follow-up for nonconformance's.

• SQA audits the CM functions for adherence to standards and procedures and prepares reports of its findings.

Page 12: lecture 2

Verification and Validation Monitoring

• SQA assures Verification and Validation (V&V) activities by monitoring technical reviews, inspections, and walkthroughs.

• The SQA role in formal testing is described in the next section. The SQA role in reviews, inspections, and walkthroughs is to observe, participate as needed, and verify that they were properly conducted and documented.

• SQA also ensures that any actions required are assigned, documented, scheduled, and updated.

Page 13: lecture 2

Formal Test Monitoring• SQA assures that formal software testing, such as

acceptance testing, is done in accordance with plans and procedures.

• SQA reviews testing documentation for completeness and adherence to standards. The documentation review includes test plans, test specifications, test procedures, and test reports.

• SQA monitors testing and provides follow-up on nonconformance's. By test monitoring, SQA assures software completeness and readiness for delivery.

Page 14: lecture 2

SQA in

SDLC

Page 15: lecture 2

SQA & SDLC

Page 16: lecture 2

Planning

• Role– Project Manager– SQA TL

• Tasks– Resource Assignment– Task Assignment– Effort required

Page 17: lecture 2

Cont…• SQA Assures

– Mention SQA Activities done in project– QA Resources Assignment– Plan Audits– Plan Reviews– Plan Testing Activities

• SQA Prepares– QA Plan

Page 18: lecture 2

Requirement Gathering

• Role– Business Analyst– SQA Lead

• Tasks– Gather business Rules– Gather business Requirement– Functions & Features Required (What to be done)

Page 19: lecture 2

Cont…

• SQA Assures– What’ but not ‘How’ or ‘How Much’– Unambiguous– Consistent– Testable– Complete

Page 20: lecture 2

Design

• Role– Business Analyst– DBA– Development TL– SQA TL

Page 21: lecture 2

Cont…

• Tasks– System flow– Data base schemas– Interfaces/Modules integration– Test Planning– State Diagrams/Classes & Objects– Peer reviews (design/test scenarios)

Page 22: lecture 2

Cont…

• SQA Assures (Reviews)– Unambiguous– Testable– Complete– Meet the User requirements

• SQA Prepares– Test Plan

Page 23: lecture 2

Development

• Roles– Development Team– Technical Writer– Configuration Manager– QA Team

Page 24: lecture 2

Cont…

• Tasks– Code– DDL– DML– Store Procedures– Data Dictionary

Page 25: lecture 2

Cont…• SQA Assures (Reviews)

– Complete design has been transformed– Code standards– DB scripts standard– Code/Scripts has been baseline

• SQA Prepares– Test Cases– Test Data– Test Scripts

Page 26: lecture 2

Testing• Role

– QA Team– Development Team

• Tasks– Execute Test Cases– Acceptance Testing– Defect Logging– Defect Fixing

Page 27: lecture 2

Cont…

• SQA Assures– Release notes are updated– Reason for change is mentioned– All the required features are available– All business rules are implemented– Regression against the defects is complete

Page 28: lecture 2

Cont…

• SQA Prepares– Defect report– Status Report

Page 29: lecture 2

Deployment• Roles

– Development Team– QA Team– Configuration Management Team

• Tasks– Updating Release notes, if required– Installation manuals– QA documents/reports– Shipment Assurance

Page 30: lecture 2

Cont…

• SQA Assures (Review)– Updating Release– Installation manuals– QA documents/reports

– Shipment Assurance Testing

Page 31: lecture 2

Support• Roles

– Help desk– Development/QA Team– Business Analysts– Customer

• Tasks– Requested changes– Resolving ambiguities– Solving identified discrepancies

Page 32: lecture 2

SQA in Support

Page 33: lecture 2

Software Quality Assurance is an umbrella activity in SDLC

Page 34: lecture 2

Techniques and Tools

• Useful tools might include audit and inspection checklists and automatic code standards analyzers.

Page 35: lecture 2

V Model

• synonym for Verification and Validation • 'V' describes the graphical arrangement of

the individual phases

Page 36: lecture 2

The V-Model of testing • The V-model promotes

the idea that the dynamic test stages (on the right hand side of the model) use the documentation identified on the left hand side as baselines for testing. The V-Model further promotes the notion of early test preparation.

Page 37: lecture 2

The V-Model with early test preparation

• Early test preparation finds faults in baselines and is an effective way of detecting faults early. This approach is fine in principle and the early test preparation approach is always effective. However, there are two problems with the V-Model as normally presented.

Page 38: lecture 2

• There is rarely a perfect, one-to-one relationship between the documents on the left hand side and the test activities on the right. For example, functional specifications don’t usually provide enough information for a system test.

• System tests must often take account of some aspects of the business requirements as well as physical design issues for example.

• System testing usually draws on several sources of requirements information to be thoroughly planned.

Page 39: lecture 2

References

• Book– Software Quality Assurance – Principles &

Practices by Nina S Godbole• Chapter 1

– 1.6, 1.7

• Reading Material– Life Cycle Quality Gates.pdf


Recommended