ToolTalk User's Guide

User Scenario: Fixing Bugs

This scenario steps through a complete cycle of how to fix a bug for a released application. It begins with receiving the bug report and describes the process required to fix the problem.

  1. Larry receives a bug report that indicates his application has a problem.

  2. Larry invokes his CASE environment.

    A CASE user interface is displayed. The functions Larry wants to perform are available in this CASE user interface.

  3. Larry writes a test case that duplicates the failure stated in the bug report.

  4. Larry selects the debug function to run the application against the test case.

    1. A Debug request is sent.

    2. The messaging environment selects the debugging application. It does not find an instance of the application running in Larry's CASE environment, so it automatically starts a debugger.

    3. The debugging application receives the request and loads the binary.

  5. Larry tests the code and reviews the debugging state in the debugging window.

    He finds a function call that appears to be passing incorrect arguments.

  6. Larry selects the edit function to edit this code.

    1. The debugging tool sends an edit request.

    2. The source editor receives a message to edit the specified source file.

  7. Larry wants to modify the source code, so he selects the checkout function.

    1. The source code editor sends a checkout request.

    2. The source code editor receives the checkout notification, and changes the buffer state to modifiable.

  8. Larry edits the source code to fix the bug and selects the Build function to build the application.

    1. The build request is sent.

    2. The build application receives the build request, and performs the build.

    3. When the build completes, the build application sends the BuildFinished notice.

    4. The debugger receives the BuildFinished notice and reloads the newly built application binary.

  9. Larry retests the application to confirm the bug fix works.

  10. Larry exits the CASE environment.

    1. Quit requests are sent to the source code editor, debugger, version manager, and builder applications.