The purpose of this course is to better understand humans that are key in making software projects successful. It includes an understanding of behavior and social aspects of humans as individuals or groups that participate in and drive software engineering. This course complements the technology and process focus that dominates the software engineering area today. The focus is on the individuals and groups in software development and results at the organizational level are briefly covered. Those that participate in this course will gain knowledge that will help them to better cater to the needs of their colleagues as well as employees, build on their strengths as well as overcome their weaknesses, and in turn it helps increase the chances of running successful software projects.
The course will comprise of six modules:
- Introduction to Behavioural Software Engineering: Definitions, concepts, and motivations.
- Individuals: Personality and cognitive biases, their effects, and related indicators / measures.
- Individuals: Models for motivation and attitudes.
- Individuals: Concepts for experience and emotion.
- Groups: Norms and creativity within software development.
- Politics, happiness, and freedom in software organisations for software engineers.
Learning outcomes: The student should after the course be able to:
- Explain and discuss the importance of Behavioural Software Engineering and how it differs from classical software engineering.
- Explain and discuss the effects of personality and cognitive biases in relation to software engineering.
- Discuss and apply models for norms and motivation in software development.
- Give examples of and discuss creativity, as well as creativity enhancement techniques, in software development.
- Critically reflect on their own experience with regards to behaviour and social aspects as individuals and within groups.
- Reflect on the emotions that software developers experience and how they impact a project.
- Identify, discuss, and critically reflect on political behaviour in their software organisation.
Related industrial challenges addressed in the course: The course focuses on improving the SE process and outcomes, such as developing the right quality, utilising resources efficiently, managing changes, and other classic SE challenges, through the perspective of helping people to better contribute to these goals by considering the strengths and weaknesses among humans.
- Course title in Swedish: Människan och gruppen i mjukvaruutveckling
- Course code: PA2581 (BTH), BTH-D5810 (antagning.se or universityadmissions.se)
- Autumn 2020 instance at Blekinge Institute of Technology
- Admission requirements: At least 90 credits within a technical subject containing a completed course of at least 7.5 credits in Software Engineering or a Team Software Engineering Project, and at least 30 credits in one or more of the following areas Programming, Object-oriented Systems, Software Design, Data Structures and Algorithms, Database Technology, Data Communications, Real Time Systems, Operating System.
At least 90 credits within technology and a minimum of 2 years professional experience in software development (shown by, for example, a work certificate from an employer).