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