I recently had cause to be explicit about the principles of systems architecture that I think are important. These are very personal, meaning these have worked for me in the past when architecting a system. I thought I would share them here, in a series of blog posts, for all the world to see. These influence how I think about systems, how I design them, how I critically judge systems, and the guidelines I use to evolve an existing system. I would welcome any feedback on your experiences and thoughts on architecture principles.
Principle 1: (My) Definition of Good Architecture.
Principle 2: You can't do everything for everyone.
Principle 3: What can go wrong will go wrong.
Principle 4: Systems exist to solve a need.
Principle 5: Systems exhibit emergent behavior.
Principle 6: System design drives life cycle costs.
Principle 7: You can't escape the laws of physics.
Principle 8: Beware of software.
No comments:
Post a Comment