Human Factors in Software Engineering - Gannon, J.D. (Computer (Long Beach, Calif.), 1979)
Software engineering is an effort to reduce the cost of producing software by raising programming productivity and lowering maintenance effort and to increase the benefits of software by extending application areas and improving service. Human factors considerations can have a major impact on the software development process and the quality of the software produced. High-level languages have increased programmer productivity by removing from the programmer the burden of remembering what values are in what register and placing it on a software system which is much more suited to managing detail. Other programming methodologies and tools have been developed to reduce the cost of producing software: design methodologies, structured programming, chief programmer teams, disciplined coding conventions, etc. The efficacy of these software aids has been demonstrated mostly by case studies. The articles in this issue of Computer analyze some of these methodologies and tools from a human factors viewpoint, using the tools of human factors engineering to determine if the use of a particular aid increases programming performance or the quality of the resulting software.