UniCon

UniCon is an architectural description language whose focus is on supporting the variety of architectural parts and styles found in the real world and on constructing systems from their architecture descriptions. To give a feel for what describing an architecture is like in UniCon, here is a short example.
 An architecture description in UniCon consists of a set of components and connectors. A component is a locus of data or computation, while a connector mediates the interaction among components. Each component has an interface that exports a set of players. These players engender the ways in which the component can interact with the outside world. Similarly, a connector's protocol exports a set of roles that engender the ways in which the connector can mediate interaction. To illustrate, here's an example diagram produced using UniCon's graphical editor:
The diagram features two components, labelled A and B, which are Unix filters. Each of them exports three players, drawn as triangles; the player on the left represents the input stream "standard in", while the players on the right represent the output streams "standard out" and "standard error." Between the two components is a connector, which represents a Unix pipe. The connect exports two roles: the one dangling to the left represents the pipe's source; the one dangling to the right represents the pipe's sink.
 In the picture above, there is no interactive among the components and connectors; nothing is "hooked up." To specify that there should be a connection, a player must be associated with a role. In the graphical editor, this is done by dragging the role over the player and dropping it. The result of dragging the pipe's sink and dropping it on B's input is shown here:

By associating players and roles, a whole configuration of interacting parts can be specified.
 The current version of UniCon supports not only pipe-and-filter systems like those above, but also modules interacting with procedure calls and shared data, distributed systems with RPC calls, processes that share processors according to various real-time disciplines, and databases accessed with SQL commands.

The UniCon Tool Set

How to get the UniCon tool set.

UniCon Documentation

UniCon's Reference Manual.
Adding new connector experts to UniCon.
Creating icons for UniCon.

[Last modified 29 Aug 1996. Mail suggestions to the current maintainer.]