Over a million developers have joined DZone.

A Short History of Iterative Software Development

DZone's Guide to

A Short History of Iterative Software Development

· Agile Zone
Free Resource

Reduce testing time & get feedback faster through automation. Read the Benefits of Parallel Testing, brought to you in partnership with Sauce Labs.

It is useful to know about the various iterative software development project methodologies and how they originated, not so that you can follow them religiously but so that you can add them to your bag of tricks.

I recommend learning about the following.

  • Kanban (1953), whose origin lies within the Toyota manufacturing process innovations
  • Scrum (1986), and its storied origin in the 1986 Harvard Business Review seminal article The New New Product Development Game, which examined 6 major Japanese and American companies to conclude that successful teams had replaced sequential approaches with iterative ones
  • Rational Unified Process (1996), proposed by IBM in response to some of the growing market forces looking for alternatives to the Waterfall family of methodologies
  • Lean (1998), and its origin in Toyota's manufacturing system
  • Agile (2001), especially the contents and motivation behind the Manifesto for Agile Software Development, written by many of the software development thought leaders of our time

A good starting point might be to read the content at the two links I've provided in this post.

I believe it is more important to understand the driving forces behind these movements than it is to understand the detailed practices that are in vogue today.

On most projects, I end up adopting or recommending not a pure version of any one of these methodologies, but a hybrid methodology employing those practices and techniques that seem best suited for the team and project at hand.

A final word. Whereas the methodologies listed above mostly concern themselves only with the softer aspects of project management, it is important to understand what I call technical Agile practices, i.e. the many software development tools and practices (e.g. unit testing, continuous integration) that must be mastered in order to extend the theories expounded in these methodologies into practical reality.

The Agile Zone is brought to you in partnership with Sauce Labs. Discover how to optimize your DevOps workflows with our cloud-based automated testing infrastructure.


Opinions expressed by DZone contributors are their own.


Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.


{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}