CR1-S04 · Apps que ayudan · Learn

Back to your course / CR1-S04

Computing and Robotics · 1.º ESO · Learn

Apps that help

A useful application helps complete a task and makes its responses understandable. In nine paired sessions you will design and program with MIT App Inventor, using school-managed access and fictional data. Learn to connect interface, event, value and result before adding features.

9 planned lessonsCR1-S04
Understand the idea. Design, test and explain your solution.

Your mission

Create ‘My classroom helper’, a block-based app with two screens or views, buttons, a variable and a condition. The introductory route uses Home and Help within Screen1. Include a list or reminder, a clearly simulated reading and usage guidance. Submit the .aia project, counting and navigation tests, correction and an improvement observed with another pair.

Original illustration of students planning and testing a computing project.
Ilustración original de apoyo visual · Sintaxis Divergente, 2026.

Read the explanation, study the diagram and try the activity in each section. You can choose another version at any time.

Your tools

Use Google Docs for written explanations and diagrams.net for diagrams. Save the editable file as well as the evidence requested in each task.

4.1. Design for a person and a task

Learn · theory and practice

An application combines an interface and rules for completing a task. The interface includes what a person sees and uses: controls, text and messages. Before choosing buttons, describe a need. Preparing materials without forgetting one is a task; having many screens is a design choice that does not yet explain usefulness. Represent use through three moments: opening and understanding, acting, and reviewing the result. This route helps choose components and remove elements without a function.

A requirement specifies behavior we can check. ‘Show how many materials are missing’ supports test cases; ‘look nice’ does not establish an expected response. Messages should explain both what to do and what just happened. Color can reinforce text but should not be the only signal. Readable lettering, specific labels and clear navigation help different people from the first sketch. Investigating a need does not require names or personal habits: discussing a fictional classroom task supplies enough context for this project.

  1. Person and task
  2. Need
  3. Usage route
  4. Testable requirement
Original diagram · Sintaxis Divergente

A worked example

A fictional lending app has a ‘Yes’ button without a visible question. Another pair cannot tell whether it confirms a return or requests help. More colors do not solve the problem. A label naming the action and a subsequent message explain start and result. The team checks this by asking someone to complete the same task without pointing to controls.

Your turn

  1. In Google Docs describe a difficulty in a classroom task and consult another pair without recording personal data.
  2. In diagrams.net draw the first state, action and result; write two testable requirements.
  3. Review labels and messages so they communicate through text rather than color alone.
Pause and check

How does ‘add a button’ differ from defining a task the user can complete?

↑ Back to the index

4.2. Components, properties and events

Learn · theory and practice

In App Inventor‘s Designer we place components and set properties such as text, size and arrangement. In Blocks we program responses. A property describes an aspect or state of a component; an event identifies something that can launch instructions. A button’s Click event occurs when it is tapped. A label displays information, and a CheckBox maintains a checked or unchecked state. Components have different functions even when occupying similar screen areas. Changing a label’s initial text does not itself program a response to a button.

Internal names such as BotonAyuda or EtiquetaResultado identify pieces when reading blocks. Visible wording is for the user and need not match those names. This distinction avoids exposing unnecessary technical instructions. Responding to an event can change another component‘s property, linking action and result. Building a small screen and testing one event lets us investigate each part before adding counting and navigation. The emulator or school device shows execution; the Designer represents preparation of the interface.

  1. User action
  2. Click event
  3. Blocks
  4. Updated property
  5. Visible message
Original diagram · Sintaxis Divergente

A worked example

A label initially displays ‘Pending’. The Designer keeps that text even when a nearby button says ‘Review’. Changing it during use requires connecting the button event with the label’s Text property. This separates three ideas: the component‘s existence, its initial value and its behavior when the user acts. Each is checked in a different part of the project.

App Inventor 2: Repaso a la Interfaz de Diseño

Published by: Programamos · Open on YouTube

Watch in short sections. Connect one explanation with the diagram and try the example in this section. The written theory lets you complete the activity without playing the video.

The video keeps its original spoken language. Use the captions available in the player if they help.

Your turn

  1. In App Inventor create a trial project with a button, label and CheckBox; use clear internal names and understandable visible text.
  2. Program a button event that changes the label’s text; predict and test in the prepared emulator or device.
  3. In Google Docs identify component, property, event and test result; save an initial .aia export.
Pause and check

Why is changing a button’s internal name different from programming its event or writing its visible text?

↑ Back to the index

4.3. Represent state and recalculate

Learn · theory and practice

An application’s state describes its current situation. In a materials list, checkboxes indicate which items are ready, and a variable can retain a count during execution. Pressing Check starts an action, but does not represent a new item. If the boxes stay unchanged, checking again should describe the same situation. Counting presses retains a history of actions; counting checked boxes answers a question about the present. That difference determines which value we need to calculate.

To obtain the current count, we can start from zero at each check and inspect which boxes are checked. The result then depends on the materials represented at that moment rather than how often the button was pressed. Missing items relate to the total number of items and the number prepared. A condition distinguishes whether nothing is missing or something remains. Unchecking also changes the state: allowing this correction keeps the response consistent when the person revises their selection.

The list and its calculation form a whole. Adding an item affects components, counting, the completion condition, instructions and tests. Reviewing these relationships prevents the screen from promising a function the blocks do not yet represent. We investigate this consistency while the app is in use. A variable in memory does not guarantee that data survives closing; permanent storage would be another function requiring its own decisions and tests.

  1. Current checkboxes
  2. Count from zero
  3. Total and prepared
  4. Condition
  5. Revisable result
Original diagram · Sintaxis Divergente

A worked example

A trial list has two items: folder and card. Only the folder is checked. Checking twice should describe the same state, not two prepared folders. If the number rises without checkbox changes, the calculation is accumulating checks. Unchecking afterward tests another requirement: the response must reflect corrections as well as progress toward completing the list.

App Inventor 3.2: Mi primera App (Bloques)

Published by: Programamos · Open on YouTube

Watch in short sections. Connect one explanation with the diagram and try the example in this section. The written theory lets you complete the activity without playing the video.

The video keeps its original spoken language. Use the captions available in the player if they help.

Your turn

  1. In Google Docs prepare cases with no, some and all boxes checked, plus repeated Check presses and a correction.
  2. In App Inventor build state counting with a variable and condition; predict each case and run it in the emulator.
  3. Propose one extra item, identify all affected parts and test a variant in a copy without changing the main assignment requirements.
Pause and check

Why can counting clicks and counting prepared materials give different results even with the same on-screen button?

↑ Back to the index

4.4. Two views with a way back

Learn · theory and practice

A view organizes an area of the interface for a particular purpose. Home can contain the list and result, while Help explains how to use them. In the introductory route, both are built with two vertical arrangements inside Screen1. Each arrangement groups components and has a Visible property indicating whether it is shown. Changing views changes the presentation of that same screen; it focuses attention on the task or its explanation without mixing every element at once.

Navigation connects an action with two coordinated changes: going to Help shows that group and hides Home; Back does the reverse. Hiding one area without showing the other can leave an apparently empty screen. Showing both may make it harder to recognize where we are and what to do. The return must therefore be easy to find, and Help must explain the task, messages and limits of simulated data. Its usefulness depends on the person being able to continue afterward.

Even when a view is hidden, its components and variables still belong to the same execution. A checkbox can remain checked on return because a new component has not been created. This retention during use explains the observation, but does not establish that data survives fully closing the app: hiding does not save to permanent storage. Drawing the routes and testing both directions checks navigation and state. Encountering a dead end is a functional fault, just like obtaining an incorrect count.

  1. Home visible
  2. Help event
  3. Help visible
  4. Back event
  5. Home with its state
Original diagram · Sintaxis Divergente

A worked example

A trial app hides its list to show instructions. On return, a selection remains checked because the component was not recreated. The pair correctly explains this retention during use. Claiming that it survives closure would require another mechanism and test. Observed navigation cannot establish storage that has not been built.

Your turn

  1. In diagrams.net draw Home, Help, forward and return actions and which arrangement is visible in each case.
  2. In App Inventor build both views inside Screen1 and check that neither an empty screen nor overlapping areas appear.
  3. Make a selection, visit Help and return; record in Google Docs what state is retained and what you have not tested about closure and storage.
Pause and check

Why does retaining a checkbox after returning from Help not demonstrate that the app remembers the selection after closing?

↑ Back to the index

4.5. Represent a connected device

Learn · theory and practice

A connected system can move information from a sensor and board to an application through communication. This chain must obtain, send, receive and interpret the value. Our project represents part of it through simulation: a button changes a variable and the interface displays the result. The number comes from neither a board nor a physical connection. It must appear beside a SIMULATED DATA label. A sensor drawing or a button named Connect does not demonstrate device communication.

Simulation provides known cases for checking messages and conditions before implementing a connection. The teaching values 20 and 80 represent two trial inputs without an assigned physical unit. If the interface uses a threshold, explain each response and what happens at the boundary. Replacing simulated input with a real source would require reviewing communication, format and the response to missing information. An old value should not be presented as a new reading. Drawing the complete chain distinguishes implemented parts from represented ones.

  1. Trial variable
  2. Labeled value
  3. Interface rule
  4. Message
  5. Simulation limit
Original diagram · Sintaxis Divergente

A worked example

A panel displays a number after a button press and someone thinks it measures the classroom. The team explains that its source is a program variable and keeps the simulated label beside it. Alert logic can be tested with that known input. The test establishes neither sensor accuracy nor receipt of data from a board.

Your turn

  1. In App Inventor prepare a trial variable alternating between 20 and 80 and display it with SIMULATED DATA.
  2. Predict and test its message or condition, including equality if using a threshold; record the source in Google Docs.
  3. Draw sensor, board, communication and app in diagrams.net; mark implemented and represented parts and the missing response to absent real data.
Pause and check

What have you tested when the alert responds to 20 and 80, and what have you not demonstrated about a real IoT device?

↑ Back to the index

4.6. Test from the user’s perspective

Learn · theory and practice

A functional test checks a rule: counting, correction, navigation or simulated-value change. A usability test observes whether another person understands how to complete a task. The builder already knows where controls are, so their ease of use does not represent the whole audience. Give the prepared emulator or device to another pair and state a task without pointing at buttons. Record hesitation, message interpretation and whether they find a return. Describe the design rather than blaming the tester.

Connect improvement to the observed problem. A specific label can aid understanding; recalculation prevents accumulation; moving Back helps navigation. Repeat the task and check another function for unwanted effects. Keep the .aia source project through App Inventor export and import. A screenshot shows one state, whereas .aia preserves editable components and blocks; it differs from a compiled installable app. A01 includes design and an executed microapp; A02 combines product, tests and improvement. Both retain sources, permissions, minimum data and individual explanation.

  1. Unguided task
  2. Observed difficulty
  3. Justified change
  4. Repeated task
  5. Rechecked functions
Original diagram · Sintaxis Divergente

A worked example

A person looks for Help at the top, but its button is below a long passage. The team records the hesitation and changes placement and wording in a copy. It repeats the task to check whether the route is now found. It also checks counting: improved navigation does not establish untested logic.

Your turn

  1. In Google Docs prepare functional tests for counting, repeated pressing, correction, Help/Back and simulated data with expectations and observations.
  2. Ask another pair to complete an emulator task unguided; record a difficulty, change one part and repeat the task and a functional check.
  3. Export .aia from App Inventor and check import in the prepared environment; keep instructions, sources and an individual explanation.
Pause and check

What must a usability observation record to justify an improvement, and why does a screenshot not replace the .aia project?

↑ Back to the index

Your project and submissions

A01 · Design the solution

  1. Create CR1-S04_A01_Apellidos in Google Docs with need, user and requirements for My classroom helper, using minimal fictional data.
  2. In diagrams.net draw two views and navigation; connect components, properties, events, variable, condition and each button’s function.
  3. Explain current-state counting, correction and simulated data origin. Prepare at least three user tests with expected results.
  4. Include an executed workshop 03 or 04 microapp, its file and observations; record sources, permissions, partner review and individual contribution.

What to submit

  • Dossier with sketch, editable map and PNG, minimal data and counting/navigation algorithm.
  • Executed .aia microapp, prediction and observation of at least one event.
  • Three planned tests, sources and permissions, contributions and explanation of interface-event-value-response.

A02 · My classroom helper

  1. Build the revised App Inventor app with two views, buttons, counting, variable and condition; display a labeled simulated reading and explain its limit.
  2. In CR1-S04_A02_Apellidos record no, one and three boxes checked, unchecking after completion, repeated Check and Help/Back with state retained during use.
  3. Test with another pair; record an issue, cause, correction and retest. Verify a usability improvement without breaking calculation or navigation.
  4. Export CR1-S04_app_Apellidos.aia and check recovery; submit guide, record and sources. Each partner explains an event, predicts and performs or describes a modification.

What to submit

  • Reviewable .aia project and guide explaining task, navigation, simulated data and limits.
  • Counting, correction, repetition, navigation and simulation tests with expectations and observations.
  • Correction and usability improvement record, permitted resources and individual explanation; the page’s rubrics remain the assessment reference.

Before you submit

  • I connect components and buttons with a specific need.
  • I distinguish property, event, variable and response and trace a button press through blocks.
  • I calculate current state without counting the same item twice and allow correction.
  • I explain state retention during use and why it proves neither persistence nor a real connection.
  • Another pair can use the app and I verify an improvement with a recoverable project. These are self-assessment descriptors, not new official criteria.

Templates and files

Open the blank A01 or A02 template and make your own copy in Google Docs. Keep the editable file from your project platform as well.

These reusable templates help you organise your work. Follow the specific instructions and evidence list for this unit; remove fields that do not apply. The blank master is read-only. Keep your answers private and share them only as your teacher instructs.

A01 · Design the solution

  • Dossier with sketch, editable map and PNG, minimal data and counting/navigation algorithm.
  • Executed .aia microapp, prediction and observation of at least one event.
  • Three planned tests, sources and permissions, contributions and explanation of interface-event-value-response.

A02 · My classroom helper

  • Reviewable .aia project and guide explaining task, navigation, simulated data and limits.
  • Counting, correction, repetition, navigation and simulation tests with expectations and observations.
  • Correction and usability improvement record, permitted resources and individual explanation; the page’s rubrics remain the assessment reference.

Classroom rubrics

The classroom assessment reference is preserved below in its original Spanish. Use the checklist above to prepare your work and ask your teacher about any descriptor you need to clarify.

Consultar la rúbrica de A01

Diseño y microprueba

CYR.1.2.1 Algoritmo reutilizable y trabajo en pareja

Conocer y resolver la variedad de problemas posibles, desarrollando un programa informático y generalizando las soluciones, tanto de forma individual como trabajando en equipo, colaborando y comunicándose de forma adecuada.

Evidencia. Esquema de recuento, microapp ejecutada y aportación individual al diseño.

BandaDesempeño observable
1–2,9El recuento no representa el problema y no puede explicar una parte propia.
3–4,9Relaciona casillas y contador, pero acumula pulsaciones o no distingue lo aportado por cada integrante.
5–6,9Expresa el recuento actual, ejecuta una microprueba y explica su aportación. Revisa la propuesta de su pareja con una razón.
7–8,9Adapta el recuento a una lista de otra longitud y señala qué pasos son generales.
9–10,0Comprueba la adaptación con casos extremos y explica al equipo cómo evitar duplicar lógica.

CYR.1.2.2 Aplicación móvil ajustada a una necesidad

Conocer y resolver la variedad de problemas posibles desarrollando una aplicación móvil, particularizando las soluciones.

Evidencia. Boceto de vistas, botones, datos mínimos y microapp funcional de 03 o 04.

BandaDesempeño observable
1–2,9El boceto no permite realizar la tarea móvil y no identifica la función de los componentes.
3–4,9Hay pantallas, pero faltan eventos o sus acciones no responden a la necesidad elegida.
5–6,9Construye una microapp con componentes y eventos adecuados y relaciona cada botón con la tarea y los datos necesarios.
7–8,9Prueba el recorrido con otra persona y particulariza una instrucción o componente según su dificultad.
9–10,0Adapta la solución a otra lista o destinatario y justifica los cambios de interfaz sin añadir datos innecesarios.

CYR.1.5.1 Funcionamiento interno y uso respetuoso de la app

Conocer la construcción de aplicaciones informáticas y web, entendiendo su funcionamiento interno, de forma segura, responsable y respetuosa.

Evidencia. Relación interfaz evento dato respuesta y revisión de recursos del microprototipo.

BandaDesempeño observable
1–2,9Atribuye la respuesta al aspecto del botón sin identificar el evento o usa datos personales innecesarios.
3–4,9Reconoce un evento, pero no lo relaciona con la variable y el mensaje o deja recursos sin origen.
5–6,9Explica interfaz, evento, variable y respuesta en la microapp, usa datos ficticios y registra origen y permiso de los recursos utilizados.
7–8,9Justifica una decisión de minimización o mensaje accesible y la comprueba en el prototipo.
9–10,0Compara otra forma de organizar la interacción y justifica su efecto en comprensión y privacidad.
Consultar la rúbrica de A02

Producto pruebas y mejora

CYR.1.2.1 Algoritmo reutilizable y trabajo en pareja

Conocer y resolver la variedad de problemas posibles, desarrollando un programa informático y generalizando las soluciones, tanto de forma individual como trabajando en equipo, colaborando y comunicándose de forma adecuada.

Evidencia. App, pruebas repetidas del recuento y explicación de una variante.

BandaDesempeño observable
1–2,9La lógica no calcula los elementos pendientes y no puede seguir una pulsación.
3–4,9Calcula un caso, pero falla al pulsar dos veces o cambiar el número de elementos.
5–6,9Resuelve el recuento, repite pruebas y corrige un fallo. Cada integrante explica una decisión y colabora en la mejora.
7–8,9Generaliza el recuento a una lista distinta y verifica ninguna, algunas y todas las casillas.
9–10,0Resuelve una variante propuesta y justifica la parte reutilizable del algoritmo y la revisión acordada con la pareja.

CYR.1.2.2 Aplicación móvil ajustada a una necesidad

Conocer y resolver la variedad de problemas posibles desarrollando una aplicación móvil, particularizando las soluciones.

Evidencia. Proyecto App Inventor editable y pruebas de recuento navegación y lectura simulada.

BandaDesempeño observable
1–2,9La app no permite completar la tarea o solo se entregan imágenes sin funcionamiento revisable.
3–4,9Funciona parcialmente, pero la navegación bloquea la tarea o se presenta como conexión real la lectura simulada.
5–6,9La app responde a la necesidad, usa componentes y eventos, calcula y permite navegar. Identifica la lectura simulada y prueba con otro usuario.
7–8,9Corrige una dificultad de uso observada y comprueba el recorrido completo sin ayuda del autor.
9–10,0Particulariza la app para otro destinatario y demuestra que conserva cálculo y navegación, explicando las decisiones de componentes.

CYR.1.5.1 Funcionamiento interno y uso respetuoso de la app

Conocer la construcción de aplicaciones informáticas y web, entendiendo su funcionamiento interno, de forma segura, responsable y respetuosa.

Evidencia. App revisable, explicación de un evento, mensajes y revisión de privacidad y recursos.

BandaDesempeño observable
1–2,9No explica el funcionamiento interno o difunde información que no necesita el producto.
3–4,9La app funciona, pero confunde interfaz y lógica o deja mensajes y recursos sin revisar.
5–6,9Explica el recorrido de un evento, conserva archivos editables y aplica mensajes comprensibles, datos mínimos y uso permitido de recursos.
7–8,9Detecta y corrige una incoherencia entre interfaz y lógica o una barrera de comprensión y verifica el cambio.
9–10,0Transfiere el patrón a otra interacción y justifica qué protege su decisión y qué límite mantiene la simulación.

Videos, resources and sources

App Inventor 1: Introducción

Published by: Programamos · Open on YouTube

Watch in short sections. Connect one explanation with the diagram and try the example in this section. The written theory lets you complete the activity without playing the video.

The video keeps its original spoken language. Use the captions available in the player if they help.

App Inventor 3.1: Mi primera App (Diseño)

Published by: Programamos · Open on YouTube

Watch in short sections. Connect one explanation with the diagram and try the example in this section. The written theory lets you complete the activity without playing the video.

The video keeps its original spoken language. Use the captions available in the player if they help.

App inventor: primeros pasos

Published by: rebecaprofedetic · Open on YouTube

Watch in short sections. Connect one explanation with the diagram and try the example in this section. The written theory lets you complete the activity without playing the video.

The video keeps its original spoken language. Use the captions available in the player if they help.

Keep learning

Editorial revision: October 2026.