180 likes | 354 Views
SQA System Overview. Formal Technical Reviews. Testing. People. Process Standards. Change Control. 2 / 19. Where we have been so far, Where we are going. Basic Concepts. SQA Plan step one: contract review step two: schedule FTRs step …. Where do software errors come from?.
E N D
Formal Technical Reviews Testing People Process Standards Change Control 2 / 19 Where we have been so far, Where we are going Basic Concepts SQA Plan step one: contract review step two: schedule FTRs step … Where do software errors come from? What is quality? How can quality be measured? schedules Plan Components
3 / 19 Reality Check… • Is an SQA plan just busy-work, or does it really pay off? • Hughes Aircraft • moved from level 2 in 1987 to level 3 in 1990 • cost = $500K • benefit = $2M annually • Raytheon • moved from level 1 in 1988 to level 3 in 1993 • productivity doubled • ROI = $7.70 per $1 invested
4 / 19 Pre-Class ReadingCMM Effectiveness Case Studies • Hughes Aircraft • Schlumberger • Texas Instruments • Tinker AFB
5 / 19 SQA Components • Pre-Project Components • Development and Maintenance Activities • Error Reduction Infrastructure • SQ Management Components • SQA System Assessment • Human Components
6 / 19 1. Pre-Project Components • Contract Review • Development and Quality Plans • Development Plans • schedules • manpower requirements • tools • Quality Plans • measurable quality goals • success criteria for each project phase • scheduled V&V activities
7 / 19 2. Life Cycle Components • Software Testing • Reviews • varying levels of formality • specs, designs, code modules, documents, etc • Maintenance • corrective • adaptive • functional
8 / 19 3. Error Prevention and Improvement Infrastructure • work procedures • templates and checklists • staff training • preventive actions • configuration control • document control
9 / 19 4. Management Components • Project Progress • schedules, budgets, risk analysis, … • Quality Metrics • Quality Costs
10 / 19 5. SQA Assessment • Quality Management Standards • SEI CMM • ISO 9001 • Process Standards • IEEE 1012 • ISO 12207
11 / 19 6. Human Components • Management • SQA Unit • SQA committees and forums
12 / 19 ISO 15504 • SPICE = Software Process Improvement Capability Determination • framework for process improvement similar to SEI CMM
13 / 19 ISO Standards for Quality • ISO 9000 : Quality Management and Quality Assurance Standards - Guidelines for selection and use • ISO 9001 : Quality Systems - Model for quality assurance in design/development, installation, and servicing • ISO 9000-3 : Guidelines to applying 9001 to software
14 / 19 ISO 9000 ISO 9000 seeks to set criteria which achieve a goal and is not prescriptive as to methods. The requirements come in Sections 4 to 8. • Section 4 is entitled General Requirements • Section 5 is entitled Management Responsibility • Section 6 is entitled Resource Management • Section 7 is entitled Product Realization • Section 8 is entitled Measurement, analysis and improvement In each of these areas, ISO 9001: 2000 seeks to set out key requirements, which if met will ensure quality. http://en.wikipedia.org/wiki/ISO_9000
15 / 19 IEEE Std 1012 - IEEE Standard for Software Verification and Validation 1. Overview 2. Normative references 3. Definitions, abbreviations, and conventions 4. V&V software integrity levels 5. V&V processes 5.1 Process: Management 5.2 Process: Acquisition 5.3 Process: Supply 5.4 Process: Development 5.4.2 Activity: Requirements V&V 5.4.3 Activity: Design V&V 5.4.4 Activity: Implementation V&V 5.4.5 Activity: Test V&V 5.4.6 Activity: Installation and Checkout V&V 5.5 Process: Operation 5.6 Process: Maintenance 6. Software V&V reporting, administrative, and documentation requirements … Annex A Mapping of ISO/IEC 12207 V&V requirements to IEEE Std 1012 V&V activities and tasks
16 / 19 ISO 12207 • ISO 12207 is an ISO standard for software life cycle processes. • Standard ISO 12207 establishes a process of life cycle for software, including processes and activities applied during the acquisition and configuration of the services of the system. The standard has the main objective of supplying a common structure so that the buyers, suppliers, developers, maintainers, operators, managers and technicians involved with the software development use a common language. This common language is established in the form of well defined processes. http://en.wikipedia.org/wiki/ISO_12207