Requirements Engineering Challenges and Techniques in Building
Chatbots
Geovana R. S. Silva
a
and Edna Dias Canedo
b
Department of Computer Science, University of Bras
´
ılia (UnB), P.O. Box 4466, Bras
´
ılia–DF, Zip code 70910-900, Brazil
Keywords:
Chatbot, Conversational Agents, Software Engineering, Requirements Engineering, Requirements Elicitation.
Abstract:
The proper execution of requirements engineering processes can be decisive for the success of software devel-
opment and, for chatbots, it is no different. Chatbots have been gaining a lot of space, especially in customer
service. Requirements engineering processes for chatbots are as hard to perform as for any other machine-
learning system and the conversational nature makes it even harder. Taking this into consideration, in this
work we survey chatbot practitioners to unveil the requirements elicitation and documentation techniques they
have been using in the industry, besides the challenges they face while going through this process. Responses
show that elicitation techniques are not much far from techniques used in other fields, but for documentation
techniques that are new forms of documentation such as conversation flows. Moreover, meeting stakeholder’s
requirements and managing information exchange are their biggest challenges in eliciting and documenting
chatbot requirements.
1 INTRODUCTION
AI-based systems are crossing the academic barrier to
be increasingly used due to two major factors: the in-
creasing availability of big data and hardware acceler-
ators (Soni et al., 2019). The automation capability of
AI services is being especially used in customer ser-
vices to streamline user service (Khan and Das, 2018)
and are increasingly being better accepted by users
(Xu et al., 2020). Chatbots are one example of how
AI systems are being used in customer services.
Chatbots are intelligent agents powered by ma-
chine learning algorithms to mimic human behav-
ior, and users tend to recur to them because of the
ease, speed, and convenience of chatting with a chat-
bot (Brandtzaeg and Følstad, 2017). Since technol-
ogy geared towards conversational agents is becom-
ing more trustworthy for commercial use, companies
have been using chatbots as part of their customer ser-
vice workforce. Companies recur to this kind of tech-
nology for the following main reasons(Zhang et al.,
2021): improve customer service experience, reduce
cost and resource requirements, and drive digitaliza-
tion.
Requirements engineering processes for real-
a
https://orcid.org/0000-0002-0304-0804
b
https://orcid.org/0000-0002-2159-339X
world AI-based systems require different approaches
than traditional engineering because of their data-
driven nature (Kostova et al., 2020). Specifically for
machine-learning (ML) systems, requirements engi-
neering processes are challenged by the lack of ex-
plainability of ML systems, difficulties in insuring
freedom of discrimination, legal constraints over data,
and eliciting data requirements (Vogelsang and Borg,
2019).
These challenges are also faced by chatbot prac-
titioners, in addition to the difficulties of meeting
requirements related to the conversational nature of
chatbots. Although chatbots share the responsibility
to engage in a conversation, they can become very dif-
ferent from one another to meet the needs of the brand
they represent (Shevat, 2017). This reflects on re-
quirements, which must be of good quality to achieve
the business goals with the chatbot. Traditionally,
software development teams go from requirements
to features. In the context of conversational agents,
teams go from requirements to meaningful dialogues.
The most valuable delivery for chatbot applications is
conversational flows that solve a user’s doubt or prob-
lem. In fact, if requirements focus firstly on conversa-
tion experience, technological architecture will be de-
veloped to fit the conversation flow and not the other
way around.
In this paper, we have conducted an online-based
180
Silva, G. and Canedo, E.
Requirements Engineering Challenges and Techniques in Building Chatbots.
DOI: 10.5220/0010801800003116
In Proceedings of the 14th International Conference on Agents and Artificial Intelligence (ICAART 2022) - Volume 1, pages 180-187
ISBN: 978-989-758-547-0; ISSN: 2184-433X
Copyright
c
2022 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
survey with chatbot practitioners to discover the main
tools and techniques used in requirements engineer-
ing processes in building chatbots. We are also in-
terested in getting to know how practitioners perceive
requirements processes in this context and what chal-
lenges they face.
2 BACKGROUND
The success of software highly depends on meet-
ing the imposed requirements of stakeholders, which
also depends on a good definition of requirements.
For that to happen, software engineering comprises
requirements engineering. According to (Pressman,
2009), requirements engineering is the spectrum of
tasks and techniques that lead to a clear understanding
of the requirements, building a bridge to design and
construction. There are four main activities in the re-
quirements engineering process (Sommerville, 2010):
1. Feasibility study: investigate if the proposed sys-
tem is going to be cost-effective and the result deter-
mines if the process will continue to the next steps;
2. Elicitation and analysis: work with stakeholders to
gather information and use a set of techniques to dis-
cover requirements; 3. Specification: the process of
writing down requirements in a structured document;
and 4. Validation: checks the requirements for real-
ism, consistency, and completeness.
In this work, we focus on elicitation and speci-
fication. Elicitation activities are tied to clients and
customers because they hold valuable information for
discovering requirements. Specification activities are
tied to lots of documents that formalize and model de-
cisions of previous activities. We are especially inter-
ested in the techniques used by chatbot practitioners
when executing these activities besides the challenges
they face when doing it.
2.1 Requirements for Chatbots
Chatbot practitioners face additional challenges in
chatbot requirements engineering processes since
chatbots “have specific UX requirements related to
the way the information is presented, the mean of in-
teraction, whether its text, buttons or speech” (Fadhil,
2018). Another challenge of chatbots is designing for
open-ended conversations (Brandtzaeg and Følstad,
2018) because conversational requirements must be
broad enough to cover all conversation possibilities.
Therefore, for this context, there are two new classes
of requirements: conversation and data, which are not
seen in traditional requirements engineering. Defin-
ing data requirements includes defining what the AI
model should detect, such as age groups and language
(Akkiraju et al., 2020), and, if relying on open-source
data, the filtering criteria for selecting high-quality
data (Vogelsang and Borg, 2019). Conversational re-
quirements are all about defining how it communi-
cates with users, including its persona, formality of
language, visual aids, and conversation shortcuts.
Having well-defined conversational requirements
is important because the customer’s quality percep-
tions are increased if the brand’s language is simi-
lar to the customer’s expectation (Jakic et al., 2017).
Therefore, in the development of chatbots, conversa-
tions must be seen as the object of design (Følstad
and Brandtzæg, 2017). Moreover, diving into know-
ing your target audience will dictate how your chat-
bot communicates, since ”younger users may be par-
ticularly sensitive to playful and emotionally engag-
ing chatbots, whereas older users may be preoccu-
pied with the efficiency and effectiveness of chatbots”
(Følstad and Brandtzaeg, 2020).
Another important aspect to consider in the elici-
tation process is if there are existing sources of data
with interactions between the service provider and
potential chatbot users, which can be phone calls,
emails, chat, social media, and customer self-service
(Singh et al., 2019). These sources already contain
some requirements for conversation content, espe-
cially if the chatbot is being developed to replace one
or more of these traditional channels of interaction.
Missing these specific classes of requirements
hurt the chatbot’s inclusiveness capacity and cause
unimaginable damage to brand images. One exam-
ple is Microsoft’s Tay Bot released in 2016, which
started to post offensive tweets when learning from
user’s tweets (Neff and Nagy, 2016). In a research
led by The Washington Post, it was revealed that
Amazon’s and Google’s smart speakers work best for
white, highly educated, upper-middle-class Ameri-
cans. (Harwell, 2018). These failures are not uncom-
mon and because of that conversation design has been
highlighted by big companies as an important part of
chatbot development. Google released its own guide
for conversation design (Google, 2021), as well as
IBM (IBM, 2021) and Amazon (Amazon, 2021). All
of these guides put the user at the center of develop-
ment. Google’s guide has a specific section for gath-
ering requirements that is entirely focused on thinking
as the end-users and defining who are they, what their
needs are, their context, and their journeys through
conversations.
Requirements Engineering Challenges and Techniques in Building Chatbots
181
2.2 Related Works
To our knowledge, there are no works addressing
specifically requirements engineering processes in
building chatbots. However, there are works ap-
proaching challenges and techniques in a broader
scope that includes chatbots, such as artificial intelli-
gence and machine learning. In (Vogelsang and Borg,
2019), four data scientists are interviewed to under-
stand how machine learning experts approach elicita-
tion, specification, and validation of requirements and
expectations. The results show that specific character-
istics of machine learning trigger changes in require-
ments engineering processes, such as new kinds of re-
quirements and the tailoring of traditional approaches.
The work of (Habibullah and Horkoff, 2021) fo-
cus on non-functional requirements of machine learn-
ing systems. They interview ten engineer practition-
ers to understand what are the challenges of dealing
with non-functional requirements for machine learn-
ing in the industry. In the light of their results, they
highlight how difficult it is to gather quality attributes
for machine learning systems.
(Mendonc¸a et al., 2021) conducted a literature re-
view of requirements engineering processes of agent-
oriented software engineering. They focus on dis-
covering how requirements engineering was adapted
for the development of multi-agent systems. (Be-
lani et al., 2019) identified the requirements engi-
neering challenges when applied to the development
of AI-based complex systems. After gathering chal-
lenges presented in related works in the fields of arti-
ficial intelligence and software engineering, they pro-
pose the RE4AI taxonomy that outlines the challenges
posed to requirements engineering towards building
AI-based complex systems.
In (Wilhjelm and Younis, 2020), a systematic
process is developed for eliciting security require-
ments of machine learning-based systems. (Ishikawa
and Matsuno, 2020) discusses the impact of machine
learning uncertainty on existing requirements engi-
neering methods such as goal-oriented requirements
elicitation.
3 RESEARCH STRATEGY
In this work, we have investigated how requirements
engineering processes are held in the industry of chat-
bots by surveying Brazilian practitioners. This survey
intends to answer the following research questions:
RQ.1 What are the techniques and tools used by prac-
titioners to elicit and document chatbot require-
ments?
RQ.2 Are the existing tools and techniques of re-
quirements engineering suitable for chatbot de-
velopment?
RQ.3 How important do practitioners perceive re-
quirements engineering processes in the con-
text of chatbots?
RQ.4 What challenges do practitioners encounter
when eliciting and documenting chatbot re-
quirements?
In summary, the research questions are focused on
discovering practices and challenges for eliciting and
document chatbot requirements. We hypothesize that
results will differ from requirements engineering pro-
cesses from software in general because of the con-
versational nature of chatbots, which may require dif-
ferent approaches. For answering research questions,
we made a survey of 12 questions to share with chat-
bot practitioners which are transcribed and have their
results collected in Section 4.
The survey was online-based and the data collec-
tion followed two approaches. The first one was to
share the survey link through professional networks
and rely on person-to-person disclosure. Since we
were looking for practitioners of a niche, we did not
expect to collect many responses from this first ap-
proach. After this first attempt, we proceeded to find
these practitioners through professional profiles that
revealed their chatbot background and invited them to
answer our survey. We tried to invite Brazilian practi-
tioners from different companies and experiences, to
gather broader responses.
4 SURVEY RESPONSES
The survey received a total of 22 responses from chat-
bot practitioners of different backgrounds. In the next
paragraphs, we show results from each question.
Q1. What is the nature of your company? Re-
spondents could choose between ”Public” or ”Pri-
vate”. 17 (77.3%) were from private companies
whereas only 5 (22.7%) were from the public sec-
tor. The small number of practitioners from the public
sector seems to be circumstantial since chatbots have
been widely used in the public sector (Petriv et al.,
2019; Adnan et al., 2020; Sun and Medaglia, 2019).
Q2. Which role have you assumed in chatbot
projects? Respondents had a set of chatbot-related
roles to choose from or the ”other” option for the ones
that did fit one of them. Developers represented most
of the respondents (63.6%), followed by tech leaders
(18.2%) and conversation designers (13.6%). One re-
spondent marked the ”other” option and justified in
ICAART 2022 - 14th International Conference on Agents and Artificial Intelligence
182
the open field of Q12 that he assumed many of the
listed roles for similar periods.
Q3. What software development methodology
does your chatbot development team use? The ma-
jority of respondents work with the Scrum method-
ology (68.2%), followed by Kanban (18.2%) and Ag-
ile(9.1%). One respondent marked ”We have not used
a structured methodology”.
Q4. What requirements elicitation techniques
have your team used to develop chatbots? Figure
1 shows all the techniques marked by practitioners.
There were predefined options for them to mark but
they could add new options if there were techniques
that they have used but were not listed. Brainstorming
is by far the most used technique by chatbot practi-
tioners (68.2%).
Figure 1: Elicitation techniques used by chatbot practition-
ers.
Q5. What requirements documentation tech-
niques have your team used to develop chatbots?
Figure 2 shows all the techniques marked by practi-
tioners. In accordance with the previous questions,
respondents could choose from predefined options or
list new ones. The interesting result is that chatbot re-
quirements documentation is mostly done with con-
versation flows (81.8%), which is a particular option
for the field we are surveying in contrast with other
software fields. In contrast, user stories are widely
used in diverse software fields and are also used by
59.1% of chatbot practitioners. Moreover, user stories
are not unfamiliar for agent-driven software architec-
tures as seen in (Wautelet et al., 2016).
Q6. Which tools have your team used to elicit
or document chatbot requirements? Since there are
Figure 2: Documentation techniques used by chatbot prac-
titioners.
Table 1: Tools that chatbot practitioners have used in elicit-
ing and documenting chatbot requirements.
Tool Description Citations
Bizagi Tool for modeling business process
maps with structured language.
2
Draw.io Online diagram software with support
for various notations and free model-
ing.
3
Figma Online UI tool to create, collaborate,
prototype, and handoff.
5
Google
Forms
Helps in the creation of questionnaires
to do surveys and collect data.
1
LucidChart Online diagram software with support
for various notations and free model-
ing.
1
Microsoft
Word
Program for creating natural language
documents, commonly known as word
processor.
2
Microsoft
Excel
Program for organizing and formatting
spreadsheets with mathematical formu-
las and computerization.
3
Miro Digital whiteboard for distributed
teams collaboration.
4
Whimsical Visual workspace for combining
flowcharts, wireframes, sticky notes,
mind maps and documents.
1
XMind Tool dedicated exclusively to creating
mind maps.
2
countless tools for supporting the requirements elici-
tation and documentation, we opted for an open and
optional field. We gathered 16 responses that exposed
multiple tools used in this process. Table 1 shows
tools cited by respondents. They are all very gen-
eralist tools that can support many of the techniques
listed, even for informal and intermediary documen-
tation.
Q7. In the requirements listing of your chatbot
project, were there non-functional requirements?
Although 68.24% of practitioners responded ”Yes”, it
is particularly alarming that more than 30% did not
have non-functional requirements considering chat-
Requirements Engineering Challenges and Techniques in Building Chatbots
183
bots require specific usability and user-experience
standards to carry on meaningful conversations.
Q8. Do you think it is necessary to have specific
approaches for eliciting and documenting chatbot
requirements? Previous questions received scattered
responses, especially Q6. This question’s results re-
inforce the need for adaptation in eliciting and doc-
umenting chatbot requirements since 77.3% marked
”In part, because existing techniques, processes and
tools need to be adapted to the context of chatbots”.
13.6% responded ”Yes” and 9.1% responded ”No”.
Q9. Do you think that requirements elicitation
and documentation processes for chatbots are ne-
glected? Responses were well distributed among op-
tions as shown by Figure 3, probably because their
companies treat requirements differently. However,
responses are more concentrated on the negative spec-
trum.
Figure 3: Do you think that requirements elicitation and
documentation processes for chatbots are neglected?
Q10. Do you think the non-functional require-
ments for chatbots are neglected? In comparison
with Q9, practitioners think that non-functional re-
quirements are more neglected than the processes
in general since responses were: ”Very neglected”
(36.4%), ”Moderately neglected” (50.0%), ”Slightly
neglected” (13.6%), and ”Not neglected” (0%).
Q11. How important is it for you to have a
well-structured requirements engineering process
for chatbot development? Figure 4 shows the dis-
tribution of responses. Although the previous ques-
tions seems to indicate that chatbot requirements are
not being treated as they should, 77.3% of the re-
spondents see well-structured requirements engineer-
ing processes as ”Very important”. The one respon-
dent that marked ”Not important” is a conversation
designer. In (Franch et al., 2020), designers are one of
the roles who are less favorable towards requirements
engineering research, which can corroborate the re-
sponse from this respondent, although the other two
designers considered it ”Very important”.
Q12. Which challenges have you or your team
faced in eliciting or documenting the requirements
of a chatbot? This question was optional, open, and
received 12 responses. Since open responses leave
Figure 4: How important is it for you to have a well-
structured requirements engineering process for chatbot de-
velopment?
space for embracing a lot of subjects, we analyzed
responses and classified the challenges practitioners
cited directly or indirectly in their responses. Table 2
shows this classification.
5 DISCUSSION
When grouping responses by the organization’s na-
ture or the practitioner’s role, we did not observe any
particular phenomenon and responses were very di-
verse within these groups. This may indicate that
techniques and processes are probably more linked to
the specific processes of each company, either public
or private, than roles or the organization’s nature.
Regarding the elicitation techniques used by prac-
titioners, results are not very different from the tech-
niques used in other fields of requirements engineer-
ing. Brainstorming, interview, and prototyping ap-
peared as at the top 5 of most used techniques in the
context of startups (Rafiq et al., 2017), mobile ap-
plications (Dar et al., 2018), IT ukranian profession-
als (Gobov and Huchenko, 2020), Internet of Things
(Lim et al., 2018) and software development in gen-
eral (Alflen and Prado, 2021).
However, we found some differences in our find-
ings compared with the top techniques in other fields.
First, some of our documentation techniques ap-
peared as elicitation techniques, which were user sto-
ries and use cases. In works in which this happened,
they appeared in the top 5 techniques as well. More-
over, interviews lead most used techniques in all of
the 5 works, on the other hand, brainstorming is the
most popular technique among chatbot practitioners.
In relation to documentation techniques, user
stories are the most used documentation technique
in Agile projects (Jarzbowicz and Połocka, 2017;
Jarzbowicz and Sitko, 2019). Similarly, as most of
our respondents work with Scrum, an Agile method-
ology, user stories appeared as the second most used
technique among them. What stands out in this part
of our results is that conversation flows are the most
ICAART 2022 - 14th International Conference on Agents and Artificial Intelligence
184
Table 2: Challenges in eliciting or documenting chatbot re-
quirements that appeared in practitioners’ responses.
Challenge Transcribed excerpts from re-
sponses
Difficulties in meet-
ing stakeholders’
needs
”Understanding what the
client/user wants [...]”
”Make a chatbot for the end-user
which serves the end-user [...]”
”The transfer of information be-
tween the client and the end user is
a big challenge [...]”
”Problem prioritization, in terms of
aligning stakeholders’ expectations
with actual stakeholders’ needs
[...]”
”Clients’ objectivity with what they
want from the bot [...]”
”In general, it’s the client’s under-
standing. It takes me 1 month to
make a bot, and the client takes 2
years to get what he really wanted
[...]”
”Sincerity of users [when testing]
[...]”
Poorly documented
requirements
”Always rework for requirements
that were not well defined [...]”
”Often when the area responsible
for eliciting requirements does not
have programming knowledge, they
miss many important requirements
[...] poorly defined acceptance cri-
teria, when they exist.
Business manage-
ment
”POs [Product Owners] that do not
actively participate in the process,
large companies, areas do not talk.
”Delay in clients’ responses and
delay in receiving project details”
Midway changes in
requirements
”[...] requirements elicitation
starts in a way and, when de-
velopment starts, there are always
changes.
”[...] difficulties caused by clients
when changing their minds along
the way”
”[...][poorly defined requirements]
end up generating scope change in
the middle of development”
Requirements impos-
sible to be techni-
cally implemented
”[...] is a big challenge, along with
the limitations that we find on plat-
forms”
”[...]Lack of test masks provided by
the client. Lack of APIs needed for
the feature the client wants to im-
plement in the bot.
Lack of tools for re-
quirements engineer-
ing
”Lack of proper documentation
tools [...]”
Going from require-
ments to chatbots
”Create the context in which the bot
would fit and create characters for
it.
used documentation technique. Although this is not
alarming considering the nature of chatbots, it is es-
sentially a new technique in requirements engineer-
ing. Also, whereas use cases and scenarios are pop-
ular in other agile contexts (Jarzbowicz and Połocka,
2017; Jarzbowicz and Sitko, 2019), they are not very
used for chatbots.
The fact that chatbot requirements are often doc-
umented as conversation flows may justify why re-
spondents used a lot of tools in requirements elicita-
tion and documentation since there is no established
way of documenting conversation flows besides pro-
totyping them. Tools cited by practitioners are much
more related to elicitation than documentation. This
fact is supported by the responses of Q8, in which
most of the practitioners affirmed the need to adapt
practices to elicit and document chatbot requirements.
Using inadequate tools for documenting requirements
can especially impair the traceability of requirements,
which are critical for the transparency of AI systems
(Mora-Cantallops et al., 2021).
The importance of proper documentation tools
for requirements is reinforced by one respondent in
the open field when questioned about the challenges
of chatbot requirements elicitation and documenta-
tion. This importance is inferred from the responses
of three respondents that have suffered with midway
changes in requirements which could be more man-
ageable if there were proper tools to keep require-
ments traceability, especially in the case of docu-
menting them as conversation flows. Moreover, the
challenges reported by respondents focus heavily on
human processes and information exchange, which
are not very distant from broader contexts, such as
agile development. The key challenges in agile re-
quirements engineering are technical dependencies
among teams; coordinate decisions; not lose sight of
the big picture; continuous management of require-
ments; work out requirements in cooperation with
(end users), and involve stakeholders throughout the
whole development process (Sch
¨
on et al., 2017).
According to our respondents, the biggest chal-
lenge in eliciting requirements is meeting stake-
holder’s needs. This is a challenge in software de-
velopment in general, but it is an even bigger prob-
lem in chatbot development since software qualities
in conversation agents are much harder to achieve.
Traditional software has to guarantee functionality,
usability, reliability, performance, and supportability,
whereas chatbots have to guarantee these quality char-
acteristics plus proactivity, conscientiousness, com-
municability, emotional intelligence, (Chaves and
Gerosa, 2021) and other human attributes which are
harder to achieve. Lastly, the dispersion in responses
Requirements Engineering Challenges and Techniques in Building Chatbots
185
of Q7, Q9, Q10, and Q11 show that requirements gen-
erally receive different treatment and are given differ-
ent importance depending on the team working in it.
However, since responses are more concentrated in
the negative spectrum of options, they reveal that re-
quirements are probably being neglected by chatbot
teams, especially non-functional requirements.
6 THREATS TO VALIDITY
The internal validity of this work is threatened mostly
by online-based and unsupervised nature of our sur-
vey since we did not have control over the participants
when they answering our survey, although we made
our contact available for them in case there were any
doubts. On the other hand, participants were not pres-
sured to respond by being unsupervised and if they
were not compromised in responding the survey they
could quit at any time, which makes us believe that
the ones that finished responding provided meaning-
ful responses. The external validity is threatened by
fact that our survey included only Brazilian practi-
tioners and we could not guarantee that we shared it
with professionals of all contexts. Nevertheless, we
did reach professionals from many companies and re-
gions from the country albeit they were not obligated
to respond the survey since it was only an invitation
and we guarantee anonymity in the survey.
7 CONCLUSION
In this work, we surveyed chatbot practitioners to dis-
cover what are the techniques and tools they have
used and the challenges they face in chatbot require-
ments elicitation and documentation. We also ques-
tioned them about the relevance of requirements in
their projects. Our main contribution is to reveal diffi-
culties and the need for adaptation in requirements en-
gineering processes to be addressed in future works.
After gathering results we compared them with
the techniques and challenges faced in other software
development contexts. In general, the top used tech-
niques are the same used in other software fields.
However, interviews are the most used method in
other contexts, whereas brainstorming is the most
used method by chatbot practitioners. In the context
of our research, the fact that stands out is that con-
versation flows have emerged as a new way of docu-
menting requirements and practitioners are negatively
impacted by the lack of tools for this specific purpose.
Lastly, the challenges faced in eliciting and doc-
umenting requirements are heavily related to require-
ments management and information exchange. Also,
responses indicate that meeting stakeholders’ needs
is one of the biggest challenges and we suppose that
is due to the fact that chatbots have quality attributes
harder to achieve since they are subjective human
characteristics.
REFERENCES
Adnan, S. M., Hamdan, A., and Alareeni, B. (2020). Arti-
ficial intelligence for public sector: chatbots as a cus-
tomer service representative. In International Con-
ference on Business and Technology, pages 164–173.
Springer.
Akkiraju, R., Sinha, V., Xu, A., Mahmud, J., Gundecha, P.,
Liu, Z., Liu, X., and Schumacher, J. (2020). Char-
acterizing machine learning processes: a maturity
framework. In International Conference on Business
Process Management, pages 17–31. Springer.
Alflen, N. and Prado, E. V. (2021). Requirements elic-
itation techniques for software development: a sys-
tematic review of literature. AtoZ: novas pr
´
aticas em
informac¸
˜
ao e conhecimento, 10(1):39–49.
Amazon (2021). Designing for conversation.
Belani, H., Vukovic, M., and Car, Z. (2019). Requirements
engineering challenges in building ai-based complex
systems. In 2019 IEEE 27th International Require-
ments Engineering Conference Workshops (REW),
pages 252–255.
Brandtzaeg, P. B. and Følstad, A. (2017). Why people use
chatbots. In International conference on internet sci-
ence, pages 377–392. Springer.
Brandtzaeg, P. B. and Følstad, A. (2018). Chatbots:
changing user needs and motivations. Interactions,
25(5):38–43.
Chaves, A. P. and Gerosa, M. A. (2021). How should my
chatbot interact? a survey on social characteristics
in human–chatbot interaction design. International
Journal of Human–Computer Interaction, 37(8):729–
758.
Dar, H., Lali, M. I., Ashraf, H., Ramzan, M., Amjad, T.,
and Shahzad, B. (2018). A systematic study on soft-
ware requirements elicitation techniques and its chal-
lenges in mobile application development. IEEE Ac-
cess, 6:63859–63867.
Fadhil, A. (2018). Can a chatbot determine my diet?: Ad-
dressing challenges of chatbot application for meal
recommendation. arXiv preprint arXiv:1802.09100.
Følstad, A. and Brandtzæg, P. B. (2017). Chatbots and the
new world of hci. interactions, 24(4):38–42.
Følstad, A. and Brandtzaeg, P. B. (2020). Users’ expe-
riences with chatbots: findings from a questionnaire
study. Quality and User Experience, 5(1):1–14.
Franch, X., Mendez, D., Vogelsang, A., Heldal, R., Knauss,
E., Oriol, M., Travassos, G., Carver, J. C., and Zim-
mermann, T. (2020). How do practitioners perceive
the relevance of requirements engineering research?
ICAART 2022 - 14th International Conference on Agents and Artificial Intelligence
186
IEEE Transactions on Software Engineering, pages 1–
1.
Gobov, D. and Huchenko, I. (2020). Requirement elic-
itation techniques for software projects in ukrainian
it: An exploratory study. In 2020 15th Conference
on Computer Science and Information Systems (Fed-
CSIS), pages 673–681.
Google (2021). Conversation design.
Habibullah, K. M. and Horkoff, J. (2021). Non-functional
requirements for machine learning: Understanding
current use and challenges in industry. arXiv preprint
arXiv:2109.00872.
Harwell, D. (2018). The accent gap. The Washington Post.
IBM (2021). Conversational ux design.
Ishikawa, F. and Matsuno, Y. (2020). Evidence-driven
requirements engineering for uncertainty of machine
learning-based systems. In 2020 IEEE 28th Inter-
national Requirements Engineering Conference (RE),
pages 346–351.
Jakic, A., Wagner, M. O., and Meyer, A. (2017). The im-
pact of language style accommodation during social
media interactions on brand trust. Journal of Service
Management.
Jarzbowicz, A. and Połocka, K. (2017). Selecting re-
quirements documentation techniques for software
projects: A survey study. In 2017 Federated Confer-
ence on Computer Science and Information Systems
(FedCSIS), pages 1189–1198.
Jarzbowicz, A. and Sitko, N. (2019). Communication and
documentation practices in agile requirements engi-
neering: A survey in polish software industry. In Eu-
roSymposium on Systems Analysis and Design, pages
147–158. Springer.
Khan, R. and Das, A. (2018). Introduction to chatbots. In
Build Better Chatbots: A Complete Guide to Getting
Started with Chatbots, pages 1–11. Apress, Berkeley,
CA.
Kostova, B., Gurses, S., and Wegmann, A. (2020). On the
interplay between requirements, engineering, and ar-
tificial intelligence. In REFSQ Workshops.
Lim, T.-Y., Chua, F.-F., and Tajuddin, B. B. (2018). Elic-
itation techniques for internet of things applications
requirements: A systematic review. In Proceedings
of the 2018 VII International Conference on Network,
Communication and Computing, pages 182–188.
Mendonc¸a, G. D., de Souza Filho, I. P., and Guedes, G. T. A.
(2021). A systematic review about requirements engi-
neering processes for multi-agent systems. In ICAART
(1), pages 69–79.
Mora-Cantallops, M., S
´
anchez-Alonso, S., Garc
´
ıa-
Barriocanal, E., and Sicilia, M.-A. (2021). Traceabil-
ity for trustworthy ai: A review of models and tools.
Big Data and Cognitive Computing, 5(2):20.
Neff, G. and Nagy, P. (2016). Automation, algorithms, and
politics— talking to bots: Symbiotic agency and the
case of tay. International Journal of Communication,
10:17.
Petriv, Y., Erlenheim, R., Tsap, V., Pappel, I., and Draheim,
D. (2019). Designing effective chatbot solutions for
the public sector: A case study from ukraine. In In-
ternational Conference on Electronic Governance and
Open Society: Challenges in Eurasia, pages 320–335.
Springer.
Pressman, R. (2009). Software Engineering: A Practi-
tioner’s Approach. McGraw-Hill, Inc., USA, 7 edi-
tion.
Rafiq, U., Bajwa, S. S., Wang, X., and Lunesu, I. (2017).
Requirements elicitation techniques applied in soft-
ware startups. In 2017 43rd Euromicro Conference
on Software Engineering and Advanced Applications
(SEAA), pages 141–144. IEEE.
Sch
¨
on, E.-M., Winter, D., Escalona, M. J., and
Thomaschewski, J. (2017). Key challenges in agile
requirements engineering. In International Confer-
ence on Agile Software Development, pages 37–51.
Springer, Cham.
Shevat, A. (2017). Designing bots: Creating conversational
experiences. ”O’Reilly Media, Inc.”.
Singh, A., Ramasubramanian, K., and Shivam, S. (2019).
Identifying the sources of data. In Building an En-
terprise Chatbot: Work with Protected Enterprise
Data Using Open Source Frameworks, pages 19–33.
Apress, Berkeley, CA.
Sommerville, I. (2010). Software Engineering. Addison-
Wesley Publishing Company, USA, 9th edition.
Soni, N., Sharma, E. K., Singh, N., and Kapoor, A.
(2019). Impact of artificial intelligence on busi-
nesses: from research, innovation, market deployment
to future shifts in business models. arXiv preprint
arXiv:1905.02092.
Sun, T. Q. and Medaglia, R. (2019). Mapping the chal-
lenges of artificial intelligence in the public sector:
Evidence from public healthcare. Government Infor-
mation Quarterly, 36(2):368–383.
Vogelsang, A. and Borg, M. (2019). Requirements engi-
neering for machine learning: Perspectives from data
scientists. In 2019 IEEE 27th International Require-
ments Engineering Conference Workshops (REW),
pages 245–251. IEEE.
Wautelet, Y., Heng, S., Kolp, M., and Scharff, C. (2016).
Towards an agent-driven software architecture aligned
with user stories. In ICAART (2), pages 337–345.
Wilhjelm, C. and Younis, A. A. (2020). A threat analysis
methodology for security requirements elicitation in
machine learning based systems. In 2020 IEEE 20th
International Conference on Software Quality, Relia-
bility and Security Companion (QRS-C), pages 426–
433.
Xu, Y., Shieh, C.-H., van Esch, P., and Ling, I.-L. (2020). Ai
customer service: Task complexity, problem-solving
ability, and usage intention. Australasian Marketing
Journal (AMJ), 28(4):189–199.
Zhang, J. J., Følstad, A., and Bjørkli, C. A. (2021). Orga-
nizational factors affecting successful implementation
of chatbots for customer service. Journal of Internet
Commerce, pages 1–35.
Requirements Engineering Challenges and Techniques in Building Chatbots
187