Developing Soft Skills by Applying Problem-Based Learning in Software Engineering Education

Developing Soft Skills by Applying Problem-Based Learning in Software Engineering Education

Liguo Yu (Indiana University South Bend, USA) and Raman Adaikkalavan (Indiana University South Bend, USA)
DOI: 10.4018/978-1-4666-9634-1.ch019
OnDemand PDF Download:
No Current Special Offers


This chapter describes how problem-based learning is utilized in a software engineering classroom to help students develop soft skills, such as communication skills, documentation skills, team working skills, and interpersonal skills. Case studies are performed at Indiana University South Bend, where experiences of two instructors with similar teaching approaching are analyzed. Studies find that while problem-based learning is promising in engaging students and effectively delivering soft skills, it is more challenging for instructors. Compared to traditional instructor-centered learning approach, problem-based learning requires instructors to spend more effort on problem design/refinement, student coaching, performance evaluation, data gathering, and experience analysis. Despite its difficulties of implementation, problem-based learning is considered an effective approach in software engineering education.
Chapter Preview

Background And Objectives

Software engineering education is a challenging task for computer science educators and students (Penzenstadler and Heymans, 2013). The traditional instructor-centered approach is not effective in delivering career oriented knowledge and skills, because students often consider software engineering principles as mere academic concepts and do not know how to apply them in solving real-world problems. Moreover, it is even harder for the traditional instructor-centered approach to deliver non-technical knowledge and skills, such as communication skills and team working skills.

Key Terms in this Chapter

Non-Technical Skills: Soft skills, such as communication skills, documentation skills, and management skills that are essential for software engineering professionals.

Micro-Assignment: A small real-world assignment for student to work individually.

Problem-Based Learning: A learning method that encourages students to learn knowledge and theory through solving real-world problems.

Team Project: A course project that requires students to work in team so that they can solve a large problem.

Project-Based Learning: A learning method that requires students to work on a complex real-world problem, through which students can learn various knowledge and skills.

Software Engineering: The disciplines that guide software development, maintenance, and management.

Domain Knowledge: Knowledge of a specific business or a specific application.

Software Engineering Education: Teaching computer science or information technology students with software engineering principles, knowledge, and skills.

Complete Chapter List

Search this Book: