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

DECISIONS, DECISIONSý


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.

DECISIONS, DECISIONSý

Lessons from the Trenches Choosing the Right Technology
by
George Noveck

Start ý The Cost ý The Traps ý Take the Pick ý Logic Processing ý Software ý Whatýs Next? ý Sources and PDF

SOFTWARE

Countless horror stories have given software a bad reputation, so much so that the development efforts today (especially in terms of product safety) are devoted to documenting and testing. In other words, proving the absence of bugs. To be fair, this is not merely the fault of undisciplined or unscrupulous software developers and publishers. I remember the marketing stories that accompanied the first microprocessors, practically guaranteeing how inexpensive product development and manufacturing will be in the days to come. This imaginary pot of gold stuck in our minds so that even today few design managers have come to terms with the true cost of software development. Then, having quoted unrealistic costs, they are forced to cut corners and release software before it is ready.

The general rule of thumb is that one line of code in C will take about three hours of engineering time. Ten thousand lines of code in an embedded controller at the industry rate will cost you a cool quarter of a million. You can calculate the exorbitant cost of 30,000 hours represented in product delivery if you have four software designers working 2,000 hours per year. In commercial projects not requiring the stringent documentation and testing needed for safety critical software, one to two hours per line is realistic, but still, go ahead and do the math! Many recently-introduced EDA tools automate documentation, traceability, and testing so you can see significant improvements in productivity, but the fact remains that software development is long, expensive, and will never reach the level originally envisioned and promised by marketeers.

There are people who may argue that they "whipped up" some code in only a few short hours. To them I will repeat that, even if you get away with cutting a few corners now, by the time you factor in the failures in the field, unhappy customers, and next-to impossible code maintenance, you would have been better off doing the job properly in the first place.

In contrast, I have always likened the design of FPGAs or PALs to laying out a PCB. Although the routing is done with the help of software, the result is a fully testable hardware. This eliminates a large proportion of the documentation and testing otherwise required for software, which is an incentive to design with the FPGAs. For safety critical applications, the certifying authorities are getting wise to the growing use of the FPGAs, but their inherently faster and self- documenting development could not be inflated to the required level for certifying software.

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