Overview >
Concepts >
Methods and Tools >
Supporting Tools
Concepts:
Supporting Tools
A software-engineering process requires tools to support all activities in a
system's lifecycle. An iterative development process puts special requirements
on the tool set you use, such as better integration among tools, and round-trip
engineering between models and code. You also need tools to automate
documentation and, possibly, to automate tests that make regression testing easier.
The Unified Process for EDUcation (UPEDU) can be used with a variety of tools—from
Rational or other vendors. However, Rational provides many well-integrated tools
that efficiently support the UPEDU.
Below are listed the tools you will require, the disciplines in which
they are used, and some examples of Rational tools that meet these needs.
Supporting Tools
Discipline
Examples of Rational tools
Requirements management
A requirements management tool used to capture, organize,
prioritize, and trace all requirements.
Requirements
Rational RequisitePro
Visual modeling
A modeling tool used to develop the various models, such
as use-case model and design model. The tool needs to have true round-trip
engineering so you can forward-engineer and reverse-engineer code
without overriding the changes you've made in the models or code since the
last generation.
Requirements, Analysis
& Design
Rational Rose
Programming
Programming tools used to assist the developers, such
as editors,
compilers, debuggers, and so on. These should be integrated with the
modeling environment and the test environment.
Implementation and Test
Rational Apex/Ada, Rational Apex/C++ (Java ready)
Automated testing
In an iterative development process, you test throughout
the lifecycle. It's important that you use test tools to automate testing
so that you can easily retest code (regression testing) to minimize
resources and maximize quality. More specialized tools allow you to perform
load testing.
A configuration management tool can help you keep track
of all artifacts produced and their different versions. Models and code, in
particular, need to be configuration-managed. Integration of coding
environments, modeling tools, and configuration management tools is
essential.
Configuration & Change
Management
Rational ClearCase
Change management
A change management tool helps you manage change
requests. A change management tool helps the project manager organize and
prioritize the change requests. Change management is also used to track and follow-up
change requests.
Configuration & Change
Management
Rational ClearQuest
Project management
Tools for planning and tracking that support the
project manager.
Project management
Documentation
A documentation tool to support the project
documentation. You need to extract information from the modeling tool and other sources, such as the code, to create documents that
present the models. If you do not have automated document generation, you
will most likely have documentation that diverts from your models or no
documentation at all. A documentation tool must allow you to
manually make changes in a document and to not override these changes when you regenerate
the documentation.
All disciplines
Rational SoDA/Word and Rational SoDA/Frame
Web authoring
Tools for developing web content, and managing
web content. You need to design pages and author the content of the pages.
You also need to manage the content of the web, manage hyperlinks,
publishing the site, and so on.
Implementation
Graphics tools
Tools to draw and edit images. Also tools to
manipulate and convert images. Graphics is becoming even more important with
web technology. Most web pages use more colors, font sizes and graphical
layout elements than a typical client/server application.