system and how it must interact with its environment, to elaborate system
requirements and software requirements. For different design methods,
analysis tools are different. Structural Analysis and Design uses data flow
diagram, state transfer diagram, control flow diagram, data dictionary with
process descriptions. For object oriented method, data flow diagram, state
transfer diagram, entity-relationship diagram and use case analysis tools
are employed.
Software Requirements Specification
. In accordance with the requirement
specification template, to create software requirement specification descrip-
tions, numbering each items of requirement and giving clear indication of
their origination. To create requirement tracing matrix, thus control project
schedule.
Requirements Validation
. To check the uniformity, integrity, validity
and feasibility of requirements.
Requirements Management
. To trace and control the update process of
requirements. If an item is changed when the project is in progress, impact
of the requirement change should be analyzed and recorded. All status of
each item must be tracked.
Based on appropriate requirements analysis, the working group may
choose proper process model and work out project developing plan; along
with the project development progress, requirements concerned risks should
be evaluated and mitigated.
Resembling Requirement Engineering, all the other 9 knowledge areas
have been clearly defined and specified. Software Design contains both
high level design and detailed design, which is separated into 6 sub-
areas, including: basic concepts, key issues of software design, structure
and architecture, software design quality analysis and evaluation, software
design notations and software design strategies and methods.
1.4. Computer Aided Software Engineering (CASE).
Along with the engineering development and management of software,
methods and tools used in software project are dramatically changing, more
and more CASE tools are appearing.
CASE tools may consist of different components. Comparing with
different stages of software life cycle, CASE tools can be divided into
2 types, high level tools and low level tools. The high level CASE tools
may automatically form the project plan; help to generate requirements and
requirement description documents; and lay the project course. Low level
CASE tools help to implement software coding, testing and maintaining
works automatically. At present, one can either find independent high level
CASE tools, like Visio in Microsoft office packet, or integrated CASE tools,
which combined both high and low level of design tools in a uniformed
development environment, like STP from IDE company, Rose integrated
122 ISSN 0236-3941. Вестник МГТУ им. Н.Э. Баумана. Сер. “Машиностроение”. 2006. № 1