High-level software requirements and iteration changes: a predictive model

被引:9
作者
Blincoe, Kelly [1 ]
Dehghan, Ali [2 ]
Salaou, Abdoul-Djawadou [2 ]
Neal, Adam [3 ]
Linaker, Johan [4 ]
Damian, Daniela [2 ]
机构
[1] Univ Auckland, Dept Elect & Comp Engn, Auckland, New Zealand
[2] Univ Victoria, Victoria, BC V8P 5C2, Canada
[3] Persistent Syst, Toronto, ON, Canada
[4] Lund Univ, Lund, Sweden
关键词
Software requirements; Completion prediction; Release planning; Mining software repositories; Machine learning; STATIC CODE ATTRIBUTES; RESOLUTION TIME; READINESS; ALGORITHM;
D O I
10.1007/s10664-018-9656-z
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Knowing whether a software feature will be completed in its planned iteration can help with release planning decisions. However, existing research has focused on predictions of only low-level software tasks, like bug fixes. In this paper, we describe a mixed-method empirical study on three large IBM projects. We investigated the types of iteration changes that occur. We show that up to 54% of high-level requirements do not make their planned iteration. Requirements are most often pushed out to the next iteration, but high-level requirements are also commonly moved to the next minor or major release or returned to the product or release backlog. We developed and evaluated a model that uses machine learning to predict if a high-level requirement will be completed within its planned iteration. The model includes 29 features that were engineered based on prior work, interviews with IBM developers, and domain knowledge. Predictions were made at four different stages of the requirement lifetime. Our model is able to achieve up to 100% precision. We ranked the importance of our model features and found that some features are highly dependent on project and prediction stage. However, some features (e.g., the time remaining in the iteration and creator of the requirement) emerge as important across all projects and stages. We conclude with a discussion on future research directions.
引用
收藏
页码:1610 / 1648
页数:39
相关论文
共 64 条
  • [1] Abdelmoez W, 2012, 2012 22ND INTERNATIONAL CONFERENCE ON COMPUTER THEORY AND APPLICATIONS (ICCTA), P167, DOI 10.1109/ICCTA.2012.6523564
  • [2] Al Alam S.M.D., 2017, P INT C EV ASS SOFTW, P374, DOI DOI 10.1145/3084226.3084254
  • [3] Alam A., 2016, P 10 ACM IEEE INT S, P27
  • [4] Duc AN, 2011, IFIP ADV INF COMM TE, V365, P1
  • [5] [Anonymous], 2009, ACM SIGKDD explorations newsletter, DOI 10.1145/1656274.1656278
  • [6] [Anonymous], 2013, RAPIDMINER DATA MINI
  • [7] Using text clustering to predict defect resolution time: a conceptual replication and an evaluation of prediction accuracy
    Assar, Said
    Borg, Markus
    Pfahl, Dietmar
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2016, 21 (04) : 1437 - 1475
  • [8] Asthana A, 2009, CQR: 2009 IEEE INTERNATIONAL WORKSHOP TECHNICAL COMMITTEE AND COMMUNICATIONS QUALITY AND RELIABILITY, P7
  • [9] Azhar Damir, 2013, 2013 ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM), P173, DOI 10.1109/ESEM.2013.25
  • [10] Bhattacharya P., 2011, P 8 WORK C MIN SOFTW, P207, DOI DOI 10.1145/1985441.1985472