進階搜尋


 
系統識別號 U0026-0812200915141816
論文名稱(中文) 使用者與開發者行為於開放源碼社群之分析
論文名稱(英文) Analysis of User and Developer Activities in Open Source Society
校院名稱 成功大學
系所名稱(中) 電機工程學系碩博士班
系所名稱(英) Department of Electrical Engineering
學年度 97
學期 2
出版年 98
研究生(中文) 高嘉宏
研究生(英文) Chia Hung
電子信箱 basara@nature.ee.ncku.edu.tw
學號 N2891127
學位類別 博士
語文別 英文
論文頁數 87頁
口試委員 口試委員-吳毅成
口試委員-林志敏
口試委員-朱正忠
口試委員-詹寶珠
口試委員-斯國峰
召集委員-王豐堅
指導教授-焦惠津
中文關鍵字 實驗  開放源碼軟體  軟體開發 
英文關鍵字 Open source software  Project development  Empirical study 
學科別分類
中文摘要 開放源碼軟體在近幾年來有著蓬勃與豐富的發展。許多成功的開放源碼軟體也促使了軟體開發者、軟體公司、軟體組織,以及軟體使用者的大量關注與參與。與傳統的封閉源碼軟體開發來做比較,藉由源碼的釋出,提供了使用者與開發者參與開放源碼軟體開發的機會。除了上述的差異之外,開放源碼軟體通常缺乏了詳細的需求分析、嚴謹的開發流程、足夠的描述文件、開發計畫,以及對於開放源碼軟體的測試方法。然而,許多資料顯示,開放源碼軟體由於有使用者與開發者的大量參與,在軟體品質與開發效率上,仍有出色的表現。也因此,在本研究中,主要將探討使用者與開發者,及其行為對於開放源碼軟體開發的影響。除了希望能夠釐清使用者與開發者行為與開放源碼軟體開發的關係之外,分析的結果也將能提供給開放源碼社群做為評估開放源碼軟體的依據。
雖然先前已有一些研究提及了使用者與開發者行為的重要性,但這些行為與開放源碼軟體開發之間的關係並未釐清。在本研究中,主要透過了實驗的方式來對於使用者與開發者行為,及開放源碼軟體開發進行分析。首先,為了辨識使用者與開發者行為,一個針對於軟體開發的分析模型被建立且使用。透過模型的分析,與相關文獻的探討,實驗的假設也因此而提出。在實驗中,SourceForge.net上的開放源碼軟體被選為實驗與觀察的對象。SourceForge.net上有著豐富且大量的開放源碼軟體,一個用來蒐集開放源碼軟體資料的程式亦被建立來取得實驗中所需要的資料。
在取得使用者與開發者行為,與開放源碼軟體的資料之後,一系列的分析與統計測試接著進行。根據分析的結果,本研究確認了使用者與開發者行為,對於開放源碼軟體開發的影響。此外,本研究也發現,部份的使用者與開發者行為,對於開放源碼軟體開發有著極高且正向的影響力。本研究也提出了一個中介軟體的設計,藉此以協助開放源碼社群內的溝通行為,相關的模擬與分析亦被進行。本研究的結果能提供給開放源碼社群一個新的分析角度,並可做為評估開放源碼軟體開發的依據。
英文摘要 Open source software (OSS) has attracted considerable attention in recent years.
Different from the development of close source software, the release of source code provides users and developers with great opportunities to participate actively in the development of OSS projects.
It is also observed that the OSS development usually lacks of rigorous requirement analysis, well-defined development process, extensive documentation, project planning, and formal testing methodology.
However, advocates of OSS claim that the OSS development fosters productivity, creativity and reliability due to the participation and cooperation of users and developers.
Therefore, a research work on how user and developer activities affect the development of OSS projects helps open source society to clarify the key factors of successful OSS projects.
This also provides an alternative evaluation of OSS projects from the perspective of user and developer activities.

Although the effects of user and developer activities are mentioned in several works, the precise contribution of these activities toward the development of an OSS project is still unknown.
In this work, an empirical study is designed to analyze the user and developer activities in the open source society.
With the observation of OSS projects and the survey of related works, the hypotheses, which aim to explain the relationships between the development state and the activities of OSS users and developers, are put forward accordingly.
In the empirical study, SourceForge.net is selected as the source of samples due to the amount and the variety of OSS projects it hosts.
According to the hypotheses, a crawler program is built to interrogate SourceForge.net in order to acquire the needed data.
The challenges of collecting data from SourceForge.net are also reported and discussed.

The comprehensive data provided by SourceForge.net helps relate the variables in hypotheses to the attributes of OSS projects efficiently.
A series of statistical investigations and tests are performed.
Based on the analysis results, a definite correlation between user/developer activities and the development of OSS projects is confirmed.
Besides, particular user/developer activities are found to have high efficacy in facilitating the development OSS projects.
Furthermore, an OSS middleware is designed to facilitate the communication within open source society.
Simulations of communication activities with the employment of the OSS middleware are also performed and discussed.
The results presented in this work provide open source society with alternative insights into the OSS project development, and can be useful in observing and evaluating the development of OSS projects.
論文目次 Chapter
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2 Related Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3 Design and Implementation of Empirical Investigation . . . . . . . . . . . . . . 11
3.1 Analysis of user/developer activities . . . . . . . . . . . . . . . . . . . . . . . 12
3.2 Dependent variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.3 Independent variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.1 User activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.2 Developer activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.4 Data collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.5 Preliminary analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4 Results and Discussions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.1 OSS projects with low or non-existent user/developer activities . . . . . . . . . 21
4.2 Validity of empirical statements . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.3 Correlation analysis and efficacy of user/developer activities . . . . . . . . . . 31
4.3.1 Efficacy of developer activities . . . . . . . . . . . . . . . . . . . . . . 34
4.3.2 Efficacy of user activities . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.4 Special cases and discussions . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5 Threats to Validity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.1 Construct validity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.2 Internal validity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.3 External validity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6 Analysis of Communication Activities . . . . . . . . . . . . . . . . . . . . . . . 49
6.1 Communication within open source society . . . . . . . . . . . . . . . . . . . 50
6.2 Obstacles to the communication within open source society . . . . . . . . . . . 53
6.3 Middleware for the communication within open source society . . . . . . . . . 55
6.3.1 Middleware architecture . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.3.2 Information flow of the open source society with middleware . . . . . . 62
6.4 Simulation of the OSS middleware . . . . . . . . . . . . . . . . . . . . . . . . 64
6.4.1 Scenario of the simulation . . . . . . . . . . . . . . . . . . . . . . . . 66
6.4.2 Simulation results . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
7 Conclusion and Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
8 Appendix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Vita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
參考文獻 [1] T. O’Reilly, “Lessons from Open-Source Software Development,” Communications of the
ACM, vol. 42, no. 4, pp. 32–37, Apr. 1999.
[2] Linux. URL: http://www.linux.org.
[3] Apache. URL: http://www.apache.org.
[4] Mozilla Firefox. URL: http://www.mozilla.com/en-US.
[5] M. Aberdour, “Achieving Quality in Open Source Software,” IEEE Software, vol. 24,
no. 1, pp. 58–64, Jan./Feb. 2007.
[6] J. W. Paulson, G. Succi, and A. Eberlein, “An Empirical Study of Open-Source and
Closed-Source Software Products,” IEEE Transactions on Software Engineering, vol. 30,
no. 4, pp. 246–256, Apr. 2004.
[7] I. Stamelos, L. Angelis, A. Oikonomou, and G. L. Bleris, “Code Quality Analysis in Open
Source Software Development,” Information Systems Journal, vol. 12, no. 1, pp. 43–60,
Feb. 2002.
[8] K. Fogel, Producing Open Source Software: How to Run a Successful Free Software
Project. O’Reilly, 2005.
[9] J. Feller and B. Fitzgerald, “A Framework Analysis of the Open Source Software Development
Paradigm,” Proceedings of the Twenty First International Conference on Information
Systems, pp. 58–69, Dec. 2000.
[10] C. Jensen and W. Scacchi, “Data Mining for Software Process Discovery in Open Source
Software Development Communities,” Proceedings of the First International Workshop
on Mining Software Repositories, pp. 96–100, May 2004.
[11] W. Scacchi, “Free/Open Source Software Development: Recent Research Results and
Emerging Opportunities,” Proceedings of the 6th Joint Meeting on European Software
Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software
Engineering, pp. 459–468, Sept. 2007.
[12] D. M. German, “Using Software Distributions to Understand the Relationship among Free
and Open Source Software Projects,” Proceedings of the Fourth International Workshop
on Mining Software Repositories, p. 24, May 2007.
[13] SourceForge.net. URL: http://sourceforge.net.
82
[14] FreshMeat.net. URL: http://freshmeat.net.
[15] Tigris.org. URL: http://www.tigris.org.
[16] Y. Yamauchi, M. Yokozawa, T. Shinohara, and T. Ishida, “Collaboration with Lean Media:
How Open-Source Software Succeeds,” Proceedings of the 2000 ACM Conference on
Computer Supported Cooperative Work, pp. 329–338, Dec. 2000.
[17] D. A. Wheeler, “How to Evaluate Open Source Software/Free Software (OSS/FS) Programs,”
URL: http://www.dwheeler.com/.
[18] D. A. Wheeler, “Why Open Source Software/Free Software (OSS/FS, FLOSS, or FOSS)?
Look at the Numbers!,” URL: http://www.dwheeler.com/.
[19] R. K. Bandi, V. K. Vaishnavi, and D. E. Turk, “Predicting Maintenance Performance
Using Object-Oriented Design Complexity Metrics,” IEEE Transactions on Software
Engineering, vol. 29, no. 1, pp. 77–87, Jan. 2003.
[20] A. Capiluppi, M. Morisio, and P. Lago, “Evolution of Understandability in OSS Projects,”
Proceedings of the Eighth European Conference on Software Maintenance and Reengineering,
pp. 58–66, Mar. 2004.
[21] A. Mockus, R. T. Fielding, and J. D. Herbsleb, “Two Case Studies of Open Source Software
Development: Apache and Mozilla,” ACM Transactions on Software Engineering and
Methodology, vol. 11, no. 3, pp. 309–346, July 2002.
[22] E. S. Raymond, “The Cathedral and the Bazaar,” URL:
http://www.catb.org/esr/writings/cathedral-bazaar.
[23] K. Crowston, H. Annabi, and J. Howison, “Defining Open Source Software Project
Success,” Proceedings of the 24th International Conference on Information Systems,
pp. 327–340, Dec. 2003.
[24] A. Capiluppi, P. Lago, and M. Morisio, “Characteristics of Open Source Projects,” Proceedings
of the Seventh European Conference on Software Maintenance and Reengineering,
pp. 317–327, Mar. 2003.
[25] Y. Ye and K. Kishida, “Toward an Understanding of the Motivation of Open Source
Software Developers,” Proceedings of the 25th International Conference on Software
Engineering, pp. 419–429, May 2003.
[26] C. Bird, A. Gourley, P. Devanbu, M. Gertz, and A. Swaminathan, “Mining Email Social
Networks,” Proceedings of the 2006 International Workshop on Mining Software
Repositories, pp. 137–143, May 2006.
[27] C. Bird, A. Gourley, and P. Devanbu, “Detecting Patch Submission and Acceptance in
OSS Projects,” Proceedings of the Fourth International Workshop on Mining Software
Repositories, p. 26, May 2007.
[28] O. Baysal and A. J. Malton, “Correlating Social Interactions to Release History during
Software Evolution,” Proceedings of the Fourth International Workshop on Mining
Software Repositories, p. 7, May 2007.
83
[29] S. Christley and G. Madey, “Analysis of Activity in the Open Source Software Development
Community,” Proceedings of the 40th Annual Hawaii International Conference on
System Sciences, p. 166b, Jan. 2007.
[30] GCC. URL: http://gcc.gnu.org.
[31] T. T. Dinh-Trong and J. M. Bieman, “The FreeBSD Project: A Replication Case Study of
Open Source Development,” IEEE Transactions on Software Engineering, vol. 31, no. 6,
pp. 481–494, June 2005.
[32] The FreeBSD Project. URL: http://www.freebsd.org.
[33] L. Yu and S. Ramaswamy, “Mining CVS Repositories to Understand Open-Source Project
Developer Roles,” Proceedings of the Fourth InternationalWorkshop on Mining Software
Repositories, p. 8, May 2007.
[34] S. Christley and G. Madey, “Global and Temporal Analysis of Social Positions at Source-
Forge.net,” Proceedings of the Third International Conference on Open Source Systems,
p. 392, June 2007.
[35] J. Xu, Mining and Modeling the Open Source Software Community. PhD thesis, University
of Notre Dame, 2007.
[36] Y. Gao and G. Madey, “Network Analysis of the SourceForge.net Community,” Proceedings
of the Third International Conference on Open Source Systems, pp. 187–200, June
2007.
[37] C. Bird, A. Gourley, P. Devanbu, A. Swaminathan, and G. Hsu, “Open Borders? Immigration
in Open Source Projects,” Proceedings of the Fourth International Workshop on
Mining Software Repositories, p. 6, May 2007.
[38] H. C. Jiau, C. H. Kao, K. C. Wu, and K. F. Ssu, “An Analysis Model for Software Project
Development,” Proceedings of the 3rd IEEE International Conference on Management of
Innovation and Technology, pp. 673–677, June 2006.
[39] W. M. Turski, “Reference Model for Smooth Growth of Software Systems,” IEEE Transactions
on Software Engineering, vol. 22, no. 8, pp. 599–600, Aug. 1996.
[40] W. M. Turski, “The Reference Model for Smooth Growth of Software Systems Revisited,”
IEEE Transactions on Software Engineering, vol. 28, no. 8, pp. 814–815, Aug. 2002.
[41] M. M. Lehman, J. F. Ramil, and U. Sandler, “An Approach to Modeling Long-Term Growth
Trends in Software Systems,” Proceedings of the 2001 IEEE International Conference on
Software Maintenance, pp. 219–228, Nov. 2001.
[42] G. J. Rothfuss, “A Framework for Open Source Projects,” Master’s thesis, University of
Zurich, 2002.
[43] FLOSSmole. URL: http://ossmole.sourceforge.net.
[44] C. Wohlin, P. Runeson, M. Host, M. C. Ohlsson, B. Regnell, and A. Wesslen, Experimentation
in Software Engineering: An Introduction. Kluwer Academic Publishers,
2000.
84
[45] A. Rainer and S. Gale, “Sampling Open Source Projects from Portals: Some Preliminary
Investigations,” Proceedings of the 11th IEEE International Software Metrics Symposium,
p. 27, Sept. 2005.
[46] L. Breiman, J. Friedman, R. A. Olshen, and C. J. Stone, Classification and Regression
Trees. Wadsworth, 1984.
[47] TSM100 Tools. URL: http://sourceforge.net/projects/tsm100tools.
[48] KOffice. URL: http://sourceforge.net/projects/koffice.
[49] Doxygen. URL: http://sourceforge.net/projects/doxygen.
[50] eMule Plus. URL: http://sourceforge.net/projects/emuleplus.
[51] WinSCP. URL: http://sourceforge.net/projects/winscp.
[52] T. D. Cook and D. T. Campbell, Quasi-Experimentation: Design and Analysis Issues for
Field Settings. Houghton Mifflin Company, 1979.
[53] J. Howison and K. Crowston, “The Perils and Pitfalls of Mining SourceForge,” Proceedings
of the First International Workshop on Mining Software Repositories, pp. 7–11, May
2004.
[54] H. Kagdi, M. L. Collard, and J. I. Maletic, “A Survey and Taxonomy of Approaches for
Mining Software Repositories in the Context of Software Evolution,” Journal of Software
Maintenance and Evolution: Research and Practice, vol. 19, no. 2, pp. 77–131, Mar./Apr.
2007.
[55] L. Gasser and W. Scacchi, “Towards a Global Research Infrastructure for Multidisciplinary
Study of Free/Open Source Software Development,” Proceedings of the 4th IFIP
International Conference on Open Source Systems, pp. 143–158, Sept. 2008.
[56] K. Beecher, C. Boldyreff, A. Capiluppi, and S. Rank, “Evolutionary Success of Open
Source Software: an Investigation into Exogenous Drivers,” Proceedings of the Third
International ERCIM Symposium on Software Evolution, pp. 124–136, Oct. 2007.
[57] G. Robles and J. M. Gonzalez-Barahona, “Geographic Location of Developers at Source-
Forge,” Proceedings of the 2006 InternationalWorkshop on Mining Software Repositories,
pp. 144–150, May 2006.
[58] X. Jin, G. Yongqin, S. Christley, and G. Madey, “A Topological Analysis of the Open
Souce Software Development Community,” Proceedings of the 38th Hawaii International
Conference on System Sciences, p. 198a, Jan. 2005.
[59] D. Hinds and M. R. Lee, “Social Network Structure as a Critical Success Condition for
Virtual Communities,” Proceedings of the 41st Annual Hawaii International Conference
on System Sciences, p. 323, Jan. 2008.
[60] J. Koh, Y.-G. Kim, B. Butler, and G.-W. Bock, “Open Source Reuse in Commercial
Firms,” Communications of the ACM, vol. 50, no. 2, pp. 68–73, Feb. 2007.
[61] Slashdot.org. URL: http://slashdot.org.
85
[62] T. Mens, M.Wermelinger, S. Ducasse, S. Demeyer, R. Hirschfeld, and M. Jazayeri, “Challenges
in Software Evolution,” Proceedings of the 2005 Eighth International Workshop
on Principles of Software Evolution, pp. 13–22, Sept. 2005.
[63] Q. H. Mahmoud, Middleware for Communications. Wiley, 2004.
論文全文使用權限
  • 同意授權校內瀏覽/列印電子全文服務,於2009-07-08起公開。
  • 同意授權校外瀏覽/列印電子全文服務,於2009-07-08起公開。


  • 如您有疑問,請聯絡圖書館
    聯絡電話:(06)2757575#65773
    聯絡E-mail:etds@email.ncku.edu.tw