簡易檢索 / 詳目顯示

研究生: 李泳泉
Yung-Chuan Lee
論文名稱: 物件導向工作流程系統之元件再利用
Towards the Reusability of Object-Oriented Workflow Management Systems
指導教授: 黃冠寰
Hwang, Gwan-Hwan
學位類別: 碩士
Master
系所名稱: 資訊教育研究所
Graduate Institute of Information and Computer Education
論文出版年: 2004
畢業學年度: 92
語文別: 英文
論文頁數: 176
中文關鍵詞: 工作流程工作流程系統工作流程管理系統物件導向工作流程管理系統錯誤回復可再用性
英文關鍵詞: Workflow, Workflow Systems, Workflow Management Systems, Object-Oriented Workflow Management Systems, Failure Recovery, Reusability
論文種類: 學術論文
相關次數: 點閱:158下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 在這篇論文中我們探討工作流程系統(Workflow Management Systems, WfMSs)元件的可再用性(Reusability)。物件導向程式語言的特性允許物件的重覆使用(Reuse),但由於工作流程系統的運作模式的特殊性,因此單純的使用物件導向程式語言而不考慮工作流程系統的特性,並不一定能實作出可再用的元件。
    我們探討工作流程系統中每個元件應該具備的可再用性並指出實作出可再用元件時可能遭遇的困難。為了克服這些困難,我們為工作流程系統提出了一個名為JOO-WfMS物件導向系統模型。在這個系統模型中我們運用設計樣式(Design Pattern) 來提昇元件的可再用性。除了元件架構的設計,在錯誤回復模式(failure recovery model)上,我們採用一套工作流程錯誤處理(workflow failure-handling , WfFH)語言來提供富彈性的錯誤處理模式。在系統與使用者溝通的功能設計上,我們也採用物件配合資料庫的方式來提昇使用者介面的可再用性。在本論文中我們也將提供系統建置的相關經驗報告。

    In this paper, we focus on the reusability of the components of workflow management systems (WfMSs). Languages that support object-oriented programming now are firmly entrenched in the mainstream. The object-oriented programming language provides support for three key languages features: abstract data types, inheritance, and dynamic binding. As a result, these languages can support the software reuse. According to our study, implementing WfMS in object-oriented programming languages without considering the characteristics of the WfMSs does not always obtain reusable components. We clarify the reusability of WfMSs and point out the difficulties for constructing reusable components for WfMSs. To overcome these difficulties, we propose an object-oriented model for WfMSs named “Java-based Object-Oriented Workflow Management System (JOO-WfMS)”. In JOO-WfMS, we use design patterns for system architecture and components to promote the reusability. Besides, we propose a language, called workflow failure-handling (WfFH) language, to support a flexible failure recovery model in JOO-WfMS. For the design of user communication interfaces, we use user communication components (UCC) to promote the reusability. We also report our experiences in constructing the prototype of JOO-WfMS and experimental results.

    中 文 摘 要 1 ABSTRACT 2 LIST OF TABLES VII LIST OF FIGURES VIII 1. INTRODUCTIONS 11 1.1 THE REUSABILITY OF OBJECT-ORIENTED PROGRAMMING LANGUAGE 12 2. INTRODUCTION TO WORKFLOW SYSTEM 14 2.1 INTRODUCTION TO WORKFLOW 14 2.1.1 Process and Workflow 14 2.2 INTRODUCTION TO WORKFLOW MANAGEMENT SYSTEM 16 2.2.1 Components of Workflow Management System 16 2.2.2 Meta-Model Component 17 2.2.2.1 Direct Graphics Model 17 2.2.2.2 Wf-XML Model 18 2.2.2.3 Petri Net Model 18 2.2.3 Build-Time Component 18 2.2.4 Run-Time Component 19 2.3 THE WORKFLOW REFERENCE MODEL 20 2.3.1 Workflow Enactment Services 21 2.3.1.1 Workflow Engine 21 2.3.1.2 Workflow Process 22 2.3.1.3 Workflow Activity 23 2.3.2 Process Definition Tools 25 2.3.3 Workflow Client Applications 26 2.3.4 Invoked Applications 28 2.3.5 Workflow Interoperability 29 2.3.6 System administration & Monitoring Tools 30 2.4 THE OMG WORKFLOW MANAGEMENT FACILITY 31 2.4.1 WfRequester Interface 32 2.4.2 WfExecutionObject Interface 32 2.4.3 WfProcessMgr Interface 33 2.4.4 WfProcess Interface 34 2.4.5 WfActivity Interface 34 2.4.6 WfAssignment Interface 35 2.4.7 WfResource Interface 35 2.4.8 WfEventAudit Interface 36 3. THE REUSABILITY OF WORKFLOW MANAGEMENT SYSTEMS 38 3.1 WORKFLOW ENGINE 39 3.2 WORKFLOW PROCESS 40 3.3 WORKFLOW ACTIVITY 41 3.3.1 User Interface 42 3.3.2 Failure Recovery 43 3.4 PROCESS DEFINITION TOOL 44 3.5 DISTRIBUTED WORKFLOW 45 3.6 PERSISTENCE 45 4. DIFFICULTIES FOR CONSTRUCTING REUSABLE COMPONENTS FOR WFMS 47 4.1 WORKFLOW ENGINE 47 4.2 WORKFLOW PROCESS 49 4.3 WORKFLOW ACTIVITY 50 4.3.1 User Interface 51 4.3.2 Failure Recovery 53 4.4 PROCESS DEFINITION TOOLS 54 4.5 DISTRUBUTED WORKFLOW 55 4.6 PERSISTENCE 55 5. THE SYSTEM ARCHITECTURE OF A REUSABLE WORKFLOW MANAGEMENT SYSTEM 58 5.1 THE STACK OF WFMS 58 5.2 THE SYSTEM ARCHITECTURE OF JOO-WFMS 61 5.3 WORKFLOW ENGINE 62 5.3.1 Design Details 64 5.3.2 Discussion of Workflow Engine 67 5.4 WORKFLOW PROCESS 67 5.4.1 Design Details 71 5.4.2 Discussion of Workflow Process 74 5.5 WORKFLOW ACTIVITY 74 5.5.1 Design Details 75 5.5.2 Discussion of Workflow Activity 78 5.5.3 User Interface 79 5.5.3.1 Human-Computer Interface 81 5.5.3.2 User Response Handling Mechanism 92 5.5.4 Failure Recovery 101 5.5.4.1 The Skeleton of a Recovery Definition 102 5.5.4.2 Methods in WfFH 104 5.5.4.3 How JOO-WfMS supprot WfFH 108 5.6 WORKFLOW TRANSITION 111 5.6.1 Design Details 118 5.6.2 Discussion of Workflow Transition 119 5.7 WORKFLOW PARTICIPANTS 121 5.7.1 Design Details 124 5.7.2 Discussion of Workflow Participants 126 5.8 PERSISTENCE 127 5.8.1 Design Details 127 5.8.2 Discussion of Persistence 129 6. RELATED WORK 132 6.1 WOORKS 132 6.2 INCONCERT 133 6.3 TRIGSFLOW 136 6.4 MICRO-WORKFLOW 139 6.5 SUMMARY 142 7. EVALUTION AND EXPERIMENT 146 7.1 EXAMPLE 1: AN ONLINE SYSTEM FOR ASKING FOR LEAVE 146 7.1.1 Implementation 148 7.1.2 To Face the Change of Requirement 150 7.2 EXAMPLE 2: AN ONLINE SYSTEM FOR PROPERTY PURCHASE PROCESS 152 7.2.1 Implementation 154 7.2.2 To Face the Change of Requirement 155 7.3 EXPERIMENT ABOUT FAILURE RECOVERY MODEL IN JOO-WFMS 156 7.4 EXPERIMENT ABOUT PERSISTENCE IN JOO-WFMS 157 8. CONCLUSION AND FUTURE WORK 162 8.1 SUMMARY 162 8.2 FUTURE WORK 163 8.2.1 Process Definition Tools 163 8.2.2 Exception Handling 165 8.2.3 Distributed Workflow 166 8.2.4 System Administration & Monitoring 171 REFERENCE 173

    1. Dahl, O-J., Myhrhaug, B. and Nygaard, K. The SIMULA 67 Common Base Language. Publication S22, Norwegian Computing Centre, Oslo, 1970
    2. R. Halstead, Jr. MultiLISP: A language for concurrent symbolic computation. ACM Transactions on Programming Languages and Systems, 7:501–538, October 1985.
    3. Gul A. Agha. Actors—A Model of Concurrent Computation is Distributed Systems. The MIT Press, Cambridge, Massachusetts, 1986.
    4. Cox, B.: Object-Oriented Programming: An Evolutionary Approach. Addison-Wesley, Reading, MA, 1987.
    5. C. Mohan, Gustavo Alonso, Roger Gnthr, Mohan Kamath: Exotica: A Research Perspective ob Workflow Management Systems. IEEE Data Eng. Bull. 18(1): 19-26(1995)
    6. Shi Meilin, Yang Guangxin, Xiang Yong, and Wu Shangguang. Workflow Management Systems: A Survey. International Conference on Communication Technology, 1998.
    7. C. Mohan. "Recent Trends in Workflow Management Products, Standards and Research". In Proc. NATO Advanced Institute (ASI) Workshop on Workflow Management Systems and Interoperability, 1997.
    8. Manolescu, D.A. Micro-Workflow: A Workflow Architecture Supporting Compositional Object-Oriented Software Development. Ph.D. Dissertation. Department of Computer Science. University of Illinois at Urbana-Champaign, 2001. Ralph E. Johnson, Advisor.
    9. Workflow Management Coalition. Workflow Reference Model. Workflow Management Coalition Standard, WfMC-TC-1003, 1995.
    10. Workflow Management Coalition. Workflow Standard – Interoperability Abastract Specification. Workflow Management Coalition Standard, WfMC-TC-1012, 1.0.
    11. WFMC. Workflow Management Coalition Workflow Standard: Workflow Process Definition Interface -- XML Process Definition Language (XPDL) (WFMC-TC-1025). Technical report, Workflow Management Coalition, Lighthouse Point, Florida, USA, 2002
    12. Ralph E. Johnson and Vincent F. Russo. Reusing object -oriented designs. Technical Report Technical Report UIUCDCS 91--1696, University of Illinois, May, 1991.
    13. G. H. Hwang, Y. C. Lee , and B. Y. Wu, “A New Language to Support Flexible Failure Recovery for Workflow Management Systems,” In Jesus Favela and Dominique Decouchant (Eds.): Groupware: Design, Implementation and Use, Lecture Notes in Computer Science 2806, ISBN 3-540-20117-3, 2003, pp. 135-150.
    14. Dragos-Anton Manolescu and Ralph E. Johnson. A micro-workflow component for federated work- flow. OOPSLA2000.
    15. G. Shegalov, M. Gillmann, and G. Weikum, "XML-enabled Workflow Management for e-Services across Heterogeneous Platforms," VLDB Journal, vol. 10, no. 1, 2001.
    16. Wang Shaofeng, Sun Jiaguang. "A Framework Design of Workflow Management System with Java RMI", ACM SIGPLAN Notices, Sep.2001, Vol.36, No.9, p86-93
    17. Rex Hartson. User-interface management control and communication. IEEE Software, pages 62–70, January 1989.
    18. Dragos-Anton Manolescu. Workflow Enactment with Continuation and Future Objects, OOPSLA, November 2002, Seattle, Washington.
    19. Dragos-Anton Manolescu. An Extensible Workflow Architecture with Objects and Patterns, TOOLSEE 2001, March 2002, Sofia, Bulgaria
    20. Stefan Rausch-Schott. TRIGSflow—Workflow Management Based on Active Object-Oriented Database Systems and Extended Transaction Mechanisms. PhD thesis, Institute of Applied Computer Science, Johannes Kepler University, Linz, Austria, February 1997. Published by Trauner Verlag, Linz, ISBN 3-85320-991-2.
    21. Peter Muth, Jeanine Weissenfels, Michael Gillmann, and Gerhard Weikum. Mentor-lite: Integrating light-weight workflow management systems within business environments (extended abstract), October 1998.
    Available on the Web from http://www-dbs.cs.uni-sb.de/~mlite/.
    22. Frank Leymann and Dieter Roller. Production Workflow—Concepts and Techniques. Prentice-Hall, Upper Saddle River, New Jersey, 2000.
    23. James Gosling, Bill Joy, and Guy Steele. The Java Language Specification (First Edition). Addison-Wesley, Reading, Massachusetts, USA, 1996.
    24. Sun Microsystem (2002): Inc. JSR-000053 Java Servlet 2.3 and JavaServer Pages 1.2 Specifications.
    25. Afred V. Aho, Ravi Sethi, and Jeffery D. Ullman. Compilers Principles, Techniques, and Tools, Addison-Wesley, Reading, Massachusetts, USA, 1986
    26. Gwan-Hwan Hwang, Huey-Der Chu, and K.C. Tai. Testing of Non-Deterministic Client–Server Database Applications. The 2001 International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2001), June 25–28, 2001, Monte Carlo Resort, Las Vegas, Nevada, USA.
    27. Gwan Hwan Hwang, Sheng-Jen Chang, and Huey-Der Chu, “Testing Client/Server Database Applications,” Technical Report, National Taiwan Normal University, 2002. http://bashful.ice.ntnu.edu.tw/~ghhwang/papers/Testing_CSDB.pdf.
    28. Erich Gamma, Richard Helm, Ralph Johnson, and John Viissides. Design Patterns - Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading, Mass., 1994
    29. Nina Edelweiss and Mariano Nicolao. Workflow modeling: Exception and Failure Handling Rrepresentation. IEEE International Conference of the Chilean Computer Science Society, 1998.
    30. Weimin Du, Jim Davis, and Ming-Chien Shan. Flexible Specification of Workflow Compensation Scopes. ACM Group, Phoenix, Arizona, USA, 1997.
    31. M. Kamath and K. Ramamrithan. Failure Handling and Coordinated Execution of Concurrent Workflows. IEEE International Council for Open and Distance Education, 1998.
    32. J. Eder and W. Liebhart. Workflow recovery. IEEE International Conference on Cooperative Information Systems, 1996.
    33. B. Kiepuszewski, A.H.M. ter Hofstede, W.M.P. van der Aalst, Fundamentals of Control Flow in Workflows. QUT Technical report, FIT-TR-2002-03, Queensland University of Technology, Brisbane, 2002
    34. J. L. Peterson, Petri net theory and the modelling of systems, Prentice Hall, 1981
    35. van der Aalst, W., and van Hee, K., Workflow Management: Models, Methods, and Systems. The MIT Press. 368 pp., 2002. ISBN 0-262-01189-1
    36. Fabio Casati, Stefano Ceri, Stefano Paraboschi, and Guiseppe Pozzi. Specification and Implementation of Exceptions in Workflow Management Systems. ACM Transactions on Database Systems, Vol. 24, No. 3, September 1999, Pages 405–451.
    37. Claus Hagen and Gustavo Alonso. Exception Handling in Workflow Management Systems. IEEE Transactions on Software Engineering, Vol. 26, No. 10, October 2000, Pages 943–958.
    38. Sun Microsystem, “Java API for XML Messaging (JAXM),” http://java.sun.com/xml/jaxm/index.jsp, 2003
    39. The Apache Software Foundation, “Apache XML project,” http://xml.apache.org/, 2002
    40. OpenWeb, “The JaWE project,” http://jawe.objectweb.org/, 2003
    41. Web Service in W3C, http://www.w3.org/2002/ws/
    42. B. Beck and S. Hartley, "Persistent Storage for a Workflow Tool Implemented in Smalltalk," 9th Annual Conference on Object-oriented Programming, Systems, Languages and Applications, OOPSLA 94, October 94, Portland, Oregon
    43. M. Ader et al., "WooRKS, an Object Oriented Workflow System for Offices," Technical Report, Bull S.A. (Paris), Technics en Automatitzacio d'Officines S.A. (Barcelona), Dep. of Computer Science (University of Milan), Communication and Management Systems Unit (Athens), 1994
    44. Sunil K. Sarin: "Object-Oriented Workflow Technology in InConcert". COMPCON 1996: 446-450
    45. Robert C. Martin, Dirk Riehle, and Frank Buschmann, editors. Pattern Languages of Program Design 3. Software Patterns Series. Addison-Wesley, October 1997.
    46. F. Casati, S. Ceri, B. Pernici, and G. Pozzi. Deriving active rules for workflow enactment. In Proc. 7th International Conference on Database and Expert Systems Applications, Lecture Notes in Computer Science, pages 94–110. Springer-Verlag, 1996.
    47. Object Management Group. Workflow management facility specification, 2000. OMG Document Number formal/00-05-02. Available at http://www.omg.org.
    48. Reusability Definition. http://encyclopedia.thefreedictionary.com/Reusability

    QR CODE