Tasks in Software Engineering Education

2009 ◽  
pp. 61-74
Author(s):  
Orit Hazzan ◽  
Jim Tomayko

The field of software engineering is multifaceted. Accordingly, students must be educated to cope with different kinds of tasks and questions. This chapter describes a collection of tasks that aim at improving students’ skills in different ways. We illustrate our ideas by describing a course about human aspects of software engineering. The course objective is to increase learners’ awareness with respect to problems, dilemmas, ethical questions, and other human-related situations that students may face in the software engineering world. We attempt to achieve this goal by posing different kinds of questions and tasks to the learners, which aim at enhancing their abstract thinking and expanding their analysis perspectives. The chapter is based on our experience teaching the course at Carnegie-Mellon University and at the Technion – Israel Institute of Technology.

In order to underpin software industry-oriented education and make it more practical, a co-operation model for industries and software education institutes is described and discussed in this chapter. Based on the popular engineering education theory conceive, design, implement, operate (CDIO) associated with MIT and other universities (Crawley, 2001), and the value chain theory described by Porter (1996), an industry-institute-interoperation (I-I-Io) model was developed with five evolutionary stages - isolated, oriented, interacting, interoperating, and converging. The implementation of this co-operation model between institute and industry within the National Pilot School of Software at Harbin Institute of Technology, while still evolving, has already shown considerable vitality in the development of software engineering education.


Sign in / Sign up

Export Citation Format

Share Document