Question

I've just been involved in a debate regarding semantics of how to define approaches to the software development lifecycle.

As far as I have been concerned, waterfall and agile are not methodologies, they are vaguely defined approaches/models. The definition of a methodology being a set of tools and techniques used to exactly define the steps taken to develop a successful software project.

In my understanding, the following statements are true: -

  • SSADM (Structured System Analysis and Design) is a waterfall methodology
  • Scrum is an agile methodology
  • XP is an agile methodology

Thus, it would not make sense to write: -

  • Waterfall is a waterfall methodology
  • Agile is an agile methodology

Since you would get into a recursive mess.

The issue is, whenever I get into this debate with anyone, they seem to be certain that waterfall is a methodology and so is agile.

An example of what I see as being incorrect is the following article: -

http://en.wikipedia.org/wiki/Software_development_methodology

Methodologies Waterfall Prototype model Incremental Iterative V-Model Spiral Scrum Cleanroom RAD DSDM RUP XP Agile Lean Dual Vee Model TDD FDD DDD

These are listed as methodologies on the wikipedia page and I find that this is just plain wrong. Can someone please correct me and/or let me know what terminology I should be using?

Was it helpful?

Solution

If you call "Waterfall" a methodology, or if you only call something like SSADM a methodology, depends mainly on the level of detail and the context of your discussion. Same holds for "Agile" (though I guess the latter term is not very often considered to be a methodology on its own).

So my advice is: whenever you want to talk about those things, just clarify the context before you run into a fruitless debate.

Natural language is not always precise.

Licensed under: CC-BY-SA with attribution
scroll top