From the course: Software Architecture Foundations

Unlock the full course today

Join today to access over 22,600 courses taught by industry experts or purchase this course individually.

Top down vs. bottom up

Top down vs. bottom up

From the course: Software Architecture Foundations

Start my 1-month free trial

Top down vs. bottom up

- Moving on, that agile way of working, building incrementally around the needs of the users, has resurrected a design methodology that's been around for a long time, domain-driven design or DDD, developed by Eric Evans back in 2004. More and more modern systems are domain-focused. The basic notion underlying DDD is that the structure of the code exactly maps to the structure of the problem domain. For example, if you are writing an accounting system, the core of your system would be modules or classes that represented accountants and ledgers, and balance sheets, and credits and debits, and all of the other things that an accountant would think of about doing while doing his or her work. DDD-based systems are rarely in-tiered systems because the tiers are a technical thing. They don't model any part of the domain. A database layer, for example, is obviously organized around the database server, not a ledger or a balance sheet. Because of that, the structure of the domain in which our…

Contents