Human Factors in Software Engineering
John D. Gannon
Abstract
John D. Gannon
Abstract
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.
OpenAlex reports 14 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
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.
Key concepts: Computer science, Software engineering, Programmer, Software development, Software construction, Personal software process, Social software engineering, Package development process