Open Source Software Development Processes Kirill Khistyaev 4/19/2011
General description of OSS Development Process (OSSDP) Outline Introduction to Open Source Software (OSS) General description of OSS Development Process (OSSDP) OSSDP in Science (Academia) Conclusion 2
Introduction Open Source Software (OSS) is a software whose source code may be freely studied, changed, improved and redistributed with few restrictions. 3
Introduction: Examples of OSS Linux Apache Perl, Python, PHP, etc. languages MySQL Mozilla Firefox Eclipse …. 4
Introduction Nowadays many commercial organization have started to look towards OSS and OSSDP as a way to minimize their development efforts. 5
OSS Development Process Traditional software development is like building a cathedral “carefully crafted by individual wizards or small bands of mages working in splendid isolation” OSSDP is like “a great babbling bazaar of differing agendas and approaches” Raymond, Eric S. (2000-09-11). "The Cathedral and the Bazaar". http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/index.html 6
OSS Development Process Developers are end-users of the system Early releases Frequent Integration Several versions High modularization Dynamic decision making structure 7
Infrastructure maintainer OSSDP: Process Roles User Developer Committer Manager Infrastructure maintainer *Jacques Lonchamp, Open Source Software Development Process Modeling, in Software Process Modeling, S.T. Acuna, N. Juristo (Eds), Springer, 2005, pp 29-64. 8
OSSDP: Process Roles *Jacques Lonchamp, Open Source Software Development Process Modeling, in Software Process Modeling, S.T. Acuna, N. Juristo (Eds), Springer, 2005, pp 29-64. 9
OSSDP: Community Process *Jacques Lonchamp, Open Source Software Development Process Modeling, in Software Process Modeling, S.T. Acuna, N. Juristo (Eds), Springer, 2005, pp 29-64. 10
OSSDP model * Improving the Open Source Software Model with UML Case Tools, Gilliam, J.O., Linux Gazette, 67, June 2001. http://linuxgazette.net/issue67/gilliam.html 11
Typically non-commercial Collaboration of many distributed groups OSSDP in Science OSSDP is the most suitable method for software development in academic environment Typically non-commercial Collaboration of many distributed groups 12
OSS is an important part of software world Conclusion OSS is an important part of software world OSSDP process allows to develop successful projects OSSDP has significant differences from commercial software developments OSSDP is well suitable for scientific software 13
References Jacques Lonchamp, Open Source Software Development Process Modeling, in Software Process Modeling, S.T. Acuna, N. Juristo (Eds), Springer, 2005, pp 29-64. Sebastian Prehn, Open Source Software Development Process, Term Paper, 2007 Judith Segal, Models of scientific software development. In: SECSE 08, First International Workshop on Software Engineering in Computational Science and Engineering, 13 May 2008, Leipzig, Germany. Improving the Open Source Software Model with UML Case Tools, Gilliam, J.O., Linux Gazette, 67, June 2001, http://linuxgazette.net/issue67/gilliam.html Wikipedia, http://en.wikipedia.org/wiki/Open_source_software_development