eDocLite Dependency Hierarchy
...
Phase | Role | Skill Set |
---|---|---|
Model the Business Process | Analyst | Process Modeling |
Model the Form Details | Analyst | Form Prototyping |
Model the Document Workflow | Analyst | Workflow Modeling |
Procure Work Groups | Developer, System Administrator | |
Create the Parent Document Type | Developer | XML |
Create the Child Document Types | Developer | XML, Workflow Modeling |
Create the eDocLite Form | Developer | HTML & JSP |
Create Rule Attributes | Developer | XML, Workflow Modeling |
Create Rule Templates | Developer | XML, Workflow Modeling |
Create Rules | Developer | XML, Workflow Modeling |
Implement Workflow Components | Deployer/System Administrator (IET) | |
Simulate the Business Process | QA , | Process Modeling, Workflow Modeling |
Create Validation Checklists | QA , | Process Modeling, Workflow Modeling |
...
Sample Document Workflow Model
Element Notation |
---|
...
Element | Ground Notation Rule | |
---|---|---|
Request | The first route node, a.k.a. the start node, in the workflow's route path. This is where the Request Firewall Change document is created by an initiator. | |
Purple "Document" | A node in the route path. Each node represents a point in the business process where a responsible party is viewing (and possibly editing) the Request Firewall Change document. | |
Lavender Parallelogram | A rule template that is applied to each node. Each rule template is associated with a set of rules and rule attributes. | |
Orange Sail | A rule attribute associated with a rule template. | |
Lime Rectangle | The responsible party or parties who take action on a node. | |
Red Arrow | The action that must be taken to get from one node to the next node. | |
Blue Join Line | When connected to a rule attribute, it represents a rule that evaluates that rule attribute | |
Finish | Means the workflow has completed with flying colors. |
Sample Work Groups
Responsible Party | Work Group |
---|---|
Requester | Initiator.Role.RuleAttribute |
Desktop Services | ucd.IET.DES.DevelopmentSupport.WorkGroup |
Firewall Policy Group | ucd.IET.AppDev.FirewallPolicyGroup.Workgroup |
Firewall Gatekeeper | ucd.IET.DCCS.FirewallSysAdmin.Workgroup |
Super User Workgroup | ucd.IET.AppDev.KualiRice.SysAdmin.Workgroup |
Default Exception Workgroup | ucd.IET.AppDev.KualiRice.SysAdmin.Workgroup |
Responsibility Matrix:
Node | Responsible Party | Responsibility Condition(s) | Action Requested |
---|---|---|---|
Request | Initiator.Role.RuleAttribute (whoever creates the document) | none | SUBMIT |
Review Current Configuration | ucd.IET.DES.DevelopmentSupport.WorkGroup | none | APPROVE |
Initial Approval | ucd.IET.AppDev.FirewallPolicyGroup.Workgroup | non-urgent request | APPROVE |
Initial Approval | ucd.IET.DCCS.FirewallSysAdmin.Workgroup | urgent request | APPROVE |
Final Approval | ucd.IET.AppDev.FirewallPolicyGroup.Workgroup | non-urgent request | APPROVE |
Final Approval | ucd.IET.DCCS.FirewallSysAdmin.Workgroup | urgent request | APPROVE |
Acknowledge Configuration | Initiator.Role.RuleAttribute | none | ACKNOWLEDGE |
...
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <data xmlns="ns:workflow" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="ns:workflow resource:WorkflowData"> <documentTypes xmlns="ns:workflow/DocumentType" xsi:schemaLocation="ns:workflow/DocumentType resource:DocumentType"> <documentType> <name>RequestFirewallChange.eDoc.ParentDocType</name> <description>Request Firewall Change eDocLite Parent Document Type</description> <label>Request Firewall Change eDocLite Parent Document Type</label> <blanketApprovePolicy>NONE</blanketApprovePolicy> <docHandler>${workflow.url}/EDocLite</docHandler> <active>true</active> <routingVersion>2</routingVersion> </documentType> </documentTypes> </data> |
...
Child Document Type
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <data xmlns="ns:workflow" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="ns:workflow resource:WorkflowData"> <documentTypes xmlns="ns:workflow/DocumentType" xsi:schemaLocation="ns:workflow/DocumentType resource:DocumentType"> <documentType> <name>RequestFirewallChange.eDoc.ChildDocType</name> <parent>RequestFirewallChange.eDoc.ParentDocType</parent> <description>Request Firewall Change eDocLite Child Document Type</description> <label>Request Firewall Change eDocLite Child Document Type</label> <postProcessorName>edu.iu.uis.eden.edl.EDocLitePostProcessor</postProcessorName> <superUserWorkgroupName>ucd.IET.AppDev.KualiRice.SysAdmin.Workgroup</superUserWorkgroupName> <defaultExceptionWorkgroupName>ucd.IET.AppDev.KualiRice.SysAdmin.Workgroup</defaultExceptionWorkgroupName> <docHandler>${workflow.url}/EDocLite</docHandler> <active>true</active> <routingVersion>2</routingVersion> <routePaths> <routePath> <start name="Request" nextNode="ReviewCurrentConfiguration" /> <requests name="ReviewCurrentConfiguration" nextNode="InitialApproval" /> <requests name="InitialApproval" nextNode="FinalApproval" /> <requests name="FinalApproval" nextNode="AcknowledgeConfiguration" /> <requests name="AcknowledgeConfiguration" /> </routePath> </routePaths> <routeNodes> <start name="Request"> <activationType>P</activationType> </start> <requests name="ReviewCurrentConfiguration"> <activationType>P</activationType> <ruleTemplate>RequestFirewallChange.eDoc.ReviewCurrentConfiguration.RuleTemplate</ruleTemplate> </requests> <requests name="InitialApproval"> <activationType>P</activationType> <ruleTemplate>RequestFirewallChange.eDoc.InitialApproval.RuleTemplate</ruleTemplate> </requests> <requests name="FinalApproval"> <activationType>P</activationType> <ruleTemplate>RequestFirewallChange.eDoc.FinalApproval.RuleTemplate</ruleTemplate> </requests> <requests name="AcknowledgeConfiguration"> <activationType>S</activationType> <ruleTemplate>RequestFirewallChange.eDoc.AcknowledgeConfiguration.RuleTemplate</ruleTemplate> <mandatoryRoute>false</mandatoryRoute> <finalApproval>false</finalApproval> </requests> </routeNodes> </documentType> </documentTypes> </data> |
...
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?>
<data xmlns="ns:workflow" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="ns:workflow resource:WorkflowData">
<rules xmlns="ns:workflow/Rule" xsi:schemaLocation="ns:workflow/Rule resource:Rule">
<rule>
<documentType>RequestFirewallChange.eDoc.ChildDocType</documentType>
<ruleTemplate>RequestFirewallChange.eDoc.ReviewCurrentConfiguration.RuleTemplate</ruleTemplate>
<description>Review Current Configuration Rule</description>
<ignorePrevious>false</ignorePrevious>
<responsibilities>
<responsibility>
<workgroup>ucd.IET.DES.DevelopmentSupport.WorkGroup</workgroup>
<actionRequested>A</actionRequested>
<priority>1</priority>
</responsibility>
</responsibilities>
</rule>
<rule>
<documentType>RequestFirewallChange.eDoc.ChildDocType</documentType>
<ruleTemplate>RequestFirewallChange.eDoc.InitialApproval.RuleTemplate</ruleTemplate>
<description>Initial Approval By Firewall SysAdmin Rule</description>
<ignorePrevious>false</ignorePrevious>
<ruleExtensions>
<ruleExtension>
<attribute>RequestFirewallChange.eDoc.isUrgent.RuleAttribute</attribute>
<ruleTemplate>RequestFirewallChange.eDoc.InitialApproval.RuleTemplate</ruleTemplate>
<ruleExtensionValues>
<ruleExtensionValue>
<key>isUrgent</key>
<value>YES</value>
</ruleExtensionValue>
</ruleExtensionValues>
</ruleExtension>
</ruleExtensions>
<responsibilities>
<responsibility>
<workgroup>ucd.IET.DCCS.FirewallSysAdmin.Workgroup</workgroup>
<actionRequested>A</actionRequested>
<priority>1</priority>
</responsibility>
</responsibilities>
</rule>
<rule>
<documentType>RequestFirewallChange.eDoc.ChildDocType</documentType>
<ruleTemplate>RequestFirewallChange.eDoc.InitialApproval.RuleTemplate</ruleTemplate>
<description>Initial Approval By Firewall Policy Group Rule</description>
<ignorePrevious>false</ignorePrevious>
<ruleExtensions>
<ruleExtension>
<attribute>RequestFirewallChange.eDoc.isUrgent.RuleAttribute</attribute>
<ruleTemplate>RequestFirewallChange.eDoc.InitialApproval.RuleTemplate</ruleTemplate>
<ruleExtensionValues>
<ruleExtensionValue>
<key>isUrgent</key>
<value>NO</value>
</ruleExtensionValue>
</ruleExtensionValues>
</ruleExtension>
</ruleExtensions>
<responsibilities>
<responsibility>
<workgroup>ucd.IET.AppDev.FirewallPolicyGroup.Workgroup</workgroup>
<actionRequested>A</actionRequested>
<priority>1</priority>
</responsibility>
</responsibilities>
</rule>
<rule>
<documentType>RequestFirewallChange.eDoc.ChildDocType</documentType>
<ruleTemplate>RequestFirewallChange.eDoc.FinalApproval.RuleTemplate</ruleTemplate>
<description>Final Approval By Firewall SysAdmin Rule</description>
<ignorePrevious>false</ignorePrevious>
<ruleExtensions>
<ruleExtension>
<attribute>RequestFirewallChange.eDoc.isUrgent.RuleAttribute</attribute>
<ruleTemplate>RequestFirewallChange.eDoc.FinalApproval.RuleTemplate</ruleTemplate>
<ruleExtensionValues>
<ruleExtensionValue>
<key>isUrgent</key>
<value>NO</value>
</ruleExtensionValue>
</ruleExtensionValues>
</ruleExtension>
</ruleExtensions>
<responsibilities>
<responsibility>
<workgroup>ucd.IET.DCCS.FirewallSysAdmin.Workgroup</workgroup>
<actionRequested>A</actionRequested>
<priority>1</priority>
</responsibility>
</responsibilities>
</rule>
<rule>
<documentType>RequestFirewallChange.eDoc.ChildDocType</documentType>
<ruleTemplate>RequestFirewallChange.eDoc.FinalApproval.RuleTemplate</ruleTemplate>
<description>Final Approval By Firewall Policy Group Rule</description>
<ignorePrevious>false</ignorePrevious>
<ruleExtensions>
<ruleExtension>
<attribute>RequestFirewallChange.eDoc.isUrgent.RuleAttribute</attribute>
<ruleTemplate>RequestFirewallChange.eDoc.FinalApproval.RuleTemplate</ruleTemplate>
<ruleExtensionValues>
<ruleExtensionValue>
<key>isUrgent</key>
<value>YES</value>
</ruleExtensionValue>
</ruleExtensionValues>
</ruleExtension>
</ruleExtensions>
<responsibilities>
<responsibility>
<workgroup>ucd.IET.AppDev.FirewallPolicyGroup.Workgroup</workgroup>
<actionRequested>A</actionRequested>
<priority>1</priority>
</responsibility>
</responsibilities>
</rule>
<rule>
<documentType>RequestFirewallChange.eDoc.ChildDocType</documentType>
<ruleTemplate>RequestFirewallChange.eDoc.AcknowledgeConfiguration.RuleTemplate</ruleTemplate>
<description>Acknowledge Configuration Rule</description>
<ignorePrevious>true</ignorePrevious>
<responsibilities>
<responsibility>
<role>edu.iu.uis.eden.routetemplate.InitiatorRoleAttribute!INITIATOR</role>
<approvePolicy>F</approvePolicy>
<actionRequested>K</actionRequested>
<priority>1</priority>
</responsibility>
</responsibilities>
</rule>
</rules>
</data>
|
...
- Log in as requester1
- Click on EDocLites
- Click Search
- Find the eDocLite whose Definition Name is RequestFirewallChange.eDoc.Form
- Click on Create DocumentHere's the form we built:
- Fill out the form, set URGENT to NO and click route
- Log in as DES1
- Click on Action List
- Find and open the document initiated by requester1. Its status should be ENROUTEClick on the document and it should look like so:
- Click approve
- Login as DCCS1
- Click on Action List. The document should not be in DCCS1's Action List.
- Log in as FPG1
- Click on Action List
- Find and open the document initiated by requester1 and approved by DES1. Its status should be ENROUTE
- Click approve
- Login as DCCS1
- Click on Action List
- Find and open the document initiated by requester1, approved by DES1, and approved by FPG1. Its status should be ENROUTE
- Click approve
- Log in as requester1 again
- Click on Action List
- Find and open the document initiated by requester1, approved by DES1, approved by FPG1, and acknowledged by DCCS1. Its status should be PROCESSED
- Click acknowledge
- Click Document Search
- Find the document again
- Click on the Log iconThe log should like like so:
Validation Checklists
...