Page 168 - The Art of Designing Embedded Systems
P. 168

Troubleshooting Tools  155


                       And,  management  must  understand  that  time  costs  money-real
                   money, not just sunk costs. Further, crummy development environments
                   never yield faster product introductions.
                       This is not a Dilbert-like rant against managers. We’re all infatuated
                   with the latest technology, and we all are convinced that, this time, bugs
                   won’t be as big of a problem as last time.
                       Embedded processors will continue to get faster and more highly in-
                   tegrated-and  will generally become much tougher to work on than those
                   of yesteryear. That’s a fact as sure as salary inflation and time-to-market
                   pressures .
                       It’s largely up to the developers doing the work to educate manage-
                   ment, and to make intelligent decisions yielding debuggable products.
                       Often we are perceived as wanting everything without decent justifi-
                   cations. Faster computers, private offices, better software tools. Without
                   educating our bosses about how these things save them money, we’ll lose
                   most battles.
                        A common joke is the “capital equipment justification,” all too often
                   more an exercise in creative writing than in fact gathering and analysis.
                   Sometimes tool  vendors  will present  you  with  spreadsheets  of  savings
                   from using their latest widget, but none of us really trusts these figures. It’s
                   far better to use hard-hitting, quantitative data accumulated from your own
                   hard-won experience. Don’t have any? Shame on you!
                       One well-known bug reducer is recording each bug, stopping and
                   thinking for a few seconds about how you could have avoided making the
                   mistake in the first place. Take this a step further and think through (and
                   record!) how you found it, using what tools. Log it all in an engineering
                   notebook as you work; it’s a matter of a few seconds’ time, yet will help
                   you improve the way you work. This notebook will also serve as the raw
                   data for your cost justifications. If that cruddy freeware compiler gener-
                   ated a bad opcode that took a day to find, a little math quickly will show
                   how  much money  a multi-thousand-dollar commercial package  would
                   save.
                        As you educate management, educate yourself, and remember those
                   lessons when you’re the boss!
                        Years ago I worked for a small, 100-person outfit that experienced a
                   wealth of financial difficulties. Half of the phone calls were from angry
                   creditors. The bank was perpetually on the brink of closing us down. Still,
                   our small engineering group always had a reasonable set of tools. Good
                   scopes then cost upwards of $lO,OOO,  a lot of money in 1975 dollars. We
                   even managed to get one of Intel’s first microprocessor development sys-
                   tems. Though we engineers had to cajole and plead with management for
   163   164   165   166   167   168   169   170   171   172   173