Design for Extensibility
Use a model-driven approach for generating generic features
Project members can add new activities and activity steps by adding new properties to the configuration file. Most of this work can be done by people who are not developers. The tools read the configuration file at startup, so the code base does not need to be recompiled to support these kinds of new features.Please see Model Driven Aspects of Development for more information on how CST maps configuration properties to properties in these layers.
Synchronise changes in the configuration file with changes in the database
Users can press the "Synchronise" button in the Administration Tool to ensure that each activity and activity step is defined in a corresponding MySQL database.Support a plugin framework for domain-specific features
Project developers can extend the functionality of CST through its built-in plugin framework. Please see Plugin Framework.Provide design documentation for extending the code base
We hope the design documents can provide enough information to developers so they can extend the code base in the way they want. We didn't think it was sufficient to supply the code without providing information about the context in which it is used.Author: Kevin Garwood
(c)2010 Medical Research Council. Licensed under Apache 2.0.