Skip to main content

Intelligent Software Engineering: The Significance of Artificial Intelligence Techniques in Enhancing Software Development Lifecycle Processes

  • Conference paper
  • First Online:
Intelligent Systems Design and Applications (ISDA 2021)

Part of the book series: Lecture Notes in Networks and Systems ((LNNS,volume 418))

Abstract

In every sphere of technology nowadays, the world has been moving away from manual procedures towards more intelligent systems that minimize human error and intervention, and software engineering is no exception. This paper is a study on the amalgamation of artificial intelligence with software engineering. Software Development Lifecycle is the foundation of this paper, and each phase of it – Requirements Engineering, Design and Architecture, Development and Implementation, and Testing – serves as a building block. This work elucidates the various techniques of intelligent computing that have been applied to these stages of software engineering, as well as the scope for some of these techniques to solve existing challenges and optimize SDLC processes. This paper demonstrates in-depth, comprehensive research into the current state, advantages, limitations and future scope of artificial intelligence in the domain of software engineering. It is significant for its contributions to the field of intelligent software engineering by providing industry-oriented, practical applications of techniques like natural language processing, meta programming, automated data structuring, self-healing testing etc. This paper expounds upon some open issues and inadequacies of software engineering tools today, and proposes ways in which intelligent applications could present solutions to these challenges.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 259.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 329.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Perkusich, M., et al.: Intelligent software engineering in the context of agile software development: a systematic literature review. Inf. Softw. Technol. 119, 106241 (2020)

    Article  Google Scholar 

  2. Silva, V.J.S., Dorça, F.A.: An automatic and intelligent approach for supporting teaching and learning of software engineering considering design smells in object-oriented programming. In: 2019 IEEE 19th International Conference on Advanced Learning Technologies (ICALT), vol. 2161. IEEE (2019)

    Google Scholar 

  3. Cheng, B.H.C., et al.: Software Engineering for Self-Adaptive Systems: A Research Roadmap. In: Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.) Software Engineering for Self-Adaptive Systems. LNCS, vol. 5525, pp. 1–26. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02161-9_1

    Chapter  Google Scholar 

  4. IEEE 12207-2-2020 - ISO/IEC/IEEE International Standard - Systems and software engineering–Software life cycle processes–Part 2: Relation and mapping between ISO/IEC/IEEE 12207:2017 (2020)

    Google Scholar 

  5. Institute of Electrical and Electronic Engineers, IEEE Standard Glossary of Software Engineering Terminology (IEEE Standard 610.12-1990). Institute of Electrical and Electronics Engineers, New York (1990)

    Google Scholar 

  6. Chakraborty, A., Baowaly, M.K., Arefin, A., Bahar, A.N.: The role of requirement engineering in software development life cycle. J. Emerg. Trends Comput. Inf. Sci. 3(5), 1 (2012)

    Google Scholar 

  7. Batarseh, F.A., Yang, R.: Data Democracy: At the Nexus of Artificial Intelligence, Software Development, and Knowledge Engineering. Academic Press, Cambridge (2020)

    Google Scholar 

  8. Balzer, R., Goldman, N., Wile, D.: Informality in program specifications. IEEE Trans. Softw. Eng. SE-4(2), 94–103 (1977)

    Article  Google Scholar 

  9. Zhao, L., et al.: Natural language processing (NLP) for requirements engineering: a systematic mapping study. arXiv preprint arXiv:2004.01099 (2020)

  10. Dalpiaz, F., van der Schalk, I., Lucassen, G.: Pinpointing ambiguity and incompleteness in requirements engineering via information visualization and NLP. In: Kamsties, E., Horkoff, J., Dalpiaz, F. (eds.) REFSQ 2018. LNCS, vol. 10753, pp. 119–135. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-77243-1_8

    Chapter  Google Scholar 

  11. Robeer, M., Lucassen, G., Van der Werf, J.M., Dalpiaz, F., Brinkkemper, S.: Automated extraction of conceptual models from user stories via NLP. In: Proceedings of the International Requirements Engineering Conference (2016)

    Google Scholar 

  12. Ammar, H.H., Abdelmoez, W., Hamdi, M.S.: Software engineering using artificial intelligence techniques: current state and open problems. In: Proceedings of the First Taibah University International Conference on Computing and Information Technology (ICCIT 2012), Al-Madinah Al-Munawwarah, Saudi Arabia, vol. 52 (2012)

    Google Scholar 

  13. Garigliano, R., Mich, L.: NL-OOPS: a requirements analysis tool based on natural language processing. Conf. Data Mining 3, 1182–1190 (2002)

    Google Scholar 

  14. Smith, T.J.: READS: a requirements engineering tool. In: Proceedings of the IEEE International Symposium on Requirements Engineering. IEEE (1993)

    Google Scholar 

  15. Zell, A.: Simulation Neuronaler Netze (Simulation with Neuronal Networks). Wissenschaftsverlag, Oldenbourg (2003)

    Google Scholar 

  16. Neumann, D.E.: An enhanced neural network technique for software risk analysis. IEEE Trans. Software Eng. 28(9), 904–912 (2002)

    Article  Google Scholar 

  17. Koc, H., Erdoğan, A., Barjakly, Y., Peker, S.: UML diagrams in software engineering research: a systematic literature review. Proceedings. 74, 13 (2021). https://doi.org/10.3390/proceedings2021074013

    Article  Google Scholar 

  18. Waykar, Y.: A study of importance of UML diagrams: with special reference to very large-sized projects (2013)

    Google Scholar 

  19. Narawita, C.R., Vidanage, K.: UML generator – use case and class diagram generation from text requirements. Int. J. Adv. ICT Emerg. Regions (ICTER) 10, 1 (2018)

    Google Scholar 

  20. Bajwa, I.S., Choudhary, M.A.: Natural language processing based automated system for UML diagrams generation (2006)

    Google Scholar 

  21. Bajwa, I., Hyder, S.: UCD-generator - a LESSA application for use case design. In: 2007 International Conference on Information and Emerging Technologies, ICIET, pp. 1–5 (2007). https://doi.org/10.1109/ICIET.2007.4381333

  22. Sharma, R., Gulia, S., Biswas, K.K.: Automated generation of activity and sequence diagrams from natural language requirements. In: 2014 9th International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE), pp. 1–9 (2014)

    Google Scholar 

  23. Gosala, B., Chowdhuri, S.R., Singh, J., Gupta, M., Mishra, A.: Automatic classification of UML class diagrams using deep learning technique: convolutional neural network. Appl. Sci. 11(9), 4267 (2021)

    Article  Google Scholar 

  24. Baqais, A., Alshayeb, M.: Automatic refactoring of single and multiple-view UML models using artificial intelligence algorithms (2016)

    Google Scholar 

  25. Schatsky, D., Bumb, S.: AI is helping to make better software, 22 January 2020. https://www2.deloitte.com/us/en/insights/focus/signals-for-strategists/ai-assisted-software-development.html. Accessed 2 Sept 2021

  26. Carlos, C.I.: Software programmed by artificial agents: toward an autonomous development process for code generation. In: IEEE International Conference on Systems, Man, and Cybernetics, pp. 3294–3299 (2013)

    Google Scholar 

  27. Hill, W.L.: Machine learning for software reuse (1987)

    Google Scholar 

  28. Prasad, A., Park, E.K.: Reuse system: an artificial intelligence-based approach. J. Syst. Softw. 27(3), 207–221 (1994)

    Article  Google Scholar 

  29. Wang, P., Shiva, S.: A knowledge-based software reuse environment for program development. IEEE (1994)

    Google Scholar 

  30. Waters, R.: The programmer’s apprentice: knowledge-based program editing. IEEE Trans. Softw. Eng. 8(1), 1e12 (1982)

    Google Scholar 

  31. Shankari, K.H., Thirumalaiselvi, R.: A survey on using artificial intelligence techniques in the software development process. Int. J. Eng. Res. Appl. 4(12), 24–33 (2014)

    Google Scholar 

  32. Jemerov, D.: Implementing refactorings in IntellJ IDEA (2008)

    Google Scholar 

  33. Mahmood, J., Reddy, Y.R.: Automated refactorings in Java: using IntelliJ IDEA to extract and propagate constants (2014)

    Google Scholar 

  34. Le Goues, C., Yoo, S. (eds.): SSBSE 2014. LNCS, vol. 8636. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-09940-8

    Book  Google Scholar 

  35. AI in Software Testing. Testing Xperts, 16 March 2021. https://www.testingxperts.com/blog/AI-in-Software-Testing. Accessed 27 Aug 2021

  36. Yanovskiy, D.: Automated visual testing for mobile and web applications. Perfecto, Perforce, 27 May 2020. https://www.perfecto.io/blog/automated-visual-testing. Accessed 25 Aug 2021

  37. Battat, M., Schiemann, D.: Why visual AI beats pixel and DOM Diffs for web app testing. InfoQ, 23 January 2020. https://www.infoq.com/articles/visual-ai-web-app-testing/. Accessed 29 Aug 2021

  38. Lima, R., et al.: Artificial intelligence applied to software testing: a literature review. In: 2020 15th Iberian Conference on Information Systems and Technologies (CISTI), pp. 1–6 (2020)

    Google Scholar 

  39. Trudova, A., et al.: Artificial intelligence in software test automation: a systematic literature review. In: ENASE (2020)

    Google Scholar 

  40. Tandon, A., Malik, P.: Breeding software test cases with genetic algorithms (2013)

    Google Scholar 

  41. Rauf, A., Alanazi, M.N.: Using artificial intelligence to automatically test GUI. In: 2014 9th International Conference on Computer Science & Education, pp. 3–5 (2014)

    Google Scholar 

  42. Zhang, M., Yue, T., Ali, S., Zhang, H., Wu, J.: A systematic approach to automatically derive test cases from use cases specified in restricted natural languages. In: Amyot, D., Fonseca i Casas, P., Mussbacher, G. (eds.) SAM 2014. LNCS, vol. 8769, pp. 142–157. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11743-0_10

    Chapter  Google Scholar 

  43. Dwarakanath, A., Sengupta, S.: Litmus: generation of test cases from functional requirements in natural language. In: Bouma, G., Ittoo, A., Métais, E., Wortmann, H. (eds.) NLDB 2012. LNCS, vol. 7337, pp. 58–69. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-31178-9_6

    Chapter  Google Scholar 

  44. Nguyen, D.P., Maag, S.: Codeless web testing using Selenium and machine learning. In: ICSOFT 2020: 15th International Conference on Software Technologies, July 2020, Online, France, pp. 51–60 (2020). https://doi.org/10.5220/0009885400510060, (hal-02909787)

  45. Harman, M., et al.: Achievements, open problems and challenges for search based software testing. In: 2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST), pp. 1–12 (2015). 016/11/21

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Kulkarni, V., Kolhe, A., Kulkarni, J. (2022). Intelligent Software Engineering: The Significance of Artificial Intelligence Techniques in Enhancing Software Development Lifecycle Processes. In: Abraham, A., Gandhi, N., Hanne, T., Hong, TP., Nogueira Rios, T., Ding, W. (eds) Intelligent Systems Design and Applications. ISDA 2021. Lecture Notes in Networks and Systems, vol 418. Springer, Cham. https://doi.org/10.1007/978-3-030-96308-8_7

Download citation

Publish with us

Policies and ethics