Understanding Requirements Changes in Software Development and Their Influence on Practitioners

Modern software engineering approaches such as agile methods encourage software developers to embrace requirements changes. However, handling requirements change is neither trivial nor straightforward.

In this PhD project, we started by investigating the world of requirements changes that developers face through an empirical study. This resulted in a “faceted taxonomy of requirements changes'' which describes the various types, forms, reasons, sources, carriers, and triggering events related to requirements change. The taxonomy was published in the IEEE Transactions on Software Engineering (TSE preprint).

Alongside that, we conducted empirical studies to understand how software developers respond to requirements changes. Initial results suggested three categories of responses: technical, emotional, and behavioural. Each of these were published as preliminary findings in software engineering conference workshops, Cooperative and Human Aspects of Software Engineering (CHASE preprint) and New Ideas and Emerging Research track at the International Conference on Software Engineering (NEIR-ICSE 2020 preprint), and Automated Software Engineering (ASE 2020 preprint) respectively.

We then focused on understanding the emotional responses in depth through mixed methods empirical research, leading to describing the “the emotional roller coaster” that developers experience when handling requirements changes, accepted for publication at TSE (preprint).

Further findings include a framework for understanding “emotional intelligence of software teams when handling requirements changes”, currently under preparation for submission to software engineering journals. Finally, the project also involved developing and evaluating a software tool prototype, Emotimonitor, as a Trello power-up to capture and monitor developer emotions, published in the Journal of Systems and Software (preprint).

Publications:

  1. A framework for emotion-oriented requirements change handling in agile software engineering - Preprint
  2. A Faceted taxonomy of requirements changes in agile contexts
  3. Towards understanding emotional response to requirements changes in agile teams
  4. Towards understanding technical responses to requirements changes in agile teams
  5. Towards better understanding of agile teams through behavior change models
  6. Emotimonitor: A Trello power-up to capture and monitor emotions of agile teams
  7. The Emotional Roller Coaster of Responding to Requirements Changes in Software Engineering - Preprint

Project Lead

Kashumi Madampe

Supervisors

Prof Rashina Hoda, Prof John Grundy

Towards Understanding Technical Responses to Requirements Changes in Agile Teams image

Towards Understanding Technical Responses to Requirements Changes in Agile Teams image

Towards Understanding Technical Responses to Requirements Changes in Agile Teams image

Towards Understanding Technical Responses to Requirements Changes in Agile Teams image