TieFlow Workflow Toolkit Process Definition XML Final Presentation Capstone Group #3 – Spring 2007 http://dcm.cl.uh.edu/caps7g3 11/13/2019
Team Information Jigyasa Dubey Plabita Baruah Preetha Boisen Paul jigyasadubey@yahoo.com Plabita Baruah plabita_baruah@hotmail.com Preetha Boisen Paul preethabpaul@hotmail.com Sarjana Singh sarjana_singh10@yahoo.com 11/13/2019
Team Information (Cont.) Mentor Scott Hetherington, Abbasi Dhilawa Tietronix Software, Inc. (http://www.tietronix.com) Instructor Dr. Kwok Bun Yue Associate Professor of Computer Science – UHCL Email : yue@uhcl.edu URL : http://sce.cl.uh.edu/yue 11/13/2019
Contents Project Overview … Plabita Project Requirements … Sarjana Development Environment ... Sarjana System Analysis … Sarjana System Architecture … Sarjana System Design ... Sarjana Activity Diagram … Jigyasa Issues During Design … Jigyasa Satisfied Requirements … Jigyasa Future Enhancements … Jigyasa Implementation … Preetha 11/13/2019
Contents (Cont.) Logic Behind The Code … Preetha Project Timeline … Preetha References … Preetha 11/13/2019
Workflow Business Workflow Workflow, by definition, is the automation of a business process. Information or tasks are passed from one participant to another for action, according to a set of procedural rules. It is a set of tasks assigned to people or programs in order to accomplish a piece of work. 11/13/2019
Manual Process 11/13/2019
Automatic Process 11/13/2019
Project Overview Researched the Tieflow DTD Researched on the XPDL 2.0 and BPEL4WS1.1 Specification Mapping Elements/Attributes of Tieflow Difficulties faced during Mapping Omission of BPEL4WS1.1 from the Requirement 11/13/2019
Project Overview Developed the configuration file Handled special scenarios Developed the design for the XML Translator Developed the code with necessary classes Preserving the unmatched Elements/Attributes of Tieflow Handling of Extended Attributes/Elements of Tieflow 11/13/2019
General Requirements Transformation of TieFlow XML XPDL 2.0 – XML Process Definition language BPEL4WS 1.1 – Business Process Execution Language for web services 11/13/2019
Detailed Requirements XML translator Component with API Standalone with Command Line Interface Generic Translation Component Appropriate Errors and Exceptions Verify and Validate Input/Output XML 11/13/2019
Development Environment Java 1.5 XML 1.0 Xerces DOM Based Parser 11/13/2019
System Architecture TieFlow elements MAP (in XML) XPDL elements TieFlow XML Translator (Java) XPDL XML 11/13/2019
Comparison Similarities Differences 11/13/2019
Example 11/13/2019
System Design Configuration File ElementToElementTranslator AttributeToElementTranslator ElementToAttributeTranslator AttributeToAttributeTranslator ExtendedAttributesTranslator 11/13/2019
Example <Translation> <NodeName translatorClassName="ElementToElementTranslator"> Package::Process </NodeName> Package::WorkFlowProcess </Translation> 11/13/2019
Contd. <Translation> <NodeName translatorClassName="AttributeToAttributeTranslator"> Package::Process::id </NodeName> <NodeName translatorClassName="AttributeToAttributeTranslator"> Package::WorkFlowProcess::id </Translation> 11/13/2019
Class Diagram 11/13/2019
Activity Diagram 11/13/2019
Issues During Design Unmatched Elements/Attributes Example Adding class name in configuration file Preserved Data on Missing Elements 11/13/2019
Issues During Design Missing Elements (Process – ProcessHeader) Package:Process: TimeUnit (Tie flow ) Package:WorkFlowProcess:ProcessHeader:DurationUnit (XPDL) Generated when required. 11/13/2019
Issues During Design Depth Issue Maintaining hierarchy in configuration file Package:Process:Role:id Package:WorkflowProcess:Lane:id Package:Role:id Package:Lane:id 11/13/2019
Issues During Design Keeping track of parents Still working on code 11/13/2019
Satisfied requirements Generic translation component External configuration options TieFlow to XPDL transformation Command line interface API GUI Flexibility in input and output formats 11/13/2019
Future Enhancements New standards can be added. Translation to other process definition language. Improvement in GUI. 11/13/2019
Implementation Structure of the Configuration file Process flow Project timeline Project demo Conclusion 11/13/2019
Configuration file 11/13/2019
Advantages of configuration file Generic translation Type of mapping Captures hierarchy Renders simplicity to Java code Easy to read, create and modify 11/13/2019
Logic behind the code TieFlowXmlConverter XMLTranslator XMLTranslatorUtility NodeTranslator ElementToElementTranslator ElementToAttributeTranslator AttributeToAttributeTranslator AttributeToElementTranslator 11/13/2019
Helper classes Class TieFlowXmlConverter Class XMLTranslatorUtility GUI Accepts input file name Display status Creates output XML file Class XMLTranslatorUtility Loads configuration file to hash maps Creates fully qualified node names on demand 11/13/2019
Class XMLTranslator API methods for TieFlow Java applications Reads input XML file using DocumentTraversal interface org.w3c.dom.traversal.DocumentTraversal Creates appropriate NodeTranslator class using reflection 11/13/2019
Class NodeTranslator Four Subclasses based on type of Translation Creates the output node in the appropriate parent Creates parent node recursively when required 11/13/2019
Project Timeline JAN FEB MAR APR MAY JUN 11/13/2019 Reqt Analysis Mapping Mapping/Design Implementation/Testing On Time! 11/13/2019
Project Demo 11/13/2019
References Link :http://dcm.cl.uh.edu/caps7g3 11/13/2019