I find it strange, to what extent people dive into the process of software design while calling it system design. Is your dev team junior or senior? Are they all in an office somewhere or divided between two sites 4 timezones appart? How’s the leadership structure? Your software architecture must form a coherent part of the organizational, dare I say Enterprise, architecture. And since the latter is rarely sensibly managed, there’s a limit to what you actually can do with software. Heck, the knowledge, that some time within next 6 months someone is going to make a really random strategic decision nullifying most of your design is a really important input to your design process.Your system very rarely is just the software and at the very least the system context (of which customers are a part) is a major driver of your decisions. This boundary between software and organization architecture is where engineering fails and that truly good architects excel at: they understand what they cannot influence and go deliberately after what they can.
No comments yet.