Return to search

Strategies for designing software

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.

Identiferoai:union.ndltd.org:bl.uk/oai:ethos.bl.uk:263635
Date January 1998
CreatorsLang, Stephen
PublisherLoughborough University
Source SetsEthos UK
Detected LanguageEnglish
TypeElectronic Thesis or Dissertation
Sourcehttps://dspace.lboro.ac.uk/2134/11141

Page generated in 0.002 seconds