Eclipse Process Framework 1.2 Gets Released

The open source community hit a milestone in improving software project management with a release on Aug. 1 of Eclipse Process Framework (EPF) version 1.2. The framework now includes version 1.2 of the EPF Composer authoring tool, as well as version 1.0 of the group's first process, known as the Open Unified Process (OpenUP).

In essence, the EPF project was devised to enable agile software development by teams working on open source solutions.

"OpenUP is a very agile iterative process," explained Chris Sibbald, senior systems manager at Telelogic. "It's targeted to relatively small colocated teams that can benefit from a lot of face-to-face collaboration. It borrows heavily from Scrum in terms of the agile information and project tracking."

He added that work being done on the Scrum content of EPF is currently being translated into Russian, Portuguese and Spanish, as well as French.

The EPF project began in January of 2006 with a donation by IBM, which provided a part of its Rational Unified Process product. IBM also provided the initial tool elements that led to Composer.

Currently, EPF project representation has grown to include 12 different organizations and 26 committers (or those people who build the EPF tool and OpenUP content). All are working to advance IBM's initial contribution.

EPF Adopters
EPF has two focuses, according to Kurt Sand, director of product marketing at Telelogic and another EPF committer. The first idea is to build tools that process engineers can use to describe and publish software development processes. The second idea is to build example processes using that tooling.

"The big event we've reached is that the example process, OpenUP, has reached the 1.0 level," Sand said. "And the tools have advanced to version 1.2 with some additional features that make it easier on process engineers to author the content."

Sand added that there has been more than 10,000 downloads of OpenUP and around 3,000 downloads of Composer.

Moreover, two unnamed companies are now using OpenUp and Composer internally. Sibbald, an EPF committer, clarified why.

"The two companies have looked at OpenUP and said, 'we're a bigger distributed organization -- we need a little more formality, and we've already got some good process starting points. So we're going to capture our process descriptions using the standard tooling and language [of EPF] so that it will be easier for us to maintain and communicate.'"

How EPF Works
The EPF project serves two audiences, Sand explained. The first are the people who build processes, sometimes called process engineers or process authors, who use tooling based on Eclipse. Once they publish their processes, then the next benefactor is the actual software development team who can then use those processes to get guidance, such as checklist examples and templates, that tell them who should do what, when and how when building software.

The output of EPF Composer is a Web site providing guidance to software developers, as well as an MS project template to track the work, Sibbald said. It does not handle things like workflow integration and events triggered from tools. The EPF solutions avoid having to manually update to Web sites, which can be "a real nightmare" to keep consistent, Sibbald said.

The EPF solution replaces the kind of software development that Sand had to face back when he worked for GE, namely 300-page instructions in binders that tell you how to develop software. The idea here with EPF is to build such libraries electronically, indicating best practices for software development. The whole thing is done in a standard format so that the open source community can contribute to it. Moreover, organizations can easily tailor it to their needs by mixing and matching processes quickly for their projects.

Policies are available in plugins, so you can publish the policies that you want. You can build process extensions into tools but that's where the open source environment stops, Sand said.

"We don't build the tool connections, because those tools are commercial ones for the most part," he explained. "So that's a place where you'd expect Telelogic will make extensions so that these processes can work with Telelogic tools, and these other vendors will make connections to work with their tools."

While the open source community shares its efforts, commercial entities using the EPF's work might not. For instance, IT departments in banking institutions might extend the EPF's work and build specific practices for use within their institutions -- never sharing them with anyone else and just doing what benefits them, Sand explained.

EPF is built on the Eclipse platform and can be plugged into open source configuration management tools or commercial tools, Sibbald said. The EPF tools are based an Object Management Group (OMG) standard called the Software Process Engineering Metamodel (SPEM).

Sibbald added that EPF provides "a very easy-to-use form-based tool for process engineers to capture process descriptors, and publish those either through HTML and/or exploit them as process templates for enactment."

The first set of extensions for OpenUP bundled in this release, Sibbald said, derives from DSDM (dynamic systems development method).

EPF as an ALM Enabler
Application lifecycle management (ALM) depends on bringing processes, tools and people together to build software better, Sand explained. A critical part of that is the process and best practices aspect. And that's exactly what EPF is bringing forward. EPF "makes ALM possible," he said.

"The agile community has solved some very specific problems, such as a better way to do project management or a better way of doing tests for design," Sand said. "In the open unified process, we actually took the challenge of doing a complete end-to-end lifecycle and trying to use as many agile practices as we could to connect the complete lifecycle. I think that's one of the things we've done that's above and beyond what's been done elsewhere."

The EPF committers have already started planning for the next versions of EPF and OpenUP, with possible additions such as Scrum or XP process libraries, Sands said.

So how is process management currently being handled?

"The bulk of processes is captured in good old Microsoft Word," Sand said.

"I would say SharePoint and Microsoft Word are the biggest things," Sibbald added. "Of course Microsoft has its Team systems ... that might be another commercial operating point."

Sand described how the open source EPF project will be expected to grow in the future.

"Anybody can build a plugin into our work. And, in addition to that, we on the EPF project will also advance the base work that others are plugging into -- that's how things will begin to grow rapidly."