university of california, irvine jasig, december 2003 building a job reclassification application...
Post on 22-Dec-2015
215 Views
Preview:
TRANSCRIPT
JASIG, December 2003
University of California, Irvine
Building a Job Reclassification Application using Workflow Engine,
MVC Architecture, uPortal and OpenLDAP
Ying KussmannAdministrative Computing Services
University of California, Irvine
JASIG, December 2003
University of California, Irvine
Presentation ContentsPresentation ContentsFastClass Overview – the job reclassification applicationComponents used to build FastClass and the reasons
they are chosen Architecture of application – how the various
components are put together Desired state Lessons learnedDemoQuestions
JASIG, December 2003
University of California, Irvine
FastClass OverviewFastClass Overview
JASIG, December 2003
University of California, Irvine
FastClass OverviewFastClass OverviewConducted a process review
Identify client needs and satisfactionFeedback from the Campus that the paper-based process was...
> Confusing> Applied differently across the campus > Viewed as a “Black Hole”> Difficult to understand
Measure current process performanceBrainstorm solutions with the campusIdentify how technology can help
JASIG, December 2003
University of California, Irvine
FastClass OverviewFastClass OverviewGoals achieved with FastClass
Web-based, paperless submittal process Simplify and standardize the process resulting in…
Reduced review timeImproved information sharingEnhanced communication
Built-in business rules for routing so users don’t have to remember where the reclassification package goes next
Tracking of requests from submittal to approval Integrated with UC Irvine’s Data Warehouse and other online
tools for easy information lookup
JASIG, December 2003
University of California, Irvine
FastClass Overview FastClass Overview
Process Flow Chart
JASIG, December 2003
University of California, Irvine
FastClass Overview FastClass Overview Build FastClass as a workflow application
What is workflowThe automation of a business process, in whole or part, during which
documents, information or tasks are passed from one participant to another for action, according to a set of procedural rules.
Business NeedsTracking of start/end time and duration of task and workflowAnalysis Report to track bottleneck of processAssign tasks to a single user or a group of designated users
JASIG, December 2003
University of California, Irvine
FastClass OverviewFastClass OverviewUse a third party workflow engine instead of building a
custom application to handle workflowCustom applications developed to handle workflows are
inadequate:Expensive to develop a custom application for each processMay not be robust and reliable enough at runtimeHave to be modified as business processes change
Use an off- the-shelf solution for workflow managementAbstracting the business process definition and separating it from the
intelligence that executes it.Simplify and standardize integration with other applicationsFlexible as opposed to hard-coded business rules
JASIG, December 2003
University of California, Irvine
FastClass Components FastClass Components Expresso Framework
Integrates with Struts which is a MVC light weight framework emphasizing presentation and application configuration
Capabilities for securityRobust object-relational mappingLogging integrationDatabase connection poolingCaching Configuration managementAutomatic database maintenance
JASIG, December 2003
University of California, Irvine
FastClass ComponentsFastClass ComponentsDrala Workflow Product Suite from DralaSoft
100% Java component for business process automation, pluggable database
Embeddable, small footprintPowerful visual design tools High-performance Advanced features including caching, thread-pooling,
persistence, fail-over, load balancing, and notificationXML, RMI, and some SOAP support Cost effective No J2EE server required
JASIG, December 2003
University of California, Irvine
FastClass ComponentsFastClass ComponentsDrala Workflow Product Suite
Workflow Engine – Runtime platform for process orchestrationWorkflow Studio – Visual design and workflow modeling tool
Drag and drop predefined tasksInstall custom tasksLaunch and test workflows
Workflow Manager – Workflow monitoring toolGather and analyze statisticsReporting
JASIG, December 2003
University of California, Irvine
FastClass ComponentsFastClass ComponentsOpenLDAP
Used as data source for users in Expresso framework and staff portal
Plan to use as Drala Resource/Role repositoryuPortal
Displays workflow task list to campus users via “My Workflow Tasks” channel
JASIG, December 2003
University of California, Irvine
ArchitectureArchitecture
JASIG, December 2003
University of California, Irvine
Architecture Architecture Business process is modeled as workflow. Business rules
(how the process flows and which resource/role gets assigned to which task) are designed into the workflow template and executed by the workflow engine at runtime.
The application tells the workflow engine to set certain tasks to “done” and defines certain workflow/task attributes. The workflow engine uses these attributes to determine the flow as well as resource/role assignment.
The application queries the workflow engine for task start, end time and other workflow related information to present to user.
JASIG, December 2003
University of California, Irvine
ArchitectureArchitectureThe FastClass
workflowtemplate
JASIG, December 2003
University of California, Irvine
ArchitectureArchitectureThe FastClass workflow template
Asynchronous TaskTasks requiring manual or human activity to complete. Engine initiates task but does not wait for the task to complete. Engine has to be notified explicitly when task is complete
Synchronous TaskAppropriate for automated functions. Engine activates task and calls a callback method which performs work associated with the task.
Branch TaskBranches can be used to decide which path to take moving forward in a workflow.
Loop TaskCould be used to repeat tasks for a fixed number of times. A loop task is complete when no more iterations are deemed necessary.
JASIG, December 2003
University of California, Irvine
ArchitectureArchitecture
(Workflow Management Coalition The Workflow Reference Model http://www.wfmc.org/standards/docs/tc003v11.pdf)
Generic Workflow Product Structure
JASIG, December 2003
University of California, Irvine
ArchitectureArchitectureWorkflow Relevant Data and Application Data
Workflow relevant, or ‘case’ data, is the only type of application data accessible to workflow engine. Process navigation decisions or other control operations within the workflow engine are based on data generated /updated by workflow application programs.
Workflow application data is manipulated directly & only by workflow applications. Workflow engines may be responsible for transferring such data between applications – different applications are invoked at different activity points within workflow process.(Workflow Management Coalition The Workflow Reference Model http://www.wfmc.org/standards/docs/tc003v11.pdf)
JASIG, December 2003
University of California, Irvine
ArchitectureArchitectureWorklist
Workflow engine places items on to worklists for attention when user interactions are necessary within the process execution.
JASIG, December 2003
University of California, Irvine
ArchitectureArchitectureFastClass and Worklist
Discrete list – User being presented single item or a subset of the worklist
Log on to FastClass and navigate to appropriate area for tasks related to that area or click on link in notification emails to go directly to a certain task
Comprehensive list – User select individual items of work from a comprehensive/complete worklist
Log on to staff portal and navigate to “My Workflow Tasks” channel where the user can view the entire list
JASIG, December 2003
University of California, Irvine
ArchitectureArchitecture
JASIG, December 2003
University of California, Irvine
ArchitectureArchitecture
JASIG, December 2003
University of California, Irvine
ArchitectureArchitectureTalking to the Drala workflow engine
Retrieving from the workflow engine
JASIG, December 2003
University of California, Irvine
Desired StateDesired StateMultiple workflow applications that display their tasks in
the workflow channel of the staff portalMigrate from using Drala’s internal resource/role
management to using LDAP for workflow resource/role management
Migrate from using RMI to SOAP, so that other applications on campus built with technologies other than JAVA can use Drala workflow engine and have task list display within workflow channel in the portal
JASIG, December 2003
University of California, Irvine
Desired StateDesired State
SNAP
My WorkflowTasks Channel
Client Application
A&BS: WorkFlow Architecture -- DRALA WF Engine
DRALAWF Engine
SOAP/HTTPServer
Client Application
Update(SOAP/HTTP)
Update(SOAP/HTTP)
Poll(SOAP/HTTP)Task List Poller
Query(HTTP)
JASIG, December 2003
University of California, Irvine
Lessons LearnedLessons LearnedUnderstand in detail the business process and
the workflow application being built before designing the technical implementation
Focus on designing a flexible workflow template and allow for changes in the process
Link the workflow engine with existing resource/role repository if possible
JASIG, December 2003
University of California, Irvine
Lessons LearnedLessons LearnedMix and match static and dynamic workflow
capabilities – define most of the workflow statically, and a portion of it at runtime – could be based on earlier user input in the workflow
Expect delays between task execution. Design template to accommodate this
Know what constitutes application data and what constitutes workflow data
JASIG, December 2003
University of California, Irvine
DemoDemoFastClass Demo
JASIG, December 2003
University of California, Irvine
ReferencesReferenceswww.dralasoft.comwww.jcorporate.comhttp://www.wfmc.org/standards/docs/tc003v11.pd
f
Q & AQ & A
top related