Page 26 - The Art of Designing Embedded Systems
P. 26
Disciplined Development 13
That tool is an absolute commitment to make some small but basic
changes to the way you develop code.
Given the will to change, here’s what you should do today
1. Buy and use a Version Control System.
2. Institute a Firmware Standards Manual.
3. Start a program of Code Inspections.
4. Create a quiet environment conducive to thinking.
More on each of these in a few pages. Any attempt to institute just
one or two of these four ingredients will fail. All couple synergistically to
transform crappy code to something you’ll be proud of‘.
Once you’re up to speed on steps 1-4. add the following:
5. Measure your bug rates.
6. Measure code production rates.
7. Constantly study software engineering.
Does this prescription sound too difficult? I’ve worked with compa-
nies that have implemented steps 1-4 in one day! Of course they tuned the
process over a course of months. That, though, is the very meaning of the
word “process”-something that constantly evolves over time.
But the benefits accrue as soon as you start the process. Let’s look at
each step in a bit more detail.
Sfep 7: Buy and Use a VCS
Even a one-person shop needs a formal VCS (Version Control Sys-
tem). It is truly magical to be able to rebuild any version of a set of
firmware, even one many years old. The VCS provides a sure way to an-
swer those questions that pepper every bug discussion, such as “When did
this bug pop up?’
The VCS is a database hosted on a server. It’s the repository of all of
the company’s code, make files. and the other bits and pieces that make up
a project. There’s no reason not to include hardware files as well-
schematics, artwork, and the like.
A VCS insulates your code from the developers. It keeps people from
fiddling with the source; it gives you a way to track each and every change.
It controls the number of people working on modules, and provides mech-
anisms to create a single correct module from one that has been (in error)
simultaneously modified by two or more people.
Sure, you can sneak around the VCS, but like cheating on your taxes
there’s eventually a day of reckoning. Maybe you’ll get a few minutes of

