Top-down programming is a programming style characterized by the general flow of the project. The project starts with an often complex description of the goals of the project, and then starts breaking it down into smaller groups. Top-down programming is easier carried out using object oriented programming, because using OOP, many people can work on the same project at once.
Ups
Programming team stays focused on the goal,
and everyone knows his or her job. By the
time the programming starts, there are no questions.
Code is easier to follow, since it is written methodically and with purpose.
Downs
Top-down programming often will complicate
testing, since nothing executable will even
exist until near the end of the project.
All decisions depend on the starting goal
of the project, and some cannot be made depending
on how specific that description is.