Agile development in cloud computing for eliciting non-functional requirements
Loading...
Date
2019
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Universiti Teknologi Malaysia
Abstract
Agile is a popular and growing software development methodology. In the agile methodology, requirements are refined based on collaborations with customers and team members. However, the agile process faces a lack of visibility across the development and delivery processes, has complex and disjointed development processes and lacks communication agility between disconnected owners, development teams, and users. Furthermore, Non-Functional Requirements (NFR) are ignored due to the nature of agile development that lacks knowledge of the user and developer about NFR. In addition, extraction of the NFR is difficult and this difficulty is increased because the agile methodology promotes change in requirement at any stage of the development. Cloud computing services have helped solve some of the issues in the agile process. However, to address the issues in agile development, this research developed a framework for Agile Development in Cloud Computing (ADCC) that uses the facilitation of cloud computing to solve the abovementioned issues. An Automated NFR eXtraction (ANFRX) method was developed to extract NFR from the software requirement documents and interview notes wrote during requirement gathering. The ANFRX method exploited the semantic knowledge of words in the requirement to classify and extract the NFR. Furthermore, an NFR Elicitation (NFRElicit) approach was developed to help users and development teams in elicitation of NFR in cloud computing. NFRElicit approach used components such as an organization’s projects history, ANFRX method, software quality standards, and templates. The ADCC framework was evaluated by conducting a case study and industrial survey. The results of the case study showed that the use of ADCC framework facilitated the agile development process. In addition, the industrial survey results revealed that the ADCC framework had a positive significant impact on communication, development infrastructure provision, scalability, transparency and requirement engineering activities in agile development. The ANFRX method was evaluated by applying it on PROMISE-NFR dataset. ANFRX method improved 40% and 26% in terms of f-measure from the Cleland and Slankas studies, respectively. The NFRElicit approach was applied to eProcurement dataset and evaluated in terms of more “Successful”, less “Partial Success” and “Failure” to identify NFR in requirement sentences. The NFRElicit approach improved 11.36% and 2.27% in terms of increase in “Successful” NFR, decrease of 5.68% and 1.14% in terms of “Partial success” and decrease of 5.68% and 1.13% in terms of “Failure” from the Non-functional requirement, Elicitation, Reasoning and Validation (NERV) and Capturing, Eliciting and Predicting (CEP) methodologies, respectively. The findings have shown the process was able to elicit and extract NFR for agile development in cloud computing.
Description
Thesis (PhD.)
Keywords
Agile software development, Non-functional requirements (Systems engineering), Cloud computing—Research