Monthly Archives: May 2018

Steal this Architecture – Attribute Drive Design

I often ask myself, “What is software architecture?” I asked this same question to all of my co-workers. I struggled defining what is software architecture, and what is it that a software architect actually delivers.

A typical answer to that question is that a software architect designs the interfaces of a software system and the important decisions made to complete it. They will understand the how and the why.

This definition makes perfect sense during a conversation, but I find that definition has less impact when written down, although there is some truth to the above definition.

Is a software architect just a bad ass developer that is good at making sketches on a white board?

I have walked away from many meetings that had architectural sketches in it thinking that although it was a step in the right direction, it was useless as a software architecture deliverable. Quite often, that informal sketch was often the only software architecture guidance.

In this post, I’ll do a deep deep-dive into software architecture in order answer “What is software architecture?”

Continue reading