Framework for the Automation of SDLC Phases using Artificial Intelligence and Machine Learning Techniques
Main Article Content
Abstract
Software Engineering acts as a foundation stone for any software that is being built. It provides a common road-map for construction of software from any domain. Not following a well-defined Software Development Model have led to the failure of many software projects in the past. Agile is the Software Development Life Cycle (SDLC) Model that is widely used in practice in the IT industries to develop software on various technologies such as Big Data, Machine Learning, Artificial Intelligence, Deep learning. The focus on Software Engineering side in the recent years has been on trying to automate the various phases of SDLC namely- Requirements Analysis, Design, Coding, Testing and Operations and Maintenance. Incorporating latest trending technologies such as Machine Learning and Artificial Intelligence into various phases of SDLC, could facilitate for better execution of each of these phases. This in turn helps to cut-down costs, save time, improve the efficiency and reduce the manual effort required for each of these phases. The aim of this paper is to present a framework for the application of various Artificial Intelligence and Machine Learning techniques in the different phases of SDLC.
Article Details
References
Gramajo, M., Ballejos, L. and Ale, M., 2020. Seizing requirements engineering issues through supervised learning techniques. IEEE Latin America Transactions, 18(07), pp.1164-1184.
Chechik, M., 2019, September. Uncertain requirements, assurance and machine learning. In 2019 IEEE 27th International Requirements Engineering Conference (RE) (pp. 2-3). IEEE.
Panichella, S. and Ruiz, M., 2020, August. Requirements-collector: automating requirements specification from elicitation sessions and user feedback. In 2020 IEEE 28th International Requirements Engineering Conference (RE) (pp. 404-407). IEEE.
Tiwari, S., Rathore, S.S., Sagar, S. and Mirani, Y., 2020, August. Identifying Use Case Elements from Textual Specification: A Preliminary Study. In 2020 IEEE 28th International Requirements Engineering Conference (RE) (pp. 410-411). IEEE.
Ishikawa, F. and Matsuno, Y., 2020, August. Evidence-driven requirements engineering for uncertainty of machine learning-based systems. In 2020 IEEE 28th International Requirements Engineering Conference (RE) (pp. 346-351). IEEE.
Dekhtyar, A. and Hayes, J.H., 2018. Automating requirements traceability: two decades of learning from KDD. arXiv preprint arXiv:1807.11454.
Vogelsang, A. and Borg, M., 2019, September. Requirements engineering for machine learning: Perspectives from data scientists. In 2019 IEEE 27th International Requirements Engineering Conference Workshops (REW) (pp. 245-251). IEEE.
Canedo, Arquimedes, Palash Goyal, Di Huang, Amit Pandey, and Gustavo Quiros. "ArduCode: Predictive Framework for Automation Engineering." IEEE Transactions on Automation Science and Engineering 18, no. 3 (2020): 1417-1428.
Atoum, I., Baklizi, M., Alsmadi, I., Otoom, A.A., Alhersh, T., Ababneh, J., Almalki, J. and Alshahrani, S., 2021. Challenges of Software Requirements Quality Assurance and Validation: A Systematic Literature Review. IEEE Access.
Wan, Z., Xia, X., Lo, D. and Murphy, G.C., 2019. How does machine learning change software development practices?. IEEE Transactions on Software Engineering, 47(9), pp.1857-1871.
Santos, J.C., Mirakhorli, M., Mujhid, I. and Zogaan, W., 2016, April. BUDGET: A tool for supporting software architecture traceability research. In 2016 13th Working IEEE/IFIP Conference on Software Architecture (WICSA) (pp. 303-306). IEEE.
Nishi, Y., Masuda, S., Ogawa, H. and Uetsuki, K., 2018, April. A test architecture for machine learning product. In 2018 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW) (pp. 273-278). IEEE.
Tekbulut, T., Canbaz, N. and Kaya, T.Ö., 2022. Machine Learning Application in LAPIS Agile Software Development Process. In Intelligent Computing (pp. 1136-1148). Springer, Cham.
De Carvalho, H.D.P., Fagundes, R. and Santos, W., 2021. Extreme Learning Machine Applied to Software Development Effort Estimation. IEEE Access, 9, pp.92676-92687.
Shafiq, S., Mashkoor, A., Mayr-Dorn, C. and Egyed, A., 2021. A Literature Review of Machine Learning and Software Development Life cycle Stages. IEEE Access.
Medeiros, N., Ivaki, N., Costa, P. and Vieira, M., 2020. Vulnerable code detection using software metrics and machine learning. IEEE Access, 8, pp.219174-219198.
Zhang, K., Wang, X., Ren, J. and Liu, C., 2020. Efficiency improvement of function point-based software size estimation with deep learning model. IEEE Access, 9, pp.107124-107136.
Ahmed, H.A., Bawany, N.Z. and Shamsi, J.A., 2021. Capbug-a framework for automatic bug categorization and prioritization using nlp and machine learning algorithms. IEEE Access, 9, pp.50496-50512.
Asif, M. and Ahmed, J., 2020. A novel case base reasoning and frequent pattern based decision support system for mitigating software risk factors. IEEE Access, 8, pp.102278-102291.
Al Qasem, O., Akour, M. and Alenezi, M., 2020. The influence of deep learning algorithms factors in software fault prediction. IEEE Access, 8, pp.63945-63960.
Kukkar, A., Mohana, R., Kumar, Y., Nayyar, A., Bilal, M. and Kwak, K.S., 2020. Duplicate bug report detection and classification system based on deep learning technique. IEEE Access, 8, pp.200749-200763.
Campos, J.R., Costa, E. and Vieira, M., 2019. Improving failure prediction by ensembling the decisions of machine learning models: A case study. IEEE Access, 7, pp.177661-177674.
Saravanan A., & Venugopal, V. . (2023). Detection and Verification of Cloned Profiles in Online Social Networks Using MapReduce Based Clustering and Classification. International Journal of Intelligent Systems and Applications in Engineering, 11(1), 195–207. Retrieved from https://ijisae.org/index.php/IJISAE/article/view/2459.
Shepperd, M., Hall, T. and Bowes, D., 2017. Authors’ Reply to “Comments on ‘Researcher Bias: The Use of Machine Learning in Software Defect Prediction’”. IEEE Transactions on Software Engineering, 44(11), pp.1129-1131.
Chakraborty, T. and Chakraborty, A.K., 2020. Hellinger net: A hybrid imbalance learning model to improve software defect prediction. IEEE Transactions on Reliability, 70(2), pp.481-494.s
Song, Q., Jia, Z., Shepperd, M., Ying, S. and Liu, J., 2010. A general software defect-proneness prediction framework. IEEE transactions on software engineering, 37(3), pp.356-370.
Artificial Intelligence and Software Engineering: Status and Future Trends, JörgRech, Klaus-Dieter Althoff, 2004
The Role of Artificial Intelligence in Software Engineering, Mark Harman CREST Centre, University College London, Malet Place, London, WC1E 6BT, UK.
Software Analytics: What’s Next? Tim Menzies, North Carolina State University, Thomas Zimmermann, Microsoft Research. IEEE computer society 2018.
The Synergy of Human and Artificial Intelligence in Software Engineering. Tao Xie, North Carolina State University, Raleigh, NC, USA. IEEE RAISE 2013.
Towards supporting Software Engineering using Deep Learning: A case of Software RequirementsClassification. Ra´ul Navarro-Almanza, Reyes Ju´arez-Ram´?rez, Guillermo Licea, School of Chemical Science and Engineering, Universidad Aut´onoma de Baja California Tijuana, Baja California, M´exico. Calzada Universidad 14418. 2017 5th International Conference in Software Engineering Research and Innovation (CONISOFT).
Machine Learning for Software Engineering: Models, Methods, and Applications. Karl Meinke, AmelBennaceur.
Empirical comparison of machine learning algorithms for bug prediction in open source software, Ruchika Malhotra ; LaavanyeBahl ; Sushant Sehgal ; Pragati Priya, 2017 IEEE International Conference on Big Data Analytics and Computational Intelligence.
Open Source Platforms and Frameworks for Artificial Intelligence and Machine Learning. Sambit Bhattacharya, Rajeev Agrawal, ErdemErdemir, BalakrishnaGokaraju, USA, IEEE
Applying machine learning to predict software fault proneness using change metrics, static code metrics, and a combination of them. Yasser Ali Alshehri, Katerina Goseva-Popstojanova, Dale G. Dzielski and Thomas Devine. IEEE Conference SouthEastCon 2018.
Surana, C.S.R.K., Gupta, D.B. and Shankar, S.P., 2019, May. Intelligent chatbot for requirements elicitation and classification. In 2019 4th International Conference on Recent Trends on Electronics, Information, Communication & Technology (RTEICT) (pp. 866-870). IEEE