An Architecture for Creating Engineering Applications: The Dynamic Integration System
Scott A. Woyak, Brett Malone, Arvid Myklebust · 1995
Abstract Software design within the engineering community has generally been relegated to encoding specific algorithms. This is very important, however substantially more is required to build an entire CAD/CAE application. Structure must be provided to the data maintained in the application. Analyses must be integrated and coordinated in an orderly fashion. Interaction with the user must be managed. These topics have traditionally received secondary attention. The result has been engineering applications that are difficult to use, costly to create, and expensive to maintain or modify. The architecture described in this paper, the Dynamic Integration System, addresses these issues with respect to engineering-related software. Software constructed with Dynamic Integration techniques is prepared for future needs, such as integration, before those needs explicitly arise. This greatly reduces downstream costs. The Dynamic Integration System consists of two primary constructs: Dynamic Variables and dependency hierarchies. Dynamic Variables are used to model the key data in an application while a dependency hierarchy is built from the relationships between Dynamic Variables. Using these constructs, issues such as integration and analysis coordination are automated by the underlying Dynamic Integration System facilities.