|
ABSTRACT
Abstractions are the essence of software design, and various enterprises, such as design patterns, architectural styles, programming clichés and idioms, attempt to capture, organize and present them to software engineers. This position paper explores the possibility of mounting a more comprehensive effort to catalog abstractions. Related efforts such as the design of textual and electronic dictionaries, markup languages for software artifacts and ontologies of computer science topics are surveyed to inform the effort. A set of derivative questions is presented to explore the problem space.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Aitchison, J. and Gilchrist, A. Thesaurus Construction, Second Edition. Aslib, The Association for Information Management, London, England, 1987.
|
| |
2
|
|
| |
3
|
Brown, W. J., Malveau, R. C., McCormick, H. W., and Mowbray, T. J. AntiPatterns. John Wiley, 1998.
|
| |
4
|
|
| |
5
|
|
 |
6
|
|
| |
7
|
|
| |
8
|
Fowler, M. Refactoring. Addison Wesley, 1999.
|
| |
9
|
|
 |
10
|
|
| |
11
|
|
| |
12
|
|
| |
13
|
Landau, S. I. Dictionaries / The Art and Craft of Lexicography. Charles Scribner, 1984.
|
 |
14
|
|
 |
15
|
|
 |
16
|
|
 |
17
|
|
| |
18
|
Prieto-Díaz, R. and Freeman, P. Classifying software for reusability. IEEE Software, 4, 1, (Jan. 1987), 94--104.
|
 |
19
|
|
| |
20
|
Reasoning Systems Inc. Refine User's Guide. (Palo Alto, California), 1990.
|
 |
21
|
|
| |
22
|
Roget, P. Roget's Thesaurus of English Words and Phrases. George Davidson (Editor), Penguin Books, 2002.
|
| |
23
|
|
| |
24
|
|
| |
25
|
|
 |
26
|
|
| |
27
|
|
| |
28
|
Webster's Seventh New Collegiate Dictionary. G & C Merriam Co., 1965.
|
| |
29
|
|
| |
30
|
Winchester, S. The Professor and the Madman: A Tale of Murder, Insanity, and the Making of the Oxford English Dictionary. G. K. Hall & Co., Thorndike, Maine, 1998.
|
 |
31
|
|
INDEX TERMS
Primary Classification:
D.
Software
D.2
SOFTWARE ENGINEERING
D.2.7
Distribution, Maintenance, and Enhancement
Subjects:
Documentation
Additional Classification:
D.
Software
D.2
SOFTWARE ENGINEERING
D.2.7
Distribution, Maintenance, and Enhancement
Subjects:
Restructuring, reverse engineering, and reengineering
D.3
PROGRAMMING LANGUAGES
D.3.3
Language Constructs and Features
Subjects:
Patterns
K.
Computing Milieux
K.3
COMPUTERS AND EDUCATION
K.3.2
Computer and Information Science Education
Subjects:
Computer science education
General Terms:
Design,
Documentation
Keywords:
abstraction,
architectural styles,
computer science education,
design patterns,
program understanding,
programming idioms,
reverse engineering
|