EPF is an open-source initiative that was started in 2006
with contributions by IBM Rational of parts of their RUP content and technology.
Since its inception the project has actively involved more than 20 companies,
and the first release was made available in September of 2007. Despite being an
Eclipse project, EPF can be used to create process descriptions for any type of
development, including J2EE on Eclipse or .NET using Microsoft Visual Studio.

EPF, like other Eclipse projects, offers exemplary
implementations of its two components:

Figure 1: OpenUP process

Figure 2: EPF Composer

OpenUP is a welcome addition to the software process
landscape: it is agile, both in the guidance it provides and in
"spirit", while at the same time being documented. As Per Kroll, the
EPF project lead states "the overarching goal with OpenUP was to create
an agile approach to using RUP, while at the same time leverage all the good
things we liked in other agile processes." [6]

OpenUP borrows many strokes from RUP which it blends with
agile practices, and the result is a complete process that suites many
smaller-scale projects. It can also be extended for those projects and
organizations that have more challenging circumstances.

Even if the OpenUP process is the focal point of EPF, it is
only half the story. Much of its value lies in the fact that it is open
source and that it is based on a standardizedmeta-model,
called SPEM [5].

The advantages of open source are obvious: it can be used by
organizations of all sizes at no cost. It also means that anyone can share best
practices in the spirit of open source.

The advantage of being based on a standardized meta-model may
not be as obvious, but is key to the overall success of EPF. Concretely, this
makes OpenUP extensible and it can be augmented with any combination of
standard, 3rd-party and proprietary practices. Just like UML provides
a standard language for software design models, SPEM provides a standard
language for definition and exchange of process models. With SPEM, process is
expressed as a set of elements and components, and it is modular as opposed to a
monolithic whole.

This is where EPF Composer comes into the picture. It
provides the tools both to create new process content and to tailor OpenUP by
selecting the desired set of components. It is a fully-featured process
engineering tool and any organization can use it to develop their own process
best practices, as well as share those with other EPF users.

This is the "grand vision" of EPF: to build an
open source community around EPF, where industry best practices can be
downloaded and exchanged. With this first release, this grand vision is starting
to come into existence.