Happy Planner


Software developers have to perform a variety of tasks for their work with varying levels of difficulty, urgency and importance. At the same time, developers have certain preferences in terms of the tasks they enjoy working on or that they perceive as being boring or annoying [1]. Tasks related to negative emotions might be postponed several times, and can become very dreadful the longer they are remaining on the todo list. Currently most task tracking tools only take into account the dimension of importance and urgency. No tool really captures the negative and positive emotions (e.g. being annoyed or excited to perform a certain task), despite the known influence of emotions on productivity, motivation and flow (amongst others) [2, 3]. We hypothesize that the awareness of the emotions attributed to a task can help to complete tasks in a timely manner and maximize the happiness.

Goals of this Master Project

The major goals of this project are to better understand how software developers schedule and address annoying tasks, and how we can best support them. The understanding can be established through literature research and/or an explorative study. To create tool support, a task planning tool including the "annoyance" dimension and helpful features to deal with annoying tasks will be implemented and evaluated.

Task Description

The main tasks of this project are:

  • Study related work on how people (should) schedule (annoying) tasks
  • (Optionally, depending on project size) Design and conduct a small explorative study to learn how people deal with annoying tasks
  • Implement a task planning tool with the dimension of annoyance (or extend an existing tool)
  • Add feature(s) to help addressing annoying tasks, e.g.
    • Make an annoying task more fun by setting the mood using music or motivating images / quotes
    • Use gamification and give a reward when an annoying task is completed, e.g. with an achievement system
    • Use a timer to set a minimum or maximum time that should be spent on an annoying task per day or week
  • Conduct a small evaluation to validate the tool


[1] Graziotin, D., Fagerholm, F., Wang, X., & Abrahamsson, P. (2017). On the Unhappiness of Software Developers. balance, 13, 50.

[2] Graziotin, D., Wang, X., & Abrahamsson, P. (2015). Do feelings matter? On the correlation of affects and the self‐assessed productivity in software engineering. Journal of Software: Evolution and Process, 27(7), 467-487.

[3] Graziotin, D., Fagerholm, F., Wang, X., & Abrahamsson, P. (2017). What happens when software developers are (un) happy. arXiv preprint arXiv:1707.00432.

Posted: 26.10.2017

Contact: Manuela Züger, Sebastian Proksch, and Giovanni Grano