February 15, 2007

Complexity

There's something inherently fascinating about Object Oriented thinking. It connects with me a very fundamental level, so I'm just giving it the status of "basic truth" at the moment. See this definition of complexity from Booch's text book on OO Analysis and Design. And tell me one good reason why it shouldn't apply to any complex system.
Replace his "software complex systems" with any other form of complex systems - people, communities, relationships, design, - and see how true it rings:
  • Systems are inherently complex - the complexity of the system often exceeds the human intellectual capacity.
  • The trick to making complex systems "usable" is to engineer an illusion of simplicity.
  • Complex systems usually evolve from stable intermediate forms
  • Complex systems can be viewed upon things or processes. there are complelling reasons for us to see the world as a meaningful collection of objects people that collaborate to achieve some higher level behavior

No comments: