Products and Research WfMSs
Dec 25, 2015
Products and Research WfMSs
Workflow Products (Partial List)
Action Workflow System Action Technologies Inc. http://www.actiontech.com/
CSE/Workflow ( CSE Systems Corporation ) http://www.csesystems.com/
Delrina FormFlow(Delrina) DM/Workflow(Intergraph) EPIC/WF( Computron) FlowLogic (FlowLogic
Corporation ) http://www.flowlogic.com/
FlowMaker ( Workflow)
FlowMan(Logical Software Solutions)
FlowMark ( IBM) http://www.software.ibm.com/ad/flowmark/
InConcert (InConcert Inc.) http://www.inconcertsw.com/
FloWare (BancTec Inc.) http://www.plx.com/floware/
GroupFlow(Pavone) InConcert(InConcert) JetForm(Jetform)
Workflow Products (Partial List)
Keyflow(Keyfile) KI Shell(UES) Livelink Workflow(Odesta) LinkWorks(DEC)
http://www.digital.com/info/linkworks/
Lotus Notes(IBM/Lotus) METEOR (Infocosm, Inc.)
http://www.infocosm.com
Office.IQ workflow and document management software (Portfolio Technologies Inc.) http://www.officeiq.com/
OmniDesk RouteBuilder(SIGMA/Wang)
OPEN/workflow (Eastman Software, Wang) http://www.eastmansoftware.com
Optix Workflow (Blueridge) Plexus FloWare
(Recognition/BancTec)
Workflow Products (partial list)
ViewStar System( ViewStar) ProcessIT(NCR)-Plexus
FloWare OEM Staffware (Staffware)
http://www.staffware.com/ TeamWARE Flow
(ICL/TeamWare) Ultimus (Ultimus)
http://www.ultimus1.com/ Visual WorkFlow (FileNet)
http://www.filenet.com/ WorkMAN (Reach Software)
WorkVision(IA) WorkFlow (CSE Systems, Computer & Software Engineering) http://www.csesys.co.at/
WorkParty (Siemens Nixdorf) http://www.sni.de/public/sni.htm
WebFlow (Workflow Management on the WWW, Cap Gemini Innovation ) http://webflow.cginn.cgs.fr:4747/
Generic Workflow Product Structure
ProcessDefinition
Workflow Enactment
Service
Applications
WFMEngine
Worklist
Definitiontool
Generates
WFMEngine
Org. data
Applications
WorkflowRelevant data
WorkflowControldata
Worklist Handler
Manipulate
app data
updateuse
invokes
interact via
invokesinterpreted by
User Interface
SOURCE: WFMC
FlowMark Execution Model (schematic)
StSt Act.Act. EndEnd
OCOC
C++ ProgramC++ Program
ICIC OCOC
OCOCICIC
APIAPI
ICIC
xx
x < 100x < 100
FlowMark System Architecture
System Components FlowMark OODB server (ObjectStore-OS)* FlowMark (FM) Server (OS Client, process navigation
engine, worklist mgmt.) FlowMark Buildtime Client (workflow process definition and
animation) FlowMark Runtime Client (process execution facility,
worklist mgr., process control and container (C, REXX) API support), Administrative Utilities (Import/Export from flies, Audit trail)
* being replaced by DB2 (main driver -> performance)
FlowMark System Architecture
Configurations: stand alone, client/server
(server: OS server+ OS client+ FM server), multiple FlowMark servers on different machines (single: OS server; multiple: OS client+ FM Server, OS Client+ FM B/T, FM R/T)
Platforms: OS/2, AIX; Communications: OS/2 IPC, APPC, TCP/IP or NetBIOS
Support for Notes, NT, replacing ObjectStore by DB2
FlowMark Runtime System
Network
OSS
DB
RTC
PEC APP
RTC
PEC APP
PEC APP
FMS
RTC
OSS- Object Store ServerFMS- Flow Mark ServerRTC - Runtime Client
PEC - Program Execution ClientAPP - Application Program
Tool types (dimensions)• concepts
(forms, documents, tasks/activities/procedures)
approach/market focus
(e-mail, collaborative, imaging, document,…)
• modeling and specification
(coordination: graphical, petri-net, routing rules, declarative rules;model components: map, data, task; details: branching,parallel routing; designer: user, developer; toolset: support for BPM)
Tool Selection
Tool Selection (continued)
• architecture (message vs. repository) • system function/components
(design, simulation, monitoring- user/admin, tracking/mgmt. reports,
recovery, admin. tools, ... reengineering)
• features (roles, work-list, dynamic work distribution/assignments,authorization, security, data handling, dynamic workflows/change management, exceptions, deadlines, rapid development/library/reusability, external applications…)
Tool Selection (continued)
• messaging/communication infrastructure technology (e-mail, TCP/IP, Web,……)
• platform (client : Unix/MS-Windows/X-open,…; server : Unix/NT/MS-Windows, database, Notes,….;
DBMS: …)
• interfaces to other tools (open/published file formats/interfaces?)
• interoperatibility (applications, data access/sharing standard, workflow standards )
• current client references, case studies• pricing (per seat, services/software)
Limitations of today’s commercial workflow products
Limitations in dealing with heterogeneity and existing infrastructure
Significant demands on computing infrastructures for providers and organizers
Significant effort from design to implementation
Little support for error handling and recovery ...
Research Systems (partial list)
ADEPT - Next Generation Workflow Management System ( University of Ulm, DBIS Department) http://www.informatik.uni-ulm.de/dbis/f&l/forschung/workflow/ftext-adept_e.html
ConTracts/APRICOTS http://www.informatik.uni-stuttgart.de/ipvr/as/projekte/apricots/apricots.html
CRISTAL (CERN, W. England)
Exotica (IBM) http://www.almaden.ibm.com/cs/exotica/exotica_home_page.html
Income/Star http://www.aifb.uni-karlsruhe.de:80/InfoSys/income-star.html
MENTOR (Middleware for Enterprise-wide Workflow Management) http://www-dbs.cs.uni-sb.de/ ~mentor/Welcome.html
METEOR(Multiparadigm Transactional Workflow Management System ) http://lsdis.cs.uga.edu/workflow
Bold => known to be active
Research Systems(partial list)
METUFlow (Software Research and Development Center, Metu, Turkey http://www.srdc.metu.edu.tr/metuflow/
Mobile http://www6.informatik.uni-erlangen.de/research/wfm.html
Panta Rhei (Uni-Klu, Austria) SWORDIES (Swiss Workflow in
a Distributed Environment) http://www.ifi.unizh.ch/groups/dbtg/SWORDIES/index.html
TRAMs http://www.ifi.unizh.ch/groups/dbtg/trams.html
TriGSflow http://www.ifs.uni-linz.ac.at/ifs/research/areas/areas.html
WASA (Muenster, G) WIDE (Workflow on Intelligent
Distributed database Environments) http://wwwis.cs.utwente.nl:8080/~wide/wide.html
WorCOS, CodAlf (TU-Dresden,G)
Earlier Projects INCA (MITL) ASSET (BellLabs), ObjectFlow (DEC) Process Manager (HPLabs)
Other Projects Migrating Workflows (MCC) Opera (ETH Switzerland) VORTEL (Berkom, G) DartFlow
Process Management Oz+, OzWeb (Columbia) ICNets (Czech) U of Aachen Endeavor
Database/ATM oriented APRICOT (G) TSME/DOM (GTE Lab) Carnot (MCC) CoACT (GMD-IPSI)
Research Systems (a partial list)
WWWCORBA
TaskTask
TM
Task
TM
Task
TM
RecoveryMonitor
RepositoryData
Data
Data
LegacyAppdb Graphical
Designer
METEOR
Comprehensive Design/Build Env. Automatic Code generation of Runtime
System CORBA/WWW based communication
infrastructures Predefined Task Structures with
execution semantics, incl. transactional tasks
Comprehensive inter-task dependencies Meteor’s Workflow Repository and
Reuse Error handling (Meteor’s Error model)
and recovery Standards support Applications, research system and
product
CODALF
Petri-net based execution model Translation of execution graph
to runtime Syntactic and Semantic tests of
execution graph CORBA and DCE/DC++ based
communication Dynamic Mapping of Tasks and
Roles via Trading Services Predefined Structural primitives Error Recovery at
synchronization nodes
Error Recovery
DirectoryService
Trader DTMM
Control module
Application server
Exitmodule
Entrancemodule
Executiongraph
Data
Control Information
Executiongraph
Data
Control Information
WorkflowObject
Runtime System
System Services DCE/DC++
DTMM
MENTORUniversity of Saarland & Union Bank of Switzerland
Large scale WFMS in failure prone environments State and activity charts Transformation of design to run-time components Distributed run-time environment TP-monitor (Tuxedo) for reliable messaging Workflow logs: status information & recovery GUI based workflow monitoring
contd..
MENTOR Architecture
ExoticaIBM, Almaden Research Center
Based on FlowMark (IBM) Focus on:
» availability and scalability of large scale WFMS» support for mobile clients» failure handling » integration of production (FlowMark) and ad-hoc (Notes)
workflows» agent-based and OO workflow» desktop integration: OLE2, VisualBasic, LotusScript
contd..
ExoticaOverview of Architecture
DB2
MQSeries
ObjectStore
ObjectStore
Notes Server DB2
FlowMarkBuildtime Client
FlowMarkRuntime Client
Mobile ClientFlowMark
Notes Client
HighlyAvailable Client
FlowMarkServer
BackupServer
ProductResearch
OLE2
events
agents
ACID Transaction
A comparison of ResearchWFMS features
TERMINOLOGY
METEOR: workflow, task, processing entities
Exotica/FloMark: process, activity, user/resource
ObjectFlow: flow, step, agents representing resources
GRAPH TYPES IN MODEL
METEOR and ObjectFlow allow cyclic flows. Exotica/FloMark allows only DAGs. Nesting of processes: Compound Task in METEOR, Nested Processes in Exotica and ObjectFlow.
A comparison of Research WFMS features (contd..)
WORKLIST CONCEPT
Supported in METEOR*, Exotica and ObjectFlow.
CONTROL FLOW and DATA FLOW CONCEPTS
Supported by METEOR (intertask dependency), Exotica (control & data connectors, conditions) and ObjectFlow.
SPECIFICATION LANGUAGE
METEOR1: two intermediate languages: WFSL, TSL
Exotica/FloMark: graphical process modeler
ObjectFlow: FDL for describing flows, FML for manipulating flows
A comparison of Research WFMS features (contd..)
DYNAMIC FLOWS and EXCEPTION HANDLING
METEOR1: Array of task instances and control modifiers.
ObjectFlow: Iteration (multiple instances of subflow spawned until it succeeds) and fan-out; FML primitives for modifying flow procedures.
EXPLICIT MODELING OF HETEROGENEOUS TASKS
METEOR: task structures
A comparison of ResearchWFMS features (contd..)
SUPPORT FOR TRANSACTIONAL AND NONTRANSACTIONAL TASKS
DOM, METEOR HOW TASKS ARE EXECUTED
METEOR1 performs tasks at the Processing Entity level, which communicates with Flow Controller through an Interface. Exotica/FloMark executes tasks through a Program Execution Client. ObjectFlow performs tasks through Flow Agents.
A comparison of Research WFMS features (contd..)
INPUT/OUTPUT
METEOR: Each task has typed input and output objects. Filters perform data reformatting/translation.
Exotica/FloMark: Activities map input parameters in input containers to output parameters in output containers.
ObjectFlow: Each step requires a set of data elements on which it operates - a set of data elements has a valid domain.
Transactional workflows (try to) address application specific and user-defined correctness, reliability, and
Transactional workflows share the objectives of some extended/relaxed transaction models about selective relaxation of transactional properties based on (multi-) application semantics.
.... however, the term is likely to evolve, as it has significant appeal - see DOM and EXOTICA projects
Transactional Workflow - What it is and what it is not
Capabilities of Research Prototypes:
Example of METEOR
Supports a variety of task types: Application and User
Use of single paradigm for human involvement (WWW, Web-browser based GUI, HTML documents)
Graphical workflow design and semi-automated translation to run-time code for coordination component
Support for variety of computing infrastructures: WWW, Distributed Object Management (CORBA), Notes (Groupware)
Integrated access to (or use of) multiple web servers, various DBMSs/databases, Internet resources and capabilities (incl. Java) ((contdcontd...)...)
Capabilities of Research Prototypes
(contd...)
Variety of C/S and distributed environments; different scheduling/control strategies
Support for and use of transactions of different types: database (ACID/2-PC) transactions, DTP (transactional RPC, DE-Light), EDI, and domain-specific (e.g., HL7); customizable transactions
Ability to monitor/track/report workflows/tasks
Support for recovery and error handling
Some support for dynamic workflows (e.g., handling of task outputs)
A Comparison of (mostly) Research Workflow Management Systems (from CodAlf DSEJ
paper)
CodAlf BPAFrame Exotica METEOR2 FlowMark MOBILE MENTOR PromiandDecentralizd control yes yes yes both no yes yes noDecentralizd data-flow external yes yes both no no no noWorkflow type/instance separation yes yes yes yes yes yes yes yesIntegration of legacy application no yes yes yes yes yes yes yesTime-out control yes no no no no yes noAccess control no no no going on yes no yesTransactions no no no yes yes yes yes yesObject-oriented Architecture yes yes yes yes no yes yes noStandard middle-ware platform yes yes no yes no yes yes no