Information for developers
CAM is a software platform with functionality that is organised into toolboxes. Each toolbox provides features for modelling and analysing the dependencies in certain types of system. This page contains information for developers wishing to create new toolboxes and other plugins.
Creating a new CAM toolbox
Each toolbox in CAM includes:
- Exactly one Palette, which defines the modelling language used in the toolbox (the elements and how they can be connected)
- Potentially, a set of Modules, which are essentially short programs that provide an element of functionality (for instance a simulation algorithm)
Modules are usually created to provide analysis tools which allow users to perform analysis on models created using customised notations, and to give them flexibility to explore the datasets they create through those analyses. A typical analysis tool is based on Monte-Carlo simulation.
To create a typical CAM toolbox you need to follow these steps:
- Decide what sort of analysis you want to perform and the sort of model it will be based on. For examples, see the toolboxes page.
- Create a palette allowing CAM users to construct instances of the model
- Create a module which accesses the data from models the user creates with the new palette, performs the analysis, and publishes the analysis results to the CAM charting functionality.

