Team-Oriented Software to Support the
Management and Coordination of Change.
There are two aspects to the CASEVision team-oriented solution:
- A Configuration Management System (including Version Control, Configuration
Management, System Build, and an Object/Attribute/Relationship system)
- and a set of Software Management Applications.
A typical waterfall lifecycle model is shown in Figure 4. During the development of
software in a lifecycle, all kinds of objects are created, transformed, and logically linked
by many different tools and by many different people. SGI's core CM functionality and
applications support the coordination of the objects and processes that are used
throughout the software development lifecycle.
FIGURE 4. Team-Oriented Software to Support the Management and Coordination of Change
Core CM Functionality
- CASEVision/ClearCase product - this a powerful configuration management tool
that provides a safe, orderly working environment for software engineers. In Clear-
Case environments, all file changes are recorded; separate versions of files can be
made to enable concurrent work; and records of builds are kept for ready reproduc-
ibility and efficient rebuilds.
Change Management
- CASEVision/Tracker product - SGI's Bug Tracking System manages bug reports
and enhancement requests from submittal to resolution. The system:
- Allows the user to submit, edit, assign, forward, reject, and resolve reports
- Constrains report modifications and state transitions based on a well-defined policy
- Provides e-mail notifications to interested parties when reports are modified or ne-
glected
- Maintains a history of report modifications
- Supports "links" between bug reports and the versions of source files and products
being maintained
- The CASEVision/Tracker product is actually a Bug Tracking Building system, in
that the user can specify his or her process, which is then compiled, producing a set
of X/MotifTM screens to support the submitting and reporting of bugs. It is very flex-
ible and is tightly integrated into the CASEVision/ClearCase product.
- A future enhancement will include the ability to treat change is an object, so that col-
lections of bug reports can be treated as a single change.
Coordination (Future Work)
- Workflow Control - This is an interactive tool that supports the ability of process
managers to model their software development lifecycle, using the underlying con-
figuration management system's triggers, Access Control Lists, object attributes and
software hyperlinks. Using this modeling service, you can refine models and adapt
them to the tasks of a specific project.
- Traceability - Supports the ability of developers to report on which versions of mod-
ules satisfy specific requirements or what requirements are satisfied by a given mod-
ule.
- Release Management - The process of integrating and releasing software is a repeti-
tive process in which software is produced for customer installation. Integrating is
the process of building and testing subsystems. The integrator verifies that the new
programs build properly and work together. Release engineers are the interface
between development and manufacturing. When development of a new release is
complete, release engineers build the complete product, reporting any build prob-
lems back to the developers. After successfully building the desired product, a
release engineer creates a tape that is an exact image of what customers will receive,
and sends the tape to manufacturing. The release engineer must also archive and
retrieve releases. SGI's Release Management application will support these release
engineering activities.
Management (Future Work)
- Project Tracking - Project management is no longer the task of independently assess-
ing the state of the software system, and creating some sort of Gantt chart that repre-
sents that independent assessment. This involves a Project Tracking System that
incorporates a Project Management Application and our Configuration Management
System. In this system, all engineers and managers conduct work and make plans
while using a distributed Project Management database that is tightly linked into the
configuration management system. By virtue of this CM link, project management
status reports accurately reflect the state of the software.
- Metric Browsing - This application uses an X/Motif GUI to display the status of the
objects that are being developed as part of a system. The manager can create a file
set for analysis, and then get relevant statistics for both C++ and for C development.
Sample metrics include LOC, KLOC, PFA, BFA, Function Points, Feature Points,
Cost per Defect, Halstead Metrics, McCabe Complexity Metrics, and others.
- Test Management - This application is actually a test management facilitator. The
test engineer specifies, through a Test Description Language, the parameters of the
test. Then the Test Management application runs the test, storing test results in a
database, and produces the relevant analytical results at the conclusion of the test.