Release planning for incremental software development assigns features to releases such that technical, resource, risk and budget constraints are met. Planning of software releases and allocation of ...resources cannot be handled in isolation. A feature can be offered as part of a release only if all its necessary tasks are done before the given release date. We assume a given pool of human resources with different degrees of productivity to perform different types of tasks. To address the inherent difficulty of this process, we propose a two-phased optimization approach that combines the strength of two existing solution methods. The industrial applicability of the approach is primarily directed towards mature organizations having systematic development and measurement processes in place. The expected practical benefit of the planning method is to provide release plan solutions that achieve a better overall business value (e.g., expressed by the degree of stakeholder satisfaction) by better allocation of resources. Without ignoring the importance of the human expert in this process, the contributions of the paper are seen in making the overall process more objective and the resulting decisions more transparent.
Incremental development provides customers with parts of a system early, so they receive both a sense of value and an opportunity to provide feedback early in the process. Each system release is thus ...a collection of features that the customer values. Furthermore, each release serves to fix defects detected in former product variants. Release planning (RP) addresses decisions related to selecting and assigning features to create a sequence of consecutive product releases that satisfies important technical, resource, budget, and risk constraints.
What Makes Agile Software Development Agile? Kuhrmann, Marco; Tell, Paolo; Hebig, Regina ...
IEEE transactions on software engineering,
09/2022, Letnik:
48, Številka:
9
Journal Article
Recenzirano
Odprti dostop
Together with many success stories, promises such as the increase in production speed and the improvement in stakeholders' collaboration have contributed to making agile a transformation in the ...software industry in which many companies want to take part. However, driven either by a natural and expected evolution or by contextual factors that challenge the adoption of agile methods as prescribed by their creator(s), software processes in practice mutate into hybrids over time. Are these still agile? In this article, we investigate the question: what makes a software development method agile? We present an empirical study grounded in a large-scale international survey that aims to identify software development methods and practices that improve or tame agility. Based on 556 data points, we analyze the perceived degree of agility in the implementation of standard project disciplines and its relation to used development methods and practices. Our findings suggest that only a small number of participants operate their projects in a purely traditional or agile manner (under 15 percent). That said, most project disciplines and most practices show a clear trend towards increasing degrees of agility. Compared to the methods used to develop software, the selection of practices has a stronger effect on the degree of agility of a given discipline. Finally, there are no methods or practices that explicitly guarantee or prevent agility. We conclude that agility cannot be defined solely at the process level. Additional factors need to be taken into account when trying to implement or improve agility in a software company. Finally, we discuss the field of software process-related research in the light of our findings and present a roadmap for future research.
Business success hinges on successfully creating products with the right features. You must correctly analyze the needs of the customer and match these needs with your resources to not only produce a ...product and but also deliver it in a timely manner. An in-depth understanding of systematic release planning can put you on this path. Authored by renowned expert Günther Ruhe, Product Release Planning: Methods, Tools and Applications presents methods and tools to apply sound planning to product development and product management. The book covers the different aspects of supporting product release decisions ranging from foundations to methods, tools, and applications. Equal parts art and science, the actual decision-making is described as a process of combining rigorous methods with the intuition and experience of human experts. Ruhe provides a guided tour through the methodology and use of release planning, starting with technology and market needs and proceeding to product planning and finally to development projects. He studies three fundamental classes of problems: prioritization of features, product release planning on a strategic level (roadmapping), and release planning on an operational level (staffing). Presenting and discussing tool support for all the methods covered, the author supplies case studies that underpin the methodologies with practical examples. He also supplies trial accounts (read only) for the two most important decision tools for prioritization and product release planning. The author freely admits that the techniques presented are not supposed to be the ultimate truth, but a direction to go to support human decision-making, to better understand the rational of the decisions made, and to grow in the capability of mastering the whole planning process. About the Author: Günther Ruhe holds an Industrial Research Chair in
Software Engineering at University of Calgary. His main results and publications are in software engineering decision support, product release planning, project management, as well as measurement, simulation, optimization and empirical research for software-based systems. From 1996 until 2001 he was deputy director of the Fraunhofer Institute for Experimental Software Engineering in Kaiserslautern, Germany. He has comprehensive experience in industry collaboration projects and is the Founder and CEO of Expert Decisions Inc. Dr. Ruhe is a member of the ACM, the IEEE Computer Society and the German Computer Society GI.
Informed and qualified decisions are key factors for project failure or success. The idea of decision support always arises when timely decisions must be made in unstructured or semi-structured ...problem domains, where multiple stakeholders are involved, and when the information available is uncertain. Release planning (RP) addresses decisions related to the selection and assignment of features to a sequence of consecutive product releases such that the most important technical, resource, budget, and risk constraints are met. Release planning is an important and integral part of any type of incremental product development. The objective of this tutorial is to describe and position the ‘art and science’ of software release planning. The “art of release planning” refers to relying on human intuition, communication, and capabilities to negotiate between conflicting objectives and constraints. The “science of release planning” refers to emphasizing formalization of the problem and applying computational algorithms to generate best solutions. Both art and science are important for achieving meaningful release planning results. We investigate the release planning process and propose a hybrid planning approach that integrates the strength of computational intelligence with the knowledge and experience of human experts.
This document describes our experience of applying data analytics at Plexina, a leading IT company working in the healthcare domain. The main goal of the project was to identify factors currently ...affecting issue management and to make analytics based suggestions for optimizing the process. Various statistical and machine learning techniques were applied on a data set extracted from six releases of Plexina, containing more than 666 issues. Statistical techniques successfully identified the various factors that leads to estimation inaccuracy related to issues as well as identified the hidden relationships existing among various variables. The employed predictive analytic models was also successful to some extent, in predicting effort estimation related inaccuracy associated with the issues. The insights provided by the entire data analytics study can be of great help to product managers or the developers to make more informed decisions. In addition, the guidelines presented in this paper based on the lessons learnt can be applied to other data analytics and academia-industry collaboration project.