24 research outputs found

    An integrated approach for requirement selection and scheduling in software release planning

    Get PDF
    It is essential for product software companies to decide which requirements should be included in the next release and to make an appropriate time plan of the development project. Compared to the extensive research done on requirement selection, very little research has been performed on time scheduling. In this paper, we introduce two integer linear programming models that integrate time scheduling into software release planning. Given the resource and precedence constraints, our first model provides a schedule for developing the requirements such that the project duration is minimized. Our second model combines requirement selection and scheduling, so that it not only maximizes revenues but also simultaneously calculates an on-time-delivery project schedule. Since requirement dependencies are essential for scheduling the development process, we present a more detailed analysis of these dependencies. Furthermore, we present two mechanisms that facilitate dynamic adaptation for over-estimation or under-estimation of revenues or processing time, one of which includes the Scrum methodology. Finally, several simulations based on real-life data are performed. The results of these simulations indicate that requirement dependency can significantly influence the requirement selection and the corresponding project plan. Moreover, the model for combined requirement selection and scheduling outperforms the sequential selection and scheduling approach in terms of efficiency and on-time delivery. \u

    Requirement Prioritization Decision Factors for Agile Development Environments

    Get PDF
    In an agile development environment, project planners continuously prioritize work tasks so requirements that provide the most value are delivered first. This strategy is based on Value Based Software Engineering principles that different requirements deliver different levels of value and diverse stakeholders view the importance of the value of various requirements differently and thus, will prioritize them differently. However, we found that there are several core values that stakeholders have more agreement in terms of relevancy and importance than others. By knowing these core values, project planners have increased insights as to which requirements should be prioritized higher, hence, hopefully increasing overall stakeholder satisfaction and reducing project risk

    Expansión cuantitativa del método MoSCoW para la priorización de requisitos

    Get PDF
    La priorización de los requisitos a ser incluidos en el producto final es un complejo proceso de decisión multicriterio que suele implicar llegar al equilibrio entre el beneficio para el negocio de cada requisito y el consumo de recursos. Existen distintos factores y dimensiones a considerar en la priorización de requisitos, muchos de ellos de carácter cualitativo. Sin embargo, algunos métodos también han utilizado las propiedades cuantitativas estimadas, siendo muchas de estas soluciones del ámbito de las técnicas de optimización. En este trabajo se propone y estudia la validez de un algoritmo de agrupamiento muy conocido, k-medias, junto con el método subjetivo más ampliamente utilizado, el método MoSCoW, para la priorización de requisitos. Los resultados experimentales, sobre dos casos de 20 y 100 requisitos respectivamente, muestran la validez de la propuesta en la identificación de los requisitos que dan mayor valor al sistema a construir y que aseguran el mayor beneficio en el proyecto

    Un algoritmo híbrido para el problema NRP con interdependencias

    Get PDF
    En este artículo presentamos un algoritmo híbrido para una variante del problema de la siguiente versión (NRP). En esta variante existe un conjunto de requisitos para los que se dispone de una estimación del esfuerzo necesario para su implementación y de la satisfacción percibida por los potenciales clientes con la inclusión de dichos requisitos. Entre estos requisitos existen relaciones de interdependencia, que establecen a ciertos requisitos como prerequisitos de otros, o que obligan a implementar determinados requisitos simultáneamente en caso de incluirse alguno de ellos en la siguiente versión del producto a desarrollar. Dado un límite superior de esfuerzo prefijado, el objetivo es seleccionar un subconjunto de requisitos que cumpla todas las restricciones y maximice la satisfacción global de los clientes. La propuesta combina heurísticas con técnicas exactas para una versión simplificada del problema. El rendimiento del algoritmo resultante en distintos escenarios realistas se compara con el de otras técnicas metaheurísticas previamente empleada

    Assisted Requirements Selection by Clustering

    Full text link
    Requirements selection is a decision-making process that enables project managers to focus on the deliverables that add most value to the project outcome. This task is performed to define which features or requirements will be developed in the next release. It is a complex multi-criteria decision process that has been focused by many research works because a balance between business profits and investment is needed. The spectrum of prioritization techniques spans from simple and qualitative to elaborated analytic prioritization approaches that fall into the category of optimization algorithms. This work studies the combination of the qualitative MoSCoW method and cluster analysis for requirements selection. The feasibility of our methodology has been tested on three case studies (with 20, 50 and 100 requirements). In each of them, the requirements have been clustered, then the clustering configurations found have been evaluated using internal validation measures for the compactness, connectivity and separability of the clusters. The experimental results show the validity of clustering strategies for the identification of the core set of requirements for the software product, being the number of categories proposed by MoSCoW a good starting point in requirements prioritization and negotiation

    Efficient anytime algorithms to solve the bi-objective Next Release Problem

    Full text link
    The Next Release Problem consists in selecting a subset of requirements to develop in the next release of a software product. The selection should be done in a way that maximizes the satisfaction of the stakeholders while the development cost is minimized and the constraints of the requirements are fulfilled. Recent works have solved the problem using exact methods based on Integer Linear Programming. In practice, there is no need to compute all the efficient solutions of the problem; a well-spread set in the objective space is more convenient for the decision maker. The exact methods used in the past to find the complete Pareto front explore the objective space in a lexicographic order or use a weighted sum of the objectives to solve a single-objective problem, finding only supported solutions. In this work, we propose five new methods that maintain a well-spread set of solutions at any time during the search, so that the decision maker can stop the algorithm when a large enough set of solutions is found. The methods are called anytime due to this feature. They find both supported and non-supported solutions, and can complete the whole Pareto front if the time provided is long enough

    Técnicas para la mejora de la calidad en la ingeniería de requisitos en las empresas de software de Argentina

    Get PDF
    La Ingeniería de Requisitos, es una fase crucial en el proceso de desarrollo de software, ya que ésta determina la calidad del diseño y la implementación y tiene un alto impacto en el éxito de los proyectos. Por tal motivo es necesario implementar estrategias que garanticen su éxito, entre ellas técnicas específicas para gestionar el conocimiento, que apunten a mejorar la calidad de los requisitos. Uno de los mayores inconvenientes que se presenta en esta fase es la brecha de interpretación que se produce entre el ingeniero de requisitos y el usuario del software lo que lleva a errores de traducción de necesidades. Para estructurar y categorizar la masa de información proveniente del proceso de educción de requisitos, es posible utilizar técnicas de representación del conocimiento a los efectos de facilitar la comprensión del problema manifestado por el usuario y reducir la brecha conceptual, entre los procesos de educción de requisitos y su modelado.Eje: Ingeniería de Software.Red de Universidades con Carreras en Informátic

    Técnicas para la mejora de la calidad en la ingeniería de requisitos en las empresas de software de Argentina

    Get PDF
    La Ingeniería de Requisitos, es una fase crucial en el proceso de desarrollo de software, ya que ésta determina la calidad del diseño y la implementación y tiene un alto impacto en el éxito de los proyectos. Por tal motivo es necesario implementar estrategias que garanticen su éxito, entre ellas técnicas específicas para gestionar el conocimiento, que apunten a mejorar la calidad de los requisitos. Uno de los mayores inconvenientes que se presenta en esta fase es la brecha de interpretación que se produce entre el ingeniero de requisitos y el usuario del software lo que lleva a errores de traducción de necesidades. Para estructurar y categorizar la masa de información proveniente del proceso de educción de requisitos, es posible utilizar técnicas de representación del conocimiento a los efectos de facilitar la comprensión del problema manifestado por el usuario y reducir la brecha conceptual, entre los procesos de educción de requisitos y su modelado.Eje: Ingeniería de Software.Red de Universidades con Carreras en Informátic

    Técnicas para la mejora de la calidad en la ingeniería de requisitos en las empresas de software de Argentina

    Get PDF
    La Ingeniería de Requisitos, es una fase crucial en el proceso de desarrollo de software, ya que ésta determina la calidad del diseño y la implementación y tiene un alto impacto en el éxito de los proyectos. Por tal motivo es necesario implementar estrategias que garanticen su éxito, entre ellas técnicas específicas para gestionar el conocimiento, que apunten a mejorar la calidad de los requisitos. Uno de los mayores inconvenientes que se presenta en esta fase es la brecha de interpretación que se produce entre el ingeniero de requisitos y el usuario del software lo que lleva a errores de traducción de necesidades. Para estructurar y categorizar la masa de información proveniente del proceso de educción de requisitos, es posible utilizar técnicas de representación del conocimiento a los efectos de facilitar la comprensión del problema manifestado por el usuario y reducir la brecha conceptual, entre los procesos de educción de requisitos y su modelado.Eje: Ingeniería de Software.Red de Universidades con Carreras en Informátic
    corecore