Thursday, December 16, 2010

Project 11: Top Down Design

This project relates to seven types of problem solving techniques. I will discuss each in a series of postings. The first type of problem solving technique is Top-Down Design, also called step-wise design. It essentially breaks down a problem into smaller modules. This requires a full understanding of the problem. Each sub module further deduces a problem into it’s simplest forms. So, that being said, the first step is to identify the problem (or need) it’s most general form. After that, it is further broken into sections and solved even further until all aspects of the problem or need are identified. Then and only then is the architecture and coding performed. For example, a doctor’s office may want to have patient information and demographics available for use before the patient’s first appointment. This would be the general problem (or need). Then after more analyses, all the factors and sub-problems would be identified and each broken down further and further. For example, all the way from what type of application to have the patients enter their information into to what should the GUI look like and what type of encryption should the data have. Then how will the doctor’s office import it to their database or will if flow over via an interface? So with this type of scenario the program designer  would really need to be familiar with the whole process as it is today and what the clients end goals are. Here is what Wikipedia says in regards to this type of design:

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 specification is reduced to base elements. A top-down model is often specified with the assistance of "black boxes", these make it easier to manipulate. However, black boxes may fail to elucidate elementary mechanisms or be detailed enough to realistically validate the model.”

Of course, using the Top-Down design works in real life situations as well. I use it all the time when grocery shopping.  The first step I take is to envision what I would like to make for dinner for each day of the week. I write it on a paper. Then based on each dish, I list the various ingredients I will need. Then I see if we have those available already or if they need to be purchased, I make a note of what store I should buy them at for the best quality and price. I then might make another list that broken down by store, so that I do not have to make special trips if I forget anything. Of course little “bugs” may arise in real life too. Many times, Trader Joes is out of something I consider a staple so I have to re-evaluate or” recompile” the list and make another acceptable decision.

References:
. 

No comments:

Post a Comment