Welcome to our blog zone !!!

31.1.09

Top-down design A design is said to be ‘top-down’ if it consists of a
hierarchy of modules, each with a single entry and a single exit.
For ease of maintenance and modification of the system, it is essential that
a reasonable separation is kept between parts of the system which represent
its underlying philosophy and parts which are mere details. With a top-down
design, the philosophy tends to be embedded in the higher level modules,
while the details tend to be performed by the lower level modules.


Each module manageably small The smaller a module is, the easier it will be
to find an error in the code and to make an amendment to that code. However,
this feature has to be offset against the fact that if modules are very small,
there will be huge numbers of them within the system, so the time saved
amending an error may be lost in trying to locate the correct module in thefirst place. Additionally, the system overhead of managing a very large number
of modules and their links to one another may become significant and
performance may suffer. Therefore, modules should be small, but not too
small!


The black-box approach The ‘black-box’ approach implies that a module
can be looked at purely in terms of its inputs and outputs to find out what it
does, and that there is no need to look at the code to see this. So, with any
given input, the output will be totally predictable if the module has been
designed as a black-box.
This approach makes the system much more easily and quickly readable,
and therefore maintainable.


Isolation of function If a module has only one function, and that function
is contained completely within that module, then the modification of any
aspect of that function need only affect one module. It is easy to identify where
to make the change and should be simpler to test and implement. Of course it
may not always be possible to keep one function to one module and still have
manageably small modules, but it should be kept to as few modules as
possible. The less the contents of one module depend on the contents of any other module, the easier it is to maintain, and the less chance there is of a
relatively minor change causing a ‘ripple-effect’ of resulting problems
throughout the system.



No comments:

Post a Comment

Add Glitter Graphics - Piczo