<!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>
      <journal-title-group>
        <journal-title>In particular, we examine the potential of ChatGPT to
Ital-IA</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Toward the use of Generative AI to develop Computational Thinking by supporting Problem Decomposition</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Davide Ponzini</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Giovanni Adorni</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Giorgio Delzanno</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Giovanna Guerrini</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Genoa</institution>
          ,
          <addr-line>Dipartimento di Informatica, Bioingegneria, Robotica e Ingeneria dei Sistemi, via Dodecaneso 35, Genoa, 16145</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Genoa, Dipartimento di Lingue e Culture Moderne</institution>
          ,
          <addr-line>piazza Santa Sabina 2, Genoa, 16124</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2024</year>
      </pub-date>
      <volume>4</volume>
      <fpage>0000</fpage>
      <lpage>0003</lpage>
      <abstract>
        <p>We present a possible applications of generative AI to support a Computational Thinking approach to learn programming principles with a particular focus on problem decomposition. Our approach is based on a visual tool that guides students in decomposing a problem in smaller task, prompting ChatGPT on demand via predefined queries designed via a preliminary prompt engineering experimental phase. The tool also provides the possibility of prompting ChatGPT to generate code in a bottom-up manner, reusing functions generated in previous steps. We illustrate here the main ideas with the help of a case-study.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Generative AI</kwd>
        <kwd>ChatGPT</kwd>
        <kwd>Computational Thinking</kwd>
        <kwd>Problem Decomposition</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <sec id="sec-1-1">
        <title>In our research, we are interested in possible applications of Generative AI to develop a Computational Thinking approach in learning to program. Computational Thinking [8] can be defined as</title>
        <p>
          "The thought processes involved in
formulating problems and their solutions so that
the solutions are represented in a form
that can be efectively carried out by an
information-processing agent." [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]
The role of Generative AI in computing education is one
of the mostly debated issues in the last year, as evidenced
by works such as [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ]. Although the advantages and
disadvantages of using tools such as ChatGPT1 to support the
teaching of computer-related subjects are not fully clear
yet, there is a growing consensus that the technological
progress of Generative AI will require an adaptation of
the educational methods currently employed.
        </p>
        <p>
          In the context of introductory and advanced
programming courses, tools such as ChatGPT, which are already
integrated in the most common software development
tools (take as an example GitHub’s Copilot) [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] are
frequently exploited. These tools are designed in order to
help the users to best formulate the questions submitted
to the prompt.
        </p>
        <p>
          According to the current literature on computing
education, such as [
          <xref ref-type="bibr" rid="ref1 ref3 ref4 ref5 ref6 ref7">1, 3, 4, 5, 6, 7</xref>
          ], the most common use of
Generative AI is to generate code or to explain specific
features of existing or generated code. The use of
Generative AI to generate solutions to assignments and exercises
is indeed a critical issue to be taken into consideration to
avoid plagiarism and negative efects on student learning
outcomes.
problem to solve, the user chooses which nodes to fur- of students may prefer not to use the tool, believing it
ther decompose. The decomposition process is designed will lead to reduced learning [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ].
to be interactive and fully guided by the user until the Among the CS students who employ the tool, the most
solution is decomposed in a collection of subtasks that common usage is for generating code, followed by
debugthe user is capable to implement. The decomposition of a ging. Explaining dificult concepts falls in third place [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ].
given task, i.e., a given node of the tree, can be provided Students who use ChatGPT when facing programming
manually by expanding the corresponding subtree with assignments tend to show higher eficacy and
computaa set of labeled nodes inserted by the user. In addition it tional thinking skills [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ].
can also be generated via a predefined query to ChatGPT. Currently, ChatGPT is mainly employed to
automatiThe query formulation is based on a preliminary prompt cally provide students with feedback when programming
engineering experimental design phase that seems to a task. Feedback can be provided in many forms, such
provide good results in the most common coding tasks as coding hints for the next instruction [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] and code or
taken from the literature on introductory programming error explanations [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ].
courses. In our approach, the prompt engineering task is When confronted with more complex problems,
Chatentirely hidden to the user and ChatGPT is considered as GPT is less adept at providing reliable solutions. As a
an oracle to support students during the decomposition result, the user is often required to manually break down
process. the problem into smaller components and subsequently
        </p>
        <p>
          If needed, in a second phase, users can prompt Chat- assemble the solution [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ].
        </p>
        <p>GPT to generate the code of the solution in a bottom
up manner. The predefined query generated by our tool
ensures that functions generated for a given subtask can 3. Methods
be reused for generating the code of the current task.</p>
        <p>The implementation of the tool allowed us to evaluate To evaluate the support ofered by ChatGPT to
decomhow well ChatGPT is able to decompose a high-level task pose a high-level task into smaller, easier-to-solve
subinto smaller, easier-to-solve subtasks, and to implement tasks, we designed a set of prompts for ChatGPT, as well
decomposed tasks using a bottom-up approach. as a custom visualization tool to display the results and</p>
        <p>In the paper we present the methodology, the proposed allow the user to interact with the tool.
tasks, and the preliminary results with the help of an
example. 3.1. ChatGPT Prompts</p>
        <p>The paper is structured as follows: In Section 2, we
outline the background of our study, focusing on the efects
ChatGPT has on education and computational thinking.</p>
        <p>Section 3 describes the proposed methodology and
experiment setup. Section 4 reports, focusing on a case study,
the results of our first experiments and discusses their
limitations. Finally, in Section 5 we address conclusions
and future research directions.</p>
        <p>Decomposing a task into subtasks To decompose a
broad task into more refined subtasks we experimented
with several prompting styles.</p>
        <p>
          Our initial approach was to include the current task
decomposition in the prompt, so that ChatGPT would be
aware of which tasks had already been decomposed and
how they were decomposed at each iteration. However,
this approach proved inefective as ChatGPT struggled to
understand the decomposition. Various notations were
2. Background attempted, including JSON and ad hoc syntax, similar to
regular tree expressions, to describe the current
strucChatGPT has shown remarkable capabilities in solving ture of the decomposition, but none was found to have a
programming tasks across a range of diferent program- positive impact. Ultimately, two distinct prompts were
ming languages, particularly when the instructions are utilized, and ChatGPT’s conversational memory was
represented in a clear and unambiguous manner [
          <xref ref-type="bibr" rid="ref6 ref7">7, 6</xref>
          ]. lied upon to maintain the current decomposition state.
However, it is less efective when confronted with more The initial prompt is used when a user first wishes to
complex requests, particularly when the questions are decompose a problem. It includes a user-provided
probnot structured in an optimal manner or when the infor- lem description and detailed instructions for ChatGPT on
mation provided in the prompt is limited [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]. how to accurately decompose it. The main requirements
        </p>
        <p>
          Even though the tool shows great potential in the ed- we identified are:
ucational domain, it is used by a limited number of
students for educational purposes [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]. One of the reasons • Specifying that the task needs to be decomposed
is that education regarding LLMs usage is very limited into a small number of subtasks. This
requireand students often don’t know how to properly use these ment is crucial as ChatGPT has a tendency to
tools to support learning [
          <xref ref-type="bibr" rid="ref11 ref5">11, 5</xref>
          ]. Furthermore, a number
immediately decompose the problem into approx- given task and, if available, review its properties and
imimately ten steps, with emphasis on the process plementation. Alternatively, ChatGPT can be utilized by
rather than on the reasoning behind the task. the tool to automatically decompose or implement any
task. Task decomposition is only performed upon user
• Requiring the fields “name” and “description” to request, as each user’s knowledge base varies and some
be similar to the ones initially provided. This is tasks may be clear to some users but not to others.
important for keeping stylistic consistency be- Tasks can also be marked as “solved”, indicating that
tween all tasks. the user has fully understood the task and no further
• Returning the results in JSON format. This is im- decomposition is needed. For the sake of usability, solved
portant for using the output in our visualization tasks are presented in a distinct color, allowing for a
tool. We also noticed that this requirement made clear representation of the current understanding of the
the title and description more precise and each problem at all times.
subtask being assigned a unique name. Tasks can also be edited, created, or deleted manually.
        </p>
        <p>However, ChatGPT does not currently reflect these
ac• Requiring that subtasks of a given task did not tions. Automatic decomposition or implementation of
contain any element of other tasks. This is needed these tasks is not currently available.
to avoid task mix-ups.</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>4. Case Study</title>
      <p>• Ensuring there are no missing steps in the
decomposition, i.e., solving all the subtasks is equivalent
to solving the original problem.</p>
      <sec id="sec-2-1">
        <title>The tool was employed to decompose and implement a</title>
        <p>small number of tasks. This section presents the results
We also included an instruction indicating not to decom- for the task “Write a Python program to find the most
pose a task in case no reasonable decomposition can be trending videos, given a CSV file containing each
visualmade (for example for basic tasks). However, this proved ization”. The task has been intentionally formulated as
inefective, as ChatGPT always ended up decomposing a broad request, to test if the program would be able to
even the simplest tasks. correctly identify its subtasks.</p>
        <p>A simpler prompt has been designed for decomposing
subtasks. The prompt references the task by name and 4.1. Task decomposition
requests that the same process be repeated for that task.</p>
        <p>It is important to note that each task decomposed using
this prompt has been originally generated by ChatGPT.</p>
      </sec>
      <sec id="sec-2-2">
        <title>Implementing a task Once the user is satisfied with</title>
        <p>the current decomposition, they can start
implementing the subtasks following a bottom-up approach. The
prompt requires ChatGPT to implement the given task in
a specific programming language, which can be selected
by the user.</p>
        <p>We identified two requirements, which are:
• Using, whenever possible, functions already
generated by ChatGPT for other tasks. This
requirement is crucial, since it can highlight the
interaction between a task and its subtasks.
• Not writing the implementation of functions
which have already been implemented, to avoid
redundant code.</p>
        <sec id="sec-2-2-1">
          <title>3.2. Visualization tool</title>
        </sec>
      </sec>
      <sec id="sec-2-3">
        <title>The tool we have created enables users to easily visualize tasks and explore their decomposition into subtasks. Users have the option to display or hide subtasks for a</title>
        <p>• Read CSV file: Write a Python function to read
the CSV file containing video views data.
• Parse CSV file: Write a Python function to parse
the data from the CSV file and extract relevant
information such as video IDs and view counts.
• Calculate trending score: Write a Python
function to calculate a trending score for each video
based on its view count and possibly other factors
such as upload date.
• Sort videos by trending score: Write a Python
function to sort the videos based on their calculated
trending scores in descending order.
• Retrieve top trending videos: Write a Python
function to retrieve the top N videos with the highest
trending scores, where N is a parameter.</p>
      </sec>
      <sec id="sec-2-4">
        <title>We chose not to decompose basic tasks, such as reading, parsing, sorting, or displaying data, as they can be</title>
      </sec>
      <sec id="sec-2-5">
        <title>After obtaining the decomposition shown in Figure 1,</title>
        <p>we instructed ChatGPT to implement the tasks using a
bottom-up approach. This involved starting from the
smallest subtasks and subsequently progressing towards
the top-level task.</p>
        <p>For each subtask, ChatGPT created a function which
solved the given problem. Each implementation also
contained a docstring describing its purpose, parameters
and returned value, as well as a usage example, as shown
in Figure 2.</p>
        <p>For tasks that were previously decomposed, ChatGPT
was able to accurately recall and utilize the functions it
had previously implemented, as shown in Figure 2b.</p>
        <sec id="sec-2-5-1">
          <title>4.3. Limitations</title>
        </sec>
      </sec>
      <sec id="sec-2-6">
        <title>The main limitation of this study is the relatively small</title>
        <p>number of problems that were decomposed and
implemented using our system. It is possible that some tasks
may present unforeseen challenges that require further
tuning of our prompts or diferent approaches.</p>
        <p>A further limitation of the study is the small number
of users who have tested the system. By testing the
system with a larger number of users, it would be possible
to ascertain whether certain tasks present issues when
decomposed.</p>
        <p>(a) Implementation for task “Normalize view counts”.</p>
      </sec>
      <sec id="sec-2-7">
        <title>Additionally, as ChatGPT is frequently updated, diferent prompts may be required to obtain the same output.</title>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>5. Conclusions &amp; Future Work</title>
      <p>The developed tool demonstrates potential for
decomposing tasks into smaller subtasks and implementing them
using a bottom-up approach. The preliminary study
decomposed a limited number of problems, but the results
seem quite promising. ChatGPT correctly identified how
to decompose the main problem into smaller subtasks
and provided a well-documented implementation of each
step.</p>
      <p>Future directions for our work include:
• Integrating the tool with ChatGPT’s APIs to
fully automate decomposition and
implementation functionalities;
• Enabling users to fully modify existing
decompositions and implementations;
• Testing our system with a larger number of
problems;
• Defining precise evaluation criteria for proper
task decomposition;
• Measuring if the tool can improve computational
thinking learning skills in users.
• Using the tool to identify weaknesses and
misconception of students when facing a sequence
of tasks that require common solving techniques.
(b) Implementation for task “Calculate view count factor”. The
functions highlighted in yellow have been created when
implementing its subtasks.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>P.</given-names>
            <surname>Denny</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Prather</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. A.</given-names>
            <surname>Becker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Finnie-Ansley</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Hellas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Leinonen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Luxton-Reilly</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. N.</given-names>
            <surname>Reeves</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. A.</given-names>
            <surname>Santos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Sarsa</surname>
          </string-name>
          ,
          <article-title>Computing education in the era of generative AI, Commun</article-title>
          . ACM
          <volume>67</volume>
          (
          <year>2024</year>
          )
          <fpage>56</fpage>
          -
          <lpage>67</lpage>
          . URL: https://doi.org/10.1145/3624720. doi:
          <volume>10</volume>
          .1145/3624720.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>C.</given-names>
            <surname>Ebert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Louridas</surname>
          </string-name>
          ,
          <article-title>Generative AI for software practitioners</article-title>
          ,
          <source>IEEE Software 40</source>
          (
          <year>2023</year>
          )
          <fpage>30</fpage>
          -
          <lpage>38</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>C.</given-names>
            <surname>Zastudil</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Rogalska</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Kapp</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Vaughn</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. MacNeil</given-names>
            ,
            <surname>Generative</surname>
          </string-name>
          <string-name>
            <surname>AI</surname>
          </string-name>
          <article-title>in computing education: Perspectives of students and instructors</article-title>
          , in: IEEE Frontiers in Education Conference,
          <string-name>
            <surname>FIE</surname>
          </string-name>
          <year>2023</year>
          , College Station, TX, USA, October
          <volume>18</volume>
          -
          <issue>21</issue>
          ,
          <year>2023</year>
          , IEEE,
          <year>2023</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>9</lpage>
          . URL: https://doi.org/10.1109/ FIE58773.
          <year>2023</year>
          .
          <volume>10343467</volume>
          . doi:
          <volume>10</volume>
          .1109/FIE58773.
          <year>2023</year>
          .
          <volume>10343467</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>L.</given-names>
            <surname>Roest</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Keuning</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Jeuring</surname>
          </string-name>
          ,
          <article-title>Next-Step Hint Generation for Introductory Programming Using Large Language Models</article-title>
          ,
          <source>in: Proceedings of the 26th Australasian Computing Education Conference</source>
          , ACE '24,
          <string-name>
            <surname>Association</surname>
          </string-name>
          for Computing Machinery, New York, NY, USA,
          <year>2024</year>
          , pp.
          <fpage>144</fpage>
          -
          <lpage>153</lpage>
          . doi:
          <volume>10</volume>
          .1145/3636243.3636259.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>B.</given-names>
            <surname>Qureshi</surname>
          </string-name>
          ,
          <article-title>Exploring the Use of ChatGPT as a Tool for Learning and Assessment in Undergraduate Computer Science Curriculum: Opportunities and Challenges</article-title>
          , in: 2023 9th International Conference on e-Society, e-Learning and e-Technologies,
          <year>2023</year>
          , pp.
          <fpage>7</fpage>
          -
          <lpage>13</lpage>
          . doi:
          <volume>10</volume>
          .1145/3613944.3613946, arXiv:
          <fpage>2304</fpage>
          .11214 [cs].
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>E. L.</given-names>
            <surname>Ouh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. K. S.</given-names>
            <surname>Gan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Jin Shim</surname>
          </string-name>
          , S. Wlodkowski,
          <article-title>ChatGPT, Can You Generate Solutions for my Coding Exercises? An Evaluation on its Efectiveness in an undergraduate Java Programming Course</article-title>
          .,
          <source>in: Proceedings of the 2023 Conference on Innovation and Technology in Computer Science Education V. 1</source>
          ,
          <string-name>
            <given-names>ACM</given-names>
            ,
            <surname>Turku</surname>
          </string-name>
          <string-name>
            <surname>Finland</surname>
          </string-name>
          ,
          <year>2023</year>
          , pp.
          <fpage>54</fpage>
          -
          <lpage>60</lpage>
          . doi:
          <volume>10</volume>
          .1145/3587102.3588794.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>C.</given-names>
            <surname>Geng</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zhang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Pientka</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Si</surname>
          </string-name>
          ,
          <string-name>
            <surname>Can ChatGPT Pass An Introductory Level Functional Language Programming Course?</surname>
          </string-name>
          ,
          <year>2023</year>
          . doi:
          <volume>10</volume>
          .48550/ ARXIV.2305.02230.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>J. M.</given-names>
            <surname>Wing</surname>
          </string-name>
          , Computational thinking,
          <source>Commun. ACM</source>
          <volume>49</volume>
          (
          <year>2006</year>
          )
          <fpage>33</fpage>
          -
          <lpage>35</lpage>
          . URL: https://doi.org/ 10.1145/1118178.1118215. doi:
          <volume>10</volume>
          .1145/1118178. 1118215.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>J. M.</given-names>
            <surname>Wing</surname>
          </string-name>
          ,
          <article-title>Computational thinking and thinking about computing</article-title>
          ,
          <source>Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences</source>
          <volume>366</volume>
          (
          <year>2008</year>
          )
          <fpage>3717</fpage>
          -
          <lpage>3725</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>P. J.</given-names>
            <surname>Rich</surname>
          </string-name>
          , G. Egan,
          <string-name>
            <given-names>J.</given-names>
            <surname>Ellsworth</surname>
          </string-name>
          ,
          <article-title>A framework for decomposition in computational thinking</article-title>
          ,
          <source>in: Proceedings of the 2019 ACM Conference on Innovation and Technology in Computer Science Education</source>
          , ITiCSE '19,
          <string-name>
            <surname>Association</surname>
          </string-name>
          for Computing Machinery, New York, NY, USA,
          <year>2019</year>
          , p.
          <fpage>416</fpage>
          -
          <lpage>421</lpage>
          . URL: https://doi.org/10.1145/3304221. 3319793. doi:
          <volume>10</volume>
          .1145/3304221.3319793.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>H.</given-names>
            <surname>Singh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.-H.</given-names>
            <surname>Tayarani-Najaran</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Yaqoob</surname>
          </string-name>
          , Exploring Computer Science Students'
          <article-title>Perception of ChatGPT in Higher Education: A Descriptive and Correlation Study</article-title>
          ,
          <source>Education Sciences</source>
          <volume>13</volume>
          (
          <year>2023</year>
          )
          <article-title>924</article-title>
          . doi:
          <volume>10</volume>
          .3390/educsci13090924.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>A.</given-names>
            <surname>Ouaazki</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Bergram</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Holzer</surname>
          </string-name>
          ,
          <article-title>Leveraging ChatGPT to Enhance Computational Thinking Learning Experiences</article-title>
          , in: 2023 IEEE International Conference on Teaching,
          <article-title>Assessment and Learning for Engineering (TALE</article-title>
          ),
          <year>2023</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>7</lpage>
          . doi:
          <volume>10</volume>
          .1109/TALE56641.
          <year>2023</year>
          .
          <volume>10398358</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>R.</given-names>
            <surname>Yilmaz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F. G.</given-names>
            <surname>Karaoglan</surname>
          </string-name>
          <string-name>
            <surname>Yilmaz</surname>
          </string-name>
          ,
          <source>The efect of generative artificial intelligence (AI</source>
          )
          <article-title>-based tool use on students' computational thinking skills, programming self-eficacy and motivation</article-title>
          ,
          <source>Computers and Education: Artificial Intelligence</source>
          <volume>4</volume>
          (
          <year>2023</year>
          )
          <article-title>100147</article-title>
          . doi:
          <volume>10</volume>
          .1016/j.caeai.
          <year>2023</year>
          .
          <volume>100147</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>K.</given-names>
            <surname>Kuramitsu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Obara</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Sato</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Obara, KOGI: A Seamless Integration of ChatGPT into Jupyter Environments for Programming Education</article-title>
          ,
          <source>in: Proceedings of the 2023 ACM SIGPLAN International Symposium on SPLASH-E</source>
          , ACM,
          <string-name>
            <surname>Cascais</surname>
            <given-names>Portugal</given-names>
          </string-name>
          ,
          <year>2023</year>
          , pp.
          <fpage>50</fpage>
          -
          <lpage>59</lpage>
          . doi:
          <volume>10</volume>
          .1145/3622780.3623648.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>A.</given-names>
            <surname>Sane</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Albuquerque</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Gupta</surname>
          </string-name>
          , J. Valadi, ChatGPT
          <string-name>
            <surname>Didn't Take</surname>
          </string-name>
          Me Very Far, Did It?,
          <source>in: Proceedings of the ACM Conference on Global Computing Education</source>
          Vol
          <volume>2</volume>
          ,
          <string-name>
            <surname>CompEd 2023</surname>
          </string-name>
          ,
          <article-title>Association for Computing Machinery</article-title>
          , New York, NY, USA,
          <year>2023</year>
          , p.
          <fpage>204</fpage>
          . doi:
          <volume>10</volume>
          .1145/3617650.3624947.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>