Entrega 1 - tatianamolinari/semideas-crowdfunding Wiki

Original URL: https://github.com/tatianamolinari/semideas-crowdfunding/wiki/Entrega-1

Diagrama casos de uso

Referencias:

Roles:

Existen 3 tipos de roles en el sistema:

Casos de uso

Ver campaña

Objetivo
Visualizar los datos principales de una campaña pre existente desde solidity y datos mock que son los que luego se visualizarían desde IPFs.

Actores

Pre-condición
El usuario tiene instalada la extensión de metamask y está logueado o se loguea al abrirse el pop-up de metamask cuando carga la página.

Flujo Principal

  1. El usuario entra en la pagina principal de la página y espera el tiempo de carga de datos.
  1. El usuario visualiza los datos principales de la campaña y puede acceder al menú lateral de navegación.

Flujos de excepción

E1: el usuario no seleccionó la red correcta en metamask

  1. El sistema muestra un error en el que informa que debe elegir la red correcta y des habilita la navegación de la página.
  2. El usuario selecciona la red correcta en metamask y refresca la página.
  3. El flujo de ejecución sigue por el punto 2 del flujo principal.

Contribución

Objetivo
Contribuir con una campaña.

Actores

Pre-condición
El usuario tiene instalada la extensión de metamask, está logueado y en la pantalla de la visualización de la campaña.

Flujo Principal

  1. El usuario hace click en el botón "Contribuir".
  2. El sistema muestra una modal con un input para agregar la contribución que desea hacer el usuario.
  1. El usuario ingresa el monto y hace click en el botón "Aceptar" y el botón para contribuir es deshabilitado.
  1. El browser abre la ventana de metamask para autorizar la transacción.
  1. Una vez minado el bloque con la transacción la pantalla refresca los datos principales del contrato y desaparece el botón de contribución.

Flujos de excepción

E1: el monto ingresado es menor al mínimo

  1. El sistema muestra una ventana con error en el que informa que debe ingresar un monto mayor al mínimo.
  2. El usuario selecciona "Aceptar" y el flujo de ejecución sigue por el punto 2 del flujo principal. E2: el usuario no acepta la transacción desde metamask
  3. El sistema muestra un error en el que informa que para concluir la acción correctamente debe aceptar la acción desde metamask.
  4. El usuario hace click en "Aceptar" o cierra el mensaje.
  5. Si el usuario desea contribuir con la campaña el flujo de ejecución sigue por el punto 1 del flujo principal.

Post-condición