Monday, May 09, 2011

Big Ball of Mud Architecture is like cancer; tools and policy are like chemo

..meaning they're the best answer we have, and all they can do is inhibit the spread.

Any enterprise has software that has technical debt, and it will keep increasing.

Tools that will help:

  • Visualization of the architecture - logical and deployment; show multiple views.
  • Tools that inhibit deviations from the blessed architecture instead of tribal control
  • Tools that embody promised features in the code
  • Code review via tools
  • Incremental code quality tools
Policy
  • Reduce impedence mismatch between the logical and the physical namespaces. eg: java package namespace is different from the deployed jars and that namespace.
  • Map source control artifacts and deployment artifacts - make it 1-1 as much as possible
  • Make setup and run for newbies as easy as possible. Not ok to have your bootcamp say "this is a difficult environment. Deal with it". Early success is a big confidence booster.

No comments: