You need to log in or register to create posts and topics.

Agile versus Waterfall techniques

Agile or Waterfall? Why agile is better? Can we use both? I've just started in PM, wanna figure out what works best.

You're actually asking the right questions, which means you're on your way to become successful in your project management endeavor. Choosing the right approach is the first thing you do when undertaking a project, and it's important that you seek guidance from your more experienced colleagues and communicate your ideas and share feedback with teammates along the way.

At the very basic level, there are two approaches to software development -- linear and cyclical. As you may have guessed, the waterfall approach is the former, and agile is the latter.

The 'waterfall' consists of six distinct stages: discovery, design, coding, testing, deployment, and maintenance. Each of those stages has a clear list of deliverables, which must be completed before a team can move any further. The approach is most suitable for fixed-price projects with quite accurate estimates and doesn't really suit more agile businesses and startups, where everything constantly changes.  If you have a fixed budget and can wait with other products before you complete one, then perhaps the 'waterfall' is for you.

However, if you're dealing with a high degree of uncertainty and need to release new features as fast as possible, then the agile approach is the way to go. Agile teams work in short iterations, each of one to four weeks when they design, build, and test features before they release them to end-users. That works well in startup environments where it's imperative to know if what you're developing makes sense to your customers and whether they really need it. The agile methodology decreases the risk of failure and cuts the time it takes for a product to reach its market.

Theoretically speaking, you can combine the approaches in your company if, for example, you're working on several products, some of which are fixed-priced with signed contracts upfront, and others are more experimental and do not have a clear set of deliverables. The 'waterfall' might also work better for larger teams that don't require too much coordination or distributed teams that would like to receive their assignments well in advance so they can work from home. Agile works best for small and medium-sized companies that have a high level of integration and need to interact with each other on a regular basis.

If you have found a spelling error, please, notify us by selecting that text and pressing Ctrl+Enter.