Bog'liq Software Engineering Architecture-driven Software Development ( PDFDrive )
292 CHAPTER 17 Software Requirements Definition
The software requirements definition stage occurs one time during the software
development effort unless an incremental or evolutionary development strategy has
been chosen. This stage generates the requirements specifications against which
the computing environment and software product will be developed. The software
requirements analysis practice will be conducted throughout the software engineer-
ing effort to resolve challenges or risks associated with the software product or
post-development process requirements.
During this stage of development the focus is to ensure that the requirements
specified for the software product and post-development processes are complete,
feasible to achieve within project objectives and constraints, and introduce mini-
mal risks to the project. Functional analysis and allocation should be performed to
decompose software product requirements and allocate them among the software
configuration items and elements of the computing environment. At this stage of
development, the software product physical architecture should identify the soft-
ware configuration items and the elements of the computing environment. This
results in specifications for the software configuration items, the software external
interfaces, and the computing environment.
Staffing for the software implementation, computing environment implementa-
tion, post-development, and test and evaluation organizations should be limited to
the personnel qualified to support the software engineering effort. There are no ben-
efits to be secured by excessively staffing these organizations until the state of the
software architecture warrants workforce escalation.
The software requirements baseline must be established to control the require-
ments against which the product is to be developed. This is a technical baseline that
is to be managed by the software engineering integrated product team (SWE-IPT)
until the formal functional requirements baseline is established. The software require-
ments baseline should not be established until the software architecture has been ver-
ified to be adequately specified, congruent, and amenable to all stakeholders. Once
the software requirements baseline has been established, the technical change con-
trol board (CCB) must approve changes to this baseline. Once the functional require-
ments baseline is established, the project-level CCB must approve changes to it.
Whenever there is a proposed change to the requirements the SWE-IPT should
evaluate the impact of the change on the requirements baseline. The software
requirements analysis tasks should be performed to identify alternative require-
ments assertions that satisfy the proposed change. The software analysis practice
should be performed to determine the best requirements statement to be specified.