In the past, all machines were designed and developed by mechanical engineers. To the ‘gear head’, ‘metal bending’ engineers the onset of the electronics to their machines was sacrilegious. The electrical engineers knew how to contain the sleeping giant of electricity and put its power to work for the betterment of the machines. Now there is a mystical beast that has seen its way into almost everything that controls our everyday life. It even threatens to basically kill our current lifestyle in less than a year. The only one that knows how to corral the beast is the software engineer.
In less than 20 years, software has become the glue that binds everyday life together into a seamless process. If we do not contain and develop software through strict processes that are followed and enforced, the year 2000 bug will seem like a minor hiccup in the world of tomorrow. If software is continually developed without a strict processes, all of the machinery that deals with the expansion, development and farming of this great nation will fall pry to software bugs that could possible injure or destroy human life. In the following pages, we will look at the major areas that must be followed to develop code that works and serves the people that use it without harm.