The purpose of the research described within this thesis is to provide information that can be used to improve the quality of programs and the productivity of the software industry. To fulfil this purpose, the thesis is concerned with the order in which software engineers construct solutions to software problems, the factors that influence the order in which software engineers construct solutions, and the effectiveness of constructing a solution in a particular order. Control strategies describe the order in which solutions are constructed. Four empirical studies investigating control strategies were undertaken to answer the concerns of the thesis. The aim of the first two studies was to observe the global control strategies employed by software engineers. The two studies collected verbal reports and keystroke behaviour of software engineers using Prolog and C. The results showed that software engineers used a combination of Top-Down control strategies to solve a software problem. A Children-First Top-Down control strategy was used during the initial stages of solving a complex sub-problem, while a Depth-First Top-Down control strategy was used to solve simple sub-problems. Occasionally software engineers diverged from a Top-Down control strategy. There were eight types of divergences (such as working pursuing pre-requisites) that frequently occurred within the context of six different activities (such as making alternations to a solution). The third study investigated the choice of local control strategies that supplement global control strategies. When software engineers were presented with a series of subproblems to complete, they chose to complete the four sub-problems in the order that they were presented. The software engineers did not choose to pursue the series of sub-problems in any alternative order, such as the order of Easiest-First, or AnalogiesFirst. The fourth study investigated the environmental factors that influence the software engineers' choice of global control strategies. The study also investigated whether software engineers using the Breadth-First control strategy produced better results than software engineers using alternative control strategies. Three different text editors were produced to determine under what circumstance software engineers would use the Breadth-First control strategy. The editors also recorded the behaviour of the software engineers. The software engineers would only use the Breadth-First control strategy when the text editor forced them to follow the Breadth-First control strategy. However, the performance of the software engineers was better when they were forced to use the Breadth-First control strategy than when they used their preferred control strategies.
Identifer | oai:union.ndltd.org:bl.uk/oai:ethos.bl.uk:263635 |
Date | January 1998 |
Creators | Lang, Stephen |
Publisher | Loughborough University |
Source Sets | Ethos UK |
Detected Language | English |
Type | Electronic Thesis or Dissertation |
Source | https://dspace.lboro.ac.uk/2134/11141 |
Page generated in 0.0016 seconds