143
8.1
Project analysis tasks
a requirements baseline and not allowing it to change. As the software engineer-
ing process is executed, derived requirements will emerge that affect the ability of
the development effort to deliver the solution on time and within budget. Allowing
requirements to be changed or added to the effort will only make this situation
worse. If a requirement is to be changed, then it should be modified in a manner
that simplifies the development work effort by reducing or eliminating risks to the
program.
Customer needs and expectations must be captured as the source of the require-
ments that will be specified for the computational environment and software appli-
cation. Every effort should be made to minimize the number of customer needs and
expectations by capturing them in terms of how the solution is expected to oper-
ate or support the customer’s business processes. Customer expectations should not
imply a design constraint on the solution, but should address the way in which data
will be accessed and processed.
Software development projects are typically established within an enterprise
organization. The enterprise represents a business entity, government, or social
organization that operates for stated business purposes. All enterprises have policies
and fiscal responsibilities. Development programs that do not perform as expected
impact the enterprises’ financial stability. When a program is established, the enter-
prise establishes cost and schedule objectives that constrain what can be achieved
and delivered by the software development program. In addition, policies may dic-
tate the conduct of technical reviews, quality programs, use of technologies, etc., all
of which affect the development effort and the final solution.
Enterprise and program constraints must be captured since they will form the
basis for governing the software development effort. Constraints affect the solution
space and burden the development effort by restricting design alternatives. The use
of standards, computer-aided software engineering (CASE) tools, networks, and
even computer languages will impact the development effort and affect cost and
schedule. These constraints must be captured as an additional source of stakeholder
requirements. This recognizes the enterprise and program management team as
additional customers who have expectations of their own and are stakeholders in
the software development program’s success.
External constraints are implied by laws, regulations, or industry policies asso-
ciated with the problem being solved by the development program. External con-
straints affect the solution space and must be complied with for the design solution
to be politically and socially sound. It is important to identify all possible con-
straints to the program that will affect the design solution before the requirements
are baselined. External constraints are a type of requirement that cannot be deviated
from, where software requirements can be changed or negotiated among the soft-
ware development team, enterprise, and customer.
An example of an external constraint is the public law requiring that the
video game industry rate the content of each game in terms of recommended age
restrictions based on bloodshed, violence, and sexual content. The Entertainment
Do'stlaringiz bilan baham: |