ChipCenter Questlink
SEARCH CHIPCENTER
Search Type:
Search for:




Knowledge Centers
Product Reviews
Data Sheets
Guides & Experts
News
International
Ask Us
Circuit Cellar Online
App Notes
NetSeminars
Careers
Resources
FAQ
EE Times Network
Electronics Group Sites

STRUCTURED DESIGN


Circuit Cellar Online
THE MAGAZINE FOR COMPUTER APPLICATIONS
Circuit Cellar Online offers articles illustrating creative solutions
and unique applications through complete projects, practical
tutorials, and useful design techniques.

STRUCTURED DESIGN

Lessons from the Trenches Part 2ıPutting Theory into Practice
by George Martin

Start ı Digging In ı Making Changes ı Try It Out ı Sources and PDF

DIGGING IN

OK now, letıs do a real project. Actually, I donıt have a project to lay out using the Nassi Schneiderman charts. The best flowchart would be your next one or the one thatıs giving you the most problems. However, I do have a suggestion. Jeff Bachiochi gave me permission to redo a project that he published in Circuit Cellar 126.

Imagine that one of his designs has gone into production, and youıre in charge of the production line. Itıs a high-volume line, and the goal is a six-sigma failure rate (3.4 defects in 1,000,000 operations) off the assembly line. Therefore, you need to understand the software and investigate all possible sources of error in the design and figure out how to eliminate them. There may not be any errors in the design, but remember that the goal is six sigma, so you need to chase away even the most remote possibility.

There are really three flowcharts in Jeffıs figure (see Figure 2). The lines and boxes on the left two columns do not interconnect with the other two self-contained charts found in the remaining columns.

Figure 2ıIıll use Jeff Bachiochiıs flowchart from his article as an example.

 

My conversion of the left two columns into a structured design using Nassi Schneiderman flowcharts is shown in Figure 3. Note that Iıve added some general routines that are not in the original flowchart. They are probably in the code, but if not, then it means that there are some hardware and variables that have not been initialized. A good place to start is with the six-sigma goal.

Also, notice that I didnıt include any of the second column. Those procedures are buried in the ProcessModem routine. A good rule of thumb is that, if you canıt fit the design on one page, itıs too complicated. And, the routine that writes a message just didnıt fit this logic.

Figure 3ıThe processıs GPSResult can be seen here.

 

PREVIOUSNEXT


Circuit Cellar provides up-to-date information for engineers. Visit www.circuitcellar.com for more information and additional articles.
For subscription information, call (860) 875-2199, subscribe@circuitcellar.com or subscribe online. ıCircuit Cellar, the Magazine for Computer Applications. Posted with permission.
Click here to get your listing up.

Copyright © 2003 ChipCenter-QuestLink
About ChipCenter-Questlink  Contact Us  Privacy Statement   Advertising Information  FAQ