November 19, 2008
Gorman's Law of Tacit Architecture
Nat Pryce recently posted his collection of laws of software development, and well worth a read it is, too.I have my own law to add, of course:
---------------------------------------------------------------------------------------
GORMAN'S LAW OF TACIT ARCHITECTURE
The cumulative effect on system quality of all the low-level design decisions that are never planned or explicitly communicated vastly outweighs the effect of all the planned, documented design decisions.
These hidden, unspoken design decisions exert their own gravitational pull on system quality that often comes as a total surprise to architects who tend to only take their high-level architectural models into account when assessing quality. In that respect, they're a lot like dark matter.
-----------------------------------------------------------------------------------------
I've lost count of the number of times I've been told that an MVC implementation, for example, has a "clean separation of concerns" only to discover through basic dependency analysis that the M, the V and the C are so tightly coupled people are beginning to talk.
Posted 13 years, 2 months ago on November 19, 2008
Navigation
Blogs I Read
Sections
Third-Generation Testing
Agile Development
Apes With Hobbies
Application Lifecycle Management
Apprenticeships
Architecture
Back To Basics
Bletchley Park
Boffoonery!
Books
Codemanship
Code Smells
Complexity
Continuous Inspection
Education
Events
In The News
Innovation
Legacy Code
Metrics
Microservices
Multithreading
Music By Programmers
Site News
Nonlinear Management
Podcast
Post-Agile
Products
Professionalism
Reality-driven Development
Refactoring
Reliable Software
Requirements
Small Teams
Software Craftsmanship
Software Process Improvement
Test-driven Development
UML
User Experience Design
Agile Development
Apes With Hobbies
Application Lifecycle Management
Apprenticeships
Architecture
Back To Basics
Bletchley Park
Boffoonery!
Books
Codemanship
Code Smells
Complexity
Continuous Inspection
Education
Events
In The News
Innovation
Legacy Code
Metrics
Microservices
Multithreading
Music By Programmers
Site News
Nonlinear Management
Podcast
Post-Agile
Products
Professionalism
Reality-driven Development
Refactoring
Reliable Software
Requirements
Small Teams
Software Craftsmanship
Software Process Improvement
Test-driven Development
UML
User Experience Design
Props: