Information Technology Reference
In-Depth Information
2.3.1.7.1
Advantages
Building complex system through building of small blocks.
2.3.1.7.2
Disadvantages
Lines of code, functions, modules, system, and project must be defined a priori.
2.3.1.7.3
Suitability
Mostly suitable in computing application.
2.3.1.8 Top-Down and Bottom-Up. Top-down and bottom-up are strategies
of information processing and knowledge ordering, mostly involving software but
also involving other humanistic and scientific theories. In practice, they can be seen
as a style of thinking and teaching. In many cases, top-down is used as a synonym
for analysis or decomposition, and bottom-up is used as a synonym for synthesis .
A top-down approach is essentially breaking down a system to gain insight into its
compositional subsystems. In a top-down approach, an overview of the system is first
formulated, specifying but not detailing any first-level subsystems. Each subsystem
is then refined in yet greater detail, sometimes in many additional subsystem levels,
until the entire specification is reduced to base elements. A top-down model is often
specified with the assistance of “black boxes” that make it easier to manipulate.
However, black boxes may fail to elucidate elementary mechanisms or be detailed
enough to validate realistically the model (Top down bottom up, 2008).
A bottom-up approach is essentially piecing together systems to give rise to
grander systems, thus making the original systems subsystems of the emergent sys-
tem. In a bottom-up approach, the individual base elements of the system are first
specified in great detail. These elements then are linked together to form larger sub-
systems, which then in turn are linked, sometimes in many levels, until a complete
top-level system is formed. This strategy often resembles a “seed” model, whereby the
beginnings are small but eventually grow in complexity and completeness. However,
“organic strategies” may result in a tangle of elements and subsystems, developed in
isolation and subject to local optimization as opposed to meeting a global purpose
(Top down bottom up, 2008). In the software development process, the top-down
and bottom-up approaches play a key role.
Top-down approaches emphasize planning and a complete understanding of the
system. It is inherent that no coding can begin until a sufficient level of detail has been
reached in the design of at least some part of the system (Top down bottom up, 2008).
The top-down approach is done by attaching the stubs in place of the module. This,
however, delays testing of the ultimate functional units of a system until significant
design is complete. Bottom-up emphasizes coding and early testing, which can begin
as soon as the first module has been specified. This approach, however, runs the risk
that modules may be coded without having a clear idea of how they link to other parts
Search WWH ::




Custom Search