Choosing a Suitable Requirement Prioritization Method: A Survey
Metadatos
Mostrar el registro completo del ítemAutor
Alhenawi, Esraa; Awawdeh, Shatha; Khurma, Ruba Abu; García Arenas, María Isabel; Castillo Valdivieso, Pedro Ángel; Hudaib, AmjadEditorial
Universidad Nacional de La Plata
Materia
Software requirement engineering Requirement prioritization techniques Relative prioritization techniques
Fecha
2024-04-22Referencia bibliográfica
E. Alhenawi, S. Awawdeh, R.A. Khurma, M. Garcia-Arenas, P.A. Castillo and A. Hudaib. Choosing a Suitable Requirement Prioritization Method: A Survey. Journal of Computer Science & Technology, vol. 24, no. 1, pp. 39-50, 2024. DOI: 10.24215/16666038.24.e04
Patrocinador
Ministerio Español de Ciencia e Innovación under project number PID2020-115570GB-C22 MCIN/AEI/10.13039/501100011033; Cátedra de Empresa Tecnología para las Personas (UGR-Fujitsu)Resumen
Software requirements prioritization plays a crucial
role in software development. It can be viewed as
the process of ordering requirements by determining
which requirements must be done first and which
can be done later. Powerful requirements
prioritization techniques are of paramount
importance to finish the implementation on time and
within budget. Many factors affect requirement
prioritization such as stakeholder expectations,
complexity, dependency, scalability, risk, and cost.
Therefore, finding the proper order of requirements
is a challenging process. Hence, different types of
requirements prioritization techniques have been
developed to support this task. In this survey, we
propose a novel classification that can classify the
prioritization techniques under two major classes:
relative and exact prioritization techniques class,
where each class is divided into two subclasses. We
depend in our classification on the way the value of
ranking is given to the requirement, either explicitly
as a specific value in the case of the exact
prioritization techniques class, or implicitly in the
case of the Relative prioritization technique class.
An overview of fifteen different requirements
prioritization techniques are presented and organized
according to the proposed classification criteria’s.
Moreover, we make a comparison between methods
that are related to the same subclass to analyze their
strengths and weaknesses. Based on the comparison
results, the properties for each proposed subclass of
techniques are identified. Depending on these
properties, we present some recommendations to
help project managers in the process of selecting the
most suitable technique to prioritize requirements
based on their project characteristics (number of
requirements, time, cost, and accuracy). La priorización de requisitos de software desempeña
un papel crucial en el desarrollo de software. Puede
verse como el proceso de ordenar los requisitos
determinando cuáles deben hacerse primero y cuáles
pueden hacerse después. Unas técnicas potentes de
priorización de requisitos son de vital importancia
para terminar la implementación a tiempo y sin
salirse del presupuesto. Muchos factores afectan a la
priorización de requisitos, como las expectativas de
las partes interesadas, la complejidad, la
dependencia, la escalabilidad, el riesgo y el coste.
Por lo tanto, encontrar el orden adecuado de los
requisitos es un proceso difícil. De ahí que se hayan
desarrollado distintos tipos de técnicas de
priorización de requisitos para apoyar esta tarea. En
este estudio, proponemos una clasificación novedosa
que puede clasificar las técnicas de priorización en
dos clases principales: clase de técnicas de
priorización relativa y clase de técnicas de
priorización exacta, donde cada clase se divide en
dos subclases. En nuestra clasificación dependemos
de la forma en que se da el valor de clasificación al
requisito, ya sea explícitamente como un valor
específico en el caso de la clase de técnicas de
priorización exacta, o implícitamente en el caso de la
clase de técnicas de priorización relativa. Se
presenta una visión general de quince técnicas
diferentes de priorización de requisitos, organizadas según los criterios de clasificación propuestos.
Además, se realiza una comparación entre métodos
relacionados con la misma subclase para analizar sus
puntos fuertes y débiles. A partir de los resultados de
la comparación, se identifican las propiedades de
cada subclase de técnicas propuesta. En función de
estas propiedades, presentamos algunas
recomendaciones para ayudar a los gestores de
proyectos en el proceso de selección de la técnica
más adecuada para priorizar requisitos en función de
las características del proyecto (número de
requisitos, tiempo, coste y precisión).