Presentation is loading. Please wait.

Presentation is loading. Please wait.

Workflow Management Tool Support for Incident Command Systems Michael J. Stoute Master’s Thesis Defense Monmouth University December 19 th 2005.

Similar presentations


Presentation on theme: "Workflow Management Tool Support for Incident Command Systems Michael J. Stoute Master’s Thesis Defense Monmouth University December 19 th 2005."— Presentation transcript:

1 Workflow Management Tool Support for Incident Command Systems Michael J. Stoute Master’s Thesis Defense Monmouth University December 19 th 2005

2 Outline Introduction Motivation WIFA (Workflow Intuitive Formal Approach) WIFA Modeling Tool Conclusion Demo

3 Introduction-ICS Incident Command Systems (ICS) Manages and allocates people, resources and services during terrorist incidents and natural disasters Monitor and adapt to the incident events Volunteer-based workforce

4 Motivation ICS needs to adapt to ever changing surroundings Volunteers with little to no formal training on Workflows or even basic computer knowledge Need workflow support to know the current state and what needs to be done.

5 Related Work Two Types of Formal Modeling Techniques: Formal and not Intuitive Very powerful and need formal training  Petri-Nets  State Charts Intuitive and not Formal MILANO  Tool claims simplicity  Sacrifices Expressive Power; such as representation of loops

6 Objective Define a new formalism for modeling and analysis of workflows (WIFA model) Build Tool to implement the model. On-the-fly changes On-the-fly validation Intuitive Formal

7 What is a Workflow Process that contains tasks and rules about how the tasks are executed. Tasks executed by humans or other apps Tasks related and dependant based on business policies and rules These policies and rules govern how a task is executed

8 WIFA Model Definitions Workflow = (T, P, C, A, S 0 ) where T={T 1, T 2, … T m } A set of tasks, m  1 P=(p ij ) m x m Precedence matrix of the task set C=(c ij ) m x m Conflict matrix of the task set A=(A(T 1 ), A(T 2 ), …,A(T m )) Pre-Condition set for each task. S 0  {0, 1, 2, 3} m is the initial state

9 Example T1T1 T2T2 T3T3 T6T6 T4T4 T5T5 T7T7 T8T8 T = {T 1, T 2, …, T 8 }, A(T 1 ) = Ø, A(T 2 ) = {{T 1 }, {T 6 }}, A(T 3 ) = {{T 1 }}, A(T 4 ) = {{T 2 }}, A(T 5 ) = {{T 4 }}, A(T 6 ) = A(T 7 ) = {{T 5 }}, A(T 8 ) = {{T 3, T 7 }}. S 0 = (1, 0, 0, 0, 0, 0, 0, 0).

10 Initial State/Starting Task Initial State: At the initial state S 0, for any task T i  T, if there is no T j such that p ji = 1, then S 0 (T i ) = 1; otherwise S 0 (T i ) = 0 Task T i does not have any predecessors It is executable immediately

11 StateValues S (T i )=0 T i is not executable and not executed previously S (T i )=1 T i is executable and not executed previously S (T i )=2 T i is not executable and executed previously S (T i )=3 T i is executable and executed previously

12 State Transition Rules A set of rules to guide workflow execution S a (T j ) = 1 If c ij = 0 then S b (T j ) = 1; otherwise S b (T j ) = 0 01 2 3

13 Example S0 =(1, 0, 0, 0, 0, 0, 0) S1 =(2, 1, 1, 0, 0, 0, 0) S2 =(2, 2, 0, 1, 0, 0, 0) S3 =(2, 0, 2, 0, 0, 1, 0) … … T1T1 T2T2 T4T4 T3T3 T6T6 T7T7 T5T5 c 23 = 1

14 Modeling Power Sequential Execution Conflict Concurrency Synchronization Loop T1T1 T2T2 T3T3 T6T6 T4T4 T5T5 T7T7 T8T8 c 23 = 0 c 67 = 1 A(T 2 ) = {{T 1 },{T 6 }} A(T8) = {T 3, T 7 }

15 Well-Formed Workflow Definitions Reachable Set Well-Formed No Dangling Tasks At least one ending state Confusion Free – to simplify the logic of workflows such that the volunteers can follow it And-In-And-Out And-In-XOR-Out XOR-In-And-Out XOR-In-XOR-Out

16 WIFA Modeling Tool Editor Validator Simulator

17 Architecture.wfml.wfcc XML Encryption/Decryption SimulationValidation Model Constructor Objects Tasks Connector s Notes Audit LogReports Reachable States

18 WIFA Modeling Tool

19 C# Language used to develop the WIFA Modeling Tool.NET Framework 1.1 Derived from C family Benefits Automatic Garbage Collection Variables are type-safe No pointers

20 XML XML: eXtensible Markup Language Storage medium for the Workflows Benefits Not platform specific Provides common medium for sharing data

21 Validator Validate at any time Validates that the Workflow is well-formed Checks for Starting Task Checks for Ending Task Checks for Dangling Tasks Checks for Live Locks (Infinite Loops) Checks for Dead Locks Error List & Highlighting

22 Validation Pseudo-Code For each task in the workflow find parent tasks (preset of a task) find children tasks (postset of a task) find sibling tasks (postset of all tasks in the preset) if task is XOR-out and postset > 1 then task branch count=size of postset global branch count +=size of postset end if next task

23 Validation Pseudo-Code While first tasks < first tasks total number of branches { For each task { Generate a Path() Increment Each Current Path() } Result: {{1,2,6,5,7,8}, {1,4,5,7,8}, {1,3,8}} T1T1 T2T2 T3T3 T6T6 T4T4 T5T5 T7T7 T8T8

24 Validation Pseudo-Code for (i=0; i<number of unique paths; i++) { ResetTasks while (workflow not finished and not in a loop) { Move a single Step forward in the Simulation Check for Loops to avoid running forever } Then Using Information Gathered From Execution Validates: A Starting Task Exists An Ending Task Exists No Dangling Tasks Exist No Live Locks Exist (Infinite Loops) No Dead Locks Exist

25 Simulator Execute a workflow According to state transition rules Provides Execution Control Step forward and Step back On-the-fly changes

26 Simulation Pseudo-Code For each task in the workflow if task is marked for execution executeTask() else if task is XOR-In and at least 1 predecessor has executed set task state as executable else if task is And-In and all predecessors have executed set task state as executable else task state does not change next task

27 Simulation Pseudo-Code void ExecuteTask() { if hasConflict if in simulation mode Alert user, who then chooses which task to execute else Use current unique path to pick a branch set all tasks that were in conflict back to not executable end if set selected task state as executed add task to current execution path }

28 Conclusion WIFA Supports all phases of Workflow Management Design, Modification, Validation, Simulation All implemented with Volunteers in mind Provides on-the-fly validation and modification. Intuitive Usability Assessment Results: Useful and Usability was acceptable.

29 Future Work Role-based Access Control Decision Support Separate Workflow Instances Communicating Interorganizational Workflows Conversion between other Workflow Applications

30 DEMO


Download ppt "Workflow Management Tool Support for Incident Command Systems Michael J. Stoute Master’s Thesis Defense Monmouth University December 19 th 2005."

Similar presentations


Ads by Google