click below
click below
Normal Size Small Size show me how
CS 3354 Test 1 CH2
| Question | Answer |
|---|---|
| What is a software process? | A structured set of activities required to develop a software system. Many different processes exist, but all involve specification, design and implementation, validation, and evolution. |
| What are the universal process activities inherent to all software engineering methodologies? | Specification, design and implementation, validation, and evolution. (Generic framework activities: communication, planning, modeling, construction, deployment.) |
| What is a software process model? | An abstract representation of a process that describes it from some perspective. Descriptions may also include products, roles, and pre- and post-conditions. |
| List 3 generic process models that are used in software engineering? | Waterfall, incremental development, and integration and configuration (textbook). The slides also cover the V-model and evolutionary models (prototyping, spiral). |
| Why are iterations usually limited when the waterfall model is used? | Each phase must be complete and approved before the next begins, and the emphasis on documents and specifications makes going back costly. Its inflexible stages make responding to change difficult. |
| What are three benefits of incremental development, compared to the waterfall model? | 1) Lower cost of accommodating changing requirements (less analysis and documentation redone). 2) Easier customer feedback. 3) More rapid delivery and deployment of useful software. |
| What are the development stages in integration and configuration? | Requirements specification, software discovery and evaluation, requirements refinement, application system configuration, and component adaptation and integration. (Textbook, not in slides.) |
| Why is it increasingly irrelevant to distinguish between software development and evolution? | Fewer and fewer systems are completely new. Software is inherently flexible and must keep changing as business circumstances change, so most work modifies existing systems. |
| What are the advantages of using incremental development and delivery? | 1) Lower cost of accommodating changing requirements. 2) Easier customer feedback on work done. 3) More rapid delivery and deployment, so customers gain value earlier than with waterfall. |