Seven lessons to teach design
Design is probably the most important topic to teach in a software engineering course, but it is also the most difficult. Beside trying to formalize the design activity, it seems equally important, from a pedagogical point of view, to understand why design is hard and what its prerequisites are. This paper presents an analysis of actual design errors found in students' projects. These errors fall into seven categories. Each category is analyzed in order to identify the root difficulty and to suggest some pedagogic solutions.
Key-WordsSoftware Engineering Education Teaching Design Couarail
Unable to display preview. Download preview PDF.
- [Hoc 88]J.M. Hoc. Cognitive Psychology of Planning. Academic Press, London, 1988.Google Scholar
- [Jacquot 90]J.P. Jacquot, J. Guyard, and L. Boidot. Modeling teamwork in an academic environment. In L. Deimel, editor, Proc. of SEI'90 Conference, pages 110–122. SEI, Lecture Notes in Computer Science, 1990.Google Scholar
- [Jones 86]C.B. Jones. Systematic Software Development Using VDM. Prentice-Hall, 1986.Google Scholar
- [Liskov 88]B. Liskov and J. Guttag. Abstraction and Specification in Program Development. MIT-Press, cambridge-mass. edition, 1988.Google Scholar
- [Santhanam 90]V. Santhanam. Teaching reuse early. In L. Deimel, editor, Proc. of SEI'90 Conference, pages 77–84. SEI, Lecture Notes in Computer Science, 1990.Google Scholar
- [Shneiderman 80]B. Shneiderman. Software Psychology. Human Factors in Computer and Information Systems. Winthrop Publisher Inc., Cambridge — Mass., 1980.Google Scholar
- [Sommerville 89]I. Sommerville. Software Engineering. Addison-Wesley, third edition, 1989.Google Scholar
- [Visser 90]W. Visser. More or less following a plan during design: oportunistic deviations in specification. International Journal of Man-Machine Studies, 33(3):247–278, September 1990.Google Scholar