Date post: | 26-Dec-2015 |
Category: |
Documents |
Upload: | tobias-tate |
View: | 233 times |
Download: | 0 times |
An SQA Architecture
Project Development plan and Quality PlanCh.6
Pre-project SQA components
Project Life Cycle SQA components
Fo
rma
l De
sig
n R
evie
ws
Sec
. 8
.2
Ex p
er t
s O
pin
i on
Se c
. 8
.5
Pee
r R
evi e
ws
Sec
. 8
.3
SQ
A o
f E
xte
rna
l Pa
rtic
ipa
nts
C
h 1
2
So
ftw
are
Ma
inte
na
nce
Ch
. 1
1
So
ftw
are
Tes
tin
gC
hs
. 9
-10
Quality Infrastructure components
ProceduresCh. 14
Supporting DevicesCh. 15
TrainingInstruction
Ch. 16
PreventiveActionsCh.17
ConfigurationManagement
Ch. 18
Document-ation
ControlCh. 19
Quality Management Project ProgressControlCh. 20
Software QualityMetricsCh. 21
SoftwareQuality Costs
Ch. 22
Quality ManagementStandards
Ch. 23
StandardsProjectProcessStandardsCh.24
Organizational Base – Human componentsManagement - Ch. 25 SQA Unit - Sec. 26.1 SQA Committees – Sec. 26.2SQA Trustees – Sec. 26.2 SQA Forums – Sec 26.4
Contract reviewCh.5
Pre-project SQA components
SQA System Components can be classified into six classes:
1. Pre-project components2. Software project life cycle components3. Infrastructure components for error
prevention and improvements4. Management SQA components5. SQA standards, system certification and
assessment components6. Organizing for SQA – the human
components
3
Pre-project components
4
• 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.
5
• 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
6
• 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.
7
• Software project life cycle components
8
• Software project life cycle components:
Reviews Expert opinions Software testing Software maintenance components Assurance of the quality of external
participants’ work
9
• 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.
10
• 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.
11
• 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.
12
• Infrastructure components for error prevention and improvements
13
• 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
14
• 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
15
• Management SQA components
16
• Management SQA components
Project progress control
Software quality metrics
Software quality costs
17
• 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
18
• 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
19
• 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.
20
• SQA standards, system certification and assessment components
21
• SQA standards, system certification and assessment components
Project process standards (Guidelines for how to do …) (IEEE 1012 standard, ISO/IEC 12207 standard)
Quality management standards (Guidelines for What to do …) (SEI CMM assessment standard, ISO 9001 and ISO 9000-3
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
22
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)
23
Quality management standards
24
• 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 9000-3 standards.
25
26
Project process standards
27
• 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 12207 standard – Software life cycle
processes28
29
Tailoring
Acquisition
Supply
DevelopmentOperation
Maintenance
Joint review
TrainingImprovement
Infrastructure
Management
Problem resolutionAudit
ValidationVerification
Quality assuranceConfiguration management
Documentation
S o f t w a r e l if e c y c l e
Primary processes
Org
aniz
atio
nal p
roce
sses
Supp
ortin
g pr
oces
ses
IEEE/EIA Std 12207 Software life cycle processes
Source: IEEE (1992). From IEEE Std 10 45-19992. Copyright 1992 IEEE. All rights reserved.
30
31
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.
32
• Organizing for SQA – the human components
33
• Organizing for SQA – the human components
Management’s role in SQA The SQA unit SQA trusties SQA committees SQA forums
34
• 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
35
• 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
36
• 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.
37
38
39
Project Development plan and Quality PlanCh.6
Pre-project SQA components
Project Life Cycle SQA components
Fo
rma
l De
sig
n R
evie
ws
Sec
. 8
.2
Ex p
er t
s O
pin
i on
Se c
. 8
.5
Pee
r R
evi e
ws
Sec
. 8
.3
SQ
A o
f E
xte
rna
l Pa
rtic
ipa
nts
C
h 1
2
So
ftw
are
Ma
inte
na
nce
Ch
. 1
1
So
ftw
are
Tes
tin
gC
hs
. 9
-10
Quality Infrastructure components
ProceduresCh. 14
Supporting DevicesCh. 15
TrainingInstruction
Ch. 16
PreventiveActionsCh.17
ConfigurationManagement
Ch. 18
Document-ation
ControlCh. 19
Quality Management Project
ProgressControlCh. 20
Software QualityMetricsCh. 21
SoftwareQuality Costs
Ch. 22
Quality ManagementStandards
Ch. 23
StandardsProjectProcessStandardsCh.24
Organizational Base – Human componentsManagement - Ch. 25 SQA Unit - Sec. 26.1 SQA Committees – Sec. 26.2SQA Trustees – Sec. 26.2 SQA Forums – Sec 26.4
Contract reviewCh.5
Pre-project SQA components
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.
40