In software engineering, what's the name of a development process like the waterfall model, but with more cycles? Does something like this exist?

In my case, I developed the parts of my application separately and went through all the steps in the waterfall model (requirements, analysis, design, implementation, testing). At the end I put everything together.

Is it wrong to call it waterfall process with 4 cycles?

  • Nope, matches the WF-model almost perfectly, now all you have to do is to get into the "maintenance-phase" to have a 100% match... wikipedia
    – Fredrik
    Jul 17 '11 at 22:22
  • Actually, no. It's an almost perfect match to Steve McConnell's Waterfall with Subprojects. The only difference is WwS is typically done with teams for each component so they are done simultaneously, while @Ricky Robinson was working alone so did one at a time.
    – Thomas Owens
    Jul 17 '11 at 22:41

It sounds like you are describing what Steve McConnell called Waterfall with Subprojects. In this methodology, you waterfall through conceptualization, requirements engineering, and architectural design. Then, for every major component, you then proceed through a detailed design, coding, and testing phase. At the end, you integrate the components in a system testing phase.

Steve McConnell's Waterfall with Subprojects (http://www.otssolutions.com/software-development-methodologies.html)

Typically, this is done by multiple teams at the same time, each working on a separate component. However, because you were working alone, it probably resembled a more iterative approach. The key difference between Waterfall with Subprojects and a true iterative approach is when you do the integration. In Waterfall with Subprojects, it comes at the completion of all subprojects. With a truly iterative approach, it happens continuously and you are fully integrated at the end of every iteration.


I believe what you're looking for is The Spiral Model. From the wikipedia page, "The spiral model combines the idea of iterative development (prototyping) with the systematic, controlled aspects of the waterfall model. "

  • That's what I thought at first, but it's not exactly the spiral model. The spiral model is for a single unified system that's being built. The question mentions four distinct applications, each was built with a single waterfall. If the four subsystems were treated as a single unit and built simultaneously as-needed, then it would be much closer to spiral.
    – Thomas Owens
    Jul 17 '11 at 22:38

In my opinion you described a typical iterative and incremental development process but this actually depends on the definition of "parts of my application." If you consider every part of the application as a atomic entity with its own life-cycle (integration, maintenance, decommissioning, etc), then yes, you have 4 separate projects each of which is developed using waterfall process.

Updated following your commend:

From wait you are saying it seems like you are talking about development of 4 subsystems but the final output is a system, which depends on the other 4. If you subsystems don't have their own life cycle (including integration, etc) then you cannot define the whole process as 4 parallel waterfall processes.

  • No, maintenance and deployment were done only on the application as a whole, at the very end of development. So is it iterative?
    – Ricky Robinson
    Jul 17 '11 at 22:32
  • No, it's not truly iterative. To be truly iterative, you need to integrate and deploy at the end of every iteration. Iterative is really a sequence of waterfalls, one after another, each ending with a testable and (possibly) deployable system.
    – Thomas Owens
    Jul 17 '11 at 22:37
  • @Thomas Ownens I agree. I missed the integration part.
    – Pencho Ilchev
    Jul 17 '11 at 22:51
  • Yeah. I did at first, which is why I changed my thought from spiral to Waterfall with Subprojects. Although it's hard to fit a methodology designed to account for team activities to a single person.
    – Thomas Owens
    Jul 17 '11 at 22:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy