|
ABSTRACT
This paper offers arguments supporting the concept of requiring written requirements specifications for all programming assignments in the first Computer Science course. The term “requirements specifications” is used here to refer to a description of the functional interaction of a single computer program with its environment and the non-functional constraints placed on that interaction. The principle thrust of the arguments is that students are best served if they are introduced to program design only as an activity which naturally follows requirements specification. This concept must be reinforced in all classroom examples and by practical student exercises. By requiring the students to create requirements specifications, the instructor encourages them to view the software development effort, from the beginning, as the analysis and solution of a problem rather than as the generation of a computer program. They are similarly encouraged to realize that the valuable end product of the effort is not just a program, but a thorough description of the problem and solution. Guidelines for incorporating the concept into existing CS1 courses are given. They are reinforced by a description of how this has been done in a specific course.
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.
 |
AY83
|
|
 |
BE81
|
|
 |
BE84
|
|
| |
DA87
|
Dale, N. and Weems, C. Pascal. D. C. Heath and Company, 1987.
|
 |
EN83
|
|
 |
FO82
|
|
| |
FR79
|
Freeman, P. "A Perspective on Requirements Analysis and Specification," in Structured Software Development, Infotech International, Maidenhead England, 1979.
|
| |
GR85
|
|
 |
GA82
|
|
 |
HE86
|
|
 |
HY79
|
|
 |
KO84
|
|
| |
LE75
|
Ledgard, H. F. Programming Proverbs, Hayden, Rochelle Park, N.J. 1975.
|
| |
MU79
|
|
| |
RA78
|
Ramamoorthy, C. V. and So, H. H. "Software Requirements and Specifications: Status and Perspectives," Tutorial:Software Method,_, Ramamoorthy, C. V. and Yeh, R. T., eds., IEEE Computer Society, 1978.
|
 |
RI81
|
|
| |
RO85
|
Roman, G. C. "A Taxonomy of Current Issues in Requirements Engineering," Computer.. IEEE Computer Society, April, 1985.
|
| |
RS77
|
Ross, D. T. Structured Analysis for Requirements Definition," ..IEEt~ Trans. Sfw. Eng., January, it977.
|
 |
SC78
|
|
 |
TA85
|
|
| |
YE82
|
Yeh, R. T. "Requirements Analysis---A Management Perspective," Proc~ COMPSAC '82, Nov. 198:2.
|
Peer to Peer - Readers of this Article have also read:
-
Data structures for quadtree approximation and compression
Communications of the ACM
28, 9
Hanan Samet
-
A hierarchical single-key-lock access control using the Chinese remainder theorem
Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing
Kim S. Lee
, Huizhu Lu
, D. D. Fisher
-
Putting innovation to work: adoption strategies for multimedia communication systems
Communications of the ACM
34, 12
Ellen Francik
, Susan Ehrlich Rudman
, Donna Cooper
, Stephen Levine
-
The GemStone object database management system
Communications of the ACM
34, 10
Paul Butterworth
, Allen Otis
, Jacob Stein
-
An intelligent component database for behavioral synthesis
Proceedings of the 27th ACM/IEEE Design Automation Conference on
Gwo-Dong Chen
, Daniel D. Gajski
|