Class Materials

advertisement
EMBEDDED SYSTEMS SOFTWARE TRAINING CENTER
INTRODUCTION TO QUALITY ASSURANCE
COPYRIGHT © 2012 DSR CORPORATION
Objectives
 Understand what is quality
 Understand the software quality assurance basic
notions, processes, and techniques
COPYRIGHT © 2012 DSR CORPORATION
2
Class Materials
 Software Engineering Introduction diagrams are
available here:
 http://estc.dsr-company.com
 Hands-on Exercises are available here:
COPYRIGHT © 2012 DSR CORPORATION
3
Agenda
1. Software Quality Fundamentals
2. Software Quality Management Processes
3. Software Quality Management Techniques
4. Software Quality Measures
COPYRIGHT © 2012 DSR CORPORATION
4
EMBEDDED SYSTEMS SOFTWARE TRAINING CENTER
SOFTWARE QUALITY FUNDAMENTALS
COPYRIGHT © 2012 DSR CORPORATIONS
Capability Maturity Model Integration
http://en.wikipedia.org/wiki/Capability_Maturity_Model_Integration
COPYRIGHT © 2012 DSR CORPORATION
6
Quality Improvement
 Building quality through:
 The prevention and early detection of errors
 Continuous improvement
 Customer focus
 Total Quality Management (TQM) approach
 The Six Sigma process
 99.99966% of the products manufactured are statistically expected to be free of
defects (3.4 defects per million)
 Management sponsorship
 Identifying actions and improvement projects to be addressed in a feasible time
frame
 Identify resources to achieve the goal defined for it
 Proactive activities
http://en.wikipedia.org/wiki/ISO/IEC_9126
http://en.wikipedia.org/wiki/Six_Sigma
COPYRIGHT © 2012 DSR CORPORATION
7
EMBEDDED SYSTEMS SOFTWARE TRAINING CENTER
SOFTWARE QUALITY MANAGEMENT PROCESSES
COPYRIGHT © 2012 DSR CORPORATIONS
Code Review
 Performed during Inspection or Walk-through
 Finds the faults that are difficult to find by testing. Latent defect
discovery rate:
 Formal inspection is in the 60-65% range, at most 85%
 For informal walk-through, the figure is less than 50%
 For most forms of testing is about 30%
 Does not replace testing
 Up to 75% of code review defects affect software maintainability
rather than functionality
 Typical rate is about 150 lines of code per hour
 Handled according to code review rules
http://en.wikipedia.org/wiki/Code_review
COPYRIGHT © 2012 DSR CORPORATION
9
EMBEDDED SYSTEMS SOFTWARE TRAINING CENTER
SOFTWARE QUALITY MEASURES
COPYRIGHT © 2012 DSR CORPORATIONS
Software Complexity Metrics (cont.)
Complexity Analysis of Real Time Software Using Software Complexity Metrics to Improve the
Quality of Real Time Software. Armin Krusko
COPYRIGHT © 2012 DSR CORPORATION
11
Summary
 Software quality has a definite value and cost.
 Software quality management processes intended to ensure the that
quality is built-in into the software. Validation, Verification, and
Review processes are the most intensive among them.
 Various techniques are involved to achieve the Software Quality
Management Goals. Static and dynamic are most useful among
them.
 Software quality measures allow us to estimate product quality as
well as to plan, control, and improve the quality processes.
COPYRIGHT © 2012 DSR CORPORATION
12
Questions
1.
What is software quality? Why quality is so important? What the
software quality cost consists of?
2.
What are main software quality characteristics?
3.
What are the main software quality management processes?
4.
Give the short characteristic of Verification & Validation processes.
Provide the examples of the applying of these processes on every
stage of Software Life Cycle. Which Software Quality Management
techniques are used in these processes?
5.
What Reviews and Audits are used for? Which Software Quality
Management techniques are used in these processes?
6.
Characterize the Software Quality Management techniques. What the
every technique allows to achieve and what it its limitaiton?
7.
What are the Quality Measurement objectives? What the Software
Quality Metrics do you know?
COPYRIGHT © 2012 DSR CORPORATION
13
References
1.
SWEBOK. Guide to the Software Engineering. Body of Knowledge. 2004 Version / A project of the IEEE Computer Society Professional
Practices Committee
2.
IEEE Std 610.12-1990, IEEE Standard Glossary of Software Engineering Terminology
3.
TickITplus certification scheme. http://www.tickitplus.org
4.
Capability Maturity Model Integration (CMMI) http://www.sei.cmu.edu
5.
ISO 9001:2008. Quality management systems — Requirements
6.
ISO/IEC 9126. Software engineering — Product quality
7.
IEEE/EIA 12207.0. Standard for Information Technology – Software Life Cycle Processes
8.
IEEE730-1998. IEEE Standard for Software Quality Assurance Plan
9.
IEEE 1059-1993. IEEE Guide for Software Verification and Validation Plans
10.
ISO/IEC 9126-1:2001. Software engineering -- Product quality -- Part 1: Quality model
11.
IEEE1028-1997. IEEE Standard for Software Reviews Jones, Capers; Christof, Ebert (April 2009). "Embedded Software: Facts,
Figures, and Future“
12.
Complexity Analysis of Real Time Software – Using Software Complexity Metrics to Improve the Quality of Real Time Software. Armin
Krusko
13.
Software Engineering Code of Ethics and Professional Practice (Version 5.2) as recommended by the ACM/IEEE-CS.
http://www.acm.org/about/se-code
COPYRIGHT © 2012 DSR CORPORATION
14
Download