I had the pleasure of hearing a talk by Stewart Baird today, and I liked one of his ideas so much I thought I’d mention it here.
Object-relational mappers, IoC, ESBs, REST etc are all a big deal when you’re introducing them to teams or working with contractors who haven’t used them before.
To explain how it all fits together, you should create an architectural example — a reference system that implements a single, simple behaviour. To be effective, it should:
- Be end-to-end. It should demonstrate how events and data flow from the user interface through to the database and back, including any and all services in between.
- Be checked into source control. Publish it alongside the production code so everyone can see it.
- Lead your production code. When you introduce a new component — e.g. a distributed cache — add it to the architectural example first, before rolling it out to your main system.
It’s always nice if you can explore and see everything working for yourself. An architectural example can help explain new topics to less-experienced developers, and provide a nice reference of how you want to see things implemented in future.
September 29th, 2009 | 4 Comments



September 30th, 2009 at 11:15 am
Yeah I’ve been on the hunt for something like this for a long while. I was hoping Ayende was going to build Macto http://ayende.com/Blog/archive/2009/07/25/macto-an-end-to-end-sample.aspx !!
September 30th, 2009 at 11:43 am
Macto = a rare pokemon ;)
October 1st, 2009 at 9:27 am
Very nice! I’ve been wondering about Architectures lately. Do you have any thoughts about adding functionalities to classes?
October 1st, 2009 at 10:42 am
Balaji I’m not sure, what exactly do you mean?