Software Enginering SIG

The Software Engineering Special Interest Group (SIG) is a network where industry and academia meet for formal lectures and informal discussion about different topics of interest within software engineering, including topics such as architecture, testing and emerging technologies.

Thursday, May 10, 2007

Notes from guest lecture about Release Management in Open Source projects

The nature of Open Source projects is that they are highly distributed and the involvement and effort of each developer/committer changes over time which in turn puts some challenges on how to manage releases. Several notably Open Source projects have adapted time-based release management and Martin Michlmayr has done som interesting research in his Phd. work into the benefits and challenges this has provided to the projects.

One important benefit is the attention that each release gives the project. It is also easier to attract both users and developers if there are regular releases compared to several years in between each release, which have often been the case for some of the big Open Source projects.
Some of the drawbacks with time-based releases are increase in the number of releases which could result in less testing for each release and that there are increased number of different versions in production because users upgrade at different intervals.

Another challenge is how to balance time-based releases with radical changes to the project such as big rewrites, changes in architecture etc. However if a project is well put together (easy to test, modularized etc.) in the first place radical changes should be possible in parallel with the time-based releases. Martins conclusion from following the introduction of time-based releases in the projects Debian, GCC, GNOME, Linux kernel, OpenOffice.org, Plone and X.org is that the projects have experienced mostly good benefits such as increased motivation among the developers, better planning etc.

Another trend is more continuously updates in addition to the time-based releases which is used by X.org, Open Office, Eclipse etc. however this requires a good framework for handling the components/bundles and dependencies (we are actually discussing the possibility of a guest-lecture about OSGi which seeks to solve some of these issues).

About 15 people attended of which most were AUC students/staff, but also a few from companies.

Labels: , ,

0 Comments:

Post a Comment

<< Home