<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>On Using Artificial Intelligence in Software Quality Assurance: A State of the Art</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Randa Ouaarous</string-name>
          <email>ouaarous.randa@doctorant.inpt.ac.ma</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Imane Hilal</string-name>
          <email>ihilal@esi.ac.ma</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Abdellatif Mezrioui</string-name>
          <email>mezrioui@inpt.ac.ma</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="editor">
          <string-name>Software Quality Assurance, SQA, Artificial Intelligence, AI, Software Testing 1</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Information Science School (ESI)</institution>
          ,
          <addr-line>Rabat</addr-line>
          ,
          <country country="MA">Morocco</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>STRS Lab/CEDOC 2TI, Institut National des Postes et des Telecommunications (INPT)</institution>
          ,
          <addr-line>Rabat</addr-line>
          ,
          <country country="MA">Morocco</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2024</year>
      </pub-date>
      <abstract>
        <p>Artificial intelligence (AI) techniques and models have been applied to assist numerous activities in software engineering, specifically in Software Quality Assurance (SQA), covering both technical and management parts. Several studies have examined the utilization of AI in various tasks within the SQA field, with a particular focus on software testing. This study seeks to investigate the overall impact of AI on SQA, while identifying the prevalent applications and possible areas for further research. We thoroughly examined a selection of articles that study the use of AI approaches in various SQA activities. We have selected relevant research papers that were published in the last 5 years. The analysis was conducted by utilizing established AI and SQA taxonomies and categorizing the chosen papers based on these taxonomies. The resulting mapping and conversations indicate that the use of AI to assist in SQA is a well-established and expanding area of scientific interest with interesting opportunities for future. Evidence of several AI benefits was found when applied to SQA such as cost reduction and process improvement, as well as challenges in case of high complexity and questionable data quality. The discussions of the impact of AI on the roles of the SQA showed better outcomes when adopting a Human-AI collaboration approach.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. In many industries, including retail, healthcare, banking/financial services, business/IT services,
and government/defense, Software Engineering practice plays a pivotal role, that’s why they are the
top 5 industries hiring Software Engineers [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. However, it is important to note that software, which
is designed and created by humans, can contain errors. These errors can have severe consequences,
potentially putting businesses, resources, and even human lives at risk [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. This is why SQA has
become an indispensable part of the Software Development Lifecycle. Its primary objective is to
ensure that high-quality software is developed that meets the initial requirements set by the software
owners [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>
        SQA as a practice, has experienced exponential growth lately following the growth of Software
Engineering. With growth come new challenges and complexities such as the difficulties to adapt
SQA to the organizational features and constraints and the high cost of implementing SQA activities
[
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Luckily, AI is in a fast growth as well, it’s currently being used in many fields and sectors to
address their challenges. One of the fields where AI is thriving is SQA. According to [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], the
percentage of the organizations that are currently investing and using AI to enhance their SQAs
processes is at 77% compared to 45% 5 years ago. To understand this trend properly, we seek to answer
these questions: How is AI being currently applied to SQA? What are the observed benefits and
challenges when applying AI to SQA? And how is the usage of AI impacting the roles involved in the
SQA process?
This paper is structured as follows: Section 2 is an overview of the SQA and its activities. Then Section
3, which is a review of the remarkable research where AI was applied and studied in each SQA
activity. Last, Section 4 is a summary of the paper reviews we performed emphasizing all the AI
techniques applied to SQA activities, the benefits and challenges of using AI in SQA and the impact
of using AI on the roles involved in SQA.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. Software Quality Assurance (SQA) - Overview</title>
      <sec id="sec-2-1">
        <title>2.1. SQA Definition</title>
        <p>
          According to [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], Software quality is defined as “conformance to established requirements; the
capability of a software product to satisfy stated and implied needs when under specified conditions”.
These requirements need to be questioned by the quality processes as well, and this operation is
performed by SQA. According to [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ], SQA has been defined as “a set of activities that define and
assess the adequacy of software processes to provide evidence that establishes confidence that the
software processes are appropriate for and produce software products of suitable quality for their
intended purposes”.
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>2.2. SQA Activities</title>
        <p>
          To ensure quality, SQA has a set of activities that starts early in a Software project’s life cycle. [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]
give a detailed description of these activities, we summed them up in Figure 1. The purpose of this
section is to explain each SQA activity.
        </p>
      </sec>
      <sec id="sec-2-3">
        <title>2.2.1. SQA Process Implementation</title>
        <p>To prepare for the SQA function, the Software Quality Assurance Plan (SQAP) should be defined and
signed off by all stakeholders of the software project as a first step. Once the SQAP is done then the
PDCA is launched to guarantee a continuous improvement of the plan.</p>
        <p>
          SQAP is a Project Planning artifact that defines the activities and tasks used to ensure that software
developed for a specific product satisfies the project’s established requirements and user needs within
project cost and schedule constraints and is commensurate with project risks [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. A poorly specified
SQAP can have severe consequences on the outcome product [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ].
        </p>
        <p>
          The PDCA Cycle, also called The Deming Cycle, is a quality management procedure that ensures a
continuous process improvement [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]. This cycle has four steps Plan, Do, Check, Act. These four
stages are iteratively and continuously executed through the life cycle of the project for effective and
increased SQA [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ].
        </p>
      </sec>
      <sec id="sec-2-4">
        <title>2.2.2. Process Assurance</title>
        <p>
          Process assurance seeks to guarantee that the processes adopted by the project are adequate and are
followed by all stakeholders. This mitigates the risk of process risks that may lead to delays and extra
costs in the project, eventually impacting the quality of the concerned software. Process Assurance
is considerably important in case there are external participants in the project [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]. According to [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ],
The main activities of Process Assurance are:



        </p>
      </sec>
      <sec id="sec-2-5">
        <title>2.2.3. Product Assurance</title>
        <p>
          It is ensured through product assurance activities that software products are developed in compliance
with contractual requirements, project schedules, and established product requirements. These
products include not only the software and related documentation but also the plans associated with
the development, operation, support, maintenance, and retirement of the software. According to [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ],
The main activities of Product Assurance are:
        </p>
        <p>Requirement Review.</p>
        <p>Design Review.</p>
        <p>Software Testing.</p>
        <p>User Acceptance Tests.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Review of AI applied to SQA</title>
      <sec id="sec-3-1">
        <title>3.1. AI – Overview</title>
        <p>
          AI refers to machines capable of simulating and mimicking the human intelligence by thinking and
learning from their experiences. This technology includes a set of features such as problem-solving,
pattern recognition, understanding natural language and decision making [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ].
        </p>
        <p>
          AI has many definitions and can be seen from many perspectives, The taxonomy outlined in the [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]
consists of five primary scientific domains: Reasoning, Planning, Learning, Communication, and
Perception. Additionally, there are three transversal domains: Integration and Interaction, Services,
and Ethics and Philosophy. In our study we found evidence of the application from AI techniques in
SQA that belong to the following AI domain:
Reasoning focuses on techniques for processing data into knowledge and determining facts.
Planning concentrates on developing and implementing algorithms and strategies that will support
in accomplishing tasks that can be carried out by intelligent agents.
        </p>
        <p>Learning deals with the capacity of systems, without explicit programming, to learn, decide, forecast,
adapt, and respond to changes and improve from experience automatically.</p>
        <p>Communication relating to the capacities of recognizing, analyzing, comprehending, and producing
information from oral and written human communications. Mainly, Natural Language Processing
(NLP) covers this field.</p>
        <p>Integration and Interaction addresses the combination of the previous domains to showcase an
intelligent behavior through Agents and bots.</p>
        <p>We are classified the findings of our reviews following this taxonomy in Table 1.</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. Research Methodology</title>
        <p>In this paper, we used literature review methodology to investigate the current state of the art of AI
application in SQA. The selection method we adopted is based on multi-step approach. First, we build
a comprehensive search strategy based on combinations of selected keywords and Boolean operators:
“AI,” “Artificial Intelligence,” “Machine Learning,” “Deep Learning,” “Software Quality Assurance,”
“SQA,” “Software Testing,” “Process Assurance,” “Product Assurance” “Generative AI,” and “Software
Engineering,”. This search was conducted across various academic databases of computer science,
engineering and software engineering disciplines. Second, we applied inclusion criteria to the
retrieved articles. Articles were mainly selected if they were published within the last 5 years
(20192024) in journals or conference proceedings, and if they explored the use of AI techniques in SQA
tasks. Finally, after screening the title, abstract and full text, our methodology resulted in 16 articles
that met our criteria and formed the basis of this review.</p>
      </sec>
      <sec id="sec-3-3">
        <title>3.3. AI in SQA Process Implementation 3.3.1. AI in SQAP</title>
        <p>
          SQAP is an activity that falls under the Project Planning umbrella, the paper in [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] covered the usage
of AI in the software engineering by exploring potential usage of AI in Project Planning phase. This
phase has many challenges that exceeds the human capacity such as managing the conflicts for
developers and project planners, optimizing tasks, time, and budget allocation [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ]. The authors of
[
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] found that the usage of non-linear and self-optimizing algorithms, such as ant colony
optimization, can reduce decision complexity. Furthermore, their work proved that the Bayesian
network algorithms, can integrate large amounts of data and handling missing or uncertain
information to simultaneously optimize cost and quality outcomes. This AI approach achieved cost
&amp; duration optimization, Effective task assignment, Improvement of quality outcomes, improved
project planning and many more benefits that will be listed in the last section of this paper.
3.3.2. AI in PDCA
Considering this continuous operation directly linked to project management. In general, it has many
challenges related to risk management and the accuracy of the decision making. We reviewed
numerous studies related to AI applied to Project Management such as [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ]. In this study, M El Khatib
et al. reviewed literature and interviewed IT Project Managers, they found that AI can improve the
quality of decision making as it can manage a significant amount of data. Some AI solutions that the
authors found to be used in project management are Chatbots, Machine Learning and Knowledge
Management systems with AI features.
        </p>
        <p>
          There is also another recent study [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ] that explores the project planning capabilities of generative
AI, the authors specifically used GPT-4 model in project management and compared it to human. The
findings of this study are that AI applied to Project management had some hiccups and cannot be
fully autonomous. The best results are produced when there is a synergy between human experience
and AI.
        </p>
      </sec>
      <sec id="sec-3-4">
        <title>3.4. AI in Process Assurance</title>
      </sec>
      <sec id="sec-3-5">
        <title>3.4.1. AI in Evaluating Conformance to Processes</title>
        <p>
          To avoid having issues in the product, the process of developing the product needs to be monitored
and tracked. The challenges that are faced in this task are usually related to the complexity of the
used processes in the project, the adherence of different contributors to the agreed-on processes and
the efficiency of processes. AI can come with great benefits to address these challenges. [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ] is a study
that explores the usage of AI in Project where the Agile Framework is applied. AI can automate
repetitive tasks, enhanced project metric analysis and accelerate team productivity. This benefit
impacts directly and positively the process assurance of the project. [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] is another study that was
done on Waterfall methodology and found that AI contributes to more efficient and accurate planning
and risk assessment.
        </p>
      </sec>
      <sec id="sec-3-6">
        <title>3.4.2. AI in Evaluating Conformance to SCM</title>
        <p>
          Software Configuration Management is an activity that aims to manage the software configurations
and versioning to track changes. Ensuring that all parties respect the configuration management is
an important activity of SQA, however, there might be some challenges related to the difficulty of
tracking all changes and keeping records accessible and exploitable. [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ] focused on the usage of AI
in the Continuous Integration/Continuous Deployment (CI/CD). Machine learning integrated to
DevOps tools, like Jenkins and SonarQube, is primarily used to automate and optimize the pipeline
and the deployment in various environment, enhancing efficiency, quality, and responsiveness of
software development processes. Moreover, machine learning leverages the CI/CD pipeline by
automating the tasks of monitoring and analysis, defect prediction, process improvement insights,
and data-driven decision making.
        </p>
      </sec>
      <sec id="sec-3-7">
        <title>3.4.3. AI in People Skill Management</title>
        <p>People Skill Management is an important activity of Process Assurance because the skill sets of the
people involved in the process of developing the software are key to the quality assurance of the
software. This task is challenging as it relies on the human personality traits and knowledge that are
relative parameters and difficult to measure. According to [19], AI can be used in People Skill
Management by predicting human interactions with their environment in the software project
operations. The authors of [19] used Agent Based Modeling and Simulation (ABMS) that considers
various human related factors such as personality traits, affective states, competencies, learnability,
and individual interactions. The result showed that the prototype composes teams that perform well
in terms of output quantity and development speed. The limitation of this model is that it’s based on
the numeric correlations between human aspects that can be sometime hard to predict with data.</p>
      </sec>
      <sec id="sec-3-8">
        <title>3.5. AI in Product Assurance</title>
      </sec>
      <sec id="sec-3-9">
        <title>3.5.1. Product Assurance and SDLC</title>
        <p>Software Development Life Cycle (SDLC) is a structured process or methodology used in software
engineering to build high quality software applications with an optimized cost in the shortest time
possible through planned phases and activities [20]. The Product Assurance activities depend on the
adopted SDLC Model. There are many SDLC models such as Waterfall, RAD, Spiral, Agile, Prototype.
In this paper we are considering the general model presented in Figure 2. In the upcoming 4 sections
we are going to explore the usage of AI in each Product Assurance activity in its relationship with
the SDLC corresponding stage.</p>
      </sec>
      <sec id="sec-3-10">
        <title>3.5.2. AI in Requirement Reviews</title>
        <p>AI significantly enhances the process of requirement reviews by automating the identification,
analysis, and validation of software requirements. According to [21], NLP can retrieve valuable inputs
from extensive documentation and identify key capabilities and potential requirements from various
sources such as stakeholder interviews, documents, emails, and user feedback. NLP can also provide
insights and detect any gaps or omissions in the requirements. [22] Also covered the requirement
review by knowledge-based systems. These systems can manage the requirements phase efficiently by
capturing and utilizing domain knowledge to ensure that the requirements are complete, consistent,
and accurately reflect the stakeholders' needs.</p>
      </sec>
      <sec id="sec-3-11">
        <title>3.5.3. AI in Design Reviews</title>
        <p>Good software quality is a direct result of a well-defined design, but sometimes, human error and
requirement complexity can leave space to gaps and functional misalignments to hide in the design.
In this context, [23] discussed the importance of good software design and how the usage of model
refactoring and machine learning can help maintain software quality. To identify the presence of
functional misalignments and gaps in software models, the authors of [23] proposed the usage of a
labeled dataset of metric values of UML class diagrams to train a deep neural network model using an
adaptive supervised learning algorithm. After evaluation, the approach showed high accuracy and
scalability to large and complex data.




</p>
        <p>Requirement Reviews will be performed in Stage 1,2.</p>
        <p>Design Reviews will be performed in Stage 3.</p>
        <p>Software Testing will be performed in Stage 4, 5, 6.</p>
        <p>User Acceptance Tests will be performed in Stage 5, 6.</p>
      </sec>
      <sec id="sec-3-12">
        <title>3.5.4. AI in Software Testing</title>
      </sec>
      <sec id="sec-3-13">
        <title>3.5.4.1. Software Testing Overview</title>
        <p>
          SQA is commonly mixed with Software Testing. However, Software Testing is one of the main
activities of the Product Assurance, which is an activity of SQA [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ].
        </p>
        <p>
          Software Testing is defined by [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ] as "a formal process in which the programs are run on a computer
and can relate to the analysis of a single software component, a set of integrated software components,
or an entire software package.”
Software Testing activities are organized and carried out differently in different life cycles. In the
upcoming 5 sections, we cover the application of AI in the following 5 components of the Software
Testing process:
        </p>
        <p>Test Analysis and Design
Test Implementation and execution
Static Code Analysis
Software Defect Prediction</p>
        <p>Test Automation</p>
      </sec>
      <sec id="sec-3-14">
        <title>3.5.4.2. AI in Test Analysis and Design</title>
        <p>One of the most important artifacts of Software Testing under SQA is the Test Case document [24].
It’s known in Software Testing that Test case creation is a challenging task that takes time and
analytical skills to produce good quality test cases. Several Machine Learning Models have been
subjects of test case generation studies. [25] compared the accuracy of these known models in the case
of test case generation based on quality attribute scenarios (QAS). The results show Rain Forest
combined with TF-IDF generated testcases with high accuracy, resulting in significant Test effort
optimization in the project.</p>
      </sec>
      <sec id="sec-3-15">
        <title>3.5.4.3. AI in Test Implementation and Execution</title>
        <p>Test Implementation and Execution is a phase where we define the priority of each area of the
software to be covered by testing. Test Case Prioritization (TCP) is a Software testing activity that is
more crucial in the context of regression testing, whether manual or automated, as it reduces the
costs by optimizing the testing effort and by detecting issues as early as possible. [26] discusses the
various used approaches. According to this study, these are the most used techniques in TCP: Neural
Networks, Bayesian Network, genetic algorithm, SVM, K-means. Results show that these techniques
can achieve the continuous and adaptive TCP, improving performance of detecting faults earlier,
achieve full coverage and faster fault detection.</p>
      </sec>
      <sec id="sec-3-16">
        <title>3.5.4.4. AI in Static code Analysis</title>
        <p>Large-scale codebases may include possible flaws that traditional static code analysis methods miss,
resulting in delayed troubleshooting and high-cost hotfixes. In [27], the authors introduced an ML
prototype to enhance the Static Code Analysis, therefore, leverage SQA in sensitive and complex IT
projects. The prototype is based on three ML procedures: the API Mining, the Sequential Pattern
Mining, and the Frequent ItemSet Mining. Results show that the prototype can detect complex code
patterns and deviations in code and automate error detection.</p>
      </sec>
      <sec id="sec-3-17">
        <title>3.5.4.5. AI in Software Defect Prediction (SDP)</title>
        <p>The importance of SDP in Software engineering comes with the challenge of discovering defect in the
early stages of the software development to reduce its cost. Recently, this activity has been in the plat
of many AI studies. [28] classifies the available SDP models that are based on ML and DL. A large set
of techniques are widely used and have each difference advantages, we summed them up in the last
section of this paper.</p>
      </sec>
      <sec id="sec-3-18">
        <title>3.5.4.6. AI in Test Automation</title>
        <p>According to [29], Test Automation has been a trend in Software Testing for several years. It has been
proven that test automation increases quality and delivery time. However, its biggest flaw is that it
requires continuous human intervention that sometimes can be costly, time consuming and not
efficient. This is where AI can make a difference. [29] presents a collection of AI methods used for
software testing activities that are usually automated, such us GUI Testing, Black Box testing,
Regression Testing, unit testing. The authors of [29] also highlighted the limitations and challenges
that comes with using AI for test automation such as the Test automation complexity that becomes
more complex when AI is added.</p>
      </sec>
      <sec id="sec-3-19">
        <title>3.5.5. AI in User Acceptance Tests (UAT)</title>
        <p>According to [30], UAT is a “Formal testing with respect to user needs, requirements, and business
processes conducted to determine whether or not a system satisfies the acceptance criteria and to
enable the user, customers or other authorized entity to determine whether or not to accept the
system”. The authors of [31] worked on an approach for generating UAT testcases from scenarios that
are captured and analyzed using NLP and Task/Method model. This approach was applied in the case
of software development in the agricultural domain where the requirements and the scenarios of the
agricultural processes change from a region to another. The integration of these AI techniques in the
process of UAT resulted in an optimized UAT testing within the agile development environment.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Results and Discussion</title>
      <sec id="sec-4-1">
        <title>4.1. Use of AI Technologies per SQA activity</title>
        <p>
          Learning IntIengteraraticotnioannd
d
iignnM ii()rceeaagLLhnnnMM ltrrseeeeaokpuNNDw ()NND itsgoonB liiiftsscaaonC litrsegunC iitrssceeeonD ltseeebodhnEmM iirrseeeaSvgdpLunn ittrrcceeaSooppuhnVM iirrsseeeavgdpLunnnU lliItttseeeaggdnnnnA ttscaboh litseeeaaggoddnnnBM liitsaounm -4PTG
A
SQAP
[
          <xref ref-type="bibr" rid="ref13">13</xref>
          ][
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ]
ssrceo ttean
PA lepm PDCA Cycle
SQ Im
Conformance to processes [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ][
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ]
ss cen
ce raConformance to SMC
o u
rP ss
PeAople Skills Management
        </p>
      </sec>
      <sec id="sec-4-2">
        <title>4.2. Benefits and Challenges of using AI in SQA</title>
        <p>AI techniques are introduced in SQA to optimize resources and address common SQA challenges. We
extracted many benefits of using AI in SQA such as the cost reduction and the process optimization.
We also found evidence of the challenges that necessitate further research and exploration such as the
quality and representativeness of the training data. Table 2 summarizes these benefits and challenges
and categorizes them by the potential impact on each SQA activity.</p>
        <p>
          communication [
          <xref ref-type="bibr" rid="ref14 ref17">14,17</xref>
          ]
-Complex, large-scale projects that deviate from
conventional processes can lead to AI models
generating false results [
          <xref ref-type="bibr" rid="ref14 ref17">14,17</xref>
          ]
-Integration with existing testing tools and
workflows [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ].
-Predicting human aspects such as soft skills
through data analysis [19]
-Enhanced testing coverage [21,22]
e-Improved test case design and execution
tc cn[21,22,25,26,27,28,29]
du ra-Accurate defect prediction [19,21,22,23]
ro s
        </p>
        <p>u
P s</p>
        <p>A
-Potential biases within the training data can
lead to flawed test outcomes
[23,21,22,25,26,27,28,29].
-Difficulties in scaling with software
complexity resulting in inaccurate testing
[25,26,27,28,29].</p>
      </sec>
      <sec id="sec-4-3">
        <title>4.3. Impact of using AI on different roles involved in the process of SQA</title>
        <p>
          Many of the papers we reviewed highlighted the impact of using AI on human aspects in the context
of SQA. On one hand, the positive impacts as AI proved to be efficient in repetitive task automation,
leaving more room for the SQA practitioners to focus on more complex tasks [
          <xref ref-type="bibr" rid="ref13 ref15">13,15,25,26,27,28,29</xref>
          ].
On the other hand, challenges that need to be addressed when integrating AI in the SQA, mainly
related to potential job displacement [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] and over-reliance on AI.
        </p>
        <p>rod sru when relying only on human</p>
        <p>P sA effort.
The analysis of these impacts and challenging considerations points to the AI-Human Collaboration
[32]. This approach is suggesting using AI techniques to support or automate software engineering
tasks and incorporating human domain knowledge as starting points for designing AI techniques and
using human feedback to improve these techniques, forming a continuous feedback loop, this approach
seeks to reduce human efforts and the burden on human intelligence as shown in Table 3.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Conclusion and Future Work</title>
      <p>SQA is a crucial software engineering activity, that’s why organizations are investing efforts and
resources to leverage their SQA processes using the latest technologies such as AI. We performed a
paper review of AI application to all SQA activities. In these selected papers we also found evidence of
its benefits such as cost reduction and Process improvement. AI application in this field also comes
with challenges such as the high complexity and the data quality. As well as an impact of AI on the
human aspects within the SQA field which was also a topic that we covered and discussed based on
the outcomes of some of the reviewed papers that highlighted this aspect. The result of our review
unrevealed many research gaps that can be covered by future research, one gap that caught our
attention is the lack of research on the application of Generative AI and LLMs in SQA. In our future
work we will propose an architecture of an AI Agent that helps functional roles involved in SQA such
as the end users, QAs, Product Owners and Project Managers. The agent will bring a great value to
SQA as it will save time and reduce test effort.</p>
      <p>Athavale S, Balaraman V. Human behavioral modeling for enhanced software Project
Management. In: 7th International Conference on Software Engineering; 2013. p. 15–7.</p>
      <p>Viller, S., &amp; Sommerville, I. (2000). Ethnographically informed analysis for software
engineers. International Journal of Human-Computer Studies, 53(1), 169-196.</p>
      <p>Muhairat, M., et al. (2020). An Intelligent Recommender System Based on Association Rule
Analysis for Requirement Engineering. JUCS, Pensoft publishers.</p>
      <p>K. Hema Shankari Int. Journal of Engineering Research and Applications</p>
      <p>Brahmaleen Kaur Sidhu, et al. (2020): A machine learning approach to software model
refactoring, International Journal of Computers and Applications</p>
      <p>IEEE Std 829-2008, IEEE Standard for Software and System Test Documentation</p>
      <p>A. Worku, et al. (2023). Test Case Generation from Quality Attribute Scenarios Using Machine
Learning Approach.</p>
      <p>Omri, S., &amp; Sinz, C. (2021). Machine Learning Techniques for Software Quality Assurance: A
Survey. arXiv preprint arXiv:2104.14056.</p>
      <p>E. Sultanow et al. "Machine Learning based Static Code Analysis for Software Quality
Assurance," 2018 ICDIM, Berlin, Germany, 2018</p>
      <p>O.E. Emam, et al. Users Review’s on Software Defect Prediction Utilizing Machine Learning
methods. vol. 6, no 1, p. 34-41.</p>
      <p>Hayat, M. A., et al. Artificial Intelligence's Impact, Limitations, Challenges and Prospects in
Software Testing.</p>
      <p>« ISTQB® Certified Tester Acceptance Testing » Syllabus v1, 2019, [online]
https://www.istqb.org/certifications/acceptance-tester</p>
      <p>Antonelli, L., et al. (2023). User acceptance test for software development in the agricultural
domain using natural language processing. Journal of Decision Systems.</p>
      <p>Xie, T. (2013). "The synergy of human and artificial intelligence in software engineering,"
2013 2nd International Workshop on (RAISE), San Francisco, CA, USA</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Batarseh</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          <article-title>A et al</article-title>
          . (
          <year>2020</year>
          ).
          <article-title>The application of artificial intelligence in software engineering: a review challenging conventional wisdom</article-title>
          .
          <source>Data Democracy</source>
          ,
          <fpage>179</fpage>
          -
          <lpage>232</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <source>[2] The Top 5 Industries Hiring Software Engineers</source>
          (
          <year>2023</year>
          ) https://generalassemb.ly/blog/top-5
          <article-title>- industries-hiring-software-engineers/</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>«</surname>
            <given-names>ISTQB</given-names>
          </string-name>
          ® Certified Tester Foundation Level » Syllabus v4,
          <year>2023</year>
          , [online] Available: https://www.istqb.org/certifications/certified-tester
          <string-name>
            <surname>-</surname>
          </string-name>
          foundation-level
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Zhao</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Hu</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Gong</surname>
          </string-name>
          ,
          <source>J. Research on International Standardization of Software Quality and Software Testing</source>
          .
          <source>In Proceedings of the 2021 IEEE/ACIS 20th (ICIS Fall)</source>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Zhang</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sharma</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Koppe</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          (
          <year>2024</year>
          ).
          <source>Overcoming Test Debt and Advancing Software Sustainability with Automated Testing: A B2B Trading Platform Case Study.</source>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <surname>Buenen</surname>
            <given-names>M</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Natarajan</surname>
            <given-names>S</given-names>
          </string-name>
          .
          <source>World quality report 2023-2024</source>
          . Capgemini, Sogeti and Opentext
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>[7] IEEE 730:2014 Standard https://ieeexplore.ieee.org/document/6835311</mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8] SWEBOK,
          <year>03 2023</year>
          , [online] Available: https://waseda.app.box.com/v/ieee-cs
          <article-title>-swebok.</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>C. Y.</given-names>
            <surname>Laporte</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>April</surname>
          </string-name>
          , Software Quality Assurance, Wiley,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <article-title>ISO 9001 Quality Management System (QMS) standard</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Galin</surname>
            ,
            <given-names>D</given-names>
          </string-name>
          ,
          <source>Software Process Assurance Activities for External Participants</source>
          <year>2018</year>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>S.</given-names>
            <surname>Samoili</surname>
          </string-name>
          , et al.
          <year>2020</year>
          .
          <article-title>Defining artificial intelligence: Towards an operational definition and taxonomy of artificial intelligence</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>Barenkamp</surname>
          </string-name>
          , et al. (
          <year>2020</year>
          ).
          <article-title>Applications of AI in classical software engineering</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <surname>Kulkarni</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          , et al (
          <year>2017</year>
          ).
          <article-title>Integration of AI activities in software development processes and measuring effectiveness of integration</article-title>
          . IET Software
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>El</given-names>
            <surname>Khatib</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          et Al (
          <year>2021</year>
          )
          <article-title>Effects of Artificial Intelligence on Decision Making in Project Management</article-title>
          .
          <source>American Journal of Industrial and Business Management</source>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>Barcaui</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Monat</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          (
          <year>2023</year>
          ).
          <article-title>Who is better in project planning? Generative artificial intelligence or project managers</article-title>
          .
          <source>Project Leadership and Society</source>
          ,
          <volume>4</volume>
          ,
          <fpage>100101</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>Salehi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          (
          <year>2022</year>
          ).
          <article-title>Role of Artificial Intelligence on Agile Planning and Organizational Performance in the ICT Industry</article-title>
          .
          <source>Asian Journal of Economics</source>
          , Finance and Management.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>Nogueira</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          et al. (
          <year>2018</year>
          ).
          <article-title>Improving La Redoute's CI/CD Pipeline and DevOps Processes by Applying Machine Learning Techniques</article-title>
          .
          <source>In 2018 11th QUATIC</source>
          , IEEE.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>