| 研究生: |
廖俊傑 Jyun-Jie Liao |
|---|---|
| 論文名稱: |
使用代理人支援eXtreme Programming(XP)環境的建構系統 Using Agent to support Build System in eXtreme Programming (XP) Environment |
| 指導教授: |
陳振炎
Jen-Yen Chen |
| 口試委員: | |
| 學位類別: |
碩士 Master |
| 系所名稱: |
資訊電機學院 - 資訊工程學系 Department of Computer Science & Information Engineering |
| 畢業學年度: | 92 |
| 語文別: | 中文 |
| 論文頁數: | 47 |
| 中文關鍵詞: | 代理人 |
| 外文關鍵詞: | eXtreme Programming (XP), Continuous integration, agent |
| 相關次數: | 點閱:6 下載:0 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
本論文使用agent 技術來解決因自動化eXtreme Programming(XP)中的continuous integration
實務所遇到的問題。這些問題包括:(1)多人開發的考慮,(2)
上傳build 成功的source code 至source code repository 的考慮,和(3)單一指令執行
build 的考慮。
在本論文中,開發一個continuous integration 工具,叫Agent-based Build System
for XP,該工具自動化continuous integration 環境的build process。Build System 是
由二種agent 所構成的Multi-Agent System(MAS),此二種agent 分別是: Build Agent
和Report Agent。Build Agent 呼叫Ant 來處理build,而Report Agent 處理build report
發佈。
Build System 預期優點是:(1) 用Middle Agent 的服務註冊機制讓系統穩定執
行build,(2)用DAML 格式的build report 讓上傳source code 程序自動化,和(3)能
build 不同領域的application。
This thesis uses agent technology to address the issues encountered when
automating the practice of continuous integration in eXtreme Programming (XP)
environment. The issues are: (1) multiple developers, (2) uploading built source code
to source code repository, and (3) using a single command to build project from
source code.
In this thesis, we develop a continuous integration tool called Agent-based Build
System for XP to automate the build process. The build system is a Multi-Agent
System (MAS) that consists of two agents: Build Agent and Report Agent. Build
Agent is responsible for invoking Ant to deal with the build. Report Agent is
responsible for publishing build report.
The expected benefits of the system are: (1) using service registration of Middle
Agent to run the build process robustly, (2) using the DARPA Agent Markup
Language (DAML)-format build report to automate the process of uploading source
code, and (3) being capable of building applications of different domains.
[1] eXtreme Programming (XP), available at http://www.extremeprogramming.org/
[2] Kent Beck, Extreme Programming Explained: Embrace Change, Addison-Wesley,
pp. 97-98, October 1999.
[3] Martin Fowler and Matthew Foemmel,”Continuous Integration,” avaliable at
http://www.martinfowler.com/articles/
[4] Erik Hatcher and Steve Loughran, Java Development with Ant, Manning
Publications Co., pp. 386-387, 2003.
[5] M. Wooldridge, class notes of An Introduction to Multi-agent Systems, John Wiley
and Sons Ltd, available at http://www.csc.liv.ac.uk/~mjw/pubs/imas/
[6] Concurrent Versions System (CVS), available at http://www.cvshome.org/
[7] Apache Ant, available at http://ant.apache.org/
[8] R. Owen Rogers, “CruiseControl.NET: Continuous Integration for .NET,”
Proceedings of the 4th International Conference on Extreme Programming and Agile
Processes in Software Engineering, pp. 114-122, Italy, May 2003.
[9] Roberto A. Flores-Mendez, “Towards a Standardization of Multi-Agent System
Frameworks,” ACM Crossroads Student Magazine, 1999.
[10] C.H. Hung, J.Y. Chen, and H. Mei, “Building Agent Community for Web Service
Integration,” to appear in ISCA (international society for computers and their
applications) Journal, USA, 2004.
[11] T. Kawamura, T. Hasegawa, A. Ohsuga, S. Honiden, "Bee-gent: Bonding and
Encapsulation Enhancement Agent Framework for Development of Distributed
Systems," Systems and Computers in Japan, John Wiley & Sons, Inc., Vol. 31, No. 13,
pp. 42-56, 2000.
[12] Foundation for Intelligent Physical Agents (FIPA), “FIPA ACL Message
Structure Specification,” available at http://www.fipa.org/specs/fipa00061/
[13] Foundation for Intelligent Physical Agents (FIPA), “FIPA Agent
Management Specification,” available at http://www.fipa.org/specs/fipa00023/
[14] Java Agent Development Framework (JADE), available at
http://sharon.cselt.it/projects/jade/
[15] Apache Cactus, available at http://jakarta.apache.org/cactus/
[16] Document Object Model (DOM), available at http://www.w3.org/DOM/
[17] JUnit, available at http://www.junit.org/
[18] DBUnit, available at http://dbunit.sourceforge.net/
[19] DARPA Agent Markup Language (DAML), available at http://www.daml.org/
[20] Agent, available at http://agents.umbc.edu/
[21] CruiseControl, available at http://cruisecontrol.sourceforge.net/
[22] Anthill, available at http://www.urbancode.com/
[23] Apache Gump, available at http://gump.apache.org/