Software Engineering Institute Carnegie Mellon

IDEAL Main Page
Case Study
Conceptual Reconstruction
IDEAL Graphics
Presentation

The IDEAL(SM) Model: A Practical Guide for Improvement

by Jennifer Gremba and Chuck Myers

This article appeared in the Software Engineering Institute (SEI) publication,
Bridge, issue three, 1997.

  • IDEAL 1.1 in Overview
  • The Initiating Phase
  • The Diagnosing Phase
  • The Establishing Phase
  • The Acting Phase
  • The Learning Phase
  • Future of the IDEAL Model
  • Acronyms
  • For More Information
  • Organizations are increasingly recognizing the need for specific implementation guidance when they adopt new software engineering tools, processes, and methods. Many improvement efforts, including software process improvement, continuous risk management, or the introduction of a new development environment, are so complex, and their effects so far reaching, that they require a specialized, systematic approach for managing the technology adoption life cycle. The SEI has developed and refined the IDEAL model to help satisfy this need.

    The IDEAL model as originally conceived was a life-cycle model for software process improvement based upon the Capability Maturity Model® (CMM®) for Software, and for this reason the model used process improvement terms. Recognizing that the model had great potential outside of the process arena, the SEI has revised the IDEAL Model for broader application. The new version of the model has been designated as Version 1.1 to emphasize that this is a first step toward the goal of broader applicability.

    IDEAL 1.1 in Overview

    IDEAL provides a usable, understandable approach to continuous improvement by outlining the steps necessary to establish a successful improvement program. Following the phases, activities, and principles of the IDEAL model has proven beneficial in many improvement efforts. The model provides a disciplined engineering approach for improvement, focuses on managing the improvement program, and establishes the foundation for a long-term improvement strategy. The model consists of five phases:

    I - Initiating Laying the groundwork for a successful improvement effort.
    D - Diagnosing Determining where you are relative to where you want to be.
    E - Establishing Planning the specifics of how you will reach your destination.
    A - Acting Doing the work according to the plan.
    L - Learning Learning from the experience and improving your ability to adopt new technologies in the future.

    Each of the five phases is made up of several activities. The phases and activities are described below.

    The IDEAL Model


    return to top


    The Initiating Phase

    Critical groundwork is completed during the initiating phase. The business reasons for undertaking the effort are clearly articulated. The effort's contributions to business goals and objectives are identified, as are its relationships with the organization's other work. The support of critical managers is secured, and resources are allocated on an order-of-magnitude basis. Finally, an infrastructure for managing implementation details is put in place.

    Stimulus for change
    It is important to recognize the business reasons for changing an organization's practices. The stimulus for change could be unanticipated events or circumstances, an edict from someone higher up in the organization, or the information gained from benchmarking activities as part of a continuous improvement approach. Whatever the stimulus, it can have far-reaching influence on the effort's visibility, conduct, and ultimate success, change for the sake of change rarely results in significant improvement. In general, when the business reasons for change are more evident, there is greater buy-in throughout the organization and there are greater chances for success.

    Set Context
    Once the reasons for initiating change have been clearly identified, the organization's management can set the context for the work that will be done. "Setting context" means being very clear about where this effort fits within the organization's business strategy. What specific business goals and objectives will be realized or supported by this change? How will it affect other initiatives and ongoing work? What benefits (such as return on investment or improved capabilities and morale) will result? Context and implications often become more evident as the effort proceeds, but it is important to be as clear as possible regarding these issues early in the effort.

    Build Sponsorship
    Effective sponsorship is one of the most important factors for improvement efforts. It is necessary to maintain sponsorship levels throughout an improvement effort, but because of the uncertainty and chaos facing the organization in the beginning of the effort, it is especially important to build critical management support early in the process. The commitment of essential resources is an important element of sponsorship, but effective sponsors often do much more than this. Sponsors can be most effective if they give personal attention to the effort and stick with it through difficult times.

    Charter Infrastructure
    Once the reason for the change and the context are understood and key sponsors are committed to the effort, the organization must set up a mechanism for managing the implementation details for the effort. The infrastructure may be temporary or permanent, and its size and complexity may vary substantially depending on the nature of the improvement. For a small effort, the infrastructure may be a single part-time employee; for a large and complex effort, such as software process improvement, it may involve 2-3% of the organization's people across a number of groups. Chartering the infrastructure involves developing explicit written agreements that document and clarify expectations and describe responsibilities.

    The activities of the initiating phase are critical. If they are done completely and well, subsequent activities can proceed with minimal disruption. If they are done poorly, incompletely, or haphazardly, then time, effort, and resources will be wasted in subsequent phases.

    return to top


    The Diagnosing Phase

    The diagnosing phase builds upon the initiating phase to develop a more complete understanding of the improvement work. During the diagnosing phase two characterizations of the organization are developed: the current state of the organization and the desired future state. These organizational states are used to develop an approach for improving business practice.

    Characterize Current and Desired States
    Characterizing the current and desired states is similar to identifying the origin and destination of a journey. Characterizing these two states can be done more easily using a reference standard such as the CMM for Software. Where such a standard is not available, a good starting point is the factors identified as part of the "stimulus for change" activity. This activity should focus on elements critical to the changes being introduced, rather than every aspect of an organization's work.

    Develop Recommendations
    The recommendations that are developed as a part of this activity suggest a way of proceeding in subsequent activities. The diagnosing phase activities are most often performed by a team with experience and expertise relevant to the task at hand. Their recommendations often weigh heavily in the decisions made by key managers and sponsors.

    return to top


    The Establishing Phase

    The purpose of the establishing phase is to develop a detailed work plan. Priorities are set that reflect the recommendations made during the diagnosing phase as well as the organization's broader operations and the constraints of its operating environment. An approach is then developed that honors and factors in the priorities. Finally, specific actions, milestones, deliverables, and responsibilities are incorporated into an action plan.

    Set Priorities
    The first activity of this phase is to set priorities for the change effort. These priorities must take many factors into account: resources are limited, dependencies exist between recommended activities, external factors may intervene, and the organization's more global priorities must be honored.

    Develop Approach
    Combining increased understanding of the scope of work (gained in the diagnosing phase) with a set of priorities leads to the development of a strategy for accomplishing the work and identifying resource availability. Technical factors might include the specifics of installing the new technology and new skills and knowledge required for using a technology. Non-technical factors, including the organization's culture, likely sources of resistance, sponsorship levels, and market forces, also must be considered.

    Plan Actions
    With the approach defined, a detailed implementation plan can be developed. This plan includes schedule, tasks, milestones, decision points, resources, responsibilities, measurement, tracking mechanisms, risks and mitigation strategies, and any other elements required by the organization.

    return to top


    The Acting Phase

    The activities of the acting phase help an organization implement the work that has been conceptualized and planned in the previous three phases. These activities will typically consume more calendar time and more resources than all of the other phases combined.

    Create Solution
    The acting phase begins with bringing all available key elements together to create a "best guess" solution to address the previously identified organizational needs. These key elements might include existing tools, processes, knowledge, and skills, as well as new knowledge, information, and outside help. The solution, which may be quite complex and multi-faceted, is often created by a technical working group.

    Pilot/Test Solution
    Once a solution has been created, it must be tested, as best guess solutions rarely work exactly as planned. This is often accomplished through a pilot test, but other means may be used.

    Refine Solution
    Once the paper solution has been tested, it should be modified to reflect the knowledge, experience, and lessons that were gained from the test. Several iterations of the test-refine process may be necessary to reach a satisfactory solution. A solution should be workable before it is implemented, but waiting for a "perfect" solution may unnecessarily delay the implementation.

    Implement Solution
    Once the solution is workable, it can be implemented throughout the organization. Various roll-out approaches may be used for implementation, including top-down (starting at the highest level of the organization and working down) and just-in-time (implementing project-by-project at an appropriate time in its life cycle). No one roll-out approach is universally better than another; the approach should be chosen based on the nature of the improvement and organizational circumstances. For a major change, implementation may require substantial time and resources.

    return to top


    The Learning Phase

    The learning phase completes the improvement cycle. One of the goals of the IDEAL Model is to continuously improve the ability to implement change. In the learning phase, the entire IDEAL experience is reviewed to determine what was accomplished, whether the effort accomplished the intended goals, and how the organization can implement change more effectively and/or efficiently in the future. Records must be kept throughout the IDEAL cycle with this phase in mind.

    Analyze and Validate
    This activity answers several questions: In what ways did the effort accomplish its intended purpose? What worked well? What could be done more effectively or efficiently? Lessons are collected, analyzed, summarized, and documented. The business needs identified during the initiating phase are reexamined to see if they have been met.

    Propose Future Actions
    During this activity, recommendations based on analysis and validation are developed and documented. Proposals for improving future change implementations are provided to appropriate levels of management for consideration.

    return to top


    Future of the IDEAL Model

    The explosion of technological development has led organizations to adopt new technologies at an increasing rate. The IDEAL Model provides an effective approach to adopting improved software engineering processes, methods, and tools. In this article, we have described Version 1.1 of the model at a very high level. In the future, the IDEAL model will be developed further and its applicability to additional technical areas will be tested. The IDEAL Model will be documented on the SEI Web site at and the latest developments will be available there.

    return to top


    Acronyms

    CMM : Capability Maturity Model
    TAA : Technology Adoption Architecture

    For More Information

    For more information about the IDEAL model, contact customer-relations@sei.cmu.edu