Levels of Design: Breaking Down Program Construction
When designing an online application, it is always good to start broad and work your way into the details. This is called top down development. Here is the breakdown of the different levels that you should consider when designing a program.
Entire Program
At this point you should just figure out what you want the application to do. Figure out the prerequisites and the ultimate goal of the application.

Packages
At this point you want to figure out how you want to split up the application. Some examples might be user interface, graphics, data storage, business rules…etc. Basically layout everything your application will need in the most general of terms.

Design Classes
Each package should be separated further into classes. Also you should be figuring out how each class interacts with one another. An example might be splitting up the business rules package into smaller pieces. You might have a class for parsing data from the database, one class for any rules, one class for any restrictions…etc.

Design Methods
Break down the classes even further into methods. For each class you should figure out the elements it needs. Also which methods are private and which ones are public. For example you might have a class for manipulating data from the database. You might break the class down into methods that handle adding info, editing info, selecting info and deleting info.

Internal Method Design
Now you’re down to the nitty gritty. You should just fill out the methods and make them work. At this point you should have a firm understanding how your application is laid out and how each method / class interacts with one another.














