Tasks in Software Engineering Education: The Case of a Human Aspects of Software Engineering Course

Tasks in Software Engineering Education: The Case of a Human Aspects of Software Engineering Course

Orit Hazzan (Technion - IIT, Israel) and Jim Tomayko (Carnegie Mellon University, USA)
DOI: 10.4018/978-1-60566-102-5.ch004

Abstract

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.
Chapter Preview
Top

Background: Human Aspects Of Software Engineering- Course Description

This section describes the different topics addressed in the course on Human Aspects of Software Engineering by highlighting their importance from the learners’ perspective.

Lesson 1—The Nature of Software Engineering: This lesson aims at increasing learners’ awareness that the success or failure of software development stem mainly from people-centered reasons rather than from technology-related reasons. By inviting learners to analyze different development environments, we illustrate the effects of human interaction in software development processes.

Lesson 2 —Software Engineering Methods: This lesson focuses on models of several software development methods including iterative, agile, and more. In this lesson, we highlight the human aspects of these software development methods.

Complete Chapter List

Search this Book:
Reset