system alicia marinache introduction software quality ... · introduction sqa system architecture...

Post on 20-Mar-2020

3 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Software Quality Management SystemSE 3S03 - Tutorial 1

Alicia Marinache

Department of Computer ScienceMcMaster University

Week of Jan 12, 2015

Acknowledgments: The material of these slides is based on [1]

(chapters 4 & 19)

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Outline

Introduction

SQA system architecturePre-project quality componentsSoftware project life cycle componentsInfrastructure componentsManagement SQA componentsSQA Standardization componentsHuman components

Considerations constructing SQA systems

Documentation control

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Why SQA?

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Introduction

I Testing vs QA

I Software Tester role:

find bugs and ensure they get fixed

I Software QA role: prevent bugs

I Uniqueness of Software QA vs Manufacturing

I Product complexity

I Product (in) visibility

I Product development and production process

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Introduction

I Testing vs QA

I Software Tester role: find bugs and ensure they get fixed

I Software QA role:

prevent bugs

I Uniqueness of Software QA vs Manufacturing

I Product complexity

I Product (in) visibility

I Product development and production process

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Introduction

I Testing vs QA

I Software Tester role: find bugs and ensure they get fixed

I Software QA role: prevent bugs

I Uniqueness of Software QA vs Manufacturing

I Product complexity

I Product (in) visibility

I Product development and production process

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Introduction (cont-ed)

I Main characteristics of SQA environment

1. Contractual conditions: requirements, budget, schedule2. Customer-supplier relationship: request for changes,

approval etc.3. Required teamwork: schedule, variety of expertise,

support and review4. Cooperation and coordination with other teams:

software or hardware teams in same organization,supplier teams, customer teams

5. Interfaces with other software systems: input / outputinterfaces to the system or the machine’s control board

6. Carrying out a project while the team changes: theshow must go on

7. Maintaining the software system for years

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

SQA system architecture

I Pre-project components: project commitments,development and quality plans

I Software life-cycle components: reviews, expertopinions, testing & maintenance

I Quality Infrastructure components: eliminate / reducethe rate of errors

I Quality Management components: development andmaintenance activities, managerial support

I Standards and certification components: internationalprofessional knowledge, achievements of QA

I Human components: initiate and support, detectdeviations

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

SQA system architecture

Figure: SQA Architecture

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Pre-project components

I Contract review

I Customer requirements

I Project schedule and resource estimates

I Staff’s capacity to carry out the project

I Customer’s capacity to fulfill obligations

I Development risks

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Pre-project components

I Development planI SchedulesI Required resourcesI Development RisksI Organizational issuesI Project methodologyI Software reuse

I Quality planI Quality GoalsI Criteria for each stage start / endI List of reviews, tests etc.

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Software project life cycle components

I ReviewsI Formal design reviews: mandatory; approval to proceed

to next phaseI Peer reviews: voluntarily; detecting design and

programming faults

I Expert opinions: external professionals

I Software testing: test cases, regression tests

I Software maintenance: corrective, adaptive,functionality improvement

I QA of external-supplied parts: effective controls overexternal work

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Infrastructure components

I Procedures and work instructions: define performance ofdevelopment activities; how to perform a process, a task

I Templates and checklists: define documents’ structure,ensure completeness, improve communication

I Staff training, instruction & certification: newemployees, existing employees, updating staff

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Infrastructure components

I Preventive and corrective actions: prevent and correctsimilar failures, repeat successes

I Configuration management: control the change processfor corrections, adaptations, improvements

I Documentation control: define document types, format,review and approval processes, archive methods

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Management SQA components

I Project progress control: detect situations that mayinduce deviations from plans

I Resource usageI SchedulesI Risk managementI The budget

I Software quality metrics: measure functional quality,productivity, organizational aspects

I Quality of software development and maintenanceI Development teams’ productivityI Maintenance teams’ productivityI Software fault densityI Schedule deviations

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Management SQA components

I Software quality costs: analysis of costs shows areaswhere improvements can be made

I Costs of controlI Prevention costs

I Appraisal costs

I Managerial preparation and control costs

I Costs of failureI Internal failure costs

I External failure costs

I Managerial failure costs

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

SQA standards, system certification, andassessment components

I Objectives:I Use of international professional knowledgeI Improvement of coordination with other organizations

quality systems.I Objective evaluations and measurement of achievements

I Quality management standards: focus on what isrequired

I SEI CMM assessment standardI ISO 9001 and ISO 9000-3 standards

I Project process standards: focus on how therequirements are achieved

I IEEE 1012 standardI ISO/IEC 12207 standard

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

SQA Standards - the ISO 9000 process

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Organizing for SQA the human components

I ManagementI Definition of policyI Follow-up of policy implementationI Resource allocationI Follow-up of compliance of procedures

I SQA UnitI Preparation of QA programsI Consultation with expert on QA issuesI Conduct of QA AuditsI Support of QA Infrastructure components

I SQA trustees, committees and forumsI Solving team QA problemsI Detecting deviations from proceduresI Initiating improvements in SQA components

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Considerations guiding construction of anorganization’s SQA system

I Organizational considerationsI Type of software development clienteleI Range of software productsI Size of the organizationI Degree of cooperation with other organizations

I Project and maintenance service considerationsI Level of complexity and difficultyI Degrees of experience with the project technologyI Extent of software reuse in the new projects

I Professional staff considerationsI Professional qualificationsI Level of acquaintance with team members

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Documentation control

I Controlled documents & quality records

Controlled DocumentA document that is currently vital or may become vital for thedevelopment and maintenance of software systems as well as for themanagement of current and future relationships with the customer.

Quality RecordA customer-targeted document that may be required to demonstratefull compliance with customer requirements and effective operation ofthe software quality assurance system throughout the development andmaintenance processes.

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Documentation control

I Controlled document preparationI Structure: free or template

I Identification method: (unique) software code ornumber, document type code, version & revisionnumber

I Standard orientation and reference information: author,date, who approved it, date of approval, descriptions ofchanges, list of versions etc.

I Controlled document approvalI Position of person(s) who can approve a document

I The approval process

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Documentation control

I Controlled document storage

I Applies to paper, email, intranet, Internet documents

I Document storage: number of copies, unit responsible,medium

I Circulation and retrieval: instructions for circulating newdocuments, efficient and accurate retrieval of copies

I Document security: restricted access, preventunauthorized changes, back-up, storage period

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Controlled documents

Software QualityManagement

System

Alicia Marinache

Introduction

SQA systemarchitecture

Pre-project qualitycomponents

Software project lifecycle components

Infrastructurecomponents

Management SQAcomponents

SQA Standardizationcomponents

Human components

Considerationsconstructing SQAsystems

Documentationcontrol

Summary

Summary

I SQA systems combine a large variety of SQAcomponents, to challenge the sources of softwarefailures and achieve an acceptable level of softwarequality

I Controlled documents are managed to ensure theirquality, completeness, availability, to supportinvestigation of failure causes

Software QualityManagement

System

Alicia Marinache

Appendix

References

References I

D. Galin.Software Quality AssuranceFrom theory to implementation.Addison Wesley, 1998.

R. Patton.Software Testing.Sams Publishing, 2006.

top related