Not Signed-In
Which clippings match 'Software Development Lifecycle' keyword pg.1 of 1
19 JANUARY 2011

Single-pass sequential 'waterfall' approach to software development

"I am going to describe my personal views about managing large software developments. I have had various assignments during the past nine years, mostly concerned with the development of software packages for spacecraft mission planning, commanding and post–flight analysis. In these assignments I have experienced different degrees of success with respect to arriving at an operational state, on–time, and within costs. I have become prejudiced by my experiences and I am going to relate some of these prejudices in this presentation. ...

A more grandiose approach to software development is illustrated in Figure 2. The analysis and coding steps are still in the picture, but they are preceded by two levels of requirements analysis, are separated by a program design step, and followed by a testing step. These additions are treated separately from analysis and coding because they are distinctly different in the way they are executed. They must be planned and staffed differently for best utilization of program resources."

(Winston Royce, 1970)

Figure 2 The "waterfall method" (one of numerous development models discussed by Royce in his seminal paper).

Winston Royce (1970). "Managing the Development of Large Software Systems", Proceedings of IEEE WESCON 26 (August): 1–9.



Simon Perkins
06 NOVEMBER 2008

The Waterfall Versus Whirlpool Project Management Methods

"'Whirlpool' projects embrace the fact that requirements are volatile. Instead of trying to deliver a system that satisfies 100% of the requirements in one go, the focus is on delivering an agreed subset of the requirements at intervals. Use cases are the building blocks of requirements and provide a convenient basis for risk assessment and prioritising. The riskiest and most significant use cases are tackled first, within the context of a clearly understood architectural vision. Tackling risk early identifies problems before they become too expensive or threatening, and helps lead to more stable architectures. The system evolves as a sequence of increments, each one an enhancement to the already–delivered functionality.

The development process for each increment is founded on the idea of a workflow, consisting of activities. For example. instead of having an analysis stage followed by a design stage, a worker might be engaged in analysis activities and design activities, depending on the job in hand. It is important to recognise that analysis activities focus on the problem space, while design activities focus on the solution space. A good understanding of one part of the problem may well lead to faster progress to design in that area. It is also possible that design activities highlight shortcoming in the analysis or even the requirements, in which case these are amended to reflect the newer (and hopefully better) understanding.

Successive iterations converge on a more complete, correct and consistent model, leading ultimately to implementation and delivery."



Simon Perkins

to Folksonomy

Can't access your account?

New to Folksonomy?

Sign-Up or learn more.