Professional Documents
Culture Documents
Software Engineering 10th Edition Sommerville Solutions Manual
Software Engineering 10th Edition Sommerville Solutions Manual
2 Software Processes
2.1 Giving reasons for your answer based on the type of system being
developed, suggest the most appropriate generic software process model
that might be used as a basis for managing the development of the
following systems:
2.3 Consider the integration and configuration process model shown in Figure
2.3. Explain why it is essential to repeat the requirements engineering
activity in the process.
There is a fundamental difference between the user and the system requirements
that mean they should be considered separately.
1. The user requirements are intended to describe the system’s functions and
features from a user perspective and it is essential that users understand
these requirements. They should be expressed in natural language and may
not be expressed in great detail, to allow some implementation flexibility.
The people involved in the process must be able to understand the user’s
environment and application domain.
2. The system requirements are much more detailed than the user requirements
and are intended to be a precise specification of the system that may be part
of a system contract. They may also be used in situations where
development is outsourced and the development team need a complete
specification of what should be developed. The system requirements are
developed after user requirements have been established.
2.6 Explain why change is inevitable in complex systems and give examples
(apart from prototyping and incremental delivery) of software process
activities that help predict changes and make the software being developed
more resilient to change.
2.9 Suggest two advantages and two disadvantages of the approach to process
maturity that is embodied in the SEI’s Capability Maturity Framework.