Project Proposal by Martin Stacey
Mapping Causal Relationships in Complex Systems
Software |
A programming language with good GUI building tools, probably also a database management system. |
Covers |
Object-oriented system design and development, possibly also database design and SQL, and/or GUI design. |
Skills Required |
Programming in a procedural or object oriented language,
|
Challenge |
Conceptual Technical Programming |
Brief Description
Your task in this project is to build an interactive tool for creating models of the causal influences that govern complex processes. (The complex multi-causal phenomena that Martin Stacey is especially interested in modelling are design processes, especially in large-scale mechanical and mechatronic engineering.) The user should be able to name and describe several different kinds of entities and activities in the process and their attributes, and the causal effects that govern their interactions, so as to build up a model of the process including its causal structure.
Such a system would be essentially similar to an Issue-Based Information System, so you might like to research these. However an issue-based information system maps facts, views, arguments, and supporting or contradictory evidence, as opposed to causal relationships. See also cognitive mapping and tools for creating cognitive maps.
What makes this project challenging is (1) developing a powerful and flexible computational representation for the different kinds of entity and relationship that the system should enable users to describe; and (2) developing ways for users to incrementally develop and modify networks of entities and relationships while the system maintains data integrity for them. This challenge is made more interesting by the need to enable users to create entities and relationships that are variants or subtypes of others. Relationships are not necessarily just binary; like verbs in languages they may relate several entities in different roles (cases).
Variants
This might be a good time to learn how to use object-oriented databases, or the object oriented extensions to databases like Oracle. You could also consider non-database approaches to object persistence.
Extension
The system would benefit greatly from a usable interactive method for defining the types of entities and relationships that can exist in a particular model (the ontology).
Cross-References
The idea behind this project came from the Across Design project, in which Martin Stacey was involved with colleagues at the University of Cambridge, the Open University and the Massachusetts Institute of Technology, which investigated the similarities and differences between design processes in different fields. Another rather different tool, for recording and managing descriptions of patterns in design behaviour, is suggested in another project proposal. Another project on techniques for creating and maintaining complex information structures is a Ripple Down product modelling system.
Back to