Tooling

Tooling in Opereffa is one of the most important aspects of the project. Opereffa focuses on providing tooling to provide pain free connectivity between the domain models and software developers. The tooling is not just a connector between the model and the final software, it also includes these end points in its scope. Modeling, software development, reporting, terminology integration, deployment are all considered within the scope of Opereffa. In fact, there is a continuous evaluation process at CHIME which aims to identify use cases for tooling. Whenever a use case in modeling, development or anything else within Opereffa's scope, we take it as a potential work item for tooling.

Tooling in Opereffa has a large scope and this scope is not limited to only our work at CHIME, there is other focusing on Eclipse, our tooling platform, and Opereffa project intends to join relevant tools to provide a more productive envrionment. The output from OHT initiative, along with other work will be considered for integration into Opereffa's tooling outputs.

At the moment, the output from tooling is a single Eclipse plugin which has basic implementation of the following functionality:

  • JSF artifact generation. As explained in the GUI section, Opereffa's current GUI layer uses Java Server Faces. Java Server Faces has a couple of nice features like bindings to business objects using a custom expression language, and this is how generated GUI forms are connected to Opereffa's framework functionality. Although it is entirely possible to create these JSF artifacts manually, this is an error prone method, and generating these artifacts automatically can save many hours.
  • Archeype structure browsing. Being the core of the openEHR based systems, archetypes are imporant to developers and other technical people, even if they are processed automatically by the system. Having a clean method of viewing archetypes is useful, so the tooling provides Eclipse views for viewing archetype structure
  • Dynamic and static help content: Even if openEHR has quite a lot of high quality documentation, the experience of using this documentation, especially for developers can be inefficient sometimes. Having access to key documentation from within the tooling environment can be useful, and it is an aproach implemented in many modern tooling platforms. Using Eclipse's infrastructure, the tooling provides access to offline and online versions of key documentation.

These are just the starting points of the tooling work under Opereffa, and there is a large amount of work items around the points listed above. Installation and usage of the Eclipse plugin(s) is explained here.