Alex headshot

AlBlue’s Blog

Macs, Modularity and More

IBM donates Rational Unified Process to Eclipse foundation

2005, eclipse

IBM has recently announced that it is dumping donating software blueprints to the open-source community (as covered by The Register, Slashdot and EclipseZone). Whilst IBM has been very pro open-source (for example, it donated a lot of the code behind WebSphere Studio to become the core of Eclipse), this offer is one that sounds good more than will be helpful.

The Rational Unified Process is a mega process document that can be used (and adapted) to fit any company's design and development process. It's also very document-centric, with each step in the process producing (and consuming) several items of documentation. RUP was propelled with the success of Rational, mostly with CASE type tools such as Rational Rose.

What's always confused me is how a company can produce tools of the quality of Rose, and generate documentation explaining complex processes, and make so much money. Most of the time, the processes are very heavyweight, which means that they only work for some types of projects (but not others). In fact, there's no single uber-process that will work for everything, because smaller teams can be more agile than larger teams. (Alistair Cockburn has an excellent book on the subject entitled Agile Software Development which discusses the different types of process needed for different sized teams.)

Whilst RUP works for large teams, where change control is an important issue, the same can't be said of most open-source projects. Often, there are much smaller teams of committers (even if patches flow in from across different areas of society), and there's certainly not the focus on spending large amounts of time, money, or effort in writing comprehensive use cases ahead of time (nor verifying that they are correctly implemented afterwards). Mostly, open-source projects are run by hackers (in the traditional coder sense, as opposed to the more recently applied term of cyber-criminal). It's also of questionable doubt whether or not the types of open-source project that 'Beacon' is supposedly going to help are actually interested in such a heavyweight waterfall-based process. Even Eclipse uses agile development techniques and rests most of the code quality through automated testing and continuous integration, rather than out-of-date requirements documents.

I've never been on a project where RUP has been used to the success of the project. There are quite a few comments on Slashdot's thread which make for interesting reading on the subject -- and some would say that the Slashdot readership is a good yardstick of the open-source/hacker community:

  • If you can't sell it ... donate it! (my favourite)

  • First, I have personally used the RUP successfully. The success was in spite of the process, not because of it. The excellent people I had on my team made the work a success, and not a paperwork-on-rails approach to software development.

    Show me a failing unit test and I'll show you a low-level design awaiting implementation. Running code trumps "managed artifacts" any day.

  • RUP can be an unwieldy process that, if used in the (lowercase "e") extreme, make development slower and more "process-laden."

  • The Rational Unified Process is excellent: that's why Rational Rose is such an efficient, consistent, bug-free software.</sarcasm>

  • IBM is "donating" the methods of RUP to open source projects? I thought IBM liked open source? As far as RUP goes, it's kind of like communism. Looks good in theory, but goes all pear-shaped when real human beings get involved.

Of course, if the donation includes some modelling tools I'm sure that they'll creep into the Eclipse 3.2+ product line at some point. It may also be useful to encourage development of newer tools that work with the process artifacts directly, but IBM is still going to sell its Rational Software Architect package that is several releases behind Eclipse, so by the time IBM catches up, the newer developments will have moved on anyway. I predict this donation is going to sink without trace.