A
CP diagrams are MASCOT’s primary design tool and the starting point for the design  of  any MASCOT system.   These diagrams encapsulate  a  number of  key
concepts that are central to understanding MASCOT.
MASCOT defines three basic entities, activities, channels, and pools, from which ACP diagrams derive their name; channels and pools are specific cases of a more general entity, Intercommunication Data Areas (IDA). An activity is the equivalent of a task or process and represents a single execution thread. Activities interact through IDAs and it is assumed that IDA access is thread-safe; every IDA has a behavior defined by its underlying implementation. In general, channels are taken to be simplex connections like FIFO pipes while pools usually implement some form of persistence. In other words, data written to a channel is assumed to be transient while data entered into a pool will persist until explicitly deleted. It is important to note that these definitions are not rigid and IDAs can exhibit any behavior required by a system. Finally, all activities and IDAs have a name and a type; the process of defining an instance of an entity type is called instantiation. Entities of the same type can be instantiated any number of times under different names.
Activities and IDAs are connected according to some simple rules. Connections are directed and shown as arrows; information flows along them from a source to a sink. Connections must link an activity to an IDA; activity to activity and IDA to IDA connections are not allowed. Connecting an activity to an IDA means that the activity has permission to access the IDA and implies synchronization and possibly scheduling. Connections are named and activity implementations can only refer to them by name. The ‘Detailed Example ACP Diagram’ page gives an example of an ACP diagram along with information on its symbology and layout rules.
These rules have some important implications. Since activities do not deal with synchronization and inter-process communication directly,  they are generally easier to