1 Waterfall
In the article Managing the Development of Large Software Systems discuss the following:
- What are Dr. Royce arguments for why the format of the testing phase is a problem?
- How does Dr. Royce suggest to “fix” the testing phase?
- What is Dr. Royce’s view on documentation and why?
- What does Dr. Royce use his documentation for in the different stages?
- What are the benefits of Dr. Royce’s design in Figure 7, Step 3?
- Why is Step 5 important? Or is it?
2 Waterfall and V-Model
Use the other litterature answer the following questions:
- Describe the different phases in Waterfall.
- What is input and output of each phase
- What activites takes place in each phase?
- What are the major differences in Waterfall and the V-Model?
- What benefits are there?
- What drawbacks are there?
- What are the underlying assumptions behind Waterfall?
- What things must be in place?
- In the teams
- In the environment
- In the problem domain
- At the customer
- Can you specify some commen properties of problems that would suit a Waterfall approach?
- What things must be in place?
- If you were to implement a longterm project (> 2 months), would you use Waterfall? Why? Why not?
- If you were to implement a shorterm project (< 2 months), would you use Waterfall? Why? Why not?
3 Examples
Do an Internet Scavenger Hunt and find examples of successful and failed software projects that used the Waterfall approach. What industries prefers the Waterfall approach to development and why?
4 A Compiler
I have had this great idea to implement a new type of compiler for a revolutionary new language. The Language is codenamed Zebra and I have some ideas for how to structure it. Several modules inside the project are required: One for parsing the input, one for building up a data structure with the different operations and one for outputting the compiled code as assembler code.
I want to use the Waterfall approach for this system, but I’m not sure if I should use one Waterfall process for the entire thing in one go or split the project up into several smaller Waterfall streams with one stream pr module. What is your input?