14 research outputs found

    Cost and benefit analysis of quality requirements in competitive software product management: a case study on the QUPER model

    Get PDF
    In market-driven product development, it is important that the software product is released to the market at the right time, and offers higher quality than the competitors. In release planning, the allocation of development effort in investments into product enhancements, functions are competing with quality requirements for limited resources. In addition, it is important to find the right balance between competing quality requirements. In this paper, we present an industrial evaluation of the benefit and cost views in the QUality PERformance (QUPER) model. The results indicate that the model is relevant in the release planning process, and that the combination of the benefit and cost views provides a clear picture of the current market situation

    Evolutionary Approaches for Multi-Objective Next Release Problem

    Get PDF
    In software industry, a common problem that the companies face is to decide what requirements should be implemented in the next release of the software. This paper aims to address the multi-objective next release problem using search based methods such as multi-objective evolutionary algorithms for empirical studies. In order to achieve the above goal, a requirement-dependency-based multi-objective next release model (MONRP/RD) is formulated firstly. The two objectives we are interested in are customers' satisfaction and requirement cost. A popular multi-objective evolutionary approach (MOEA), NSGA-II, is applied to provide the feasible solutions that balance between the two objectives aimed. The scalability of the formulated MONRP/RD and the influence of the requirement dependencies are investigated through simulations as well. This paper proposes an improved version of the multi-objective invasive weed optimization and compares it with various state-of-the-art multi-objective approaches on both synthetic and real-world data sets to find the most suitable algorithm for the problem

    Dependency-Aware Software Requirements Selection using Fuzzy Graphs and Integer Programming

    Full text link
    Software requirements selection aims to find an optimal subset of the requirements with the highest value while respecting the project constraints. But the value of a requirement may depend on the presence or absence of other requirements in the optimal subset. Such Value Dependencies, however, are imprecise and hard to capture. In this paper, we propose a method based on integer programming and fuzzy graphs to account for value dependencies and their imprecision in software requirements selection. The proposed method, referred to as Dependency-Aware Software Requirements Selection (DARS), is comprised of three components: (i) an automated technique for the identification of value dependencies from user preferences, (ii) a modeling technique based on fuzzy graphs that allows for capturing the imprecision of value dependencies, and (iii) an Integer Linear Programming (ILP) model that takes into account user preferences and value dependencies identified from those preferences to reduce the risk of value loss in software projects. Our work is verified by studying a real-world software project. The results show that our proposed method reduces the value loss in software projects and is scalable to large requirement sets.Comment: arXiv admin note: text overlap with arXiv:2003.0480

    Asymmetric Release Planning-Compromising Satisfaction against Dissatisfaction

    Full text link
    Maximizing satisfaction from offering features as part of the upcoming release(s) is different from minimizing dissatisfaction gained from not offering features. This asymmetric behavior has never been utilized for product release planning. We study Asymmetric Release Planning (ARP) by accommodating asymmetric feature evaluation. We formulated and solved ARP as a bi-criteria optimization problem. In its essence, it is the search for optimized trade-offs between maximum stakeholder satisfaction and minimum dissatisfaction. Different techniques including a continuous variant of Kano analysis are available to predict the impact on satisfaction and dissatisfaction with a product release from offering or not offering a feature. As a proof of concept, we validated the proposed solution approach called Satisfaction-Dissatisfaction Optimizer (SDO) via a real-world case study project. From running three replications with varying effort capacities, we demonstrate that SDO generates optimized trade-off solutions being (i) of a different value profile and different structure, (ii) superior to the application of random search and heuristics in terms of quality and completeness, and (iii) superior to the usage of manually generated solutions generated from managers of the case study company. A survey with 20 stakeholders evaluated the applicability and usefulness of the generated results

    Exploring Software Product Management decision problems with constraint solving - opportunities for prioritization and release planning

    Get PDF
    Decision-making is central to Software Product Management (SPM) and includes deciding on requirements priorities and the content of coming releases. Several algorithms for prioritization and release planning have been proposed, where humans with or without machine support enact a series of steps to produce a decision outcome. Instead of applying some specific algorithm to find an acceptable solution to a decision problem, we propose to model SPM decision-making as a Constraint Satisfaction Problem (CSP), where relative and absolute priorities, interdependencies, and other constraints are expressed as relations among variables representing entities such as feature priorities, stakeholder preferences, and resource constraints. The solution space is then explored with the help of a constraint solver without humans needing to care about specific algorithms. This paper discusses advantages and limitations of CSP modeling in SPM and gives principal examples as a proof-of-concept of CSP modeling in requirements prioritization and release planning. A discussion of further research on constraint solving in SPM is also given

    An Empirical Study of Meta- and Hyper-Heuristic Search for Multi-Objective Release Planning

    Get PDF
    A variety of meta-heuristic search algorithms have been introduced for optimising software release planning. However, there has been no comprehensive empirical study of different search algorithms across multiple different real-world datasets. In this article, we present an empirical study of global, local, and hybrid meta- and hyper-heuristic search-based algorithms on 10 real-world datasets. We find that the hyper-heuristics are particularly effective. For example, the hyper-heuristic genetic algorithm significantly outperformed the other six approaches (and with high effect size) for solution quality 85% of the time, and was also faster than all others 70% of the time. Furthermore, correlation analysis reveals that it scales well as the number of requirements increases

    Linking Long-Term Product Planning and Requirements Prioritization to Customer Value Creation

    Get PDF
    Creating value for different customer segments is essential to the business of a company. Thus, software product development companies' ability to implement the most valuable requirements in their products has been seen as critical. The literature offers requirements prioritization methods for selecting requirements, but their suitability for solving practical challenges is not clear. The state of the practice in long-term product planning and requirements prioritization, and the practical challenges involved is not thoroughly analysed. Therefore, the connection between the selection of product features and customer value creation is also an area that needs more investigation. This thesis investigates the current state of long-term product planning and requirements prioritization, and their linkages to customer value creation in market-driven software product development. The results are based on the experience gathered from 7 Finnish software product development companies that had recognized the importance to improve their long-term product planning and requirements prioritization practices. To gain a deep understanding in real product development context, we conducted longitudinal case studies using an action research approach. In addition, we evaluated the suitability of requirements prioritization methods in product development projects. The thesis provides a systematic analysis of long-term product planning and requirements prioritization activities and challenges involved in the market-driven software product development companies. According to our results product planning activities are at a low-level, focusing on the individual features of individual products in short term. Practitioners have challenges in drawing different viewpoints together into product planning. Both integrating business and customer viewpoints to the project level as well as integrating the understanding about technical limitations and possibilities to product level planning was difficult in practice. The requirements prioritization methods did not solve the practical challenges. On the basis of our findings we also propose a set of practices that support the link from long-term product planning and requirements prioritization to customer value creation. The essence of the suggested practices is 1) in the shift of planning focus from individual product features towards understanding the processes of customers and users and in describing the solutions from the customer viewpoint as a whole and 2) in the cross-functional effort to be able to combine the three main viewpoints of customer value creation (company's own business, customers and users, and implementation).Arvon luominen eri asiakassegmenteille on elintärkeää yrityksen liiketoiminnalle. Ohjelmistotuoteyrityksen kyvykkyys toteuttaa tuotteisiinsa asiakkaiden näkökulmasta katsoen arvokkaimmat ominaisuudet onkin siksi nähty kriittisenä. Kirjallisuudessa esitellään erilaisia priorisointimenetelmiä tuoteominaisuuksien valintaan, mutta niiden soveltuvuudesta käytännön ohjelmistotyöhön ei juuri tiedetä. Myöskään pitkäntähtäimen suunnittelun ja vaatimusten priorisoinnin nykytilaa sekä niihin liittyviä käytännön haasteita ei ole syvällisesti analysoitu. Siksi yhteyttä ominaisuusvalintojen ja asiakasarvon luomisen välillä onkin tärkeää tutkia lisää. Tässä tutkimuksessa selvitettiin, miten pitkäntähtäimen tuotesuunnittelu ja vaatimusten priorisointi tukevat arvon luontia asiakkaille ja käyttäjille markkinaohjautuvassa ohjelmistotuotekehityksessä. Tulokset perustuvat seitsemästä suomalaisesta ohjelmistotuoteyrityksestä kerättyihin kokemuksiin. Saadaksemme tuotesuunnittelusta ja ominaisuusvalintojen tekemisestä niin pitkällä kuin lyhyelläkin tähtäimellä syvällisen ymmärryksen, toteutimme pitkittäisiä tapaustutkimuksia käyttäen toimintatutkimuslähestymistapaa. Lisäksi kokeilimme vaatimusten priorisointimenetelmiä todellisessa tuotekehitysympäristössä. Tutkimus esittelee systemaattisen nykytila-analyysin ohjelmistoyritysten tuotesuunnittelun käytännöistä ja haasteista. Tulokset paljastavat, että ohjelmistotuotteita suunnitellaan pirstaleisesti, lyhyellä aikajänteellä ja yksittäisen tuotteen ominaisuuksiin kerralla keskittyen. Yritysten työntekijöillä on vaikeuksia käytännössä yhdistää arvonluonnin kannalta tärkeitä näkökulmia. Sekä liiketoiminta- ja asiakasnäkökulman tuominen tuotekehitysprojektien päätöksentekoon että toisaalta teknisten rajoitteiden ja mahdollisuuksien huomioiminen jo tuotesuunnittelun aiemmissa vaiheissa ovat erityisen haastavia. Tutkimuksen tuloksena syntyi käytäntöjä, joiden avulla asiakasarvon luomista voisi tukea tuotesuunnittelussa. Näiden käytäntöjen keskiössä ovat 1) suunnittelun fokuksen siirtäminen yksittäisistä tuoteominaisuuksista asiakkaan ja loppukäyttäjän prosessien ymmärtämiseen, sekä ratkaisujen kuvaaminen asiakkaan näkökulmasta kokonaisuuksina, sekä 2) yli organisaatiorajojen ulottuva työskentely, jonka avulla voidaan paremmin yhdistää kolme tärkeintä asiakasarvon luonnin näkökulmaa (yrityksen oma liiketoiminta, asiakkaat ja käyttäjät, sekä tuotteen toteuttaminen)

    Exact analysis for requirements selection and optimisation

    Get PDF
    Requirements engineering is the prerequisite of software engineering, and plays a crit- ically strategic role in the success of software development. Insufficient management of uncertainty in the requirements engineering process has been recognised as a key reason for software project failure. The essence of uncertainty may arise from partially observable, stochastic environments, or ignorance. To ease the impact of uncertainty in the software development process, it is important to provide techniques that explicitly manage uncertainty in requirements selection and optimisation. This thesis presents a decision support framework to exactly address the uncertainty in requirements selection and optimisation. Three types of uncertainty are managed. They are requirements uncertainty, algorithmic uncertainty, and uncertainty of resource constraints. Firstly, a probabilistic robust optimisation model is introduced to enable the manageability of requirements uncertainty. Requirements uncertainty is probabilis- tically simulated by Monte-Carlo Simulation and then formulated as one of the opti- misation objectives. Secondly, a probabilistic uncertainty analysis and a quantitative analysis sub-framework METRO is designed to cater for requirements selection deci- sion support under uncertainty. An exact Non-dominated Sorting Conflict Graph based Dynamic Programming algorithm lies at the heart of METRO to guarantee the elim- ination of algorithmic uncertainty and the discovery of guaranteed optimal solutions. Consequently, any information loss due to algorithmic uncertainty can be completely avoided. Moreover, a data analytic approach is integrated in METRO to help the deci- sion maker to understand the remaining requirements uncertainty propagation through- out the requirements selection process, and to interpret the analysis results. Finally, a more generic exact multi-objective integrated release and schedule planning approach iRASPA is introduced to holistically manage the uncertainty of resource constraints for requirements selection and optimisation. Software release and schedule plans are inte- grated into a single activity and solved simultaneously. Accordingly, a more advanced globally optimal result can be produced by accommodating and managing the inherent additional uncertainty due to resource constraints as well as that due to requirements. To settle the algorithmic uncertainty problem and guarantee the exactness of results, an ε-constraint Quadratic Programming approach is used in iRASPA
    corecore