=Paper=
{{Paper
|id=Vol-1796/priore-paper-5
|storemode=property
|title=State of the Practice on Software Release Planning
|pdfUrl=https://ceur-ws.org/Vol-1796/priore-paper-5.pdf
|volume=Vol-1796
|authors=Carles Farré,Xavier Franch,Tudor Ionescu
|dblpUrl=https://dblp.org/rec/conf/refsq/FarreFI17
}}
==State of the Practice on Software Release Planning==
State of the Practice on Software Release Planning Carles Farré1, Xavier Franch1, and Tudor Ionescu2 1Universtitat Politècnica de Catalunya, Barcelona, Spain 2Siemens AG, Vienna, Austria {farre, franch}@essi.upc.edu, tudor.ionescu@siemens.com Abstract. In the recent years, the academic literature has reported many different proposals addressing the problem of Software Release Planning (SRP). However, nearly none of these results has been transferred to commercial tools for project management, although many of these tools claim to support some SRP tasks. In this paper, we present a study on 119 project management tools to know to which extent they use advanced AI-assisted algorithms/techniques to support SRP tasks. Keywords: Software Release Planning · Project Management Tools · AI- assisted techniques 1 Introduction Software Release Planning (SRP) is the problem of finding the best combination of features to implement in a sequence of releases. SRP seeks to maximize business value and stakeholder satisfaction without neglecting the constraints imposed by the availa- bility of adequate resources and the existence dependencies between features [5]. In [2], we presented a literature review on scientific approaches to SRP. This review was based on the results of a former systematic literature review by Svahnberg et al. [6] and helped to update the current knowledge on the area from a research-oriented point of view. One of the conclusions of [2] is that, except for one case, none of the reviewed proposals went beyond presenting a proof-of-concept tool to prove their fea- sibility, let alone a mature tool ready for the general use. In this paper, we complement the results of [2] with an analysis of the state of the practice which focuses on finding tools available in the IT market and analyse which are the capabilities that are not satisfactorily covered in relation to SRP. These are tools for project management, and in particular those that claim to provide scheduling facil- ities. In particular, we are interested in the algorithms and techniques that these tools use to plan the releases. 2 Research Method The paper presents a review of project management tools. The tools were selected by considering reviews from specialized magazines as well as by using simple Internet search. The following selection and categorization criteria were used: Copyright 2017 for this paper by its authors. Copying permitted for private and academic purposes. What was the last release date of the tool? Tools with last release older than 18 months were discarded. What is the current version of the tool? Alpha versions were not considered What are the key features of the tool and what type of scheduling support does it offer? Do they offer features for agile development (e.g., Burndown Charts, Product Back- log, User Stories, Scrum Methodology, Kanban) Is it web-based or a desktop application? What is the price? Other relevant remarks This choice of criteria is motivated by the fact that for commercial products, it is usually very hard to find out more publicly available information about them. A total number of 119 tools were analyzed out of which a short list was selected for a more detailed qualitative analysis. 2.1 Research Questions In order to generate (semi-)automatically effective software release plans, with optimal selection of features and optimal assignment to developers, advanced algorithms are needed. The state of the art conducted at [2] confirmed that such algorithms are still object of interest by researchers. To complement this study, we want to know if any of the tools currently available on the market uses this kind of algorithms. Even if none of them uses it, it is worthwhile to point this out. In this case, it may also well happen that tools have some level of automation (e.g., artificial intelligence (AI)-based assistants) as part of the tool features. This preamble motivates our research question: RQ1: What kind of AI-assisted feature release planning and/or task scheduling capa- bilities are supported by project management tools currently available on the market? 2.2 Selection of studies We started with a list of project management software from Wikipedia (https://en.wikipedia.org/wiki/Comparison_of_project_management_software) which contained 119 tools at the moment of the search (December 2015). Then we searched for more information about each product using Google web search and Google Scholar. Different combinations of the following keywords were used in this process: automated scheduling / planning; project management + scheduling / planning; task scheduling; critical path scheduling; critical chain scheduling; queue based scheduling; constraint- based scheduling; feedback scheduling This search lead to the websites of the developers of the tools, where all the required data was collected according to the selection and categorization criteria stated at the beginning of this section. After analyzing and filtering the collected data, we obtained a shortlist of 11 candidate tools (see Annex) at the end of this first iteration. In a second iteration, these 11 tools were analysed with respect to RQ1. To this end, the documentation of each individual tool was examined. The exclusion criteria were: Low maturity of the tool Poor functionality and features Unavailability of automated project planning methods and algorithms 2.3 Threats to validity The two main threats to validate are related to the fact that: 1) some tools may have not been located, 2) some tools may not have been examined in detail due to the impossi- bility of probing all their features for free. An external validity threat also emerges in the sense that we are restricting our study to project management tools, while release planning may be also included in some other type of tools. 3 Results A detailed analysis of the eleven selected tools can be found at [1]. The overall finding is that the tools put little focus on automated scheduling capabilities and methods. The following tools provide more advanced features for (automatic) task scheduling: Workfront. Soft constraint-based task scheduling. Genius Project. Simulation capabilities. Oracle Primavera. Critical path scheduling. LibrePlan. Queue-based (automated) resources planning. Sciforma. Critical chain scheduling. JIRA. Automated scheduling of tasks. Microsoft Project. Automated scheduling of tasks. These scheduling methods are generally aimed at supporting project managers in the beginning of a project or a sprint in the case of agile development projects. These meth- ods do not generally feed back into the scheduling problem the results of an automated assessment of the "is"-state of the tasks being scheduled. There seems to be a method and feature gap concerning the ability of tools to dy- namically adapt the schedule according to decision-support algorithms. On the one hand, this is caused by the fact that developers only report a task when it is finished, while there is no such thing as a progress-meter for each task. This impedes a fast and accurate automated re-scheduling of tasks depending on their current progress state. 4 Conclusions We have found some commercial project management tools that provide means for automating the scheduling of tasks. However, none of the tools analyzed in this review provide algorithms-assisted features for release planning and task schedule optimiza- tion. On the one hand, this seems to call for further approaches that transfer well to commercial tools. A promising step in this direction is the tool described in [4]. On the other hand, it is reasonable to ask why AI-assisted features (with the exceptions of some simulation, prediction, and forecasting features, which are all semi-automated and re- quire users to provide the tools with suitable input data) are not provided by project management tools currently available on the market. One possible explanation is that, in its present state, the market does not demand such features from different reasons (e.g., unknown employee reaction, mistrust in AI- assisted optimization, etc.). Another explanation could be that companies are still ex- perimenting with such features without finding a good way to release them. In any case, entering the market with a brand new project management tool, which also offers AI-assisted features, would be a difficult task because (1) it must also beat other widespread, massively adopted tools in what regards other, more conventional features; (2) it must be able to explain the benefits of AI-assisted features for planning and optimization; and (3) it has to fulfill its promises in a real development environ- ment, which is not the same as an experimental research-oriented one. In this context, one feasible approach for any novel component would be to start by providing AI-assisted plug-ins for one or two popular tools (such as JIRA and Work- front). Alternatively, if a complete new tool is envisioned, it should have means for seamlessly integrating with these tools in the way described in [3]. Acknowledgements. This work is a result of the SUPERSEDE project, funded by the EU’s H2020 Programme under the agreement number 644018. References 1. Ameller, D., Farré, C., Franch, X., Kifetew, F., Munante, D., Susi, A., Ionescu, T.: SUPERSEDE D4.1: Methods and tools to enact software evolution, v1 (2016). https://www.supersede.eu/owncloud/index.php/s/jxQmyr9xkRuCrdr 2. Ameller, D., Farré, C., Franch, X., Rufian, G.: A Survey on Software Release Planning Mod- els. In: 17th International Conference on Product-Focused Software Process Improvement (PROFES), pp. 48–65 (2016) 3. Ameller, D., Farré, C., Franch, X., Valerio, D., Cassarino, A.: Towards Continuous Software Release Planning. In: 24th IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER 2017) 4. Ameller, D., Farré, C., Franch, X., Valerio, D., Cassarino, A., Elvassore, V.: Replan: A Re- lease Planning Tool. In: 24th IEEE International Conference on Software Analysis, Evolu- tion, and Reengineering (SANER 2017) 5. Ruhe, G., Saliu, M.O.: The art and science of software release planning. IEEE Software 22(6), 47-53 (2005) 6. Svahnberg, M., Gorschek, T., Feldt, R., Torkar, R., Saleem, S.B., Shafique, M.U.: A sys- tematic review on strategic release planning models. Information & Software Technology 52(3), 237-248 (2010) Annex Table 1. List of the 11 candidate tools after the first iteration Product Name Web site Version Release Date Workfront www.workfront.com - July 2015 Hansoft hansoft.com 9.0022 October 2015 Planisware www.planisware.com V6 April 2015 Assembla www.assembla.com - October 2015 Genius Project www.geniusproject.com V8.0 September 2015 Oracle’s Primavera www.oracle.com/applica- 15.2 October 2015 6 tions/primavera/pro- ducts/project-manage- ment.html Planbox www.planbox.com - July 2014 LibrePlan www.libreplan.org 1.4.1 April 2015 Sciforma www.sciforma.com 7.0 December 2014 JIRA www.atlassian.com/soft- 6.4.8 July 2015 ware/jira Microsoft Project products.office.com/en- 2016 September 2015 us/project/project-and- portfolio-management- software