WAYS CS 458 teams are communicating:
*   group text
*   Google Docs
*   Discord
*   Slack
*   Google Hangouts
*   E-mail
*   Face to Face
*   Skype

...back to some classic C&C *styles*
*   talked about pipe and filter

*   shared-data style
    *   COMPONENTS:
        data repository
        data accessors

    *  CONNECTOR:
       red-write

    *   all communication is via the data repository...!

    *   consider the difference between
        blackboard style and repository style

*   client-server style...!
    *   components:
        client! server!

    *   in a VERY strict version,
        clients only communicate with servers, and not
	other clients...!

    *   communication - initiated by the client,
        sends a request;
	the server sends a response;

        connector: request/reply,
	           which is asymmetric

    *   3-tier, N-tier, 3+-tier is a common approach
        (client tier, application tier(s), data tier

*   publish/subscribe - 
    *   some components generate events,
        others subscribe to events;

	upon an event, those components that subscribe
	to that event are invoked

*   peer-to-peer, or object-oriented style
    *   yes, like object-oriented systems!
    *   components use services from each other
        through methods;

	components -> objects
        connectors -> method invocations

*   communicating processes style
    *   processes which execute and communicate with each
        other via message passing
	(oldest form of distributed computing????)
    *   components -> processes or threads
        ...they can communicate via message passing