I recently saw Simon Sinek‘s TedX talk on Start with Why (see below) talking about leadership.
But WHY am I telling you this? For one, it’s a good talk on leadership and inspiration in itself (well worth the 18 minutes or so it would take you to watch it). The main reason, however, as the title says, is that it also pertains to software architecture decisions.
Simon talks about “the golden circle” going from Why -> How -> What. Saying most people work from the outside in (rarely getting to the why) and leaders work from the inside our (starting with Why). It is true for us as well – Software architecture decisions should start with why
We’re not just building an SOA (What) using mule or nservicebus (How) we’re doing that to build a flexible solution so that we can respond to … Read More »
Before we talk about the what/how let’s do a quick recap on the why we’re here:
Architecture is important to software projects
Architecture and agile have some conflicting forces that needs to be reconciled (e.g. up-front work, hard to change vs. delivering business value quickly and embracing change)
design can be emergent but architectures can’t and must be grown instead
Another important point to remember is that sometimes you can get away with it. By “get away with it” I mean you can make 1 day or less design session opt for an off-the-shelf architecture, usually that also means choosing a product (e.g. Rails or Django) and it would be good enough for your project. This is usually true for small project or for projects which are ver/y familiar (and thus rather predictive and for the most part can be handled by waterfall processes).
If your project … Read More »