1EnhydraShark/TogetherWorkflowServerandEnhydraJaWE/TogetherWorkflowEditorWorkshop2BasicIntroductiontoWorkflowTechnology3BasicIntroductiontoWorkflowTechnology•WhatisWorkFlowtechnology•WhatisWorkflow•WhatisWorkflowManagementSystem•WFMsystems–supportinthreefunctionalareas:–theBuild-timefunctions–theRun-timecontrolfunctions–theRun-timeinteractionswithhumanusersandITapplicationtools•WhatisWorkflowEnactmentService•WhatisWorkflowEngine4GenericWorkflowProductStructure5WfMCandWorkflowReferenceModelProcessDefitionToolWorkflowEnactmentServiceWorkflowClientApplicationsInvokedApplicationsOtherWorkflowEnactmentServiceAdministration&MonitoringtoolsAdminandWHClientsSharkToolAgentsTWESharkServerInterface1Interface2Interface3Interface4Interface56EnhydraJaWE/TogetherWorkflowEditor7TWEIntroduction•GraphicalapplicationforXPDLProcessDefinitionModeling.•MakescreatingandeditingXPDLeasy.•Usesswimlinestorepresentparticipantsoftheprocess.•EveryXPDLelementhaspropertypanelforeditingelementproperties.•FinaloutputofmodelingprocessisaXMLfilebasedonXPDLschema•XPDLcreatedbyTWEcanbeinterpretedbyanyXPDLworkflowengine•Accomplishedthreemaingoals:–Graphicalrepresentationofprocessdefinition–ExportofprocessdefinitionstoXPDL–ImportofanyvalidXPDLanditsgraphicrepresentation8XPDLandTWE•Package–thetopelementofXPDLschema–Externalpackageconcept–HowdoesTWEsupportexternalpackageconcept–HowtocreatenewXPDLandtodefinepackagepropertiesinTWE9XPDLandTWE•WorkflowProcessDefinition–GraphandpropertypanelrepresentationofworkflowprocessdefinitioninTWE–Start/Endmarkers10XPDLandTWE•TypeDeclaration–StandardXPDLdatatypes–Customdatatypes–Packagescope–Problemswithascope-externalpackagesandapplicationdefinitions–Sharksolutiontoscopeproblem–Howtouseitwhendefiningvariables–HowtodefineinTWE•Participant–representationofusers/roles/system–Externalpackage/Package/Workflowprocessscope–Wheretodefine-bestpractice–HowtodefineinTWE–TWE’sSpecial“Arbitraryexpressionparticipant”–TWE’sLDAPsupport11XPDLandTWE•Application–representationofapplicationstobeexecutedatruntime–Externalpackage/Package/Workflowprocessscope–Wheretodefine-bestpractice–HowtodefineinTWE–HowtouseitfromActivity’sTool–Formalparameters–likeaJavamethodparameterdefinition•DataField–Synonymous(workflowrelevantdata,variable)–Usagewithinworkflow(conditions,actualparameters,…)–Datatypes–standard/custom–Scope–HowtodefineinTWE–Howtouseitinconditions,actualparameters,deadlineexpressions,…12XPDLandTWE-Activity-representstheunitofwork-generallyassociatedwiththeirperformersandapplicationassignments.13XPDLandTWE-Differentactivitytypes•Manualactivity•Toolactivity•Routeactivity•Sub-Flowactivity•Blockactivity–HowtodefineinTWE•Transition–Linkbetweentwoactivities–Candescribetheconditiontogetfromthesourcetothetargetactivity–Differenttransitiontypes•Conditional/unconditionaltransition•Otherwisetransition•Exceptiontransition•Defaultexceptiontransition–HowtodefineinTWE–HowdoesTWEvalidategraphicaltransitioninsertion14XPDLandTWE•ActivitySet–Groupofactivitiesandtransitionsinsideprocess–Executedbyblockactivities–Whentouseit–HowtodefineinTWE•Extendedattributes–Necessityforvendorspecificattributes–Primarymethodtosupportvendorspecificextensions.–Definedbytheuserorvendortoexpressanyadditionalentitycharacteristics–HowtodefineinTWE•simplepartofExtendedAttribute•complexpartofExtendedAttribute–CanbedefinedforeverymainmainXPDLentitity15TWEGUI•Splitintoseveralparts:–Mainmenu,maintoolbarandinfobar.–4areaswithcomponents–Easytolayoutcomponentsdifferently16TWEGUI•Components:–Graph•displaystheselectedprocessoractivityset•Graphtoolbar•Participantmanipulation•Activityandtransitionmanipulation•Standardeditorfunctions:inserting,moving,selectinganddeleting•Doubleclick,rightclickfunctionality–XPDLView•Textviewoftheselectedelement•Highlighting•Searchfunction–(Graph)Overview•overviewofthewholeprocessgraph•easywaytonavigate17TWEGUI–Externalpackagerelations•Relationsamongstmainpackageanditsexternallyreferencedpackages–Transientpackagepool•Showspackagesopenedin‘Transient’mode•Add/removeTransientpackages•Copyfromtransientpackages–Navigator•Hierarchicalviewofpackageanditsmainsub-elements–Packagetree•hierarchicalviewofthewholepackage/XPDL–Properties•maindetailsofselectedelement–Search•Displaysreferencestotheselectedobjectorsearchresult•Resultsinhierarchicalview18TWEGUI–Problems•DisplaysinformationaboutproblemsinXPDL•Possibilitytoeasilynavigatetotheproblematicelement–WfXML•CommunicationwithworkflowenginebasedonWfMCIf4•Uploading/downloading/updatingXPDL)•Menu&Toolbar:–File(new,open,reopen,close,save,recentfiles,…)–Edit(cut,copy,paste,undo,redo,….)–Package(validation,insertprocess,properties,…)–Process(properties,…)–Externalpackages–Settings(Language,Configuration)–Help19TWEConfiguration•Basicconfigurationfile•Onepropertyfilepercomponent•ConfiguringTWEbehavior•Configuringgraphicalproperties•Possibilitytoswitchbetweendifferentconfiguration/modesatruntime–Sharkengineconfiguration–WfMOpenengineconfiguration20PossibleTWEcustomizations•HelpingXPDLdeveloperstoconcentrateonbusinessproble