Low Level Design
Low Level Design
Introduction
Architectural design (also called high-level design) and detailed design (also
called low-level design).
1. Modularization
There are many definitions of the term module. They range from “a module is a
FORTRAN subroutine” to “a module is an ADA package” to “a module is a work
assignment for an individual programmer.”All of these definitions are correct, in the
sense that modular systems incorporate collections of abstractions in which each
functional abstraction, each data abstraction, and each control abstraction handles a
local aspect of the problem being solved. Modular system consists of well-defined,
manageable units with well-defined interfaces among the units
Process support modules: In these all the functions and data items that are
required to support a particular business process are grouped together.
Data abstraction modules: These are abstract types that are created by
associating data with processing components.
Functional modules: In these all the functions that carry out similar or
Closely related tasks are grouped together.
1. Modular systems are easier to understand and explain because their parts are
functionally independent.
2. Modular systems are easier to document because each part can be documented
as an independent unit.
3. Programming individual modules is easier because the programmer can focus
on just one small, simple problem rather than a large complex problem.
4. Testing and debugging individual modules is easier because they can be dealt
with in isolation from the rest of the program.
5. Bugs are easier to isolate and understand, and they can be fixed without fear
of introducing problems outside the module.
6. Well-composed modules are more reusable because they are more likely to
comprise part of a solution to many problems. Also, a good module should be
easy to extract from one program and insert into another.
2. Structure Charts
It partitions a system into black boxes. A black box means that functionality is known to
the user without the knowledge of internal design. Inputs are given to a black box and
appropriate outputs are generated by the black box. This concept reduces complexity
because details are hidden from those who have no need or desire to know. Thus,
systems are easy to construct and easy to maintain. Here, black boxes are arranged in
hierarchical format as shown below.
Hierarchical Format of a Structure Chart
Modules at the top level call the modules at the lower level. The connections between
modules are represented by lines between the rectangular boxes. The components are
generally read from top to bottom, left to right. Modules are numbered in a hierarchical
numbering scheme. In any structure chart there is one and only one module at the top
called the root.
3. Data-flow Arrows. Data-flow arrows represent that the named data passes
from one module to the other in the direction of the arrow.
4. Library Modules. Library modules are the frequently called modules and are
usually represented by a rectangle with double edges. Usually when a module
is invoked by many other modules, it is made into a library module.
5. Selection. The diamond symbol represents that one module out of several
modules connected with the diamond symbol are invoked depending on the
condition satisfied, which is written in the diamond symbol.
6. Repetitions. A loop around the control-flow arrows denotes that the respective
modules are invoked repeatedly.
“Pseudo” means imitation or false and “code” refers to the instructions written in a
programming language. Pseudo-code notation can be used in both the preliminary
and detailed design phases.
Advantages of Pseudo-Code
The various advantages of pseudo-code are as follows:
Disadvantages of Pseudo-Code
The various disadvantages of pseudo-code are as follows:
Examples
4. Flowcharts
Thank you