0% found this document useful (0 votes)
44 views

Mohanraj Synthesis Paper

Uploaded by

api-718421167
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
44 views

Mohanraj Synthesis Paper

Uploaded by

api-718421167
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

Artificial Intelligence and Software

Development/Engineering: The

Relationship

Prithika Mohanraj

April 15, 2024

Intern/Mentor G/T

Dr. Melissa Kiehl


Abstract

In a world where AI is continuously growing, software developers and software engineers can

face strong implications as AI becomes more integrated into their field. In order to recognize

these implications to allow software developers and engineers to take action or worry about

their job stability, this paper will investigate the relationship between Artificial intelligence

(AI) and software engineering/development by identifying and analyzing the major impacts

that AI has on different aspects of software engineering/development such as developers,

programs/code, bugs, and companies. Using secondary research with interviews as well as a

meta-analysis, this research concluded the positive relationship AI has to software

engineering by evidently demonstrating its productivity boost to developers, bug detection

efficiency, and company process optimization, showing the great potential of positive growth

in software engineering and development as this field integrates more AI. This paper ends by

recommending the suggestion for software engineers/developers and companies to integrate

AI into their field from the newfound knowledge gained from this paper, thus improving

their occupational lives and company success in a multitude of ways.


Introduction

Do software engineers and developers worry about their future? Artificial Intelligence

is built on a foundation of codes and programs that are made by software

engineers/developers, a few of the many people who help enhance AI for society. As they

help provide the foundations for AI, AI impacts them just as much. Investigating the

complex relationship between AI and software engineers and developers can provide insight

of the impacts they have on one another. While some software developers/engineers may be

worried about the threat AI may pose to their jobs, AI can have a positive relationship with

different aspects of the software development/engineering field. The purpose of this paper is

to guide readers through the benefits AI brings to developers by boosting their productivity

and aiding in bug detection to improve the code, explore the benefits AI brings to companies

by helping to optimize their tasks, and introduce the potential threat software

engineers/developers may face due to the possibility of AI taking over. However, after

describing this issue, this paper will refute the claims by providing evidence-based research

to share why this should not be a worry to later analyze and conclude the positive relation AI

has to software engineering/development.

Background

Artificial Intelligence is a growing field in today’s technology-centered society. As

society continuously advances technologically with products such as iPhone’s, VR, etc.

Artificial Intelligence plays a key role in enhancing these products. Artificial Intelligence is

defined as “the capability of computer systems or algorithms to imitate intelligent human

1
behavior” (Merriam-Webster). Artificial Intelligence sprouted from the 1950s (Tableau). In

1950, Alan Turning, most famous for introducing AI, published his book “Computer

Machinery and Intelligence” in which he introduced the idea of computer AI to the public

(Tableau). From there, AI’s popularity grew as more and more programmers built

self-sufficient codes and AI models on computers such as the checkers game built by Arthur

Samuel (Tableau). Throughout the 60s and 70s, AI's success continued over the next few

decades. After the AI market collapsed from suffering financial setbacks, the so-called “AI

winter” during 1987-1993, AI came back in full speed with new “AI Agents” and “Artificial

General Intelligence” (Tableau). These agents are essentially new technologies and this

general intelligence is AI technology we now know today such as AI for marketing assistance

in big companies such as Twitter and Netflix, Siri, ChatGPT, etc. (Tableau). Through its rapid

and intense development over the past couple decades, AI has become more involved in daily

life than ever.

One of the core facets that make AI work is its programming. Behind the scenes of

Artificial Intelligence, there is a lot of code that goes into making this tool perform human

tasks such as speech recognition, summarizing information, etc. ("The Ultimate Guide,"). The

code serves as a set of instructions that these AI systems can read, follow, and execute to

perform the way they do. Without this set of code, these AI systems would simply be

stationary tools that would have no purpose other than to occupy space. Software engineers

and developers specialize in building these code or programs that AI-powered devices can

read, follow and execute (IBM). This code serves as the foundation of Artificial Intelligence

to ensure AI systems and physical AI technologies function correctly. Taking this into

2
account, it’s important to examine how AI gives back to software developers and engineers.

Meaning, looking at how AI impacts the software engineers and developers who code for it

in the first place. This research takes a look at aspects of the relationship between AI and

software engineering/development to see what AI does for those who provide its foundations.

Review of Literature

Artificial Intelligence (AI) has a positive relationship with software

development/engineering as it can help boost developer productivity. With the help and aid

of AI, developers can save time and efficiently code as they can now shift their focus and

priorities as AI helps accomplish simple and repetitive tasks. Stavridis has found that

“developers often find themselves struggling with time constraints and code quality” which

can make it difficult for a developer to be productive (Stavridis et al., 2023). However, these

issues will no longer prevail since AI can accomplish simple tasks, save time, and shift

priorities. According to Skygran, “AI will mean that routine and basic code writing will be

displaced and generated automatically. Consequently, manual programming and the roles of

coders and developers will move to creative and more sophisticated tasks” (Skrygan, 2023).

As AI takes care of these simple, repetitive tasks, developers have the ability to shift their

focus to more important tasks, increasing their overall efficacy.

To add onto this efficiency aid, without the help of AI, developers would spend long

hours doing tedious tasks. As with the case of Mr. Khan, a senior software developer himself,

he mentioned that it would usually take him eight-ten hours to complete a program, but

with the help of AI tools such as GitHub Copilot and ChatGPT, which automatically

3
generated code and code suggestions for him, programming the same project would only

take him two-to-three hours to complete, saving an immense amount of time of development

(B. Khan, personal communication, December 29, 2023). With this time saved, not only was

he able to focus on building other programs but AI gave him the freedom and opportunity to

do so as it helped him code the project in the first place, thus immensely boosting his

productivity. Meaning, he could deliver more projects to his clients with greater efficiency.

This underscores the positive relationship AI has to software development as it saves time

with code automation, which again, has the power to boost developer productivity .

In addition to AI being beneficial to software development through taking care of

simple tasks and allowing for a productivity boost through shifted focus, AI can help with

decision-making and managing and planning tasks which can save time and boost work-day

productivity for developers. A software development company has many moving parts that

need to be constantly overlooked for a smooth run of business. However, having limited

people or limited time to take care of all these duties can be stressful, demanding, and

incredibly time-consuming. Fortunately, AI can serve as a management tool that developers

and companies can use to plan and manage tasks. According to Barenkemp, AI aids in

planning tasks in terms of task assignment and human resource allocation which reduces the

complexity and time needed to go into planning what needs to be done which can

“maximize the team's performance” (Barenkamp et al., 2020). As AI saves time in planning

and managing tasks, this increases developer productivity and efficiency as extra time does

not need to go into task delegation or allocation. With this time saved by AI planning and

management tools and a clear schedule of tasks, developers can have a distinct idea of what

4
needs to be done and they can efficiently check their programming to-do’s to deliver

products faster with better quality, highlight how AI maintains a positive relationship with

software development/engineering in terms of optimizing management and therefore

contributing to developer productivity.

Not only can AI serve as a company and developer team task management assistant,

but it can serve as a personal task management tool for the developers themselves. Stavirdis

mentions that “As a collaborative entity, AI tools were found to effectively aid developers in

providing ongoing feedback at an efficient point of resource utilization" (Stavridis et el.,

2023). With constant feedback helping the developer improve their code, they can produce

higher quality code more efficiently. Overall, AI is beneficial to software development as it

can help boost developer productivity through task management and automated code

generation, both in which save time for the developer and allow him/her to focus on more

important tasks and efficiently do their job.

Another way in which AI demonstrates a positive relationship with software

development is automated bug detection to improve the code and enhance developer work.

Before discussing why AI automated bug detection can help improve the code and enhance

developer work, it’s vital to look at the how: How do AI automated bug detection systems

work? To provide a simple foundation, a bug is essentially an error in the program that can

cause the program to crash, not execute properly, display the incorrect information/output,

and cause many large-scale problems (Codepal). According to CodePal, it’s “ …important to

detect and fix software bugs because they can cause a wide range of issues, from minor

annoyances to serious security vulnerabilities. Bugs can also affect the performance and

5
reliability of software, leading to crashes, data loss, and other problems” (Codepal).

Essentially, no matter how big or small the bug is, it can cause serious and potentially

perilous issues if not resolved.

AI automated bug detection significantly helps detect bugs through pattern

identification better than manual bug detection. By continuously feeding the AI system with

training data, which is the data used to teach the AI algorithm to identify certain types of

bugs, AI systems can learn to recognize patterns of bugs and to efficiently and successfully

detect bugs for developers. There are two ways that this is possible. Haddad defines this

possibility through “anomaly detection, where the AI system learns to recognize normal

behavior patterns in the software and then identifies any deviations from those patterns.

Another approach is to use predictive analytics, where the AI system learns from historical

data to predict future errors and bugs” (Haddad, 2023). With these two approaches, AI can

help improve code and developers through automated bug detection. Overall, AI uses pattern

training data to learn about bugs in order to detect bugs (Barenkamp et al., 2020; Haddad,

2023; Codepal).

With background knowledge on the inner-workings of bugs, the beneficial impact of

automated bug-detection can now be understood. This AI bug detection can improve the

code as it debugs any errors the developer can not and it can also help any developer from

any level efficiently code . Before the use of AI automated bug-detection tools, developers

would use various manual techniques that would be tedious and time-consuming. For

example, “Developers typically detect software bugs through a combination of manual

testing, automated testing, and code review. They may also rely on bug reports from users or

6
other sources to identify and fix issues” (Codepal). Constant oversight and manual

administration of such code and bugs, protects the developer from causing serious problems

or issues to the project as a whole or towards themselves. With such benefits, AI contributes

to developers' code with quality and efficiency. Supported by Patil, “by leveraging machine

learning algorithms, AI tools can automatically detect and classify bugs, helping developers

identify and fix issues more efficiently. This automation … contributes to overall software

stability,” (Patil, 2023). As suggested by the evidence, this automation can enhance

development efficiency while coding since AI systems can detect bugs more efficiently and

quickly instead of developers spending long tedious hours manually detecting bugs,

highlighting the positive relationship between AI and software development.

Many cases of struggle have been shown prior to the detection of bugs. One such case

includes Mr. Khan. Mr. Khan had suffered with his own share of difficult bug resolution

issues. He described how bug-detection and resolution would take a while and it would be a

difficult time-consuming task whenever the solution was difficult to find. Mr. Khan and his

colleagues would work together with no prevail to resolve the bug. However, after putting

the issue into Chat-GPT, he reported that it immensely helped him resolve the issue quickly,

allowing him to efficiently code further after resolving the bug, supporting the idea that AI

gives solutions to difficult bugs (B. Khan, personal communication, December 29, 2023) .

Upholding the idea that AI aids with efficient coding in bug detection, this again ties with

the idea that AI has a positive relationship with software development as it specifically

improves the area of bugs within this field of various aspects.

7
Given the speed and efficiency of work that AI provides, it’s important to look at the

further impact of this that AI automated bug-detection software entails to developers. This

entailment comes in the form of productivity. Clearly, if developers are more efficient and

faster with their work, they are more productive. When AI is providing solutions to difficult

problems, this means that developers no longer need to take care of many bugs, allowing

them to be more productive as they can now shift their focus to more higher-priority tasks

that may be lingering. As said by Shtechman, “identifying and fixing bugs can be

time-consuming and labor-intensive. AI-powered bug detection tools can significantly reduce

this effort by automating the process and providing developers with precise insights on

where to focus their attention. This allows developers to allocate their time and resources to

more complex tasks” (Shtechman). Therefore, AI exemplifies the benefits it provides to

developers in this field of bug detection by boosting their efficiency and therefore

productivity. Overall, AI has a positive relationship with software development as it can

enhance the bug-detection aspect of this field through boosting efficiency, productivity, and

speed by analyzing patterns and providing solutions and insights.

Lastly, of many reasons, AI has a positive relationship with software development as it

can benefit companies by optimizing certain tasks and operations within the company. One

way that exemplifies this is how AI boosts the marketing sector of development companies.

AI relies primarily on data input and analysis in order to produce the output based on its

analysis. Similarly, marketing relies on gathering and analyzing customer data (such as

preferences) to maximize revenue for the company by addressing and catering to those

preferences, which in turn will yield higher customer satisfaction and more purchases to

8
boost revenue. When combining AI with marketing, “the ever-increasing amount of

consumer data available online, in big data systems or mobile devices, makes AI become an

important ally of marketing, as it is based on data analysis in almost every area of its

application” (Jarek & Mazurek, 2019). Essentially, AI can analyze large amounts of data

which tremendously aids in marketing as AI can deliver more useful conclusions that can

boost the marketing sector of a software company based on analyzed data, serving as a

powerful tool exemplifying why AI demonstrates this positive relationship it has with

software engineering through the marketing sector.

Along with boosting the marketing sector of a company, AI can automate repetitive

and simple tasks in the company, saving time by shifting the company’s focus to more

important objectives. As a company has many objectives and tasks to do daily, moving

quickly is a must. A company can easily fall behind if it isn’t organized and staying

consistently up to date on what to achieve both long-term and short-term. When a company

is done doing one task, there are easily plenty of other tasks left on the roster to complete.

With this extremely busy schedule, AI can save time and basic tasks by allowing a company

to shift its focus to more important tasks. With the help of AI, “ it allows companies to

develop better products faster while reducing costs associated with manual labor thus

allowing organizations to focus resources elsewhere” (Flatiron Software Co., 2023). As AI

systems take over basic repetitive tasks (as mentioned before with helping with develop

productivity), this allows a company overall to shift its priorities and save time since they no

longer have to worry about these simple tedious tasks and can keep the company workflow

going as they accomplish more with more resources available to them (since manual labor

9
will reduce company costs), overall highlighting the beneficial aspect of AI in company

productivity.

However, regardless of all the positive impacts AI brings to software development

highlighting its positive relationship, there was a fear that AI could take over the jobs of

software development, leading to continuous discouragement and cautiousness to take on a

job in this field. For example, “¨When code generation features … first came out, they were

initially met with skepticism. Developers saw that this technology could generate, test, and

run code and feared that it could make their jobs obsolete” (Gee, 2023). This fear led many

to look at the downsides of AI in software development, steering away from the immense

benefits it could bring. Interestingly, this fear of job replacement is completely untrue for

software developers.

Rather than being a replacement, AI serves as a powerful tool for software developers.

Software development has many facets beyond just coding for customers: understanding

customer needs, connecting business values with products, considering ethics in products,

creatively producing, collaborating with co-workers, and so much more (Sam, 2023). All of

which require actual software developers and not AI, proving how AI is simply an aid.

The positive relationship that AI has between itself and software

development/engineering doesn’t only benefit what’s mentioned: the code, the developers,

and the company. AI has a broader scope of impact far beyond just the field of software

development/engineering. As AI continuously benefits those who help enhance AI in the

first place, these people and companies can use these benefits to impact society. When AI

positively impacts developers, developers can build better apps, AI systems, websites, and

10
general programs for our society to use and benefit from. So not only is the field of software

engineering/development positively impacted, but society as well as technology continues to

become an increasingly integrated and beneficial part of everyone’s life.

Methods and Data Collection

This paper was conducted using a meta-analysis to investigate the relationship

between AI and software engineering/development. The research question this paper

answers is “What is the relationship between Artificial Intelligence and different aspects of

software engineering/software development?” and the proposed hypothesis was “Artificial

Intelligence is helpful for software engineering as shown in boosting the productivity of

software engineers/developers, aiding in bug-detection, and optimizing a software

engineering/development company.” Three main ideas were set forth to prove this

relationship in the hypothesis and thesis of this paper: AI aids in developer productivity, bug

detection efficiency, and company optimization. To address these claims, sources were

searched on Google where three research articles/journals were found in the searching period

using key terms from each main idea such as “AI developer productivity”, “AI bug detection”,

and “AI company help”. These sources, purposely found to each address one claim, were then

analyzed to effectively support these ideas as seen by Appendix A.

One source was a research article titled “AI: A Lightweight System for Tolerating

Concurrency Bugs” written by the authors Mingxing Zhang, Yongwei Wu, Shan Lu, Shanxiang

Qi, Jinglei Ren, and Weimin Zheng which sought to introduce an AI-automated bug-detection

solution that can both successfully run with minimal errors and help solve a wide range of bugs

11
(Zhang et al., 2020). The researchers proposed a method/tool to predict when certain errors may

occur even before they have occurred, and then they ran the AI-automated bug detection

program (with this integrated prediction system) against several programs to help detect any

errors along the way for the researchers to resolve (Zhang et al., 2020). After repeating this

multiple times with many different programs, the researchers customized the AI-automated bug

detection tool as necessary to maximize its success and efficiency (Zhang et al., 2020). With this

methodology, the researchers found that the AI-automated bug detection was able to efficiently

detect all the various types of bugs the researchers tested it against but in only these bug

situations (Zhang et al., 2020). Therefore, the limitations of this study were that it only

investigated 35 different testing scenarios with eight different bug patterns, meaning that the

effectiveness and diversity of solutions are limited to these 35 programs with these eight specific

bug patterns (Zhang et al., 2020). More programs would need to be tested against this tool to

scale its efficiency and success to a bigger impact (Zhang et al., 2020). There could also be a

potential situation of false errors where the program detected a bug when there wasn’t one

present (Zhang et al., 2020).

Another source was a research paper titled “Marketing and Artificial Intelligence”

written by Krystyna Jarek and Grzegorz Mazurek that sought to look at the implementations and

the scope/variety of involvement that AI had within the marketing sector (in general) and

investigate what areas of AI had its applications in marketing and how it was applied (Jarek &

Mazurek, 2019). Using a very simple meta-analysis that involved finding, validating, and

analyzing articles from marketing portals that talked about AI’s involvement in marketing, the

researchers found applications of AI voice, text, image, decision-making, and autonomous

12
processing techniques (Jarek & Mazurek, 2019). They also found that it helps with customer

satisfaction, time management, customized products, data analytics collection, etc. (Jarek &

Mazurek, 2019). However, a limitation within their research involves the fact that future research

is required to understand the full scope of benefits that AI brings to the marketing field because

there is still a gap of knowledge that time can only fill (Jarek & Mazurek, 2019).

The last source found was another research article titled “Applications of AI in classical

software engineering” written by Marco Barenkamp, Jonas Rebstadt, and Oliver Thomas that

sought to assess the risks, potentials, and opportunities that AI brings to the field of software

engineering, to determine AI’s overall implications/involvement/implementation in software

engineering, by looking at these aspects through a holistic system in the software engineering

field known as the software engineering life cycle model: planning, analysis, design,

implementation, testing and integration, and maintenance (Barenkamp et al., 2020). The

authors used a mixed methodology of a systematic review combined with an interview of five

software engineers to answer their paper (Barenkamp et al., 2020). In the systematic review,

they evaluated over 60 empirical studies published between 2010-2020 that contained

information about experiences with AI applications in each stage of the development life cycle

(Barenkamp et al., 2020). For the interviews, the researchers interviewed four men and one

woman, all within the age range of 29-37, studied Computer Science, have a basic understanding

of AI development, and are software engineers/developers who have built multiple projects

(Barenkamp et al., 2020). The researchers found many benefits that AI brought to each stage of

the life cycle such as saving time and money, boosting productivity and efficiency, promoting

creativity, and much more (Barenkamp et al., 2020). However, the researchers mentioned that

13
their systematic review couldn’t encompass all aspects that need to be analyzed of AI’s

implication in the software engineering field through the software life cycle (Barenkamp et al.,

2020). Since they only analyzed around 60 sources, in their opinion, their review was very

limited (Barenkamp et al., 2020). In their interview, they mentioned that only five software

engineers/developers were not nearly enough to gain enough insights (Barenkamp et al., 2020).

Results and Data Analysis

Provided with the basic synopsis of each source, it is now reasonable to delve into

how this analysis fully supports this research paper. Firstly, the main idea that AI has a

positive relationship to software engineering/development through boosting developer

productivity is supported by the source titled “Applications of AI in classical software

engineering.” As seen by Appendix A, this source clearly demonstrated the positive impacts AI

has with software engineering such as allowing for time to be saved as AI can help with task

management, task planning, identifying issues, debugging, etc. (Barenkamp et al., 2020).

Overall, it shows that AI can take over these simple tasks which allows developers to be more

creative, efficiently spend their time on other tasks, etc., evidently supporting the secondary

research done. With all of these benefits AI brings, this source clearly supports the paper that AI

has a positive relationship with software engineering/development in this way of helping with

developer productivity, the first claim/main idea.

The second main idea regarding AI aiding in bug detection is supported by the source

titled “AI: A Lightweight System for Tolerating Concurrency Bugs”. As seen by Appendix A,

AI solutions with these bugs are faster (Zhang et al., 2020). Thus, it can be deduced that these

14
AI bug detection tools increase the efficiency of bug detection. As AI continues to help aid

developers by quickly identifying bugs, it allows them to resolve these bugs quickly as well,

saving a large amount of time overall and therefore contributing to the positive relationship

and impact AI has on software engineering and development by increasing bug detection

and resolution efficiency, correlating with findings found in the secondary research.

Thirdly, the last main idea that AI has a positive relationship with software

development/engineering through optimizing a company's task is supported by the source

regarding AI’s implication in marketing: “Marketing and Artificial Intelligence.” As seen by

Appendix A, AI can allow marketing sectors of companies to cut back on time consuming

activities, optimizing overall company performance as more creativity is promoted with the extra

time gained (Jarek & Mazurek, 2019). With this boosted creativity and time, the marketing

sector can advance to gain more customers as AI helps deliver more specialized products, collect

more marketing analytics, and overall benefit the company. As this paper covered AI in

marketing sectors in general, these benefits can be applied to marketing sectors of software

development/engineering companies. By utilizing all the benefits AI brings to a marketing sector

of a company aforementioned provided by Appendix A, software development and engineering

companies can immensely optimize existing processes to reap great rewards in terms of profits,

customer satisfaction, product output, etc., supporting the literature review. All of this combined

allows for a positive impact of AI to software development and therefore contributes to the

positive relationship between these variables.

Generally speaking, there is an overarching theme of positive impact and helpfulness

from AI in different aspects of software development/engineering whether it be bugs, developers,

15
or companies as seen from Appendix A, even though each sector of software

development/engineering reaps their own unique benefits from AI. This analysis distinctly

shows that AI is being used to enhance existing processes in bug detection, development, and

company marketing techniques, not take over: It is only serving as a tool/accessory to aid

software development/engineering.

Discussion and Conclusion

While the meta-analysis yielded many insightful findings that fully supported the

hypothesis, thesis, and research question of this paper, there were many limitations to this

analysis. This meta-analysis only involved three sources, which is not nearly enough for a

well-supported solid analysis. Additionally, there was a selection bias in these sources, The

sources were chosen based on if they seemingly would support the paper. There was not

much of a broad perspective while doing this source search that could’ve been improved if

different perspectives were analyzed as well, such as negative impacts of AI to software

engineering/development. This analysis also involves three different sources each covering

their own three unique topics of AI enhancement. When comparing these sources to each

other to produce valuable insights, there wasn’t an “apples-to-apples” comparison as each of

these sources’ scopes were different from each other. The insights gained were simply broad

generalizations. The last limitation mentioned here, among many, will be the fact that the

language for the “AI: A Lightweight System for Tolerating Concurrency Bug”' source was far

beyond the academic level for a highschool junior, the researcher’s academic level. Therefore,

some assumptions had to be made within what the paper is conveying that could’ve

16
impacted the overall analysis of this source as the assumptions could’ve been misleading,

biased, or simply incorrect.

To better this meta-analysis, it should incorporate more sources with various different

perspectives to answer the research question in this paper. Future studies should focus on

the opposite end of the spectrum: AI negatively impacting aspects of software development.

This meta-analysis covered the positive benefits AI brings, but this bias does not cover the

answer to the research question since AI has an equal potential to damage (which should be

considered to properly assess the answer to this paper). Additionally, another researcher can

make sure to choose similar sources for a meta-analysis for this paper to allow for a

standardized comparison. By incorporating these improvements to a new meta-analysis of

gathering sources and analyzing/identifying connections within them, this research can be

better supported or refuted. With the findings and analysis in this paper, it is clear that the

hypothesis “Artificial Intelligence is helpful for software engineering as shown in boosting

the productivity of software engineers/developers, aiding in bug-detection, and optimizing a

software engineering/development company” is fully supported, evidently answering the

question “What is the relationship between Artificial Intelligence and different aspects of

software engineering/software development?”

These findings do not just end within this research paper however. With this new

knowledge, software engineers and companies should incorporate more AI tools into their

field as it can immensely help them both boost their company’s profit, customer satisfaction,

etc., it can help the employees (software engineers) boost their productivity, efficiency etc.,

and it can help improve the quality of the code and bug detection efficiency. However, tt’s

17
important to keep in mind that with the growing integration of AI, as these engineers,

developers, and companies incorporate AI into their jobs, they must learn new skills, seek

new creative endeavors, and improve their existing work ethic to effectively utilize AI as a

resource and not overly depend on it.

18
References

Barenkamp, M., Rebstadt, J., & Thomas, O. (2020). Applications of AI in classical software

engineering. AI Perspectives, 2(1). https://doi.org/10.1186/s42467-020-00005-4

CodePal. Bug detection.

https://codepal.ai/bug-detector#qna_how_can_ai_be_used_to_detect_software_bugs

Flatiron Software Co. (2023, August 14). What is the role of Artificial Intelligence in business software

development? LinkedIn.

https://www.linkedin.com/pulse/what-role-artificial-intelligence-business-software-d

evelopment/

Gee, T. (2023, July 24). How AI will impact the developer experience.

https://go.gale.com/ps/retrieve.do?tabID=T003&resultListType=RESULT_LIST&search

ResultsType=SingleTab&retrievalId=16200206-886c-4a2b-9928-1990ec2f0b6c&hitCount=

8&searchType=AdvancedSearchForm&currentPosition=4&docId=GALE%7CA758258593

&docType=Article&sort=Re.

Haddad, M. (2023, March 29). How AI can detect software bugs and root cause analysis.

https://blog.railtown.ai/blog-posts/how-ai-can-detect-software-bugs-and-root-cause-

analysis

IBM. What is software development? https://www.ibm.com/topics/software-development

Jarek K. & Mazurek G. (2019, June). Marketing and Artificial Intelligence. Central European

Business Review, 8(2), 46-55.

https://www.researchgate.net/publication/333671063_Marketing_and_Artificial_Intellige

nce

19
Khan, B. (2023, December 29). Personal Interview.

Merriam-Webster. (n.d.). Artificial Intelligence. In Merriam-Webster.com dictionary.

https://www.merriam-webster.com/dictionary/artificial%20intelligence

Patil, R.V. (2023, July 19). From code generation to bug detection: The role of AI tools in

software.

https://medium.com/@rushi11081/from-code-generation-to-bug-detection-the-role-o

f-ai-tools-in-software-fbdebbfd7007

Sam. [Keep On Coding]. (2023, April 20). Why AI won't replace programmers [Video]. YouTube.

https://www.youtube.com/watch?v=X6lMJ1kv9LY

Shtechman, I. (May 6). Enhancing code quality with AI: The power of bug detection.

https://medium.com/aimonks/enhancing-code-quality-with-ai-the-power-of-bug

-detection-ea734c63afa9

Skrygan, K. (2023, October 2). What does generative AI mean for software companies?

Retrieved from

https://go.gale.com/ps/retrieve.do?tabID=T003&resultListType=RESULT_LIST&search

ResultsType=SingleTab&retrievalId=4ff314ab-762a-483d-9e2f-ca1ae140ba14&hitCount=

8113&searchType=BasicSearchForm&currentPosition=2&docId=GALE%7CA767399608&

docType=Article&sort=Relevance&contentSegment=ZGPP-MOD1&prodId=GPS&pageNu

m=1&contentSet=GALE%7CA767399608&searchId=R7&userGroupName=hcpub_hebron

&inPS=true

20
Stavridis, A., Drugge, A. (2023). The rise of intelligent system development. A qualitative study

of developers’ views on AI in software development.

https://umu.diva-portal.org/smash/get/diva2:1759153/FULLTEXT01.pdf

Tableau. (n.d.). What is the history of artificial intelligence (AI)?

https://www.tableau.com/data-insights/ai/history#:~:text=Birth%20of%20AI%3A%2019

50%2D1956&text=into%20popular%20use.-,Dates%20of%20note%3A,ever%20learn%

20the%20game%20independently

Tableau. (n.d.). The ultimate guide to Artificial Intelligence (AI): Definition, how it works, examples,

history, & more.

https://www.tableau.com/data-insights/ai/what-is#how-it-works

Zhang, M., Wu, Y., Shan, L., Qi, S., Ren, J., & Zheng, W. (2020). AI: A lightweight system for

tolerating concurrency bugs.

https://people.cs.uchicago.edu/~shanlu/paper/fse2014.pdf

21
Appendix A

Figure 1: Meta-Analysis Chart

22
23

You might also like