Assignment title: Information
Software Lifecycle
Exercises
1. How does the description of a system relate to the notion of process models? For example, how do you decide what the boundary should be for the system described by a process model? What has to be defined for these boundaries?
2. For each of the process models described in this lecture, what are the benefits and drawbacks of using the model?
3. For each of the process models described in this lecture, how does the model handle a significant change in requirements late in development?
4. Draw a diagram to capture the process of buying an airplane ticket for a business trip.
5. Using the notation of your choice, draw a process diagram of a software development process that prototypes three different designs and choose the best one among them.
6. In this lecture, we suggested that software development is a creative process, not a manufacturing process. Discuss the characteristics of manufacturing that apply to software development and explain which characteristics of software development are more like a creative endeavor.
7. Should a development organization adopt a single process model for all of its software development? Discuss the pros and cons.
8. Suppose Amalgamated, Inc., requires you to use a given process model when it contracts with you to build a system. You comply, building software using the prescribed activities, resources, and constraints. After the software is delivered and installed, your system experiences a catastrophic failure. When Amalgamated investigates the source of the failure, you are accused of not having done code reviews that would have found the source of the problem before delivery. You respond that code reviews were not in the required process. What are the legal and ethical issues involved in this dispute?