在現今的軟體開發程序中,採用持續整合來降低整合錯誤的風險並提昇軟體品質已成為一種標準的作法。雖然在目前市面上有許多工具可支援持續整合,但專案的編譯與測試常相依於特定平台,例如只能在Windows或Linux上執行。若想要在每種特定平台上建立各自的持續整合環境,工作將非常繁雜且在維護管理上也十分不便。此外,持續整合的執行常會需要很長的時間,這些都會降低開發團隊的使用意願。但我們發在持續整合流程中其實有許多工作是可同時執行的,例如靜態程式碼分析與程式碼的編譯測試,若能平行執行這些工作,將可縮短整合時間。因此在本論文中我們利用JavaSpaces技術,實做一個分散式持續整合系統。藉由分散式運算,將持續整合流程切割成多個較小的子工作,分派到不同的電腦執行,藉此解決專案平台相依性問題並且有效的加快整合速度。
The present work extends a previously developed continuous integration system to support platform dependent builds and to reduce turnaround time by incorporating distributed computing capabilities. By adopting the Replicated-Worker Pattern as the distributed architecture and using JINI distributed technology as the means of implementation, both requirements are achieved. Experimental results in support of the claims are presented.