collaGra

Using the Tool in a Legacy Code Maintenance Process

The collaGra software engineering team uses the following process to make changes to legacy code (its own and its customer's).

  • Trap Current Design of Relevant Code

    1. Using any information (problem report number, error message, module name), search design artifact repository for any relevant collaboration graphs.
    2. If one exists, open it with the tool and proceed to step 5.
    3. If none exists, create a new graph with the tool.
    4. Change settings to point to the directories holding the code. Select the languages of the code to search (Java, C++, C, JSP, perl, etc.).
    5. Using any information that can be represented as a string (method name from a core dump, error message, previous knowledge of the name of a module that might be relevant), search the code with that string.
    6. Examine the modules listed in the search results, adding them to the graph or not based on their relevance to the current task. Do the same for relevant methods that are found.
    7. As relevant methods, modules, or data members are found and added, search for other modules that use them or are used by them. Add these new items if they are relevant.
    8. Repeat the previous two steps until the graph represents a clear picture of the current design and the engineer using the tool understands the design.

  • Design Solution and Review Design

    1. Once a clear picture of the current design is created, add, delete, and modify module and method entries to achieve the design that satisfies the current requirement.
    2. Publish the design as a set of web pages that can be stored in a wiki or e-mailed to design review team.
    3. Based on review, change the design as needed.

  • Plan Work and Code the Design

    1. Generate a design-driven task list (DDTL) which lists the code changes that are necessary.
    2. Use the tool to note when tasks are started, paused, or ended.
    3. Use favorite tools (vi, JBuilder, gcc) to edit, test, debug, configuration manage the code.
Copyright © 2005-2006 - collaGra, Inc.