Skip to content
Len DiMaggio edited this page Sep 20, 2013 · 4 revisions

Introduction to DTGov

Design Time Governance

The DTGov project layers Design Time Governance functionality on top of an S-RAMP repository. These two projects work together to provide the following:

  • Store and Govern artifacts

  • Custom Governance Workflows

  • Integrated Governance Human Task Management

This guide will discuss the various pieces of functionality provided by DTGov and how to configure and use them.

Use Cases

In addition to a general framework for triggering business workflows based on changes to artifacts in the S-RAMP repository, the DTGov project focuses on the following specific Governance Use Cases:

  • Deployment Lifecycle Management

This guide will not only discuss the generic governance capabilities provided by the DTGov project, but also the specific Use-Cases listed above.

How DTGov Works

  • Workflows are created from JBoss jBPM (BPMN2) process definitions.

  • A version of jBPM is embedded in the deployed dtgov.war. This version of jBPM is configured to use the S-RAMP repository as the source for workflow definitions.

  • To use a workflow with DTGov, the jBPM workflow files must be bundled into a Jar file named "dtgov-workflows.jar" and uploaded to the DTGov S-RAMP repository. There are several methods than can be used to deploy the workflow jar file to S-RAMP. We recommend that you use maven.

  • The embedded jBPM pulls the dtgov-workflow.jar out of S-RAMP at runtime and uses the workflow definitions found therein.

  • In this context, "runtime" refers to whenever a new workflow instance is created (typically triggered by an artifact being added or changed in the s-ramp repository).

  • Any human tasks that are used in any DTGov workflow will appear in the Tasks UI included in the DTGov UI (http://localhost:8080/dtgov-ui)

  • A workflow deployment only shows up in the dtgov-ui/#deployments page once a lifecycle management jBPM process is kicked off for it.

The Sample Process Workflow: "SimpleReleaseProcess"

  • A sample Process Workflow ("SimpleReleaseProcess") is packaged with DTGov

  • OOTB SimpleReleaseProcess does "Lifecycle Management" governance on an artifact by monitoring the S-RAMP repository periodically (60 sec default) - this monitoring takes the form of a query on the repository.

  • When an artifact matches that S-RAMP query as configured in the DTGov config file (dtgov.properties) which is mapped to the SimpleReleaseProcess a new jBPM process instance is created for that artifact. The process can do anything it wants at that point.