You are on page 1of 1

Once approved, the system now must be designed.

The system
specification, here called the SDS (systems design specification), contains
a very finite level of detail enough so that programmers will be able to
code the entire system. This means that the SDS must contain:
Information on all processes
Information on all data
Information about the architecture
You have to start somewhere. That somewhere is usually the very highest
level of a design. There are three logical ways to do this:
Abstraction: This permits you to concentrate at some level of generalization
without regard to irrelevant low-level details. This is your highlevel
or logical design.
Stepwise refinement: This is a successive decomposition or refinement
of the specifications. In other words, you move from the high level to
the detailed, from the logical to the physical.
Modularity: This means that you know a good design when you see a
compartmentalization of data and function.
Look again at the DFD in Figure 7.4. That DFD was not the first in the
series. The very first DFD would have been DFD 0, which is equivalent to
the high level of detail from which it is recommended that you start from.
Here you can see the logical components of the system. Underneath the
0 level we start to get more detailed and more physical. At these lower (or
child) levels, we start specifying files and processes.
The design document that you create will rarely look the same from
one organization to another. Each has its own template and its own standard
diagramming tool (e.g., Visio vs. SmartDraw) and its own diagramming
format (e.g., flowcharts vs. UML [uniform modeling language] vs.
DFDs).
Where the requirements document is high level, the specification is
much more detailed. It is, after all, a programming specification. For the
most part, the specification document for the testing system we ve discussed
included: (a) a general description of the system, (b) its users, (c)
its constraints (i.e., must run on a PC), (d) the DFDs or other format,
(e) the data dictionary, (f) the process dictionary, and (g) a chart (e.g.,
Gantt chart) showing the tasks that need to be done.

You might also like