This page details legacy software projects that have been developed at UCI. For our current projects, please see our current software page.
[LEGACY] ArchShell is a command line tool which will allow you to build architectures and add tools on the fly. It shows how architectures can respond dynamically to changes in the system. Here are some instructions on how to run this tool using this example.
- ArchShell (requires Java class framework for C2)
[LEGACY] ArchStudio 2.0 is the previous demo version of an integrated architectural design environment. ArchStudio 2.0 pioneered the integration of architectural tools in a single design environment and also the use of XML to store and maintain architectural information in the form of a dtd based ADL called xADL 1.0.
[LEGACY] ArchStudio2.0 software download, leads to the software for the ArchStudio 2.0 architectural design environment demo. The purpose of this demo was to integrate a number of different tools we developed for C2 in a Architecture based IDE simulation. This shows how a C2 system may dynamically alter its architecture quick on the fly and how these changes to a running system are incorporated in the C2 style.
This demo includes the XML based shared ADL which is itself a general ADL with C2 attachments. This means that any architectural system could adopt the ADL — it is designed to be general and not C2 specific.
[LEGACY] Other work initiated at UCI on Software Architecture has included the Argo Design Environment, a graphical design environment for constructing, analyzing, and generating UML designs or C2 architectures. This project lead to investigations related to the efficaciousness of UML as a practical starting point for architecture description.
[LEGACY] ArgoUML is a graphical design environment for constructing, analyzing, and generating UML diagrams. It was originally developed at UCI, but is now externally maintained. Argo's Graph Editing Framework
[LEGACY] DASADA - Dynamic Assembly for Systems Adaptability, Dependability, and Assurance
[LEGACY] 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.