In software development, the vast majority of tasks do not have mandatory dependencies and it is up to the project manager to decide which task should be completed first. The proper continuous prioritization of tasks (known as backlog refinement in agile terminology) becomes a critical success factor for any software development project, as it guarantees that the company’s crucial goals are in focus and can be met [1]. What is a task, though? The term “task” in software engineering refers to the smallest unit of work subject to management accountability that needs to be completed as part of a software development project [2]. So, in the context of software development, the term task is an umbrella term that encompasses concepts, such as “pull request” and “issue,” commonly found in GitHub/GitLab integration (so development areas) [3], or to ideas, such as “bug,” “feature,” “improvement,” commonly used in task management. Although these concepts and ideas are considered conceptually independent, they often overlap in practice. In an attempt to optimize the process and practice of task prioritization, researchers approached the problem from a bug-fixing perspective; that is, in terms of selecting the most appropriate developer for the given task [4]. Cubranic and Murphy were among the first to analyze the problem of task prioritization in terms of Machine Learning (ML); namely as a classification problem [5]. The datasets provided in their research, Eclipse (see https://bugs.eclipse.org/bugs/) and Mozilla (see http://www.mozilla.org/projects/bugzilla), have become “de facto” the standard for training and testing ML models for this problem domain.

Prioritizing tasks in software development: A systematic literature review / Bugayenko, Yegor; Bakare, Ayomide; Cheverda, Arina; Farina, Mirko; Kruglov, Artem; Plaksin, Yaroslav; Pedrycz, Witold; Succi, Giancarlo. - In: PLOS ONE. - ISSN 1932-6203. - ELETTRONICO. - 18:4(2023), pp. 1-25. [10.1371/journal.pone.0283838]

Prioritizing tasks in software development: A systematic literature review

Succi, Giancarlo
2023

Abstract

In software development, the vast majority of tasks do not have mandatory dependencies and it is up to the project manager to decide which task should be completed first. The proper continuous prioritization of tasks (known as backlog refinement in agile terminology) becomes a critical success factor for any software development project, as it guarantees that the company’s crucial goals are in focus and can be met [1]. What is a task, though? The term “task” in software engineering refers to the smallest unit of work subject to management accountability that needs to be completed as part of a software development project [2]. So, in the context of software development, the term task is an umbrella term that encompasses concepts, such as “pull request” and “issue,” commonly found in GitHub/GitLab integration (so development areas) [3], or to ideas, such as “bug,” “feature,” “improvement,” commonly used in task management. Although these concepts and ideas are considered conceptually independent, they often overlap in practice. In an attempt to optimize the process and practice of task prioritization, researchers approached the problem from a bug-fixing perspective; that is, in terms of selecting the most appropriate developer for the given task [4]. Cubranic and Murphy were among the first to analyze the problem of task prioritization in terms of Machine Learning (ML); namely as a classification problem [5]. The datasets provided in their research, Eclipse (see https://bugs.eclipse.org/bugs/) and Mozilla (see http://www.mozilla.org/projects/bugzilla), have become “de facto” the standard for training and testing ML models for this problem domain.
2023
Prioritizing tasks in software development: A systematic literature review / Bugayenko, Yegor; Bakare, Ayomide; Cheverda, Arina; Farina, Mirko; Kruglov, Artem; Plaksin, Yaroslav; Pedrycz, Witold; Succi, Giancarlo. - In: PLOS ONE. - ISSN 1932-6203. - ELETTRONICO. - 18:4(2023), pp. 1-25. [10.1371/journal.pone.0283838]
Bugayenko, Yegor; Bakare, Ayomide; Cheverda, Arina; Farina, Mirko; Kruglov, Artem; Plaksin, Yaroslav; Pedrycz, Witold; Succi, Giancarlo
File in questo prodotto:
Eventuali allegati, non sono esposti

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11585/969098
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus ND
  • ???jsp.display-item.citation.isi??? ND
social impact