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.