Three Ways to Bridge the Gap Between Waterfall and Scrum
In the startup world, Agile is king. Entrepreneurs are constantly exploring new product ideas, new marketing strategies, and new business models. To be effective, their teams need a framework for creating that enables quick iterations and constant learning. As long as you apply one of the many frameworks of Agile, you can pat yourself on the back for embracing modern product development practices.
But what if you don’t have the luxury of going Agile? In established companies that might be less focused on Exploring and more on Expanding or Extracting, this is often the case. Because the cost of shipping faulty software is sometimes prohibitively high, a waterfall approach where software is carefully designed, implemented, tested, then launched (in that order) is often the preferred approach to software development.
Both approaches have their advantages and disadvantages — Waterfall results in less product variability, often at the cost of rapid iterative learning, but the end result is less error-prone and more stable. Agile results in faster product increments, increasing the likeliness and speed of achieving product-market fit, at the expense of stability. Which approach would you take if you were programming a search engine? How about a spaceship?