The Experience Factory approach
defines a framework for Experience Management. The approach has been
successfully applied to software development at NASA for more than 25 years and
recently at other organizations . The Experience Factory enables Organizational Learning and
acknowledges the need for a separate support organization that works with the
project organization in order to manage and learn from its own experience. The
support organization helps the project organization observe itself, collect
data about itself, build models and draw conclusions based on the data, package
the experience for further reuse, and most importantly: to feed the experience
back to the project organization.
A physical implementation of the
Experience Factory in an organization is called the Experience Management
System (EMS). The EMS is composed of content, structure, procedures and tools.
The content can be data, information, knowledge or experience, which for
simplicity will be called experience from here on. The structure is the way the
content is organized. The content and the structure are often referred to as
the Experience Base. Procedures are
instructions on how to manage the Experience Base on a daily basis, including
how to use, package, delete, integrate and update experience. Tools support
managing the content and the structure, and carrying out the procedures, as
well as helping capture, store, integrate, analyze, synthesize and retrieve
experience.
Different organizations have
different needs and cultures and that is the reason why each EMS implementation
needs to be tailored to the target organization. We use a methodology to help
us understand and setup an EMS for a specific organization. The methodology
helps define the content, structure, procedures and tools that will be part of
the EMS. The use of this methodology is very important in guiding the work so
that the EMS is successful and accepted by the organization. The participation
of people from the organization in the application of the methodology is
crucial for the success of the EMS implementation because they are the ones who
know their culture and problems best. The following is a description of the
steps of the methodology to develop an EMS for a particular organization and
domain of experiences. It is based on best practices derived from previous EMS
projects and has been continuously improved. An important aspect of the
methodology is that it serves as a medium for experience transfer internally at
FC-MD.
One important part of the EMS is its supporting tools. Supporting tools is a also a way to motivate people by encouraging the use of tools that help people capture experience while they carry out other tasks. The culture of the organization plays a major role in the implementation of an EMS. The tools and procedures have to be defined in a manner causing as little disruption as possible to the employees’ work. Sometimes drastic changes are needed to change the organization into a learning organization. In such a case, a plan for the EMS implementation should be carefully designed in order to avoid rejection by the users. Everybody’s involvement and the use of the right tools are ways to avoid rejection. People tend to stick to software packages and tools they are used to and if the EMS implementation includes what they are already using, the acceptance of the new system is much more probable.
Examples of tools that could be used in an EMS implementation are:

For more information about the
Experience Base and our work:
Implementing
an Internet-Enabled Software Experience Factory
An
Experience Management System for a Software Consulting Organization
A Prototype Experience Management System for a Software Consulting
Organization
Implementing
the Experience Factory concepts as a set of Experience Bases
An
Analysis of Three Experience Bases
Building an Experience Base for Software Engineering: A report on the first
CeBASE eWorkshop