Tutorial @ QCon London 2011
Understand the drivers and collaborate to do just enough architecture
I'm running a tutorial at the upcoming QCon London conference entitled Designing software, drawing pictures. In essence, it's about the process of designing software if all you have is a blank sheet of paper and a set of vague requirements. Much of what we write about on this website is about software architecture ... defining structure, putting sufficient foundations in place, laying out the vision for a software system and then carrying that through the project to a successful conclusion. It's really just another angle to software craftsmanship and I firmly believe that software architecture needs to be done on most software projects, but of course it doesn't have to be about "big design up front". Even the most agile of projects can benefit from the introduction of the consistency and clarity that lightweight software architecture brings.
Why?
So why the tutorial? Well, it's a 1-day version of our Software Architecture for Developers training course where you'll be asked to design some software, choose some technologies and draw some diagrams to illustrate your design. Most people I've worked with, trained and coached don't tend to design a software system from scratch all that frequently (if at all) and it therefore follows that this is the area where most people lack experience. This tutorial is about providing developers with the opportunity to design something from scratch while receiving guidance about how to simplify the design and how to illustrate that design using a collection of simple pictures. After all, if we're losing our technical mentors to non-technical management positions, how do the software architects of tomorrow gain experience in this area?
You can find more details of the tutorial on the QCon London 2011 website. Join us if you want to know how to go about the software design process in a lightweight, structured and pragmatic way.

