Next: A Second Course
Up: Reuse Education
Previous: Activities
The course adopted
design principles from other engineering disciplines
to software engineering to strengthen reuse.
The course also includes an evolutionary
approach to assignments and teaching and emphasizes the construction
of software rather than the writing of code.
In addition the course should: teach language concepts and
provide a context to the above material with a
brief overview of computer science history, and a
brief overview of ``machines'' (as appropriate).
At the end of the course students should be able to
design and construct a solution given
- a problem
- a set of components (design, code, documentation, test cases,
etc.,) that could be used
and be able to explain their solution.
Thus the material for course one includes introductions to:
- Understanding a specification,
building from sample specifications (with reuse) and
building toward specifications (to reuse).
- Problem solving by assembling components
for customizing and analyzing good examples of design by
reasoning by analogy,
trial and error with learning,
etc.
- Standard set of views of:
Specification; Representation; Documentation; Style; Assessment;
(Peer) Code review; Testing; Qualification; Analyzing.
- Customizing (tailoring),
retrieving from (domain specific) ``library'', and
building generic code.
Larry Latour
Mon Aug 21 17:23:03 EDT 1995