

Professor Richard N. Taylor
Professor David F. Redmiles
Professor David S. Rosenblum
Department of Information and Computer
Science
University of California, Irvine
Irvine, CA 92697-3425, USA.
E-mail: arch@ics.uci.edu
Central to the architectural style is a principle of limited visibility, or substrate independence: a component within a given architecture is only aware of services provided by components "above" it in the hierarchy, and is completely unaware of services provided by components "beneath" it. This makes component substitutability tenable, thus promoting component reuse and system extensibility. Click here for a more detailed discussion of C2 style rules.
The C2 style focuses on the conceptual architecture of a system, independently of a particular implementation architecture. UCI's Java and C++ class frameworks for C2 concepts, such as components, connectors, and messages, provide development support for implementing C2 architectures in Java and C++. Components, connectors, and messages are explicitly represented as objects. Components may have their own memory space and thread(s) of control, or may share with other components. Components may run on different machines in a network. Architectures may be dynamically reconfigured.
Click on this Link to go to a selection of C2 Software. This includes a simple graphics application of a Stack and also includes the C++ and Java class frameworks.
To learn more about C2, we have included a number of papers on C2 in our website.
Click on this Link to go to a selection of publications on C2.
Acknowledgement
This material is based upon work sponsored by the Air Force Materiel Command, Rome Laboratory, and the Defense Advanced Research Projects Agency under Contract Number F30602-94-C-0218. The content of the information does not necessarily reflect the position or the policy of the Government and no official endorsement should be inferred.