Archive for September, 2012

What is Software Architecture?

It’s about designing systems to support an initial release on the PowerPoint platform, using¬† patterns,¬† boxes and arrows.

No – what is software architecture, the essence of it?

It’s an exercise in user experience design.

The history of computing can be seen as a series of attempts to make building software simpler to understand.

This is because the number of factors we can keep in mind at the same time is limited; The level of detail to which we can understand problems and reason about them is constrained by time and capacity.

If we get overwhelmed by complexity we get bugs and it takes longer to deliver the system. We fail to meet the objective: Most of us produce marketable features for sale, directly or indirectly. Simplicity speeds us up. Complexity slows us down. Slow delivery means less to sell and ultimately less money to pay us with.

The user experience of building, deploying and maintaining marketable features must be simple. This is the goal of software architecture.


September 8, 2012 at 7:31 am Leave a comment