Pumptheory.com Mark Aufflick OpenACS Workflow Mark Aufflick pumptheory.com.

Slides:



Advertisements
Similar presentations
Workflow Management Systems © Dr. Rafael A. Calvo – Edited by Mark Aufflick (pumptheory.com) School of Electrical and Information Eng, University of Sydney.
Advertisements

Workflows in Archie IMS Support Person: Sonja Henderson
Introducing… elementool Issue Tracking The World’s First Web-Based Issue Tracking Software.
Presentation by Priyanka Sawarkar
New Release Announcements and Product Roadmap Chris DiPierro, Director of Software Development April 9-11, 2014
A Toolbox for Blackboard Tim Roberts
The ]po[ Workflow Introduction Frank Bergmann, This guide contains ]po[ workflow overview information for developers with experience with PostgreSQL.
JTX Overview Overview of Job Tracking for ArcGIS (JTX)
Common Portal Definitions AZ-SLDS Program Team July 2011 FOR EXAMPLE USE ONLY.
Program Management Portal: Overview for the Client
Quick Overview of New Approvers features added to Aggie Mart Starting November 4 th Aggie Mart will have several new enhancement features for approvers.
Direct Congress Dan Skorupski Dan Vingo 3 December 2008.
June 14, 2005 uPortal Summer Conference, Baltimore, MD John Fereira, Cornell University Andrew Petro, Yale University uPortal Documentation Roadmap.
Microsoft ® Official Course Interacting with the Search Service Microsoft SharePoint 2013 SharePoint Practice.
SE Document Document Control Software. SE Document SE Document is a Document Management Software System to help you meet all document control requirements.
Change Management Demo for IT 11/06/2013 Change Management, IT Meeting 11/06/
Product Offering Overview CONFIDENTIAL AND PROPRIETARY Copyright ©2004 Universal Business Matrix, LLC All Rights Reserved The duplication in printed or.
EIRB Training IRB Committee Member A Paperless IRB System.
Create with SharePoint 2010 Jen Dodd Sr. Solutions Consultant
DYNAMICS CRM AS AN xRM DEVELOPMENT PLATFORM Jim Novak Solution Architect Celedon Partners, LLC
Intro to Google Apps B3: Working in Google Drive.
DATAVERSE FOR JOURNALS Mercè Crosas, Ph.D. Director of Data Science IQSS, Harvard Society for Scholarly Publishing 37 th Meeting,
Welcome Chris Tubbs Lead Product Specialist- Productivity Applications SSM Healthcare St. Louis, MO.
Eric Westfall – Indiana University Jeremy Hanson – Iowa State University Building Applications with the KNS.
Post-Module WordPress 6&7 BTM 395: Internet Programming.
1 The following presentation is from the Oracle Webcast “What’s New in P6 EPPM Release 8.1.” As a partner, you may not use the Oracle Power Point template,
June 14, 2005 uPortal Summer Conference, Baltimore, MD John Fereira, Cornell University Andrew Petro, Yale University uPortal Documentation Roadmap.
Implementing GL, AP and PO Workflow
AGENDA Introduction to Virtual Mechanic Demo Architectural diagram and summary QA steps and user acceptance testing Bugs in the software Feedback from.
Kuali Enterprise Workflow Presented at ITANA October 2009 Eric Westfall – Kuali Rice Project Manager.
Workflows in Archie IMS Support Person: Liz Dooley Place: Auckland, New Zealand Date: Tuesday, 23 March 2010.
Development and Customization of OpenACS. OpenACS Package Architecture Functionality is divided into packages One package contains Data Model Tcl Libraries.
Building Applications with the KNS. The History of the KNS KFS spent a large amount of development time up front, using the best talent from each of the.
Pumptheory.com Mark Aufflick 1 OACS Objects, Data & More Develop functional specification Determine inputs, outputs & interaction Design object model &
SharePoint Portal Server Office XP Launch Tour Breakout Presentation nametitle Microsoft Corporation.
ArcGIS Server for Administrators
Kuali Enterprise Workflow Kuali Days – November 2008 Scott Gibson, University of Maryland Bryan Hutchinson, Cornell University James Smith, University.
From Lucent, Inc. This is the Sablime® home page. It has access to all the functionality of the Sablime® Configuration Management System.
EBZ 321 Extending CMS 2002 Publishing Processes Scott Fynn Microsoft Consulting Services National Practices.
Working with Feature Services Gary MacDougall Russell Brennan.
Technical Overview. Project Overview Document Library Document List Index TransmittalsPlanning.
Approve a Solicitation or Contract The following slides outline the process for approving a purchasing solicitation or contract within MYACT SharePoint.
LOGGING IN & ROLES PolicyTech Business & Financial Affairs
National Oceanic and Atmospheric Administration User Group Presentation – Grantee Rollout September 21, 2005.
Observing System Capability Analysis and Review Tool (OSCAR) Detailed functions WIGOS Project Office WMO; Name of Department (ND)
Hubnet Training One Health Network South East Asia Network Overview | Public and Members-only Pages; Communicating and Publishing using Blogs and News.
N ET PAY Advantages Features Working Structure. Advantages Redback NetPay allow companies to replace multiple complex computer applications with a single.
This material is based upon work supported by the U.S. Department of Energy Office of Science under Cooperative Agreement DE-SC Michigan State.
National Workshop on ANSN Capacity Building IT modules OAP, Thailand 25 th – 27 th June 2013 KUNJEER Sameer B Pool of experts database and further enhancements.
Interstage BPM v11.2 1Copyright © 2010 FUJITSU LIMITED CREATING A SIMPLE PROCESS.
Creating Online Student Forms SmartCatalog. What is Academic Content Management? Any information that has multiple editors and reviewers and which must.
Enterprise Project Management solutions 18 June, 2004 MBPCPSI.
DESKALERTS. INTERNAL COMMUNICATIONS | | DeskAlerts Enterprise Edition Features.
Metrics Request. Agenda Objective Role Metrics Request types Workflow of Metrics Request Notification Details Creation of Request Walkthrough of Request.
General System Navigation
Architecture Review 10/11/2004
DSQR Training Reliance System
eIRB Training IRB Committee Members
Internet Made Easy! Make sure all your information is always up to date and instantly available to all your clients.
Your Name Proposal Creation Module 5 Your Name
Project Center Use Cases Revision 2
Project Center Use Cases
SCEC Drupal Website Development Overview and Status
Project Center Use Cases Revision 3
Project Center Use Cases Revision 3
Subcontractor workflow
An introduction to DSpace
Workflow Management Systems
Mark Aufflick pumptheory.com
TASKMASTER Field Force Tracking
Presentation transcript:

pumptheory.com Mark Aufflick OpenACS Workflow Mark Aufflick pumptheory.com

Mark Aufflick This presentation Goal: Learn to use a workflow in a web application The OpenACS Workflow package Roles, Cases, Actions & States Defining a workflow Integrating a workflow with your app

pumptheory.com Mark Aufflick A Brief History The original ACS Workflow package was designed using Petri Nets as the underlying formal model It’s design was very thorough, but the use of Petri Nets was overcomplicated and unnecessary in perhaps 95% of use cases In 2003 Lars Pind of Collaboraid didn’t use the existing workflow package because it was cumbersome and unfinished – even though he was the original author while working for ArsDigita!

pumptheory.com Mark Aufflick The new Workflow An analysis of common use cases showed that all common business workflows can be modeled with a simple Finite State Machine The new workflow package is a modular development framework, and allows multiple workflow models to be used Initially only FSMs are supported

pumptheory.com Mark Aufflick User Interface? Many workflow packages, including the original ACS Workflow, have funky UIs But – development is nearly always required So – the new workflow has been designed as a developer framework that allows the power of workflows to be easily incorporated into applications

pumptheory.com Mark Aufflick Workflow Overview A workflow is a set of: –Roles –Actions –States –plus their relations A workflow is associated with an object type

pumptheory.com Mark Aufflick Cases A workflow in action is a CASE A case revolves around a specific object A case holds information about: –Current state –Current assignments –Activity log

pumptheory.com Mark Aufflick Roles From our publishing example, roles might be: –Author –Editor –Publisher Roles convey permission and responsibility Roles can be assigned by default and reassigned

pumptheory.com Mark Aufflick Actions Which actions are available will depend on the current state Actions may change the state Actions can have side effects Allowed roles control who can perform what actions Assigned roles indicate who is responsible for the action A workflow has an initial action

pumptheory.com Mark Aufflick States A workflow has a finite set of states From our bug tracker example: –Open –Resolved –Closed A case will always be in exactly one state States contain almost no information

pumptheory.com Mark Aufflick Defining a workflow Start by drawing a diagram -> your states, actions and roles set spec { contract { pretty_name "Contract" package_key "finance-contracts" object_type “finance_contract“ roles { } states { } actions { } }

pumptheory.com Mark Aufflick Defining a workflow: Roles roles { submitter { pretty_name "Submitter" call_backs { workflow.Role_DefaultAssignees_CreationUser } assignee { pretty_name “Assignee” callbacks { bug-tracker.ComponentMaintainer bug-tracker.ProjectMaintainer workflow.Role_PickList_CurrentAssignees workflow.Role_AssigneeSubquery_RegisteredUsers }

pumptheory.com Mark Aufflick Defining a workflow: States submitted { pretty_name "Submitted“ hide_fields { date_approval date_settlement } approved { pretty_name "Approved" hide_fields { date_settlement } declined { pretty_name "Declined" hide_fields { date_settlement } settled { pretty_name "Settled" } discarded { pretty_name "Discarded" }

pumptheory.com Mark Aufflick Defining a workflow: Actions (1) submit { pretty_name "Submit" pretty_past_tense "Submitted" new_state "submitted" initial_action_p t } comment { pretty_name "Comment" pretty_past_tense "Commented" allowed_roles { submitter } priviliges { read write } always_enabled_p t }

pumptheory.com Mark Aufflick Defining a workflow: Actions (2) decline { pretty_name "Decline" pretty_past_tense "Declined" assigned_role "submitter" assigned_states { submitted } new_state "declined" privileges { write } edit_fields { date_approval } } approve { pretty_name "Approve" pretty_past_tense "Approved" assigned_role "submitter" assigned_states { submitted } new_state "approved" privileges { write } edit_fields { date_approval } }

pumptheory.com Mark Aufflick Integrating With Your App's API Creating new objects –workflow::case::new Fetching data –workflow::case::get Editing objects –workflow::case::action::execute see packages/bug-tracker/tcl/bug- procs.tcl

pumptheory.com Mark Aufflick Integrating with your App’s UI Bug Tracker demo… Use ad_form to build the form fields Workflow will give you: –Action buttons (workflow::case::get_available_actions) –Role assignment (workflow::case::role::add_assignee_widgets ) –Case log ( workflow::case::get_activity_html ) See packages/bug-tracker/www/bug.tcl

pumptheory.com Mark Aufflick Integrating with your app’s queries For complex view-only listings, stats etc. Join with: –workflow_cases –workflow_fsm_states –And others… See the bug-tracker index- postgresql.xql for an example

pumptheory.com Mark Aufflick Service Contracts and Callback goodness What is a callback good for? –Notifications –Other side effects What is a service contract? –ACS Service contract allows packages to define and register implementation of interfaces –ACS Service contract provides mean to dispatch method calls on an interface implementation. –Interface Discovery is available programmatically –The Service Contract interface specification was inspired by WDSL, the interface specfication for web services.

pumptheory.com Mark Aufflick Package development details APM TCL callbacks: –after-install (workflow::fsm::new_from_spec) –before-uninstall ( workflow::delete ) –before-upgrade –after-instantiate ( workflow::fsm::clone ) –before-uninstantiate( workflow::delete )

pumptheory.com Mark Aufflick References All references, slides and materials will be posted on the internet at: OpenACS Workflow documentation