<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.4 20241031//EN" "JATS-journalpublishing1-4.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article" dtd-version="1.4" xml:lang="en">
  <front>
    <journal-meta>
      <journal-id journal-id-type="publisher-id">ijis</journal-id>
      <journal-title-group>
        <journal-title>International Journal of Intelligence Science</journal-title>
      </journal-title-group>
      <issn pub-type="epub">2163-0356</issn>
      <issn pub-type="ppub">2163-0283</issn>
      <publisher>
        <publisher-name>Scientific Research Publishing</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.4236/ijis.2026.161004</article-id>
      <article-id pub-id-type="publisher-id">ijis-148072</article-id>
      <article-categories>
        <subj-group>
          <subject>Article</subject>
        </subj-group>
        <subj-group>
          <subject>Computer Science</subject>
          <subject>Communications</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title>Visual Scaffolding in Control Structures: An Educational Proposal for Introductory Programming Courses</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <name name-style="western">
            <surname>Laureano-Cruces</surname>
            <given-names>Ana Lilia</given-names>
          </name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <name name-style="western">
            <surname>Pérez-Hernández</surname>
            <given-names>Orlando Martín</given-names>
          </name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <name name-style="western">
            <surname>Martínez-Bonilla</surname>
            <given-names>Ismael</given-names>
          </name>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <name name-style="western">
            <surname>Sánchez-Guerrero</surname>
            <given-names>Lourdes</given-names>
          </name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
      </contrib-group>
      <aff id="aff1"><label>1</label> Departamento de Sistemas, Universidad Autónoma Metropolitana-Azcapotzalco, CDMX, México </aff>
      <aff id="aff2"><label>2</label> Licenciatura en Ingeniería en Computación, Universidad Autónoma Metropolitana-Azcapotzalco, CDMX, México </aff>
      <aff id="aff3"><label>3</label> Laboratorio de Educación y Evaluación Digital, Facultad de Estudios Superiores Iztacala, UNAM, CDMX, México </aff>
      <author-notes>
        <fn fn-type="conflict" id="fn-conflict">
          <p>The authors declare no conflicts of interest regarding the publication of this paper.</p>
        </fn>
      </author-notes>
      <pub-date pub-type="epub">
        <day>26</day>
        <month>11</month>
        <year>2025</year>
      </pub-date>
      <pub-date pub-type="collection">
        <month>11</month>
        <year>2025</year>
      </pub-date>
      <volume>16</volume>
      <issue>01</issue>
      <fpage>70</fpage>
      <lpage>82</lpage>
      <history>
        <date date-type="received">
          <day>06</day>
          <month>11</month>
          <year>2025</year>
        </date>
        <date date-type="accepted">
          <day>16</day>
          <month>12</month>
          <year>2025</year>
        </date>
        <date date-type="published">
          <day>19</day>
          <month>12</month>
          <year>2025</year>
        </date>
      </history>
      <permissions>
        <copyright-statement>© 2026 by the authors and Scientific Research Publishing Inc.</copyright-statement>
        <copyright-year>2026</copyright-year>
        <license license-type="open-access">
          <license-p> This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license ( <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/licenses/by/4.0/">https://creativecommons.org/licenses/by/4.0/</ext-link> ). </license-p>
        </license>
      </permissions>
      <self-uri content-type="doi" xlink:href="https://doi.org/10.4236/ijis.2026.161004">https://doi.org/10.4236/ijis.2026.161004</self-uri>
      <abstract>
        <p>Introductory programming courses involve the development of skills related to analysis, reasoning, and comprehension. Therefore, making execution visible (which instruction runs, which branch is taken, and how variables change) can facilitate early understanding. This work presents a proposal based on Information Visualization to help understand how control structures work. The objective of this study was to design a microworld that allows step-by-step observation of the functioning of control structures (sequence, simple and multiple selection, arithmetic progression, while, and repeat-until). These structures are part of Structured Programming. An application was developed in Java with four modules: 1) microworld environment, 2) visual interface for structures, 3) parameter input, and 4) visualization. The microworld was modeled as a 15 × 15 grid (30 × 30 px) mapped to a matrix, with a GUI (Swing) that captures conditions, selectors, and initial values. Animation was carried out through timers using metaphorical actions (walking, running, hitting) and energy/life variables. As a result, a prototype was developed that visualizes each structure with its specific semantics and allows users to set parameters and observe effects in real time. The modular architecture and timed rendering provide fluidity and scalability. It is concluded that the microworld translates code logic into reproducible visual cues, reduces costly inferences, and supports stable mental models for flow control.</p>
      </abstract>
      <kwd-group kwd-group-type="author-generated" xml:lang="en">
        <kwd>Structured Programming</kwd>
        <kwd>Information Visualization</kwd>
        <kwd>Microworld</kwd>
        <kwd>Control Structures</kwd>
        <kwd>Mental Models</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec1">
      <title>1. Introduction</title>
      <p>In the early years of systems and computer science programs, programming is the pillar of computational thinking and solution design because it requires abstracting, modeling, and automating processes with logical rigor—for example, linking syntax and semantics, tracing program state [variables and conditions], mastering control flow [conditionals and loops], understanding scope and typing, and understanding debugging and error reading [<xref ref-type="bibr" rid="B1">1</xref>]. Learning these skills, together with others such as translating problems into algorithms, understanding that the computer follows literal instructions, and reconciling a new syntax with the logic of flow, can be challenging [<xref ref-type="bibr" rid="B2">2</xref>].</p>
      <p>In this sense, variables, control structures, functions/methods, input/output, and initial debugging form the foundation of computing education, and the way these topics are taught [activities, assessments, and resources] shapes what students will be able to learn later [<xref ref-type="bibr" rid="B1">1</xref>]. Thus, seeing execution and tracing how variables change at each step is especially useful for understanding control transitions and, at the same time, for facilitating problem solving [<xref ref-type="bibr" rid="B3">3</xref>].</p>
      <p>Students often form incomplete mental models of these concepts [what values variables hold and when they change], which leads to typical errors in conditionals and loops. In addition, feedback in some cases tends to arrive as cryptic compiler messages, increasing frustration [<xref ref-type="bibr" rid="B2">2</xref>]. Hence, the need to use support that makes the flow and the step-by-step execution of what they are solving visible. For this reason, it is important to employ scaffolds and visualizations that make execution visible and help build correct mental models from the first years of the program [<xref ref-type="bibr" rid="B3">3</xref>][<xref ref-type="bibr" rid="B4">4</xref>].</p>
      <p>A mental model is understood as the internal, functional representation that the student constructs of the “machine” that executes a program, that is, how the instructions are evaluated, how control flows, and how the variables change. A correct mental model is consistent with the semantics of the language and makes it possible to predict and explain the state of the program step by step in new cases. In contrast, an incomplete or incorrect mental model contains gaps or faulty rules. In this sense, students learn better when their models are explicitly aligned with a clear structure and when recurrent misconceptions are corrected [<xref ref-type="bibr" rid="B4">4</xref>][<xref ref-type="bibr" rid="B5">5</xref>].</p>
      <p>Building on this foundation, we propose an Information Visualization project to observe what happens during a program’s execution—that is, which instructions run, which path the flow takes, how variables change, and how to turn those execution data into useful information and, ultimately, knowledge [<xref ref-type="bibr" rid="B6">6</xref>][<xref ref-type="bibr" rid="B7">7</xref>]. Visualization requires representing and presenting data in diverse forms to leverage visual perception and generate knowledge, and sets as a goal the design of an educational tool that incorporates these principles to improve the learning of structured programming [<xref ref-type="bibr" rid="B8">8</xref>].</p>
      <p>In practical terms, visualizing execution serves several functions that help teach students more effectively: explain [tell the “story” of the code step by step], simplify [remove distractors and make the essentials evident], compare [contrast execution paths or parameter effects], and explore [try alternatives and see consequences instantly]. Empirical evidence indicates that visualizations and step-by-step traces have been associated with better understanding of basic programming concepts and with the construction of more stable mental models, especially in early stages. Moreover, interactive tools facilitate this, which helps explain why “seeing” the flow and state speeds the move from data to understanding [<xref ref-type="bibr" rid="B3">3</xref>][<xref ref-type="bibr" rid="B6">6</xref>][<xref ref-type="bibr" rid="B7">7</xref>].</p>
      <p>Among the studies reporting how visualization helps improve learning is the work [<xref ref-type="bibr" rid="B9">9</xref>], which, in astrophysics, implemented an interactive interface based on qualitative reasoning to represent complex phenomena; the aim was for users to observe relationships and behaviors that are difficult to infer from formulas or text alone. In a different domain [<xref ref-type="bibr" rid="B10">10</xref>] implemented the visualization of an affective behavior through mythological narrative, exploring how a cognitive-affective model can be represented in a comprehensible way, placing the observer before internal processes that usually remain hidden.</p>
      <p>On the other hand, research has examined how the design of visual elements and icons can strengthen the connection with people less familiar with technology [for example, older adults], thus functioning as a bridge between abstract concepts and concrete actions [<xref ref-type="bibr" rid="B11">11</xref>]. In parallel, information-visualization systems have been developed to present institutional academic data clearly to detect patterns and potential issues: a web system to analyze performance in Teaching-Learning Units and a project to present academic statistics with admissions criteria are examples of how graphical representation helps to understand complex datasets and make informed decisions [<xref ref-type="bibr" rid="B12">12</xref>][<xref ref-type="bibr" rid="B13">13</xref>].</p>
      <p>Closer to our objective, the work on virtual microworlds by Laureano-Cruces <italic>et al.</italic> [<xref ref-type="bibr" rid="B14">14</xref>] proposes visualizing abstract concepts of structured programming through scenarios inspired by everyday life and intended to be integrated into intelligent tutoring systems. This line is particularly relevant because it suggests that narrowing a pedagogical domain [objects, properties, and events] and dynamically representing control flow can help novice students build more stable mental models. This project situates itself in that tradition and extends it with an implementation focused on control structures [sequence, decision, and loops], incorporating a simulation interface that allows parameters to be configured and, step by step, shows which branch executes, how many iterations occur, and how the state changes—with the explicit aim of supporting early understanding in structured programming.</p>
      <p>Building on this background, we propose a microworld implemented as a simulation interface that operationalizes these ideas into tasks students can manipulate. This microworld serves as support for first-year students in computer systems engineering, computer science, or related fields. Unlike prior work, here we explicitly bound the domain [objects, properties, and events] to control structures and aligned the visualization with clear instructional actions [set parameters, predict behavior, observe step-by-step execution, and verify the result].</p>
      <p>This microworld integrates a “field” in which objects, properties, and events are clearly defined; this field is deliberately limited to the functioning of control structures [sequence, simple and multiple selection, and loops], so that students interact only with the conceptual elements that matter for learning control flow and program state [<xref ref-type="bibr" rid="B14">14</xref>]. Finally, the “objects” act as a bridge between theory and execution, since they display behavior visibly and respond to the program’s decisions and loops; thus, as the flow advances, the object moves and “shows” the consequence of the condition or the counter.</p>
      <p>On this basis, the microworld presented covers the following control structures: Sequential—shows the ordered execution of actions “one after another,” as the object travels across the map from bottom to top and visually activates each instruction when it is executed, making the order and the top-to-bottom flow of the code [start-end] evident; Simple selection—the student sets the logical condition [true/false] and the object takes the corresponding branch, with the option to adjust parameters and actions associated with each case, turning “if/else” into a step-by-step observable experience; Multiple selection [when there are more than two options]—the focus is on the selector [the value of an enumerated type], where the student defines that value and the case-specific actions, including the default path when there is no match; the branching and the fallback to the default become visible in the object’s trajectory.</p>
      <p>Unlike algorithm visualizers that show complete executions or data structures, and block-based environments that replace syntax with graphical pieces, this microworld intentionally narrows the domain to CS1 control structures [sequence, selection, and loops] and makes them observable and manipulable without textual programming, so that students can adjust to didactic parameters [condition, selector, counter] and observe step-by-step transitions through simple metaphors that externalize the state.</p>
      <p>For loops, three behaviors are distinguished. In an arithmetic progression, the finite nature of the loop is emphasized: an N and a mode are set [increment/decrement with a constant step], and the object traces a cyclic movement [clockwise or counterclockwise, depending on the mode] that marks each iteration upon returning to the starting point. In the while-repetition structure, entry to the loop depends on evaluating a logical condition at the beginning of each pass; the object pauses to “ask” whether to continue or stop, so the student clearly sees when the condition allows continuation and when it does not. Finally, in repeat-until, at least one iteration is guaranteed before evaluation, keeping parameters and movement similar to the “while” but with the decision at the end of the cycle, which allows both repetition patterns to be contrasted in practice. In all cases, the object serves as a bridge between logic and execution: its movement, color changes, and evaluation pauses translate the abstract flow into clear signals about state and control transitions that students can follow at a glance.</p>
      <p>Finally, this tool is grounded in Vygotsky’s pedagogical theory, in which the tool functions as a scaffold between the student’s prior learning and new concepts. Scaffolding is understood as the set of temporary supports offered within the Zone of Proximal Development [ZPD] so that the student can carry out tasks they are not yet able to solve independently and that, with appropriate guidance, are progressively internalized [<xref ref-type="bibr" rid="B15">15</xref>]. In design terms, our tool incorporates classical scaffolding principles by making the control flow and state visible as a sequence for predicting, observing, and explaining, and by allowing supports to fade as the student learns.</p>
      <p>Accordingly, the central purpose is to design an educational tool to improve the learning experience in structured programming by making visible what is usually abstract during a program’s execution. This tool is based on visualization to transform execution data into information and knowledge, and thereby facilitate the learning of basic structures [sequence, decision, loops] in introductory courses.</p>
    </sec>
    <sec id="sec2">
      <title>2. Methodology</title>
      <sec id="sec2dot1">
        <title>2.1. Approach and Overall Architecture</title>
        <p>The resource was implemented as an interactive microworld to make control flow and program state visible. The system was organized into four modules that structure the end-to-end user experience: 1) definition of the microworld environment, 2) a visual interface that represents control structures, 3) user parameter capture, and 4) execution visualization. This arrangement guided both development and integration testing.</p>
      </sec>
      <sec id="sec2dot2">
        <title>2.2. Platform and Completion Criteria</title>
        <p>The project was developed in Java, considering graphics libraries (LibGDX, JavaFX, LWJGL) for display and animation. Completion criteria were defined per module: 1) The environment had to exhibit the required appearance and functionality; 2) The interface had to faithfully represent the semantics of each structure; 3) Parameter capture had to validate and correctly input the data; 4) Integration had to allow the full execution to be observed without errors. These criteria were used as a checklist during integration.</p>
      </sec>
      <sec id="sec2dot3">
        <title>2.3. Microworld Representation</title>
        <p>To make flow/state observable, the microworld was modeled as a gridded mesh mapped to a two-dimensional array, where each pair of indices identifies a map cell. Visually, cells are represented with simple characters (e.g., “o”), and the environment has fixed dimensions of 15 × 15 cells, each 30 × 30 pixels. This decision balances visual clarity and precision for tracing (<xref ref-type="fig" rid="fig1">Figure 1</xref>). </p>
        <p>This division simplifies the representation and avoids irrelevant details, reducing extraneous load and allowing attention to focus on control transitions (sequence and iterations). In parallel, metaphorical actions such as walking, running, and hitting (which will be described later) build on the student’s prior schemata (with intuitive meanings and “actions”) to immediately map the effects on the state (energy/life) without introducing additional technical vocabulary.</p>
        <fig id="fig1">
          <label>Figure 1</label>
          <graphic xlink:href="https://html.scirp.org/file/1680463-rId17.jpeg?20251219094457" />
        </fig>
        <p>Figure 1. Structure of the microworld.</p>
        <p>The agent’s position and movement derive from that array (index → pixel conversion). For example, cell [<xref ref-type="bibr" rid="B3">3</xref>][<xref ref-type="bibr" rid="B5">5</xref>] becomes (x = 150, y = 90)-useful for fine control of step-by-step advancement. Conversely, for inspection or collisions, a pixel → index conversion is performed. These transformations enable instrumenting different paths according to the control structure (<xref ref-type="fig" rid="fig2">Figure 2</xref>).</p>
        <fig id="fig2">
          <label>Figure 2</label>
          <graphic xlink:href="https://html.scirp.org/file/1680463-rId18.jpeg?20251219094458" />
        </fig>
        <p>Figure 2. General structure of each representative map in the microworld.</p>
        <p>From the base array, representative shapes were built for each structure, and simple markers were used to define the logical-visual “map” (example: L = colored section, B = walkable area, P = agent’s starting position). With this coding, unique patterns were created per structure, differentiating key zones, movement areas, and spawn point.</p>
      </sec>
      <sec id="sec2dot4">
        <title>2.4. User Interface and Parameter Capture</title>
        <p>The GUI was implemented with Swing. Each structure view includes controls to set logical conditions, initial values (e.g., life/energy), iteration parameters (increment/decrement mode, N), and actions per branch/iteration; it also includes buttons to set, start, and reset execution. The values entered by the user are converted to the types required by the visualization engine.</p>
      </sec>
      <sec id="sec2dot5">
        <title>2.5. Object/Agent and State Variables</title>
        <p>The “object” used is a red circle that bridges logic and execution. It has two attributes: energy (affected by the action) and life (used in logical evaluations of conditional structures and loops). Three metaphorical actions were defined (walk, run, hit) that consume 2, 10, and 20 energy units, respectively. The life variable is incremented/decremented to alter the outcome of the condition when appropriate (for example, to continue/stop a loop).</p>
      </sec>
      <sec id="sec2dot6">
        <title>2.6. Class Model Structure and Responsibilities</title>
        <p>To represent the structures, a class model with well-defined responsibilities was established; this was implemented via a JPanel component, and the following classes were defined:</p>
        <p>• Map: Generates the drawing of the environment from the array (includes shapes, walkable areas, and key points).</p>
        <p>• Object: Manages the agent’s state and movement on the map; each structure has its own variant of the move method.</p>
        <p>• Panel: Contains map and object; coordinates rendering, parameter capture, and the execution cycle. This arrangement is replicated for each structure, and the full class diagram is included in the appendices.</p>
      </sec>
    </sec>
    <sec id="sec3">
      <title>3. Results</title>
      <sec id="sec3dot1">
        <title>User Flow</title>
        <p>The application starts with a main menu (<xref ref-type="fig" rid="fig3">Figure 3</xref>), from which one or several structures can be selected for concurrent visualization. This flow supports quick hypothesis testing (“if I change the selector/condition, what happens?”) and comparison across structures.</p>
        <fig id="fig3">
          <label>Figure 3</label>
          <graphic xlink:href="https://html.scirp.org/file/1680463-rId19.jpeg?20251219094459" />
        </fig>
        <p>Figure 3. Screenshot of the application’s main menu.</p>
        <p>The sequence of the agent shows in the moves from bottom to top, activating the action associated with each step (<xref ref-type="fig" rid="fig4">Figure 4</xref>). Objective: to make the order and directionality of execution (start-end) evident.</p>
        <fig id="fig4">
          <label>Figure 4</label>
          <graphic xlink:href="https://html.scirp.org/file/1680463-rId20.jpeg?20251219094458" />
        </fig>
        <p>Figure 4. Visualization of the sequential structure.</p>
        <p>Simple selection: at the branch, the system evaluates the condition and the agent takes the true (right) or false (left) path. Available parameters: life, energy, logical condition, and action per branch (<xref ref-type="fig" rid="fig5">Figure 5</xref>).</p>
        <fig id="fig5">
          <label>Figure 5</label>
          <graphic xlink:href="https://html.scirp.org/file/1680463-rId21.jpeg?20251219094458" />
        </fig>
        <p>Figure 5. Visualization of the simple selection structure.</p>
        <p>Multiple selection: the user sets the selector’s value and the action for each case; if there is no match, the default route is executed (<xref ref-type="fig" rid="fig6">Figure 6</xref>).</p>
        <fig id="fig6">
          <label>Figure 6</label>
          <graphic xlink:href="https://html.scirp.org/file/1680463-rId22.jpeg?20251219094458" />
        </fig>
        <p>Figure 6. Visualization of the multiple selection structure.</p>
        <p>Arithmetic progression: the agent traces a cyclic movement—rightward if incrementing and leftward if decrementing. One iteration is completed upon passing the starting point (<xref ref-type="fig" rid="fig7">Figure 7</xref>).</p>
        <fig id="fig7">
          <label>Figure 7</label>
          <graphic xlink:href="https://html.scirp.org/file/1680463-rId23.jpeg?20251219094459" />
        </fig>
        <p>Figure 7. Visualization of the arithmetic progression structure.</p>
        <p>While: at the start of each pass, the agent evaluates the condition; if true, it continues; if false, it stops (<xref ref-type="fig" rid="fig8">Figure 8</xref>). Parameters: life, condition, and action per iteration.</p>
        <fig id="fig8">
          <label>Figure 8</label>
          <graphic xlink:href="https://html.scirp.org/file/1680463-rId24.jpeg?20251219094458" />
        </fig>
        <p>Figure 8. Visualization of the while structure.</p>
        <p>Repeat-Until: guarantees at least one iteration and evaluates the condition at the end of the cycle, keeping parameters and movement analogous to “while” (<xref ref-type="fig" rid="fig9">Figure 9</xref>).</p>
        <fig id="fig9">
          <label>Figure 9</label>
          <graphic xlink:href="https://html.scirp.org/file/1680463-rId25.jpeg?20251219094459" />
        </fig>
        <p>Figure 9. Visualization of the repeat-until structure.</p>
        <p>An important point is that encapsulating repainting inside a continuous while loop produced an “instant” visualization of the traversal, with no observable intermediate steps, which negated the tool’s didactic value. The solution was to adopt timers that schedule position updates and repainting at millisecond intervals, thus achieving incremental, controlled execution animation. This decision also allowed the inclusion of supportive effects (e.g., color changes) that reinforce the reading of the flow without saturating the scene.</p>
        <p>Finally, each phase was declared complete upon meeting the predefined criteria: 1) environment with the expected appearance/functionality, 2) interface faithful to the semantics, 3) valid/effective parameter capture, and 4) stable integration that lets users observe the full execution and the effects of each parameter on the agent’s behavior.</p>
      </sec>
    </sec>
    <sec id="sec4">
      <title>4. Discussion</title>
      <p>The microworld developed in this article demonstrates that it is possible to visually represent traditionally abstract concepts in structured programming, provided that elements and techniques that stimulate user perception are combined (simple shapes/colors, object trajectories, recognizable actions). This strategy not only makes the semantics of control structures visible but also enables real-time exploration and verification practices.</p>
      <p>The modular architecture, grid-based array, and timed rendering loop constitute a “technical scaffold” that enables step-by-step observation of execution and student manipulation of parameters. These decisions translate code logic into clear, reproducible visual cues, fostering early understanding and confidence when entering the world of structured programming.</p>
      <p>From a pedagogical perspective, information visualization acts as a mediator between perception and reasoning, as it reduces the inferences students must make and offers a concrete basis for thinking. When visual elements maintain a stable correspondence among shape, color, position, and movement, the semantic anchoring of abstract concepts is strengthened. Likewise, integrating common actions such as walking, running, and hitting adds a layer of meaning close to everyday experience, making it easier to remember rules and supporting the construction of mental models.</p>
      <p>Another point worth highlighting is that Java—a high-level language applied to didactic, low-complexity scenarios—together with the combination of timers, a clear class model, and a well-defined internal structure, is sufficient to achieve a smooth and formative visual experience.</p>
    </sec>
    <sec id="sec5">
      <title>5. Conclusions</title>
      <p>As a future line of work, it is advisable to apply the project to a group of students in order to obtain empirical support for its functionality; this would increase its reliability and validity as a scaffolding tool for novice programming students. Likewise, it is important to consider that this tool addresses a specific set of structures (sequence, simple/multiple selection, and loops) without nesting or combined cases, and it does not cover other key aspects of execution (e.g., memory, scope, method calls/recursion, error handling, or concurrency), so it cannot be generalized to other contexts.</p>
      <p>On the other hand, the selected visual metaphors and actions (walking, running, hitting), together with the 15 × 15 grid and the timed rendering, prioritize clarity over realism; however, they may not be universal across different cultural contexts nor fully accessible (e.g., color blindness, screen readers). Finally, this tool, in accordance with learning styles, can be integrated as part of an Intelligent Tutoring System, supporting the teaching-learning process.</p>
    </sec>
    <sec id="sec6">
      <title>Acknowledgements</title>
      <p>This work represents the research conducted by Orlando Martín Pérez-Hernández to obtain a Bachelor’s degree in Computer Engineering from Universidad Autónoma Metropolitana-Azcapotzalco. It is also part of the divisional project, “Design of Intelligent Interfaces for Simulating the Behavior of Living or Animate Organisms,” from the same University.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <title>References</title>
      <ref id="B1">
        <label>1.</label>
        <citation-alternatives>
          <mixed-citation publication-type="journal">Laureano-Cruces, A.L. and Barceló-Aspeitia, A.A. (2003) Formal Verification of Multi-Agent Systems Behaviour Emerging from Cognitive Task Analysis. <italic>Journal</italic><italic>of</italic><italic>Experimental</italic><italic>&amp;</italic><italic>Theoretical</italic><italic>Artificial</italic><italic>Intelligence</italic>, 15, 407-431. https://doi.org/10.1080/0952813031000119719 <pub-id pub-id-type="doi">10.1080/0952813031000119719</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1080/0952813031000119719">https://doi.org/10.1080/0952813031000119719</ext-link></mixed-citation>
          <element-citation publication-type="journal">
            <person-group person-group-type="author">
              <string-name>Laureano-Cruces, A.L.</string-name>
              <string-name>Aspeitia, A.A.</string-name>
            </person-group>
            <year>2003</year>
            <article-title>Formal Verification of Multi-Agent Systems Behaviour Emerging from Cognitive Task Analysis</article-title>
            <source>Journal of Experimental &amp; Theoretical Artificial Intelligence</source>
            <volume>15</volume>
            <pub-id pub-id-type="doi">10.1080/0952813031000119719</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B2">
        <label>2.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Yáñez-Castillo, J.A., Laureano-Cruces, A.L. and Garmendia-Ramírez, F. (2017) Diseño emocional de elementos interactivos visuales: Una perspectiva para mejorar la interacción de los inmigrantes digitales con la computadora personal. <italic>Revista Tecnología &amp; Diseño</italic>, No. 8, 37-55.</mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Castillo, J.A.</string-name>
              <string-name>Laureano-Cruces, A.L.</string-name>
            </person-group>
            <year>2017</year>
            <article-title>Diseño emocional de elementos interactivos visuales: Una perspectiva para mejorar la interacción de los inmigrantes digitales con la computadora personal</article-title>
            <source>Revista Tecnología &amp; Diseño</source>
            <volume>37</volume>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B3">
        <label>3.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Mladenović, M., Žanko, Ž. and Aglić Čuvić, M. (2020) The Impact of Using Program Visualization Techniques on Learning Basic Programming Concepts at the K-12 Level. <italic>Computer</italic><italic>Applications</italic><italic>in</italic><italic>Engineering</italic><italic>Education</italic>, 29, 145-159. https://doi.org/10.1002/cae.22315 <pub-id pub-id-type="doi">10.1002/cae.22315</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1002/cae.22315">https://doi.org/10.1002/cae.22315</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <year>2020</year>
            <article-title>The Impact of Using Program Visualization Techniques on Learning Basic Programming Concepts at the K-12 Level</article-title>
            <source>Computer Applications in Engineering Education</source>
            <volume>29</volume>
            <pub-id pub-id-type="doi">10.1002/cae.22315</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B4">
        <label>4.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Qian, Y. and Lehman, J. (2017) Students’ Misconceptions and Other Difficulties in Introductory Programming: A Literature Review. <italic>ACM</italic><italic>Transactions</italic><italic>on</italic><italic>Computing</italic><italic>Education</italic>, 18, 1-24. https://doi.org/10.1145/3077618 <pub-id pub-id-type="doi">10.1145/3077618</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1145/3077618">https://doi.org/10.1145/3077618</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Qian, Y.</string-name>
              <string-name>Lehman, J.</string-name>
            </person-group>
            <year>2017</year>
            <article-title>Students’ Misconceptions and Other Difficulties in Introductory Programming: A Literature Review</article-title>
            <source>ACM Transactions on Computing Education</source>
            <volume>18</volume>
            <pub-id pub-id-type="doi">10.1145/3077618</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B5">
        <label>5.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Sorva, J. (2013) Notional Machines and Introductory Programming Education. <italic>ACM</italic><italic>Transactions</italic><italic>on</italic><italic>Computing</italic><italic>Education</italic>, 13, 1-31. https://doi.org/10.1145/2483710.2483713 <pub-id pub-id-type="doi">10.1145/2483710.2483713</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1145/2483710.2483713">https://doi.org/10.1145/2483710.2483713</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Sorva, J.</string-name>
            </person-group>
            <year>2013</year>
            <article-title>Notional Machines and Introductory Programming Education</article-title>
            <source>ACM Transactions on Computing Education</source>
            <volume>13</volume>
            <pub-id pub-id-type="doi">10.1145/2483710.2483713</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B6">
        <label>6.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Vuckovic, M. and Schmidt, J. (2022) On Sense Making and the Generation of Knowledge in Visual Analytics. <italic>Analytics</italic>, 1, 98-116. https://doi.org/10.3390/analytics1020008 <pub-id pub-id-type="doi">10.3390/analytics1020008</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3390/analytics1020008">https://doi.org/10.3390/analytics1020008</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Vuckovic, M.</string-name>
              <string-name>Schmidt, J.</string-name>
            </person-group>
            <year>2022</year>
            <article-title>On Sense Making and the Generation of Knowledge in Visual Analytics</article-title>
            <source>Analytics</source>
            <volume>1</volume>
            <pub-id pub-id-type="doi">10.3390/analytics1020008</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B7">
        <label>7.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Wall, E., Agnihotri, M., Matzen, L., Divis, K., Haass, M., Endert, A., <italic>et al.</italic> (2019) A Heuristic Approach to Value-Driven Evaluation of Visualizations. <italic>IEEE</italic><italic>Transactions</italic><italic>on</italic><italic>Visualization</italic><italic>and</italic><italic>Computer</italic><italic>Graphics</italic>, 25, 491-500. https://doi.org/10.1109/tvcg.2018.2865146 <pub-id pub-id-type="doi">10.1109/tvcg.2018.2865146</pub-id><pub-id pub-id-type="pmid">30188826</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1109/tvcg.2018.2865146">https://doi.org/10.1109/tvcg.2018.2865146</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Wall, E.</string-name>
              <string-name>Agnihotri, M.</string-name>
              <string-name>Matzen, L.</string-name>
              <string-name>Divis, K.</string-name>
              <string-name>Haass, M.</string-name>
              <string-name>Endert, A.</string-name>
            </person-group>
            <year>2019</year>
            <article-title>A Heuristic Approach to Value-Driven Evaluation of Visualizations</article-title>
            <source>IEEE Transactions on Visualization and Computer Graphics</source>
            <volume>25</volume>
            <pub-id pub-id-type="doi">10.1109/tvcg.2018.2865146</pub-id>
            <pub-id pub-id-type="pmid">30188826</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B8">
        <label>8.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Viana, V.C. (2020) Sistema web para la obtención y visualización de información sobre Unidades de Enseñanza y Aprendizaje. Proyecto terminal, División de Ciencias Básicas e Ingeniería, Universidad Autónoma Metropolitana Azcapotzalco, Mexico.</mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Viana, V.C.</string-name>
              <string-name>Azcapotzalco, M</string-name>
            </person-group>
            <year>2020</year>
            <article-title>Sistema web para la obtención y visualización de información sobre Unidades de Enseñanza y Aprendizaje</article-title>
            <source>Proyecto terminal</source>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B9">
        <label>9.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Sánchez, B.R. (2020) Presentación de estadísticas académicas con base en criterios de ingreso utilizando técnicas de visualización de información. Proyecto terminal, División de Ciencias Básicas e Ingeniería, Universidad Autónoma Metropolitana Azcapotzalco, Mexico.</mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Azcapotzalco, M</string-name>
            </person-group>
            <year>2020</year>
            <article-title>Presentación de estadísticas académicas con base en criterios de ingreso utilizando técnicas de visualización de información</article-title>
            <source>Proyecto terminal</source>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B10">
        <label>10.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Omer, U., Farooq, M.S. and Abid, A. (2021) Introductory Programming Course: Review and Future Implications. <italic>PeerJ</italic><italic>Computer</italic><italic>Science</italic>, 7, e647. https://doi.org/10.7717/peerj-cs.647 <pub-id pub-id-type="doi">10.7717/peerj-cs.647</pub-id><pub-id pub-id-type="pmid">34395865</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.7717/peerj-cs.647">https://doi.org/10.7717/peerj-cs.647</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Omer, U.</string-name>
              <string-name>Farooq, M.S.</string-name>
              <string-name>Abid, A.</string-name>
            </person-group>
            <year>2021</year>
            <article-title>Introductory Programming Course: Review and Future Implications</article-title>
            <source>PeerJ Computer Science</source>
            <volume>7</volume>
            <pub-id pub-id-type="doi">10.7717/peerj-cs.647</pub-id>
            <pub-id pub-id-type="pmid">34395865</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B11">
        <label>11.</label>
        <citation-alternatives>
          <mixed-citation publication-type="thesis">Yáñez-Castillo, J.A. (2016) De lo efectivo a lo afectivo. Master’s Thesis, Universidad Autónoma Metropolitana.</mixed-citation>
          <element-citation publication-type="thesis">
            <person-group person-group-type="author">
              <string-name>Castillo, J.A.</string-name>
              <string-name>Thesis, U</string-name>
            </person-group>
            <year>2016</year>
            <article-title>De lo efectivo a lo afectivo</article-title>
            <source>Master’s Thesis</source>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B12">
        <label>12.</label>
        <citation-alternatives>
          <mixed-citation publication-type="thesis">Torres-Velasco, E.O. (2021) Visualización a través del razonamiento cualitativo: un fenómeno de astrofísica. Master’s Thesis, Universidad Autónoma Metropolitana.</mixed-citation>
          <element-citation publication-type="thesis">
            <person-group person-group-type="author">
              <string-name>Torres-Velasco, E.O.</string-name>
              <string-name>Thesis, U</string-name>
            </person-group>
            <year>2021</year>
            <article-title>Visualización a través del razonamiento cualitativo: un fenómeno de astrofísica</article-title>
            <source>Master’s Thesis</source>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B13">
        <label>13.</label>
        <citation-alternatives>
          <mixed-citation publication-type="web">Laureano-Cruces, A.L., Serrano-Muñoz, R., Castillo-Bernal, A.S., Sanchez-Guerrero, L. and Ramírez-Rodríguez, J. (2025) Empathy through the Visualization of Emotions: Story of a Toltec Prince. Association for the Advancement of Computing in Education (AACE), 634-643. https://www.learntechlib.org/primary/p/211137/</mixed-citation>
          <element-citation publication-type="web">
            <person-group person-group-type="author">
              <string-name>Laureano-Cruces, A.L.</string-name>
              <string-name>Castillo-Bernal, A.S.</string-name>
              <string-name>Sanchez-Guerrero, L.</string-name>
            </person-group>
            <year>2025</year>
            <article-title>Empathy through the Visualization of Emotions: Story of a Toltec Prince</article-title>
            <source>Association for the Advancement of Computing in Education (AACE)</source>
            <volume>634</volume>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B14">
        <label>14.</label>
        <citation-alternatives>
          <mixed-citation publication-type="confproc">Laureano-Cruces, A.L., Yáñez-Castillo, A., Sánchez-Guerrero, L., Ramí-rez-Rodríguez, J. and Mora-Torres, M. (2018) Examples for a Virtual Micro World: Visualization of Abstract Concepts. <italic>World Conf</italic><italic>erence</italic><italic>on E</italic>- <italic>Learning in Corporate</italic>, <italic>Government</italic>, <italic>Healthcare</italic>, <italic>and Higher Education</italic>, Las Vegas, 15-18 October 2018, 1432-1437.</mixed-citation>
          <element-citation publication-type="confproc">
            <person-group person-group-type="author">
              <string-name>Laureano-Cruces, A.L.</string-name>
              <string-name>Castillo, A.</string-name>
              <string-name>Guerrero, L.</string-name>
              <string-name>Mora-Torres, M.</string-name>
              <string-name>Corporate, G</string-name>
              <string-name>Education, L</string-name>
            </person-group>
            <year>2018</year>
            <article-title>Examples for a Virtual Micro World: Visualization of Abstract Concepts</article-title>
            <source>World Conference on E-Learning in Corporate</source>
            <volume>15</volume>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B15">
        <label>15.</label>
        <citation-alternatives>
          <mixed-citation publication-type="book">Vygotsky, L.S. (1978) Mind in Society: The Development of Higher Psychological Processes. Harvard University Press.</mixed-citation>
          <element-citation publication-type="book">
            <person-group person-group-type="author">
              <string-name>Vygotsky, L.S.</string-name>
            </person-group>
            <year>1978</year>
            <article-title>Mind in Society: The Development of Higher Psychological Processes</article-title>
          </element-citation>
        </citation-alternatives>
      </ref>
    </ref-list>
  </back>
</article>