Templates: Three Examples of Templates Are Presented in The Following Frames
Templates: Three Examples of Templates Are Presented in The Following Frames
Templates
In other areas of work, a template is “a gauge, pattern or mold (as a thin plate or board) used as a guide to the
form of a piece being made” (Webster’s New College Dictionary).
Three examples of templates are presented in the following frames:
■ Software test plan (STP)
■ Software test description (STD)
■ Frame 10.4: Software test report (STR).
A total of 22 DIDs are available for the users of MILSTD-498, for instance:
■ Software Requirements Specification (SRS)
■ System/Subsystem Design Description (SSDD)
■ Computer Operator Manual (COM)
■ Interface Design Description (IDD)
■ Software Test Plan (STP)
■ Software Version Description (SVD).
5.1.1 The contribution of templates to software quality
Template use is quite advantageous to development teams and to review teams.
For development teams, template use:
■ Facilitates the process of preparing documents by saving the time and energy required to elaborate the
report’s structure.
■ Ensures that documents prepared by the developer are more complete as all the subjects to be
included in the document have already been defined and repeatedly reviewed by numerous professionals
over the course of the Template’s use.
■ Provides for easier integration of new team members through familiarity.
■ Facilitates review of documents by eliminating the need to study a document’s structure and confirm its
completeness, if the document is based on the appropriate template.
■ Enables easier location of the information required for performing maintenance tasks.
Updating checklists
Like templates and procedures, initiatives to update an existing checklist generally flow from the following
sources:
■ User proposals and suggestions
■ Changes in technology, areas of activity and clientele
■ Proposals initiated by design review and inspection teams emanating from document reviews
■ Analysis of failures as well as successes
■ Other organizations’ experience
■ SQA team initiatives.
The process of updating checklists is quite similar to their preparation
(1) Explain the main contribution of templates to software quality assurance.
■ Documents submitted for review tend to be more complete. As a result, review teams can direct their
efforts to further improvement of the final product.
■ Document reviews are facilitated as their structure is standard and well known among reviewers. Freed of
structural concerns, reviewers can focus on issues of document content.
Chapter 6
The need to release a new software configuration version usually stems from one or more of the following
conditions:
■ Defective SCIs
■ Special features demanded by new customers
■ The team’s initiatives to introduce SCI improvements.
A discussion of the following issues, all of which are part of the process of software configuration version
release, occupy the remainder of this section:
■ Types of software configuration releases
■ Software configuration management plans (SCMPs)
■ Software configuration evolution models
■ Documentation of software configuration versions.
Types of software configuration releases
Among software configuration releases, baseline versions, intermediate versions and revisions are
considered to be the three main types of release.
Baseline versions
Baseline software configuration versions are planned early, during a system’s development or operating
stage. As part of the process, they are reviewed, tested and approved, as are their SCIs
Intermediate versions
When problems arise that require immediate attention – such as the need to correct defects identified in an
important SCI, or perform immediate adaptations as defined in a contract with a new customer – an
intermediate version of the software is often prepared.
Revisions
Revisions introduce minor changes and corrections to a given software configuration version. In some cases,
several successive revisions are released before a new baseline version is released.
Chapter 7
The first classification category distinguishes between life cycle and other phases of the software system:
■ Process metrics, related to the software development process
■ Product metrics, related to software maintenance
■ KLOC – this classic metric measures the size of software by thousands of code lines.
.
Software development process metrics can fall into one of the following categories:
1. Software process quality metrics
2. Software process timetable metrics
3. Error removal effectiveness metrics
4. Software process productivity metrics.
Software process quality metrics may be classified into two classes:
■ Error density metrics
■ Error severity metrics.
Three classes of error severity and their relative weights are also defined:
The code error summary for the department’s Atlantis project indicated there were 42 low severity errors,
17 medium severity errors, and 11 high severity errors. Calculation of NCE and WCE gave these results.
Error severity metrics
The metrics belonging to this group are used to detect adverse situations of increasing numbers of severe
errors in situations where errors and weighted errors, as measured by error density metrics, are generally
decreasing. Two error severity metrics are presented in Table 7.2
Table 7.2:. Error severity metrics
Chapter 8
. The new ISO 9000-3 (ISO/IEC, 2001) offers a new structure, with its 22 requirements classified into
the following five groups:
■ Quality management system
■ Management responsibilities
■ Resource management
■ Product realization
■ Management, analysis and improvement.
Organizations wishing to obtain ISO 9000-3 certification are required to complete the following:
■ Develop the organization’s SQA system
■ Implement the organization’s SQA system
■ Undergo certification audits.
(3) Describe the general principles underlying quality management according to ISO 9000-3.
■ Customer focus – understanding a customer’s current and future needs
■ Leadership exercised in the creation and maintenance of a positive internal environment in order to
achieve the organization’s objectives
■ Involvement of people at all levels to further organizational goals
■ Process approach – activities and related resources perceived and managed as a process
■ Systems approach to management – managing processes as a system
■ Continual improvement of the organization’s overall performance
■ Factual approach to decision-making – decisions based on the analysis of data and information
■ Mutually beneficial supplier relationships – emphasis on coordination and cooperation.
(5) Describe the principles embodied in the Capability Maturity Model (CMM).
■ Application of more highly elaborated software quality management methods increases the organization’s
capability to control quality and improve software process productivity
■ Application of the five levels of the CMM enables the organization to evaluate its achievements and
determine what additional efforts are needed to reach the next capability level
■ Process areas are generic, with the model defining “what” and leaving the “how” to the implementing
organizations, i.e., the choice of life cycle model, design methodology, software development tool,
programming language and documentation standard.
(6) Describe the principles that guided the developers of ISO/IEC 15504.
■ Harmonization of independent assessment methodologies by providing a conceptual framework based on
“what”, not “how.”
■ Universality of applicability to all or almost all categories of software suppliers and customer
organizations as well as software categories
■ Professionalism
■ Worldwide acceptance.