TY - JOUR
T1 - A Contingency Approach to the Application Software Generations
AU - Clarke, Roger
PY - 1991/1/6
Y1 - 1991/1/6
N2 - The current environment in which software development is undertaken includes a mix a languages at varying levels of abstraction. The goal of this paper is threefold. First, the range of application software technologies is reviewed from a historical perspective. Second, a model based on levels of abstraction summarizes the key differences between these technologies. Third, a contingency model is proposed to guide the selection of the appropriate level of abstraction.It is argued that the selection of the appropriate level of abstraction should be based on economic criteria mediated by political factors. The level should be chosen not once for the entire application, but for each component within an application. The search should be commenced at the level of abstraction at which the requirements are stated, and the highest level of abstraction chosen at which the particular component can, in the given environments of development and use, be practically implemented.To support this contingency approach, an application development product must comprise a family of compatible languages and tools, such that developers have the freedom to choose at which level of abstraction they will express their solutions, problems, domain-models or domain empirical data.
AB - The current environment in which software development is undertaken includes a mix a languages at varying levels of abstraction. The goal of this paper is threefold. First, the range of application software technologies is reviewed from a historical perspective. Second, a model based on levels of abstraction summarizes the key differences between these technologies. Third, a contingency model is proposed to guide the selection of the appropriate level of abstraction.It is argued that the selection of the appropriate level of abstraction should be based on economic criteria mediated by political factors. The level should be chosen not once for the entire application, but for each component within an application. The search should be commenced at the level of abstraction at which the requirements are stated, and the highest level of abstraction chosen at which the particular component can, in the given environments of development and use, be practically implemented.To support this contingency approach, an application development product must comprise a family of compatible languages and tools, such that developers have the freedom to choose at which level of abstraction they will express their solutions, problems, domain-models or domain empirical data.
KW - Levels of abstraction
KW - programming languages
KW - software development
UR - http://www.scopus.com/inward/record.url?scp=84976860227&partnerID=8YFLogxK
U2 - 10.1145/126743.126749
DO - 10.1145/126743.126749
M3 - Article
AN - SCOPUS:84976860227
SN - 0095-0033
VL - 22
SP - 23
EP - 34
JO - ACM SIGMIS Database
JF - ACM SIGMIS Database
IS - 3
ER -