Open systems

  • reactive -- {\em \c{flexible (dynamic)} choice of actions}
  • modular -- {\em (static) scalability}

Dimensions of modularity

  • encapsulation boundary -- {\em interface \c{to client}}
  • distribution boundary -- {\em \c{visibility} from within \c{objects}}
  • concurrency boundary -- {\em threads \c{per object, synchronization}}

slide: Dimensions of modularity