Smith, Robert K. (1991, ASQC) ITT Aerospace/Communications Division, Fort Wayne, IN
The author assumes that most programmers are "good people" who, for various reasons, sometimes produce software that contains errors and does not meet customer expectations (bad code).
The Software Engineering Institute (SEI) created a questionnaire that helps organizations evaluate their software development processes and define a set of controls that contribute to the development of "good code." An ideal set of processes, however, does not guarantee good code. Daily activities must ensure that requirements are identified, tested, defined, and changed only to improve customer satisfaction. Complexity calculations should be used during the design process to identify problem areas, create graphs and records of all activities, and determine the consequences of every bug.
Managers should learn that software development can be controlled like any other product, and they must insist that the software meet customer requirements. Development personnel must be willing to preform all aspects of the job, including documentation and metrics; and their primary goal should be meeting customer requirements.
It is important to recognize that a company culture exists and to realize that employees are motivated to change if they see an opportunity for gain or a way to avoid discomfort. The messages from management must define priorities and be followed up with regular reminders.
Management,Program development,Software,Software Engineering Institute (SEI),Computers