1 of 17

1. Counter

2 of 17

Contador: permite incrementar, disminuir o resetear la cuenta.

Cuenta: 0

incremento: Incrementa en 1 la cuenta.

decremento: resta 1 a la cuenta.

obtener_cuenta: Devuelve el valor del contador.

resetear: regresa el contador a 0.

Memoria (Storage)

Método de escritura

Método de lectura

3 of 17

Incremento()

Decremento()

obtener_cuenta()

Respuesta: 1

Resetear()

obtener_cuenta()

Respuesta: 0

obtener_cuenta()

Respuesta: 2

obtener_cuenta()

Respuesta: 1

obtener_cuenta()

Respuesta: 0

Incremento()

T1

T2

T3

T4

T5

4 of 17

Inicio

cuenta():

n

incremento()

decremento()

resetear()

cuenta():

n + 1

cuenta():

n - 1

cuenta():

0

5 of 17

6 of 17

7 of 17

Acción

Instrucción

Storage

cuenta = 1

cuenta = 1

cuenta = 0

cuenta = 1

cuenta = 0

Respuesta

¿En cuánto va la cuenta?

Sumar 1

Restar 1

Volver la cuenta a cero

Sumar 1

Incremento()

Obtener_cuenta()

Decremento()

Incremento()

Resetear()

Cuenta = 1

8 of 17

2. Libro de visitas (guest book)

9 of 17

Libro de visitas: cada invitado firma, deja un mensaje y una donación al ingresar.

[Firma,

Mensaje,

Donación (Sí/No)]

addMessage(texto): guarda un mensaje

getMessage: Devuelve los últimos 10 mensajes.

Memoria (Storage)

Método de escritura

Método de lectura

10 of 17

addMessage(“hola”)

getMessage()

Respuesta:

{User1.near , “hola”,

No}

addMessage(“felicidades”)

T1

T2

T3

T4

T5

getMessage()

Respuesta:

addMessage(“mensaje de prueba”)

addMessage(“…”)

getMessage()

Respuesta:

{User1.near , “hola”,

No}

{jose.near , “felicidades”,

No}

getMessage()

Respuesta:

{User1.near , “hola”,

No}

{jose.near , “felicidades”,

No}

{xxx.near , “mensaje de prueba”,

No}

getMessage()

Respuesta:

{User1.near , “hola”,

No}

{jose.near , “felicidades”,

No}

{xxx.near , “mensaje de prueba”,

No}

{yyy.near , “…”,

No}

11 of 17

Inicio

addMessage(“hola”)

getMessage()

{User1.near , “hola”,

No}

12 of 17

13 of 17

14 of 17

Acción

Instrucción

Storage

{“User1”, “hola”, “No”}

Respuesta

User1 escribe “hola” sin un depósito

User2 escribe “Felicitaciones” con 1 depósito de 1 Near

User3 escribe “Hi” sin un depósito

User4 pide la lista de registros

{“User1”, “hola”, “No”}

{“User2”, “Felicitaciones”, “Sí”, 1}

{“User1”, “hola”, “No”}

{“User2”, “Felicitaciones”, “Sí”, 1}

{“User3”, “Hi”, “No”}

{“User1”, “hola”, “No”}

{“User2”, “Felicitaciones”, “Sí”, 1}

{“User3”, “Hi”, “No”}

{“User1”, “hola”, “No”}

{“User2”, “Felicitaciones”,

“Sí”, 1}

{“User3”, “Hi”, “No”}

addMessage(“hola”)

addMessage(“Felicitaciones”, 1)

addMessage(“hi”)

getMessage()

15 of 17

2. Minga DAO

16 of 17

17 of 17

Acción

Instrucción

Storage

{“Proyecto1, “Otros datos”, votos 0 }

Respuesta

User1 lista proyecto1

User2 lista proyecto2

User3 vota por proyecto1

User4 vota por proyecto1

User1 revisa cómo van

las votaciones

createProject(“proyecto1”,

“otros datos”)

createProject(“proyecto2”,

“otros datos”)

avalProject(“proyecto1”)

avalProject(“proyecto1”)

getProjects()

{“Proyecto1, “Otros datos”, votos 0 }

{“Proyecto2, “Otros datos”, votos 0 }

{“Proyecto1, “Otros datos”, votos 1 }

{“Proyecto2, “Otros datos”, votos 0 }

{“Proyecto1, “Otros datos”, votos 2 }

{“Proyecto2, “Otros datos”, votos 0 }

{“Proyecto1, “Otros datos”, votos 2 }

{“Proyecto2, “Otros datos”, votos 0 }

{“Proyecto1, “Otros datos”, votos 2 }

{“Proyecto2, “Otros datos”, votos 0 }