DDD Step By Step
A Practical Guide to Domain Driven Design
Evolutionary Architecture by Jimmy Bogard
A popular cause the Agile folks like to rally against is the idea of a Big Design Up Front (BDUF).  But much like Waterfall, the people doing BDUF will hardly admit that it’s BDUF that they’re doing.  Instead, you’re much more likely to get a bevy of really convincing cautionary tales of what might happen if you don’t do a certain design.  With enough experience under their belt, the architect slips into a “Just-In-Case” design mode, where the myriad of pain points encountered in the past leave a design that’s hardened against every possible difficulty that might come up. Instead of a well architected design, you’ll have one that’s over-abstracted, over-engineered, over-complicated and very difficult for the next developer to come on board and understand.  But there’s an alternative approach.  The better choice instead of BDUF is a collection of design and architecture techniques that both delay decisions until they’re absolutely necessary, and refactoring practices to evolve our design when assumptions are proved incorrect. Technique #1: YAGNI YAGNI stands for “ You Aren’t Gonna Need It ”.  It’s a generally philosophy of waiting until code actually needs to be written before writing it.  Instead Read More...

Read the complete post at http://feedproxy.google.com/~r/LosTechies/~3/2g_hN_jTAGc/evolutionary-architecture.aspx


Posted Fri, Jan 29 2010 1:47 AM by DDD Feeds