Wa0009.
Wa0009.
• An internal order may entail a request for developing a firmware software system to be
embedded within a hardware product, an order for a software product to be sold as a
package, or an order for the development of administrative software to be applied
within the company.
■ Evaluation of the professional staff’s capacity to carry out the proposed project
• These plans include additional details and needed revisions based on prior plans that provided the
basis for the current proposal and contract. It is quite common for several months to pass
between the tender submission and the signing of the contract.
• During this period, changes may occur in staff availability, in professional capabilities, and so forth.
The plans are then revised to reflect the changes that occurred in the interim
Development and quality plans
The main issues treated in the project The main issues treated in the project’s quality plan
development plan are: are:
■ Assurance of the quality of the subcontractors’ work and the customer supplied parts.
Software project life cycle components
Reviews
The design phase of the development process produces a variety of documents.
The printed products include design reports, software test documents, software
installation plans and software manuals, among others. Reviews can be categorized
as
❖ Formal design reviews (DRs)
❖ Peer reviews.
Software project life cycle components
Reviews - Formal design reviews (DRs)
✔ A significant portion of these documents requires formal professional approval of their quality
as stipulated in the development contract and demanded by the procedures applied by the
software developer.
✔ It should be emphasized that the developer can continue to the next phase of the development
process only on receipt of formal approval of these documents.
✔ Ad hoc committees whose members examine the documents presented by the development
teams usually carry out formal design reviews (widely known as “DRs”)
✔ The committees are composed of senior professionals, including the project leader and, usually,
the department manager, the chief software engineer, and heads of other related departments.
✔ The majority of participants hold professional and administrative ranks higher than the project
leader.
✔ On many occasions, the customer’s representative will participate in a DR
Software project life cycle components
Reviews - Formal design reviews (DRs)
The DR report itself includes a list of required corrections (termed “action items”).
When a design review committee sits in order to decide upon the continuation of
the work completed so far, one of the following options is usually open for
consideration:
■ Immediate approval of the DR document and continuation to the next
development phase.
■ Approval to proceed to the next development phase after all the action items
have been completed and inspected by the committee’s representative.
■ An additional DR is required and scheduled to take place after all the action items
have been completed and inspected by the committee’s representative.
Formal design reviews will focus on
The participants
The review leader : characteristics are to be looked for in a candidate for this position:
■ Knowledge and experience in development of projects of the type reviewed. Preliminary acquaintance
with the current project is not necessary.
■ Seniority at a level similar to if not higher than that of the project leader.
■ A good relationship with the project leader and his team.
■ A position external to the project team.
The review team
The entire review team should be selected from among the senior members of the project team together
with appropriate senior professionals assigned to other projects and departments, customer–user
representatives, and in some cases, software development consultants. It is desirable for non-project staff to
make up the majority of the review team.
The prior preparations
The DR session
The recommended post-DR activities.
Formal design reviews will focus on
The prior preparations
DR session are to be completed by all three main participants in the review – the review leader, the review team and
the development team – each participant is required to focus on distinct aspects of the process
Review leader preparations
The main tasks of the review leader in the preparation stage are:
■ To appoint the team members
■ To schedule the review sessions
■ To distribute the design document among the team members (hard copy, electronic file, etc.).
Review team preparations
• Team members are expected to review the design document and list their comments prior to the review session.
• Checklists contribute to the design review’s effectiveness by reminding the reviewer of all the primary and
secondary issues requiring attention.
Development team preparations
• The team’s main obligation as the review session approaches is to prepare a short presentation of the design
document. Assuming that the review team members have read the design document thoroughly and are now
familiar with the project’s outlines, the presentation should focus on the main professional issues awaiting approval
rather than wasting time on description of the project in general.
The DR session
The recommended post-DR activities.
Formal design reviews will focus on
The DR session
The review leader’s experience in leading the discussions and sticking to the agenda is the key to a successful
DR session.
A typical DR session agenda includes:
(1) A short presentation of the design document.
(2) Comments made by members of the review team.
(3) Verification and validation in which each of the comments is discussed to determine the required actions
(corrections, changes and additions) that the project team has to perform.
(4) Decisions about the design product (document), which determines the project’s progress. These decisions
can take three forms:
❑ Full approval
❑ Partial approval
❑ Denial of approval
✔ Software testing programs are constructed from a variety of tests, some manual
and some automated.
✔ All tests have to be designed, planned and approved according to development
procedures.
✔ The test report will include a detailed list of the faults detected and
recommendations about the performance of partial or complete recurrent tests
following a subsequent round of corrections based on the test findings. (The
advantages and disadvantages of automated testing are discussed later.)
✔ It is recommended that software tests be carried out by an independent, outside
testing unit rather than by the project team, as the project team will naturally
find it difficult to detect faults they failed to detect during development as well as
to avoid conflicts of interest.
Software project life cycle components
Software maintenance components
Software maintenance services vary in range and are provided for extensive periods, often several
years. These services fall into the following categories:
■ Corrective maintenance – User’s support services and correction of software code and
documentation failures.
■ Adaptive maintenance – Adaptation of current software to new circumstances and customers
without changing the basic software product. These adaptations are usually required when the
hardware system or its components undergo modification (additions or changes).
■ Functionality improvement maintenance – The functional and performance-related improvement
of existing software, carried out with respect to limited issues.
Software project life cycle components
Software maintenance components
✔ Software maintenance services should meet all kinds of quality requirements, particularly functionality and scheduling requirements
(generally decided together with the customer) as well as budget limitations (determined by the service provider).
✔ The provision of ongoing maintenance services involves the application of a great variety of SQA components. The main SQA
components employed in the quality assurance of the maintenance system are as follows.