ABSTRACT

B Larger problem is decomposed into entities using some form of abstraction (objects, modules or similar).

B The entities are never called on directly for actions.

B Existence of an infrastructure for publishing and subscribing to events, aka the bulletin board.