Doctoral course - Process Smells in Software Engineering

This course aims to help software development professionals and researchers recognize, evaluate, and address "process smells" that can cause inefficiencies, errors, and delays in critical phases of software development.

Event information

Time

-

Venue location

Linnanmaa campus

Location

Linnanmaa

Add event to calendar

This course aims to help software development professionals and researchers recognize, evaluate, and address "process smells" that can cause inefficiencies, errors, and delays in critical phases of software development. Participants will learn to identify common issues and their impact on software development efficiency within bug-tracking systems, Code Review, and Continuous Integration/Continuous Deployment (CI/CD) pipelines. Additionally, the course includes a hands-on project management exercise to help participants understand process-related issues across various project management facets.

Lecturer

Dr Eray Tüzün, Assistant Professor (Bilkent University, Ankara, Turkey)

Date: 13-14 June

Content (1 ECTS)

  • 12 hours preparation
  • 11 hours lectures
  • 3 hours exercises
  • 1 hours seminar

Assessment

Attendance and exercises (Pass/Fail)

Preparation

To prepare for this course, students should read:

  1. Khushbakht Ali Qamar, Emre Sülün, and Eray Tüzün. 2022. Taxonomy of bug tracking process smells: Perceptions of practitioners and an empirical analysis. Inf. Softw. Technol. 150, C (Oct 2022). https://doi.org/10.1016/j.infsof.2022.106972
  2. Emre Doğan and Eray Tüzün. 2022. Towards a taxonomy of code review smells. Inf. Softw. Technol. 142, C (Feb 2022). https://doi.org/10.1016/j.infsof.2021.106737
  3. Erdem Tuna, Vladimir Kovalenko, and Eray Tüzün. 2022. Bug tracking process smells in practice. In Proceedings of the 44th International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP '22). Association for Computing Machinery, New York, NY, USA, 77–86. https://doi.org/10.1145/3510457.3513080
  4. Do Developers Fix Continuous Integration Smells? Ayberk Yaşa, Ege Ergül, Hakan Erdogmus, and Eray Tüzün. 2023. In Proceedings of the 19th International Conference on Predictive Models and Data Analytics in Software Engineering (PROMISE 2023).. https://doi.org/10.1145/3617555.3617870

About the Instructor

Eray Tüzün is an Assistant Professor at Bilkent University, leading the Software Engineering and Data Analytics Research Group in the Department of Computer Engineering. With over 15 years of software design and development experience, he has held various roles in the software industry, including Team Lead, Product Owner, and Software Engineer. His research interests are software analytics, empirical software engineering, and software reuse. Tüzün earned his bachelor’s and master’s degrees in computer science and a PhD in Information Systems. He is the Bilkent University representative in the International Software Engineering Research Network and a Senior Member of IEEE.

Course Abstract

Software development projects often encounter inefficiencies, errors, and delays due to inherent process-related issues, commonly known as "process smells." This course delves into the exploration and mitigation of process smells within critical phases of software development, focusing on Bug Tracking, Code Review, and Continuous Integration/Continuous Deployment (CI/CD). The course aims to empower participants with the knowledge and skills to recognize, evaluate, and address process smells, ultimately optimizing software development practices.

The course commences by defining and understanding process smells, emphasizing their impact on software quality and project success. Participants engage in an in-depth exploration of process smells within bug-tracking systems, uncovering common issues and their ramifications on software development efficiency. The subsequent session delves into Code Review process smells, highlighting the significance of effective code reviews in ensuring software quality.

Furthermore, the course addresses process smells within CI/CD pipelines, crucial for maintaining a streamlined and efficient development process. Through real-world case studies, exercises, and interactive workshops, participants will actively identify, analyze, and propose solutions for these process smells, fostering practical application and critical thinking.

A distinctive feature of this course is the inclusion of project management smells exercise as a hands-on session. Participants are tasked with identifying and documenting project management process smells, encouraging a comprehensive understanding of process-related issues across various project management facets.

.

Schedule

Day 1

08:00 – 09:30: Introductions, Process Smells in Software Engineering

09:30 – 09:45 Break

09:45 – 11:30 Code Review & Bug Tracking Process Smells

11:30 – 12:30 Lunch

12:30 – 13:45 Project Management Process Overview

13:45 – 14:00 Break

14:00 – 17:00 Group Exercise: Creating a list of process smells for a target process area

Day 2

08:00 – 9:30 Creating tool support for Process smells

09:30 – 09:45 Break

09:45 – 10:45 CI/CD Process Smells

10:45 – 11:30 Possible impacts of Process smells

11:30 – 12:15 Lunch

12:15 – 13:15 Seminar: Presentation of Process smells

13:15 – 13:30 Summary and Reflection

Learning Objectives

  1. Define and comprehend the concept of process smells in software engineering.
  2. Recognize common process smells in bug-tracking systems.
  3. Identify common process smells in code review practices.
  4. Recognize process smells within CI/CD pipelines.
  5. Analyze and evaluate the effects of these smells on software quality and development efficiency.
  6. Encourage critical analysis of process smells and their impact on software development
  7. Promote teamwork through interactive workshops and group discussions
Last updated: 12.3.2024