The ]po[ Workflow Introduction Frank Bergmann, 2006-11-15 This guide contains ]po[ workflow overview information for developers with experience with PostgreSQL.

Slides:



Advertisements
Similar presentations
DIGIDOC A web based tool to Manage Documents. System Overview DigiDoc is a web-based customizable, integrated solution for Business Process Management.
Advertisements

Quick Start Guide | Skill Assessments Using your Online Product Interfaces and Features Getting Started - My Account Creating/Logging into your Self Test.
ECHO Test Track Pro User’s Guide
Copyright © 2006 Help Desk Systems, Inc. All rights reserved. Overview of Help Desk Systems Inc. (HDSI) HDSI offers a hosted, web based trouble ticket.
With Folder HelpDesk for Outlook, support centres and other helpdesks can work efficiently with support cases inside Microsoft Outlook. The support tickets.
Timesheets Time Reporting System. Web-based application supporting the process of time reporting. Offered in SaaS model (Software as a Service) or standard.
Greg Baker Change Workflows Greg Baker
]po[ Docu Wiki.  ]project-opem[ 2008, Rollout Methodology / Frank Bergmann / 2 Types of Readers  Beginners – These users have just started using ]po[.
Project Portfolio Management PPM User Guide Project Managers Version 1.0.
To the Assignments – Work in Progress Online Training Course
Stored procedures and views You can see definitions for stored procedures and views in the demo databases but you can’t change them. For views, expand.
SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
SESSION TWO SECURITY AND GROUP PERMISSIONS Security and Group Permissions.
Edoclite and Managing Client Engagements What is Edoclite? How is it used at IU? Development Process?
CCMDB 7.2.
HORIZONT 1 ProcMan ® The Handover Process Manager Product Presentation HORIZONT Software for Datacenters Garmischer Str. 8 D München Tel ++49(0)89.
1 Classification: Genpact Internal.  Tool From Oracle  Works with Oracle Database  PL/SQL Based  Widely Used with Oracle Applications  Can be Used.
Senior Design – Acceptance Test Plan Review The goal is to: define the criteria for approving the application. Tightly coupled to the Requirements document.
1 Chapter Overview Creating User and Computer Objects Maintaining User Accounts Creating User Profiles.
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
IBM Proof of Technology Discovering the Value of SOA with WebSphere Process Integration © 2005 IBM Corporation SOA on your terms and our expertise WebSphere.
Page 1 ISMT E-120 Desktop Applications for Managers Introduction to Microsoft Access.
Business Processes and Workflow How to go from idea to implementation
Sage CRM Developers Course
Reading Data in Web Pages tMyn1 Reading Data in Web Pages A very common application of PHP is to have an HTML form gather information from a website's.
Copyright Course Technology 1999
System for Administration, Training, and Educational Resources for NASA SATERN Overview for Learners May 2006.
Developing Workflows with SharePoint Designer David Coe Application Development Consultant Microsoft Corporation.
Screen Previews for Shopping Carts and Checkout Process 10.3 release October 05, 2010.
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
Implementing GL, AP and PO Workflow
Chapter 6 : Designing SQL Server Service-Level Security MCITP Administrator: Microsoft SQL Server 2005 Database Server Infrastructure Design Study Guide.
Configuration Management (CM)
In the next step you will enter some data records into the table. This can be done easily using the ‘Data Browser’. The data browser can be accessed via.
Creating Dialog (ABAP Dynpro) Programs. Slide 2 Introduction All of the ERP systems operate similarly with regard to transactional integrity They all.
Module 7 Active Directory and Account Management.
Alerts Manager Refer to Slide 2 for instructions on how to view the full-screen slideshow.Slide 2.
 Whether using paper forms or forms on the web, forms are used for gathering information. User enter information into designated areas, or fields. Forms.
1 SMART Training Update – May 2011 Michaela Butterworth.
XP New Perspectives on Microsoft Office FrontPage 2003 Tutorial 7 1 Microsoft Office FrontPage 2003 Tutorial 7 – Creating and Using Templates in a Web.
What is Web Site Administration Tool ? WAT Allow you to Configure Web Site With Simple Interface –Manage Users –Manage Roles –Manage Access Rules.
Porting methodology Porting of an WEB Site using PTK To insert your company logo on this slide From the Insert Menu Select “Picture” Locate your logo file.
37 Copyright © 2007, Oracle. All rights reserved. Module 37: Executing Workflow Processes Siebel 8.0 Essentials.
Petri nets refresher Prof.dr.ir. Wil van der Aalst
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
Visual Basic for Application - Microsoft Access 2003 Programming applications using Objects.
Office of Housing Choice Voucher Program Voucher Management System – VMS Version Released October 2011.
SQL SERVER 2008 Installation Guide A Step by Step Guide Prepared by Hassan Tariq.
~ pertemuan 4 ~ Oleh: Ir. Abdul Hayat, MTI 20-Mar-2009 [Abdul Hayat, [4]Project Integration Management, Semester Genap 2008/2009] 1 PROJECT INTEGRATION.
Orders and Invoices Supply Chain Platform: Rolls-Royce Training for Indirect Suppliers March 2016.
Invoices and Service Invoices Training Presentation for Raytheon Supply Chain Platform (RSCP) April 2016.
This was written with the assumption that workbooks would be added. Even if these are not introduced until later, the same basic ideas apply Hopefully.
How to Create eInvoices in SCP-RR Training Presentation for Supply Chain Platform: Rolls-Royce January 2016.
Advanced Analysis Services Security Chris Webb Crossjoin Consulting Limited.
Invoices Training Presentation for Supply Chain Platform: BAE Systems May 2015.
© Arbela Technologies Accounts Payable + Procurement & Sourcing Workflows.
1 Entity Relationship Approach u Top-down approach to data modeling u Uses diagrams u Normalization - confirms technical soundness u Entity Relationship.
Internet Made Easy! Make sure all your information is always up to date and instantly available to all your clients.
Lesson # 9 HP UCMDB 8.0 Essentials
Working in the Forms Developer Environment
Core LIMS Training: Advanced Administration
11i Journal Workflow: Maximize the Potential
Implementation Specialists Presents
Principles of report writing
User Guide Employee & Manager
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Guide for writing a Software Testing Document
Procurement Confirmation Session
Presentation transcript:

The ]po[ Workflow Introduction Frank Bergmann, This guide contains ]po[ workflow overview information for developers with experience with PostgreSQL and the OpenACS toolkit. Draft

Scope, Audience & Purpose  These slides provide background material talk on ]project- open[ workflows.  We assume that the reader is familiar with basic concepts and the database structure of ]po[ (no TCL knowledge necessary)  For developer documentation please see: – – “Dynamic WF with ]po[“

Components of a Workflow 1.The Petri-Net: Many people think this is the main component, but it’s not. 2.The Object: Every WF in ]po[ is associated with exactly one object. 3.Assignment Logic: This is usually a set of PL/SQL procedures that determine who should perform each action in the WF. 4.A number of “Actions”: These are usually calls to “im_object__set_status” PL/SQL procedures that modify the object’s status depending on the WF progress 5.GUI Panels: These panels are TCL forms that allow a user to add information to an object and/or to take special actions implemented in TCL code.

Simple Approval Workflow Modify Confirm ConfirmedRejected OK Not OK WorkflowAssignment Assign to owner of the underlying object Assign to the “supervisor” of the object’s owner “Automatic” transitions, no assignment necessary Actions enable: status=rejected fire: status=requested enable: status=confirmed GUI Panels Object Info Form Additional Info Confirm Delete The same “panel” is shown for both “Modify” and “Confirm” with minor differences

Simple Approval Workflow  The example in the previous page shows a simple approval workflow. This WF is used for example in ]po[ V3.4 for approval of vacation requests (“Absences”).

Object Type -> Workflow Mapping  When creating a new object, ]po[ allows you to define a workflow per object type.  ]po[ looks up the workflow key in the object type’s category in the “im_categories.aux_string1”  Currently, the following objects are WF-enabled: –im_project, –im_user_absence, –im_expense_bundle and –im_timesheet_conf_obj  The screenshot at the right show the “SaaS” project type, which is associated with a “saas_project_workflow_wf”.

Showing the WF-Status of a Project  In ]po[ V3.4 there are two additional components associated with every WF-enabled object: –The “Workflow Graph” shows the current status of the WF and –The “Workflow Journal” shows the history of all WF decisions.

Timed Transitions  What is a “Timed Transition”? –A Timed transitions automatically “fired” at its “trigger_time”. –A “Timed Transition” is different from a “hold timeout”: A timed transition fires, while the “hold timeout” cancels the transition  How can I set the “Trigger Time”? –Trigger_time is set by the result of the “Time” callback. This callback can be specified in the “Time” field of the WfActionPage –The time callback is called when the transition is “enabled”.

Request For Change Example

"RFC" Example Case  For the rest of this introduction we will assume the following a "Request for Change" (RFC) example. –The IT-department of a large corporation wants to consolidate its help-desk operations –All requests from the organization's users ("Requests for Change", RFC) are captured using a web based application –Each RFC consists of a number of fields that together specify the customer's need –The RFC is processed in a strucured way using a Workflow.  It is likely that the workflow will change in the future to accomodate organizational and process changes. Changes should configurable.

RFC - Form & Dynamic Fields  An important number of form fields have been identified during the analysis phase  Fields may or may not appear, depending on the type of RFC  It is possible that the variables variables in the form will change during the course of the project. Changes should be easy to introduce, preferably configurable by the application administrators from the customer's side. Screenshot RFC-Form

RFC - Roles  Employee An employee beneficient of the RFC - the guy who needs something changed  Distributor A member of the IT helpdesk to complete the RFC and to judge technical viablility  Approver The Employee's boss or somebody with suitable budget responsability to confirm the employee's RFC.

How to Plan your Workflow

"Transitions" & "Places"  Transitions in general represent decisions or actions by a particular user group.  You should normally use different transitions if different user groups are involved (i.e. Employee, IT- Department & Employee's Boss). Otherwise only use a single transition.  It's good practice to reduce the number of transitions to a minimum.  Places are located before and after each transition. They are normally created automatically when creating a new transition.

"Arcs", "Guards", "Attributes" & User Decisions  "Arcs" connect Places with Transitions.  "Guards" are boolean conditions on Arcs. An Arc only "becomes active" (passes on a token) if it's Guard is "true". Two or more Guards behave like an IF-THEN-ELSE.  Web interface actions at the can not influence Guards, however.  Instead, Web actions modifiy the values of WF variables ("Attributes"). The boolean Guard conditions can use these variables to determine their IF-THEN-ELSE behaviour.

"Arcs", "Guards", "Attributes" & User Decisions  Guards are not directly connected to the Web interface. A Guard  A user action (pressing a button) can not influence a Guard directly.  Instead, Web interface actions modify "Attributes" (the workflow's variables). These Attributes in turn can influence the behaviour of Guards.

Designing an IF-THEN-ELSE WF Decision/Branching/...  Two type of standard Guards: –Guard that checks a variable for a particular value –"ELSE"-Guard, that becomes true if the other guards haven't become true.  - Plus: User-Written Guards: –The SysAdmin can write his own guards as PlPg/SQL procedures.

Implementing a Two- Way Decision  We usually implement a two-way (IF-ELSE) decision using a boolean Attribute: –One branch is followed if the attribute is "true". We select a wf_callback__guard_attribute_true" guard and specify the attribute name in the "Optional Argument" field. –The ELSE condition of the other branch is implemented by choosing the "No other guards were satisfied" condition.  It is important that exactly one Guard becomes true: –The token would disappear (gets "swallowed")

Implementing a Two- Way Decision  Choose a reasonable Attribute name. For example "Cancel RFC". Take into account that this attribute is global to the entire WF, and that you may reuse the Attribute in other transitions for a similar purpose.

Avoiding Multiple Tokens and "Swallowed" Tokens  Make sure that there is exactly one Guard active on the database & Pl/SQL level: –You frequently make errors on the GUI level –There errors are _extremely_ difficult to debug, because WF is difficult to debug –Other parts of the GUI may depend on the assumption that there is only one Token in the WF. These GUI elements may crash under a duplicated Token condition. However, you won't understand (easily) that this was the condition of the crash.

WF & User Decisions  Transitions frequently involve decisions that lead to a kind of behaviour, controlling the flow in the Workflow  In order to

Frank Bergmann