Software Architecture Fundamentals - 1
Notes from the Software Architecture Fundamentals a video series on Safari books online.
Choice of technology should not drive architecture
Experience of having seen some badly implemented projects helps architects.
Good to know what is software design ?.
What’s the goal of architecture? A document?
Deal with bits not atoms, more malleable.
Design is complete source code. Building is easy. Maintaining is complex.
Low tolerance for error.
Hard to track.
No economies of scale as components are all unique compared to say nuts/bolts.
No predictability - but can test.
Cheap to build, expensive to design.
Recurring memes
Architect for change.
Software/Architecture becomes iterative.
No architecture can solve all the problems.
Understand why things work, not the mechanisms.
Separate goals from approaches.
Architecture isn’t a goal but a snapshot.
Architecture is coupled to process (Continuous Delivery).
Soft-skills are important.
Continuous Delivery.
Understanding large code bases.
Expectations from Architects
Keep up-to-date with latest trends
Recommend solutions
Compliance
Exposure to multiple technologies
Lead people
Guide technical decisions
Navigate politics
Aspects
Leadership
Technical knowledge
Business domain knowledge
Methodologies and strategies