Ehsan Ghanbari

Experience, DotNet, Solutions

Is there any need to migrate from waterfall to agile?

If you take a deeper look at agile manifesto:

  1. Individuals and interactions over processes and tools
  2. Working software over comprehensive documentation
  3. Customer collaboration over contract negotiation
  4. Responding to change over following a plan


You will find out that it's all about a way of good thinking and culture. agile allows for organic changes and improvements along the way, even to project specifications.  agile dictates that communication among the team must occur daily so that everyone is aware of individual progress.


What's wrong with the waterfall?

it's completely obvious that the waterfall approach is step by step and each step is predictable, In iterative Waterfall, time is fixed, and scope is broken into segments to fit the allotted time and resources. Each iteration must go through requirements, design, build and test and is executed in a slightly staggered schedule, meaning that each iteration starts just before the previous iteration is complete. The advantage of the iterative waterfall is that it provides clear points to change requirements and receive users’ feedback, reducing re-work and time to delivery. The disadvantage is that it creates more potential points of failure and additional work for the project manager. Alternatively, you could attempt to change your organization to make Agile a better fit. As pointed out earlier, changing an organization’s culture is a difficult project and should be planned carefully.


How to Move From Waterfall to Agile



As you can see in the source page of the picture above on here, don't think that agile overrides the waterfall! Agile is a new way of thinking about software development and it's not the best solution for all problems. Changing a methodology must be accompanied by a comprehensive change management and strong leadership as it's not an easy task.

The transition from waterfall to agile software development requires careful planning. The collaboration and flexibility that agile brings can result in a better end product for your client, and a more engaged, harmonious internal team. There are several methods to implement agile like scrum. In the scrum, there are some rules like daily meetings of team members, Poker planning that makes rapid completion of incremental tasks, shortened work cycle called 'Spring' which makes complete smaller increments of a product to get feedbacks frequently consider the project progress very quickly. What I personally interested in about agility is that team members by working together understand each other and their weaknesses, so it makes a kind motivation to facilitate the lacks.

About Me

Ehsan Ghanbari

Hi! my name is Ehsan. I'm a developer, passionate technologist, and fan of clean code. I'm interested in enterprise and large-scale applications architecture and design patterns and I'm spending a lot of my time on architecture subject. Since 2008, I've been as a developer for companies and organizations and I've been focusing on Microsoft ecosystem all the time. During the&nb Read More

Post Tags
Pending Blog Posts
Strategic design
Factory Pattern
time out pattern in ajax
Selectors in Jquery
Peridic pattern
How to use PagedList In MVC
Redis as a cache server
Domain driven design VS model driven architecture
How to query over Icollection<> of a type with linq
What's the DDD-lite?
comments powered by Disqus