>EPF Composer, Scrum, and XP

>One eclipse project I think does not get the attention it deserves, is the Eclipse Process Framework project. It deals with something that has been getting a lot of attention lately, the documentation of the software development process and release management processes. If one looks at the current Eclipse Development process it is really based on Open RUP. RUP does include some practices of agile development…however it is still implemented in a water fall type pattern. Yes, I’m not a fan of RUP. I believe this process comes from the IBM legacy of eclipse. To this day it is still influenced by that legacy based on the the number of committers that IBM still contributes to eclipse. Thus the current process is representing one members view of project management and the way it should be implemented, instead of addressing the communities needs over all. I’ve heard rumors that RUP can be agile, but the current eclipse implementation is not.

With this said, there are alternatives to RUP. There are two agile process that have been documented recently by the EPF user community.

  • Scrum – provides agile project management and release planning techniques.
  • XP – extreme programming provides a good set of technical skills and disciplines that help drive agile development.

A combination of the two I have found to be ideal, with a few minor tweaks. EPF composer makes these available in a nice friendly HTML web site. If it was a higher priority for me, I would contribute documenting the eclipse development process within EPF composer. Long term I still think it needs to be done. The need for a clear development process that includes not only release engineering processes, but project management practices is starting surface. This does not necessarily mean adding more process, it could mean just tweaking the way the existing process is done, and ripping out what isn’t needed. Projects should still have control over how they develop, but I think they need to be given some guidance in how to do it in a more agile method to address the communities needs quicker and improve the overal product that is produced.

So, I’m hoping that everybody in the eclipse community, from project committers, to eclipse members, to PMC reps, are willing to look at the current process and really ask if adding more process is going to fix it. Or is it the process itself that needs to be tweaked and addressed. Maybe we need some speakers like Mike Cohn, Robert Martin, Ward Cunningham, and Ron Jeffries to address the community on why the various techniques work.

How best to address this, I leave that to the committer reps and board members to decide. I’m willing to discuss ideas at EclipseCon in March, just look me up.

This entry was posted in agile, eclipse. Bookmark the permalink.

2 Responses to >EPF Composer, Scrum, and XP

  1. >I agree with you that projects at Eclipse can and should improve how they develop software, including the Eclipse top-level project itself.But you are wrong about the Eclipse development process, RUP, and the “IBM legacy”.Eclipse was originally developed by Object Technology International (OTI). At the time, OTI was already acquired by IBM but run as a somewhat independent subsidiary.Eclipse 1.0 shipped in 2001, using many of the same process elements that we still use today. Initially called “Just in Time Software” by OTI [1], it was refined over the years by the Eclipse SDK team in general, and Erich Gamma and John Wiegand in particular [2].Rational, the R in RUP, was acquired by IBM in 2003 [3], four to five years after development on the Eclipse SDK started.I would do a bit more research before making such claims.[1] http://www.davethomas.net/%5B2%5D http://www.eclipsecon.org/2005/presentations/econ2005-eclipse-way.pdf%5B3%5D http://www-03.ibm.com/software/ca/en/ottawalab/roots.html

  2. David Carver says:

    >Boris, I stand by my stance that it is Open Rup, based on the information that Erich Gamma presented at QCon: Eclipse Lessons Learned in 7 years. Now I realize that OTI was the basis for eclipse, but the Eclipse Development process has many of the characteristics of RUP particularly. In particular the way the eclipse process is currently practiced it goes through the classic RUP processes of Inception, Elaboration, Contstruction, and Transition.Maybe Erich is misrepresenting it, but his process and details go back to 2001, and it clearly represents it as RUP.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s