DocumentCode
27473
Title
A Machine Learning Approach to Software Requirements Prioritization
Author
Perini, Anna ; Susi, Angelo ; Avesani, Paolo
Author_Institution
Fondazione Bruno Kessler. CIT - IRST, Trento
Volume
39
Issue
4
fYear
2013
fDate
Apr-13
Firstpage
445
Lastpage
461
Abstract
Deciding which, among a set of requirements, are to be considered first and in which order is a strategic process in software development. This task is commonly referred to as requirements prioritization. This paper describes a requirements prioritization method called Case-Based Ranking (CBRank), which combines project´s stakeholders preferences with requirements ordering approximations computed through machine learning techniques, bringing promising advantages. First, the human effort to input preference information can be reduced, while preserving the accuracy of the final ranking estimates. Second, domain knowledge encoded as partial order relations defined over the requirement attributes can be exploited, thus supporting an adaptive elicitation process. The techniques CBRank rests on and the associated prioritization process are detailed. Empirical evaluations of properties of CBRank are performed on simulated data and compared with a state-of-the-art prioritization method, providing evidence of the method ability to support the management of the tradeoff between elicitation effort and ranking accuracy and to exploit domain knowledge. A case study on a real software project complements these experimental measurements. Finally, a positioning of CBRank with respect to state-of-the-art requirements prioritization methods is proposed, together with a discussion of benefits and limits of the method.
Keywords
Accuracy; Approximation methods; Boosting; Data models; Humans; Software; Requirements management; machine learning; requirements prioritization;
fLanguage
English
Journal_Title
Software Engineering, IEEE Transactions on
Publisher
ieee
ISSN
0098-5589
Type
jour
DOI
10.1109/TSE.2012.52
Filename
6249686
Link To Document