Artificial+Intelligence+and+Machine+Learning+in+Software+Development
Artificial+Intelligence+and+Machine+Learning+in+Software+Development
J. Aasik Milan
“Student, Department of Master of Computer Applications, Sri Manakula Vinayagar Engineering College, Pondicherry, IND.”
M. Anbu Mani
“Student, Department of Master of Computer Applications, Sri Manakula Vinayagar Engineering College, Pondicherry, IND.”
Received: 07-05-2023 In recent times, there has been a growing trend in software development
Received in revised form: towards the incorporation of artificial intelligence (AI) and machine
13-06-2023 learning (ML). AI and ML technologies have gained significant traction
Accepted: 15-06-2023 across various industries, as businesses aim to enhance their offerings and
Available online: expand their product portfolios. However, the development of AI/ML
30-06-2023 systems presents unique engineering challenges distinct from traditional
software development. This study seeks to examine the application of
software engineering (SE) practices in the development of AI/ML systems
K eyw ords: and explore the challenges and practices that align with the requirements of
Artificial Intelligence; industry professionals.
Challenges;
Machine Learning;
Practices;
Software Engineering;
Software Development.
© 2023 Quing: IJIRSE, Published by Quing Publications. “This is an open access article under the CC-BY 4.0 license, which
allows use, distribution and reproduction in any medium, provided the original work is properly cited.”
DOI: https://doi.org/10.54368/qijirse.2.2.0007
1.0 INTRODUCTION
Recent advancements in cloud computing, big data management, algorithms, and hardware
have opened up a range of possibilities for organizations, industries, and societies to leverage
artificial intelligence (AI) (Nascimento et al., 2020). This has led to the widespread adoption of AI,
particularly machine learning (ML) systems, by businesses worldwide, as they see them as valuable
propositions to enhance and expand their product offerings. The transition of AI/ML systems from
laboratory environments to commercial settings is gaining momentum, aiming to harness the vast
amount of available data. With the growing popularity of commercial AI/ML, a significant amount of
Corresponding author’s e-mail: [email protected] (J. Aasik Milan)
ISSN: 2583-3871 “Quing: International Journal of Innovative Research in Science and Engineering”
79 “Artificial Intelligence and Machine Learning in Software Development”
research has been conducted to understand the processes, practices, and challenges faced by
professionals in various industries.
Apr – Jun’ 2023: Volume 2 Issue 2 “Quing: International Journal of Innovative Research in Science and Engineering”
Ramalingam et al., (2023) 80
MODEL
TRAINING AND
VALIDATION
MODEL
TEST TEST DESIGN
EVALUATION AND
REPORTING
TESTING
MODEL FEATURE
MODEL MODEL
TRAINING AND ENGINEERING
DEPLOYMENT TESTING
VALIDATION
10.0 INFRASTRUCTURE
In order to handle the process of AI and ML, infrastructure is a process of hardware and
software development. The difficulties include finding, setting up, configuring, and maintaining the
infrastructure required for the creation and use of AI/ML systems. The infrastructure has such
process that are hardware, software, storage and framework, distributed computing, deployment,
inference, monitoring, and management of cloud services. "Despite having access to a wide range of
tools, data scientists sometimes struggle to find the appropriate ones because general tools are
ineffective for solving their particular challenges. They struggle to keep up with the latest
technologies since they also have other obligations and only infrequently work in data science” it was
sent by Kim et al., (2017). AI/ML models need a lot of computer power to be trained. To hasten the
training process, use infrastructure that allows dispersed training. Create the infrastructure needed
for data preparation jobs including feature engineering, cleaning, and transformation. Infrastructure
is required once models have been trained in order to serve predictions or conduct inferences on
fresh data to support continuous integration and deployment of AI/ML models, adopt solid DevOps
practise. Manage the versions of your model and code using version control tools. To assure
repeatability and simplify the deployment pipeline, automate the build, test, and deployment
procedures.
preprocessing should be part of the engineering process. Determining data gathering methods,
guaranteeing data accuracy, dealing with missing data, and implementing data management and
versioning procedures are all part of this process.
In order to input relevant characteristics into the AI/ML models, relevant features must be
extracted from the acquired data and transformed. The model's performance may be enhanced by
engineering additional features, performing data normalization, handling categorical data, and
identifying the suitable features. Based on the objectives of the issue, the data that is accessible, and
performance indicators, the engineering team must evaluate and choose the most suitable models.
14.0 INTEGRATION
Building new applications with AI/ML capability or integrating AI/ML capabilities into
already-existing software systems is the practise of integrating AI (Artificial Intelligence) and ML
(Machine Learning) into software development. For ML algorithms to learn well, the data must be
organized and tidy. To preprocess and clean up raw data, managing missing values, outliers, and other
data inconsistencies, AI and ML approaches can be used. Before training ML models, this integration
aids in confirming the quality of the data. Automation of feature engineering chores is possible using
Apr – Jun’ 2023: Volume 2 Issue 2 “Quing: International Journal of Innovative Research in Science and Engineering”
Ramalingam et al., (2023) 84
AI. The process of feature engineering is converting unstructured data into a form that ML systems
can use. By automating the extraction, selection, and production of pertinent features, developers
may speed up and streamline the development process.AI may help in the process of choosing the
best ML model for a particular issue.
14.1 How are SE Practices Modified to Address Technical Issues Unique to ML?
By adding extra approaches and concerns, software engineering (SE) practices are modified
to address the engineering problems unique to machine learning (ML). Iterative and exploratory
approaches are frequently used in ML projects to create requirements. The dynamic nature of ML
models and the requirement for data availability, quality, and relevance to particular use cases must
be taken into account by SE practices. To properly capture and fulfil requirements, close cooperation
between domain specialists and ML practitioners is essential. In order to investigate various models,
methods, and data formats, ML initiatives require prototype and experimenting. Rapid prototyping is
made possible by adapting SE practices, for as by using Jupyter notebooks or other interactive
development environments. Since ML significantly relies on data, data management becomes
essential. Strategies for data collection, storage, preprocessing, and labelling must be included in SE
practises. It involves maintaining data quality, dealing with missing values, effectively managing
enormous datasets, and taking data privacy and security concerns into account.ML models change
over time, therefore it's critical to manage model updates and related information.
calibre of the created models. A research method is a methodology used to collect data, whereas a
research strategy is a more general phrase that may incorporate the employment of one or more
methodologies. Case studies entail in-depth analyses of actual AI and ML initiatives. They shed light
on the difficulties, procedures, and effects of using AI and ML in software development. Typically,
qualitative and quantitative data are gathered for case studies through observations, interviews, and
document analysis.
15.0 DISCUSSION
The field of software development has seen a substantial transformation thanks to AI
(Artificial Intelligence) and MI (Machine Intelligence). They have opened up new opportunities,
increased effectiveness, and allowed for the creation of intelligent systems. Different software
development jobs have been automated by AI and MI technologies, improving workflows and
increasing effectiveness. Intelligent algorithms may automate processes like code generation,
debugging, testing, and deployment, saving time and effort for humans. Software developers use
machine learning (ML) methods to train models that can identify patterns, categorise data, and make
predictions. Anomaly detection, recommendation systems, fraud detection, and picture or speech
recognition are just a few applications for machine learning.
15.1 Professionals Working on the Creation of AI/ML Systems must Overcome Challenges?
The field of AI and ML in software development presents a number of obstacles for experts
developing AI/ML systems. High-quality data are essential for the training and validation of AI/ML
models. The data that professionals have access to has to be accurate, pertinent, and indicative of the
issue domain. Data accessibility may be a problem as well, particularly in specialized or specialized
sectors where there may be little data accessible.
16.0 CONCLUSION
The industry has undergone a transformation as a result of the inclusion of artificial
intelligence (AI) and machine learning (ML) in software development, as well as changes in how we
create and use software systems. Numerous advantages and developments have been brought about
by AI and ML technologies, including increased effectiveness, improved user experiences, and the
capacity to resolve challenging issues. In conclusion, by automating processes, delivering
personalised experiences, and allowing data-driven decision-making, AI and ML have completely
transformed the software development industry. Although there are many advantages to combining
AI and ML, it is important to manage the related ethical issues and make sure that these technologies
are developed and used responsibly. Advances in AI and ML will continue to influence the
development of software, creating new opportunities and spurring innovation.
REFERENCES
Braiek, H. B., & Khomh, F. (2020). On Testing Machine Learning Programs. Journal of Systems and
Software, 164, 110542. https://doi.org/10.1016/j.jss.2020.110542
Bryson, J., & Winfield, A. (2017). Standardizing Ethical Design for Artificial Intelligence and
Autonomous Systems. Computer, 50(5), 116-119. https://doi.org/10.1109/MC.2017.154
Chakravarty, A. (2010). Stress testing an AI based web service: A case study. In proceedings of the
2010 Seventh International Conference on Information Technology: New Generations, Las
Vegas, NV, USA, 1004-1008. https://doi.org/10.1109/ITNG.2010.149
Apr – Jun’ 2023: Volume 2 Issue 2 “Quing: International Journal of Innovative Research in Science and Engineering”
Ramalingam et al., (2023) 86
Cruzes, D. S., & Dybå, T. (2011). Recommended steps for thematic synthesis in software engineering.
In proceedings of the 2011 International Symposium on Empirical Software Engineering and
Measurement, Banff, AB, Canada, 275-284. https://doi.org/10.1109/esem.2011.36
Damasceno, L., Werneck, V. M. B., Schots, M. (2018). Metric-based evaluation of multiagent systems
models. In proceedings of the Tenth International Conference on Software Engineering, 67-74.
https://doi.org/10.1145/3193954.3193960
Fernandez, A, Insfran, E, & Abrahão, S. (2011). Usability evaluation methods for the web: A systematic
mapping study. Information and Software Technology, 35(8), 789-817.
https://doi.org/10.1016/j.infsof.2011.02.007
Gilpin, L. H., Bau, D., Yuan, B. Z., Bajwa, A., Specter, M., & Kagal, L. (2018). Explaining explanations: An
overview of interpretability of machine learning. In proceedings of the 2018 IEEE Fifth
International Conference on Data Science and Advanced Analytics (DSAA), Turin, Italy.
https://doi.org/10.1109/DSAA.2018.00018
Karunamurthy, A., Kulunthan, K., Dhivya, P., Vickson, A. V. S., (2022). A Knowledge Discovery Based
System Predicting Modelling for Heart Disease with Machine Learning. Quing: International
Journal of Innovative Research in Science and Engineering, 1(1), 14-22.
https://doi.org/10.54368/qijirse.1.1.0005
Karunamurthy, A., Yuvaraj, M., Shahithya, J., & Thenmozhi, V. (2023). Cloud Database: Empowering
Scalable and Flexible Data Management. Quing: International Journal of Innovative Research
in Science and Engineering, 2(1), 1-23. https://doi.org/10.54368/qijirse.2.1.0007
Kim, J., Feldt, R., & Yoo, S. (2019). Guiding Deep Learning System Testing Using Surprise Adequacy. In
proceedings of the 2019 IEEE/ACM 41st International Conference on Software Engineering,
1039–1049. https://doi.org/10.1109/ICSE.2019.00108
Kim, M., Zimmermann, T., DeLine, R., & Begel, A. (2017). Data Scientists in Software Teams: State of
the Art and Challenges. In proceedings of the IEE Transactions on Software Engineering, 1-17.
https://web.cs.ucla.edu/~miryung/Publications/tse2017-datascientists.pdf
Li, C., & Li, K. (2011). A Practical Framework for Agent-Based Hybrid Intelligent Systems. In
proceedings of the 2011 Seventh International Conference on Computational Intelligence and
Security, 199–203. https://doi.org/10.1109/CIS.2011.52
Nascimento, E., Nguyen-Duc, A., Sundbø, I., & Conte, T. (2020). Software engineering for artificial
intelligence and machine learning software: A systematic literature review. Available at
https://doi.org/10.48550/arXiv.2011.03751
Tian, Y., Pei, K., Jana, S., & Ray, B. (2018). DeepTest: Automated Testing of Deep-Neural-Network-
Driven Autonomous Cars. In proceedings of the 40th International Conference on Software
Engineering, 303-314. https://doi.org/10.1145/3180155.3180220
“Quing: International Journal of Innovative Research in Science and Engineering” Apr – Jun’ 2023: Volume 2 Issue 2