English  |  正體中文  |  简体中文  |  Post-Print筆數 : 27 |  Items with full text/Total items : 113318/144297 (79%)
Visitors : 51001991      Online Users : 896
RC Version 6.0 © Powered By DSPACE, MIT. Enhanced by NTU Library IR team.
Scope Tips:
  • please add "double quotation mark" for query phrases to get precise results
  • please goto advance search for comprehansive author search
  • Adv. Search
    HomeLoginUploadHelpAboutAdminister Goto mobile version
    政大機構典藏 > 資訊學院 > 資訊科學系 > 學位論文 >  Item 140.119/94861
    Please use this identifier to cite or link to this item: https://nccur.lib.nccu.edu.tw/handle/140.119/94861


    Title: 以靜態織入方法實現剖面導向工作流程
    Design and Implementation of a Static Weaver for Aspectual Workflow
    Authors: 許朝傑
    Hsu, Chao Chieh
    Contributors: 陳恭
    Chen, Kung
    許朝傑
    Hsu, Chao Chieh
    Keywords: 剖面導向程式設計
    工作流程
    流程描述語言
    靜態織入
    橫跨性流程
    aspect-oriented programming
    workflow
    jPDL
    static weaving
    cross-cutting concerns
    Date: 2008
    Issue Date: 2016-05-09 12:02:36 (UTC+8)
    Abstract: 現今的應用系統中常會有橫跨性(Cross-Cutting)的程式模組存在,這類程式模組包括:日誌記錄、授權認證、資料永存性等,而這種程式模組在系統中若沒有被區分抽離出來,常常會導致系統重複出現與主要功能需求無關的程式碼,除此之外,這些橫跨性需求的程式碼還會與主要功能需求程式碼糾結在一起,造成程式碼夾雜不清的現象。在工作流程(Workflow)的開發過程中也有著相同的問題。為了解決上述的問題,本研究以JBoss jBPM(Java Business Process Manage- ment)為基礎平台,將剖面導向程式設計(Aspect-Oriented Progra- mming)的觀念與技術運用在工作流程的領域中,使流程設計人員能夠利用AOP的方式來解決橫跨性需求的模組化問題,並且利用靜態織入方法,改善jBPM工作流程引擎進行剖面流程在織入時的效能。
    Cross-cutting concerns are those system design issues that cut across the various modules of an application and are typically foundational system services that we need to consider before diving into building an application. Most common among these are logging, authentication, authorization, and persistence. Cross-cutting concerns always cause program code to be scattered and tangled, and therefore make it harder to understand and maintain. Similar problem also occurs in the field of workflow. In our research, we apply the concept of aspect-oriented programming(AOP) to the field of workflow system, and implement a static weaver for jBPM. With static weaver, process designer can use the facilities of AOP, and the performance is also improved via static weaving .
    第一章 導論. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
    1.1 研究動機. . . . . . . . . . . . . . . . . . . . . . . . . . . .2
    1.2 研究目標. . . . . . . . . . . . . . . . . . . . . . . . . . . .2
    1.3 本論文的貢獻. . . . . . . . . . . . . . . . . . . . . . . . . .2
    1.4 本論文的限制. . . . . . . . . . . . . . . . . . . . . . . . . .2
    1.5 論文章節架構. . . . . . . . . . . . . . . . . . . . . . . . . .2
    第二章 相關研究與技術背景. . . . . . . . . . . . . . . . . . . . . .4
    2.1 Aspect-Oriented Programming(AOP) . . . . . . . . . . . . . .4
    2.2 Aspect-Oriented Web Service Composition with AO4BPEL . .6
    2.3 Aspect-Oriented Workflow Languages . . . . . . . . . . . . .6
    2.4 JBoss jBPM . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
    2.4.1 jBPM主要元件介紹. . . . . . . . . . . . . . . . . . . . .7
    2.4.2 jPDL介紹. . . . . . . . . . . . . . . . . . . . . . . . . .10
    2.4.3 jBPM流程解析方式介紹. . . . . . . . . . . . . . . . . .13
    2.4.4 jBPM流程驅動方式. . . . . . . . . . . . . . . . . . . . .14
    2.4.5 剖面導向流程範例說明. . . . . . . . . . . . . . . . . .16
    第三章 剖面導向流程描述語言. . . . . . . . . . . . . . . . . . . .19
    3.1 靜態織入的過程. . . . . . . . . . . . . . . . . . . . . . . . .19
    3.2 jPDL的擴充. . . . . . . . . . . . . . . . . . . . . . . . . . .20
    3.2.1 jPDL中的Join Point . . . . . . . . . . . . . . . . . . .20
    3.2.2 Aspect元素. . . . . . . . . . . . . . . . . . . . . . . . .21
    3.2.3 Pointcut元素. . . . . . . . . . . . . . . . . . . . . . .22
    3.2.4 Advice元素. . . . . . . . . . . . . . . . . . . . . . . . .25
    第四章 靜態織入方法的設計與實作. . . . . . . . . . . . . . . . .32
    4.1 靜態織入方法之設計. . . . . . . . . . . . . . . . . . . . . .32
    4.2 靜態織入器之架構. . . . . . . . . . . . . . . . . . . . . . .33
    4.3 靜態織入器之實作. . . . . . . . . . . . . . . . . . . . . . .35
    4.3.1 靜態織入演算法. . . . . . . . . . . . . . . . . . . . . .35
    4.3.2 Pointcut的處理. . . . . . . . . . . . . . . . . . . . . .37
    4.3.2 Advice的子流程處理. . . . . . . . . . . . . . . . . . .40
    4.4 流程測試與效能比較. . . . . . . . . . . . . . . . . . . . .52
    第五章 結論與未來發展方向. . . . . . . . . . . . . . . . . . . . .55
    5.1 結論. . . . . . . . . . . . . . . . . . . . . . . . .55
    5.2 後續工作. . . . . . . . . . . . . . . . . . . . . . . . . . .55
    第六章 參考文獻. . . . . . . . . . . . . . . . . . . . . . . . . . . .57
    Reference: 【1】WFMC, Workflow Process Definition Interface-XML Process Definition Language(XPDL), WfMC-TC-1025, October 2005
    【2】JBoss, Inc., JBoss jBPM jPDL User Guide, http://docs.jboss.com/jbpm/v3/userguide
    【3】AOSD Community, Aspect-Oriented Software Development Community and Conference, http://www.aosd.net.
    【4】 G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin, Aspect-oriented programming, in ECOOP `97 Object-Oriented Programming 11th European Conference, Finland (M. Aksit and S. Matsuoka, eds.), vol. 1241. 220-242, 1997.
    【5】R. Laddad, AspectJ in Action, Manning Publications, 2003.
    【6】AspectJ Project, www.eclipse.org/aspectj/, 2006.
    【7】JBoss Group, JBoss jBPM, http://www.jboss.com/products/jbpm
    【8】Anis Charfi and Mira Mezini, Aspect-Oriented Web Service Composition with AO4BPEL, In Proceedings of the European Conference on Web Services (ECOWS), volume 3250 of LNCS, Springer, September 2004.
    【9】 Boris Bachmendo and Rainer Unland, Aspect-based workflow evolution, In Work-shop on Aspect-Oriented Programming and Separation of Concerns, August 2001.
    【10】 Anis Charfi and Mira Mezini, Aspect-Oriented Workflow Languages, Proceedings of the 14th International Conference on Cooperative Information Systems (CoopIS), November 2006.
    【11】 Cheng Hsien Chung, Enhancing Workflow Engines with Aspectual Processes, Master’s Thesis of National Chengchi University, January 2008.
    【12】JUnit, http://www.junit.org/index.htm, 2006.
    【13】 Mike Gunderloy and Sybex, Coder to Developer, Sybex Publications, 2004.
    【14】 G. Joeris and O. Herzog, Managing Evolving Workflow Specifications, Third International Conference of Cooperative Information Systems, New York, August 1998
    【15】 J. Clark and S. DeRose, XML Path Language (XPath)Version 1.0, W3C Recom-mendation 16 November 1999.
    【16】 JBoss, Inc., JBoss jBPM WS-BPEL Runtime User Guide, http://docs.jboss.com/jbpm/bpel/
    【17】 J. Gradecki and N. Lesiecki, Mastering AspectJ, Wiley Publications, 2003.
    【18】 Jörg Becker and Michael zur Muehlen, Workflow Handbook 2002, Future Strategies Inc., Book Division, Pages:39-50.
    【19】Matt Cumberlidge, Business Process Management with JBoss jBPM, PACKT Publishing, 2007.
    【20】 P. Niemeyer, BeanShell, http://www.beanshell.org/.
    Description: 碩士
    國立政治大學
    資訊科學學系
    95753041
    Source URI: http://thesis.lib.nccu.edu.tw/record/#G0095753041
    Data Type: thesis
    Appears in Collections:[資訊科學系] 學位論文

    Files in This Item:

    File SizeFormat
    index.html0KbHTML2273View/Open


    All items in 政大典藏 are protected by copyright, with all rights reserved.


    社群 sharing

    著作權政策宣告 Copyright Announcement
    1.本網站之數位內容為國立政治大學所收錄之機構典藏,無償提供學術研究與公眾教育等公益性使用,惟仍請適度,合理使用本網站之內容,以尊重著作權人之權益。商業上之利用,則請先取得著作權人之授權。
    The digital content of this website is part of National Chengchi University Institutional Repository. It provides free access to academic research and public education for non-commercial use. Please utilize it in a proper and reasonable manner and respect the rights of copyright owners. For commercial use, please obtain authorization from the copyright owner in advance.

    2.本網站之製作,已盡力防止侵害著作權人之權益,如仍發現本網站之數位內容有侵害著作權人權益情事者,請權利人通知本網站維護人員(nccur@nccu.edu.tw),維護人員將立即採取移除該數位著作等補救措施。
    NCCU Institutional Repository is made to protect the interests of copyright owners. If you believe that any material on the website infringes copyright, please contact our staff(nccur@nccu.edu.tw). We will remove the work from the repository and investigate your claim.
    DSpace Software Copyright © 2002-2004  MIT &  Hewlett-Packard  /   Enhanced by   NTU Library IR team Copyright ©   - Feedback