Chapter 9. Vive L' Évolution

Agile software development is evolutionary, not serial. Deal with it.

Would you use the same methodology to create a Web page describing your family and the embedded software for a NASA space probe? Of course not. Would you take the same approach with a team of six people that you would with a team of 600 people? Once again, likely not. Different situations obviously call for different approaches, and in the two situations I've described this is clearly true.

Unfortunately, many people struggle when the differences aren't so clear. Should you follow the same process for a building an n-tiered Web application as you would for a data warehouse? Should you follow the same process for building an online version of your customer ordering system that you successfully followed 10 years ago when you built the existing system that your internal customer service representatives now use? The answer to both questions is no. An n-tiered application requires a different set of primary artifacts than a data warehouse — different technologies are best modeled and built using different techniques. The requirements for an online customer ordering system aren't clear, as you may have noticed from the wide variety of ecommerce strategies in the past few years, when compared to your internal system built years ago. The implication is that the near-serial process that you followed years ago, a process that is very likely resistant to change, isn't up to the dynamic nature of ...

Get Agile Database Techniques: Effective Strategies for the Agile Software Developer now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.