Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Bottom-up and top-down design
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Strategies for composition and decomposition}} {{Full citations needed |date=May 2025}} {{Use American English |date=May 2025}} {{Use mdy dates|date=September 2012}} [[File:Binary heap bottomup vs topdown.svg|thumb|right|Illustration of bottom-up and top-down approaches to the [[heap sort]]]] '''Bottom-up''' and '''top-down''' are strategies of composition and decomposition in fields as diverse as [[Data processing|information processing]] and ordering knowledge, [[software development|software]], [[Humanism|humanistic]] and [[Scientific theory|scientific theories]] (see [[systemics]]), and management and organization. In practice they can be seen as a style of thinking, teaching, or leadership. A '''top-down''' approach (also known as ''stepwise design'' and '''stepwise refinement''' and in some cases used as a synonym of ''decomposition'') is essentially the breaking down of a system to gain insight into its compositional subsystems in a [[reverse engineering]] fashion. In a top-down approach an overview of the system is 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 [[Requirements specification|specification]] is reduced to base elements. A top-down model is often specified with the assistance of [[Black box|black boxes]], which makes it easier to manipulate. However, black boxes may fail to clarify elementary mechanisms or be detailed enough to realistically [[Software verification and validation|validate]] the model. A top-down approach starts with the big picture, then breaks down into smaller segments.<ref>{{cite web |url=http://bactra.org/weblog/950.html |title=Top-Down Design (Introduction to Statistical Computing) |publisher=bactra.org |date=September 24, 2012 |access-date=September 9, 2015}}</ref> A '''bottom-up''' approach is the piecing together of systems to give rise to more complex systems, thus making the original systems subsystems of the emergent system. Bottom-up processing is a type of [[Data processing|information processing]] based on incoming data from the environment to form a [[perception]]. From a cognitive psychology perspective, information enters the eyes in one direction (sensory input, or the "bottom"), and is then turned into an image by the brain that can be interpreted and recognized as a perception (output that is "built up" from processing to final [[cognition]]). In a bottom-up approach the individual base elements of the system are first specified in great detail. These elements are then linked together to form larger subsystems, 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, by which the beginnings are small but eventually grow in complexity and completeness. But "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.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)