Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Quality assurance SQA – SWE 333

Similar presentations


Presentation on theme: "Software Quality assurance SQA – SWE 333"— Presentation transcript:

1 Software Quality assurance SQA – SWE 333
The Components of the SQA Overview Prof. Mohamed Batouche

2 SQA System An SQA Architecture Project Life Cycle SQA components
Development plan and Quality Plan Ch.6 Pre-project SQA components Project Life Cycle SQA components Formal Design Reviews Sec. 8.2 Experts Opinion Sec. 8.5 Peer Reviews Sec. 8.3 SQA of External Participants Ch 12 Software Maintenance Ch. 11 Software Testing Chs. 9-10 Quality Infrastructure components Procedures Ch. 14 Supporting Devices Ch. 15 Training Instruction Ch. 16 Preventive Actions Ch.17 Configuration Management Ch. 18 Document- ation Control Ch. 19 Quality Management Progress Ch. 20 Software Quality Metrics Ch. 21 Costs Ch. 22 Standards Ch. 23 Process Ch.24 Organizational Base – Human components Management - Ch. 25 SQA Unit - Sec. 26.1 SQA Committees – Sec. 26.2 SQA Trustees – Sec. 26.2 SQA Forums – Sec 26.4 Contract review Ch.5 An SQA Architecture

3 SQA System SQA Components
SQA System Components can be classified into six classes: Pre-project components Software project life cycle components Infrastructure components for error prevention and improvements Management SQA components SQA standards, system certification and assessment components Organizing for SQA – the human components

4 SQA System Pre-project components

5 SQA System SQA Components
Pre-project components Contract reviews: includes a detailed examination of the project proposal draft and the contract drafts. Development and quality plans: Once the contract is signed, a plan is prepared of the project and its integrated quality activities.

6 SQA System SQA Components Project development plan
The main issues treated in the project development plan are: Schedules Required manpower and hardware resources Risk evaluations Organizational issues: team members, subcontractors and partnerships Project methodology, development tools, etc. Software reuse plans

7 SQA System SQA Components Project’s quality plan
The main issues treated in the project’s quality plan are: Quality goals, expressed in the appropriate measurable terms Criteria for starting and ending each project stage List of reviews, tests, and other scheduled verification and validation activities.

8 SQA System Software project life cycle components

9 SQA System SQA Components
Software project life cycle components: Reviews Expert opinions Software testing Software maintenance components Assurance of the quality of external participants’ work

10 SQA System SQA Components
Software project life cycle components: C Reviews: The design phase of the development process produces a variety of documents. Reviews can be categorized as follows: Formal design reviews (DRs): These documents require formal professional approval of their quality before moving to next step. Committees are composed of senior professionals including project leader. Peer reviews (Inspections and Walkthrough): Directed at reviewing short documents. Reviewers are all peers. The main objective is to detect as many design and programming faults as possible.

11 SQA System SQA Components
Software project life cycle components: Expert opinions: Introduce additional external capabilities into the organization: Outside experts may join a DR committee. Their opinions may replace a DR. In case of disagreement of senior professionals, an outside expert may support a decision.

12 SQA System SQA Components
Software project life cycle components: Software testing: This includes formal SQA components that are targeted toward review of the actual running of the software. All tests have to be designed, planned and approved. Software maintenance components: Software maintenance services fall into three categories: Corrective maintenance Adaptive maintenance Functionality improvement maintenance Assurance of the quality of external participants’ work: Special efforts are needed to assure the quality of the hardware, software, staff and training supplied by the customer.

13 SQA System Infrastructure components for error prevention and improvements

14 SQA System SQA Components
Infrastructure components for error prevention and improvements Procedures and work instruction Templates and checklists Staff training, retraining and certification Preventive and corrective actions Configuration management Documentation control

15 SQA System SQA Components
Infrastructure components for error prevention and improvements Documentation control functions: Refer mainly to customer requirement documents, contract documents, design reports, project plans, … Documentation control activities: Entail definition of the needed documents, specification of the format, definition of review and approval processes, definition of the archive storage methods

16 SQA System Management SQA components

17 SQA System SQA Components
Management SQA components Project progress control Software quality metrics Software quality costs

18 SQA System SQA Components
Management SQA components Project progress control: The main objective is to detect any situation that may induce a deviation from the project’s plan. It focuses on : Resource usage Schedules Risk management activities The budget

19 SQA System SQA Components
Management SQA components Software quality metrics: Measurement is an effective tool for the support of the control activities. Examples of metrics are: Development teams’ productivity Software faults density Schedule deviations

20 SQA System SQA Components
Management SQA components Software quality costs: the quality costs are the cost of control combined with the costs of failure. Management is especially interested in the total sum of the quality costs.

21 SQA System SQA standards, system certification and assessment components

22 SQA System SQA Components
SQA standards, system certification and assessment components Project process standards (Guidelines for how to do …) (IEEE 1012 standard, ISO/IEC standard) Quality management standards (Guidelines for What to do …) (SEI CMM assessment standard, ISO 9001 and ISO standards) Objectives: Utilization of international professional knowledge Improvement of coordination with other organizations’ quality systems Objective professional evaluation and measurement of the organization’s SQA achievement

23 Organizations involed in SQA standards development
Most prominent developers of SQA standards: IEEE (Institute of Electric and Electronic Engineers) Computer Society ISO (International Standards Organization) DOD (US Department of Defense) ANSI (American National Standards Institute) IEC (International Electrotechnical Commission) EIA (Electronic Industries Association)

24 SQA standards, system certification and assessment components
Quality management standards

25 SQA System SQA Components
SQA standards, system certification and assessment components Quality management standards: This type of standards guide the management of software development, maintenance and infrastructure. These standards focus on what is required and leave the decision about how to achieve it to the organization. The most familiar examples of this type are: SEI CMM assessment standard, ISO 9001 and ISO standards.

26 ISO 9000-3 Principles Customer focus Leadership Involvement of people
Process approach System approach to management Continual improvement Factual approach to decision making Mutually supportive supplier relationships

27 SQA standards, system certification and assessment components
Project process standards

28 SQA System SQA Components
SQA standards, system certification and assessment components Project process standards: They are professional standards that provide methodological guidelines (dealing with the question of “how”) for the development team. Well known examples of this type of standards are: IEEE 829 standard, - Software test documentation IEEE 1028 standard, - Software reviews IEEE/EIA standard – Software life cycle processes

29 IEEE /EIA12207 standard Source: IEEE (1992). From IEEE Std Copyright 1992 IEEE. All rights reserved.

30 IEEE Std.829 Software Test Documention
Documents that can be produced as part of the testing effort are as follows: Test Planning Test Plan Test Specification Test design specification Test case specification Test procedure specification Test Reporting Test Item transmittal report Test log Test incident summary Test summary

31 Review requirements of IEEE Std.1028
Document structure: (1) Introduction (2) Responsibilities The responsibilities of the participants in the review. (3) Input Mandatory and optional data items. (4) Entry criteria Common criteria: a. a statement of the review's objectives. b. Availability of the required input data. (5) Procedure Required to include: management preparations, planning, team preparation, examination of the products, follow up of corrections. (6) Exit criteria What must be accomplished before the review can be concluded. (7) Output items (8) Data collection recommendations To be used to study the effectiveness and efficiency of current practices. (9) Improvements Formulate improved procedures, checklists and development processes.

32 SQA standards, system certification and assessment components
Types of Standards Documentation Standards: Specify form and content for planning, control and product documentation. Design Standards: Specify the form and content of the design product. Code Standards: Specify the language to be used and any restrictions on use of language features.

33 SQA System Organizing for SQA – the human components

34 SQA System SQA Components
Organizing for SQA – the human components Management’s role in SQA The SQA unit SQA trusties SQA committees SQA forums

35 SQA System SQA Components
Organizing for SQA – the human components Management’s role in SQA: The responsibilities of top management, departmental management and project management include the following: Definition of the quality policy Effective follow-up of quality policy implementation Allocation of sufficient resources and adequate staff Solutions of schedule, budget and costumer relations difficulties

36 SQA System SQA Components
Organizing for SQA – the human components The SQA unit: The SQA unit’s task is to serve as the main moving force, initiator, and coordinator of the SQA system. This unit and software testers are the only parts that devote themselves full-time to SQA matters. The SQA unit’s task include: Preparation of annual quality programs Consultation with experts on software quality issues Conduct of internal quality audits Leadership of quality assurance various committees Support of quality infrastructure components

37 SQA System SQA Components
Organizing for SQA – the human components SQA trusties, committees and forums: SQA trustees are members of development and maintenance teams who are prepared to devote part of their time to SQA issues. SQA committee members are members of various software development and maintenance units who are appointed for term or ad hoc service. SQA forums are composed of professionals and practitioners who meet and/or maintain an internet site for discussion of quality issues.

38 SQA System An Architecture

39 The Software Quality Shrine
Project Development plan and Quality Plan Ch.6 Pre-project SQA components Project Life Cycle SQA components Formal Design Reviews Sec. 8.2 Experts Opinion Sec. 8.5 Peer Reviews Sec. 8.3 SQA of External Participants Ch 12 Software Maintenance Ch. 11 Software Testing Chs. 9-10 Quality Infrastructure components Procedures Ch. 14 Supporting Devices Ch. 15 Training Instruction Ch. 16 Preventive Actions Ch.17 Configuration Management Ch. 18 Document- ation Control Ch. 19 Quality Management Progress Ch. 20 Software Quality Metrics Ch. 21 Costs Ch. 22 Standards Ch. 23 Process Ch.24 Organizational Base – Human components Management - Ch. 25 SQA Unit - Sec. 26.1 SQA Committees – Sec. 26.2 SQA Trustees – Sec. 26.2 SQA Forums – Sec 26.4 Contract review Ch.5

40 References Williaw E. Lewis, “Software Testing And Continuous Quality Improvement”, Third Edition, CRC Press, 2009. K. Naik and P. Tripathy: “Software Testing and Quality Assurance”, Wiley, 2008. Ian Sommerville, Software Engineering, 8th edition, 2006. Aditya P. Mathur,“Foundations of Software Testing”, Pearson Education, 2009. D. Galin, “Software Quality Assurance: From Theory to Implementation”, Pearson Education, 2004 David Gustafson, “Theory and Problems of Software Engineering”, Schaum’s Outline Series, McGRAW-HILL, 2002.

41 Q & A


Download ppt "Software Quality assurance SQA – SWE 333"

Similar presentations


Ads by Google