Agile development aims at rapidly developing software while embracing the continuous evolution of user requirements along the whole development process.User stories are the primary means of requirements collection and...Agile development aims at rapidly developing software while embracing the continuous evolution of user requirements along the whole development process.User stories are the primary means of requirements collection and elicitation in the agile development.A project can involve a large amount of user stories,which should be clustered into different groups based on their functionality’s similarity for systematic requirements analysis,effective mapping to developed features,and efficient maintenance.Nevertheless,the current user story clustering is mainly conducted in a manual manner,which is time-consuming and subjective to human bias.In this paper,we propose a novel approach for clustering the user stories automatically on the basis of natural language processing.Specifically,the sentence patterns of each component in a user story are first analysed and determined such that the critical structure in the representative tasks can be automatically extracted based on the user story meta-model.The similarity of user stories is calculated,which can be used to generate the connected graph as the basis of automatic user story clustering.We evaluate the approach based on thirteen datasets,compared against ten baseline techniques.Experimental results show that our clustering approach has higher accuracy,recall rate and F1-score than these baselines.It is demonstrated that the proposed approach can significantly improve the efficacy of user story clustering and thus enhance the overall performance of agile development.The study also highlights promising research directions for more accurate requirements elicitation.展开更多
Based on the characteristics of high-end products,crowd-sourcing user stories can be seen as an effective means of gathering requirements,involving a large user base and generating a substantial amount of unstructured...Based on the characteristics of high-end products,crowd-sourcing user stories can be seen as an effective means of gathering requirements,involving a large user base and generating a substantial amount of unstructured feedback.The key challenge lies in transforming abstract user needs into specific ones,requiring integration and analysis.Therefore,we propose a topic mining-based approach to categorize,summarize,and rank product requirements from user stories.Specifically,after determining the number of story categories based on py LDAvis,we initially classify“I want to”phrases within user stories.Subsequently,classic topic models are applied to each category to generate their names,defining each post-classification user story category as a requirement.Furthermore,a weighted ranking function is devised to calculate the importance of each requirement.Finally,we validate the effectiveness and feasibility of the proposed method using 2966 crowd-sourced user stories related to smart home systems.展开更多
基金sponsored by the National Natural Science Foundation of China(Grant Nos.62192731,62192730,62162051)the Australian Research Council Discovery Project(DP210102447)the Fundamental Research Funds for the Central Universities(BLX202003).
文摘Agile development aims at rapidly developing software while embracing the continuous evolution of user requirements along the whole development process.User stories are the primary means of requirements collection and elicitation in the agile development.A project can involve a large amount of user stories,which should be clustered into different groups based on their functionality’s similarity for systematic requirements analysis,effective mapping to developed features,and efficient maintenance.Nevertheless,the current user story clustering is mainly conducted in a manual manner,which is time-consuming and subjective to human bias.In this paper,we propose a novel approach for clustering the user stories automatically on the basis of natural language processing.Specifically,the sentence patterns of each component in a user story are first analysed and determined such that the critical structure in the representative tasks can be automatically extracted based on the user story meta-model.The similarity of user stories is calculated,which can be used to generate the connected graph as the basis of automatic user story clustering.We evaluate the approach based on thirteen datasets,compared against ten baseline techniques.Experimental results show that our clustering approach has higher accuracy,recall rate and F1-score than these baselines.It is demonstrated that the proposed approach can significantly improve the efficacy of user story clustering and thus enhance the overall performance of agile development.The study also highlights promising research directions for more accurate requirements elicitation.
基金supported by the National Natural Science Foundation of China(71690233,71901214)。
文摘Based on the characteristics of high-end products,crowd-sourcing user stories can be seen as an effective means of gathering requirements,involving a large user base and generating a substantial amount of unstructured feedback.The key challenge lies in transforming abstract user needs into specific ones,requiring integration and analysis.Therefore,we propose a topic mining-based approach to categorize,summarize,and rank product requirements from user stories.Specifically,after determining the number of story categories based on py LDAvis,we initially classify“I want to”phrases within user stories.Subsequently,classic topic models are applied to each category to generate their names,defining each post-classification user story category as a requirement.Furthermore,a weighted ranking function is devised to calculate the importance of each requirement.Finally,we validate the effectiveness and feasibility of the proposed method using 2966 crowd-sourced user stories related to smart home systems.