The workflow facility allows multiple CARMEN Services to be combined together to create more complex and powerful analyses. A workflow can consist of services that are connected in series or parallel, or a combination of both. Once the workflow has been created, it can be run on the CARMEN execution environment, which is a private-cloud based system that sits behind the CARMEN web portal.
CARMEN Services support multiple operating system (OS) and language platforms. The target platform/software is specified when the service is built, and automatically used at service runtime. The user need not care what OS the service runs on, and in what language. Workflows extend this capability, the user simply creates workflows based around functionality, and the underlying CARMEN execution environment takes care of the run-time details.
Workflow on CARMEN consists of two seperate components; a visual design editor that allows users to create and modify workflows, and a runtime or enactment engine. The runtime engine co-ordinates service executions and the flow of data between services. The workflow engine is embedded within the CARMEN system and so is not visible to users – it sits behind the “run” button.
Workflows can also be shared in the same way as services and data, however there are complications in that a workflow consists of services and data that have their own individual sharing rights. If a user is to publish a workflow, they must ensure that the workflow’s components have equal or greater sharing access. Similarly, a user that wishes to use a public workflow, they would have to modify it to use their own input data and destination output folders.