§ Software Architecture
In Theory Building View of programming, programmers do not merely construct programs and write code, but rather build a theory. The theory tries to describe how the system is to operate with the real world or model it. The theory also defines how it is to be applied.
As a software architect, try to transfer the theory you built to others. This will ensure that extensions they built into the system are compatible with the theory.
Start with a metaphor of the system, draw major blocks, and describe their responsibilities.