Where teams are not located at the same site, partition responsibilities in such a way that dependencies can be reduced while interoperability is maintained
Where teams are not located at the same site, partition responsibilities in such a way that dependencies can be reduced while interoperability is maintained. In particular well-defined portions of the system should be identified for isolation. The isolated pieces will be produced asynchronously and need to be assembled into larger components for further processing. Use of a handler object decouples the receipt of isolated parts from the definition of downstream processing. This handler acts more or less in the role of a Receptionist or ‘Goods Incoming’ department.
This allows the definition of interfaces by which geographically distributed or otherwise disjoint parts of a project can deliver their product without knowing how it will be used or who will be using it. They deliver to the known handler, whose job is to know what needs to be done with it. This approach can be extended to having people to handle receipt of information and requests for information, where the caller does not know to whom he should be talking. The handler is the unchanging point of contact, allowing internal reorganization to have minimum impact on external communications.