Software Engineering CH2 - Software Process
What systems are appropriate for the waterfall model
1) Embedded systems where the software has to interface with hardware systems 2) Critical systems where there is a need for extensive safety and security analysis of the software specification and design 3) Large software systems that are part of broader engineering systems developed by several partner companies
What are the stages of the waterfall model
1) Requirements analysis and definition 2) System and software design 3) Implementation and unit testing 4) Integration and system testing 5) Operation and maintenance
What are the three main activities in the requirements engineering process
1) Requirements elicitation and analysis 2) Requirements specification 3) Requirements validation
What are the three main activities involved in the requirements engineering process?
1) Requirements elicitation and analysis 2) Requirements specification 3) Requirements validation
Name three types of software components used in Reuse-oriented approaches to software engineering
1) Requirements specification 2) Software discovery and evaluation 3) Requirements refinement
What are the stages of integration and configuration
1) Requirements specification 2) Software discovery and evaluation 3) Requirements refinement 4) Application system configuration 5) Component adaption and integration
What are the three types of software components frequently used in integration and configuration
1) Stand-alone application systems that are configured for use in a particular environment 2) Collections of objects that are developed as a component or as a package to be integrated with a component framework such as Java Spring framework 3) Web services that are developed according to service standards and that are available for remote invocation over the internet
What are the three major advantages it has over the waterfall model
1) The cost of implementing requirements changes is reduced 2) It is easier to get customer feedback on the development work that has been done 3) Early delivery and deployment of useful software to the customer is possible, even if all of the functionality has not been included
From a management perspective, what are the two problems with the incremental approach
1) The process is not visible 2) System structure tends to degrade as new increments are added
What are the three general process models
1) The waterfall model 2) Incremental development 3) Integration and configuration
Why is requirement engineering considered as a critical stage of the software process?
If mistakes are made at this stage it inevitably will lead to later problems in the system design and implementation
What is incremental development
This approach interleaves the activities of specification, development, and validation
What is integration and configuration
This approach relies on the availability of reusable components or systems
What is the waterfall mdoel
This takes the fundamental process activities of specification, development, validation, and evolution and represents them as separate process phases such as requirements specification, software design implementation, and testing
Why should prototype systems not be used as production systems
a
Why should systems not be tested as a single, monolithic unit, except for small programs?
a