Podemos extraer todos los datos de nuestro enunciado de la siguiente forma. Tener en cuenta que los roles y actores son los mismos, solo que en HU no tomamos en cuenta el servidor y los actores que surgen por herencia. Las HI y CU son las mismas tambien, solo que no tenemos las que interactuan unicamente con el servidor. Ejemplo, validar DNI o Cargar Noticias.

Tambien podes ver los ejercicios de las practicas en los repositorios de arriba. Sugiero que los intentes hacer por tu cuenta antes de mirar el ejercicio

Quiero aclarar que estos colores los elegi yo porque a mi me gustaron, no es nada especifico de la catedra

Colores Para identificar Color Picker Boxes
Roles/Actores Yellow Color
Historias de Usuario/Casos de uso Orange Color
Datos solicitados o que debe realizar Purple Color
Reglas de negocios/Verifica el sistema Cyan Color

Vamos a extraer los datos del primer y segundo parcial en 2022

Primera Fecha

Primer Parcial

En el parcial recomiendo empezar con HU y despues CU para extraer todo lo que hace el sistema y no confundirnos.

Parcial1

Roles

  • Persona (Usuario no registrado)
  • Usuario

Historias de Usuario Resueltas

Ver Noticias

ID: Ver Noticias

TÍTULO: Como persona quiero ver noticias para informarme

REGLAS DE NEGOCIO:

CRITERIOS DE ACEPTACIÓN: Ver Noticias

Escenario 1: Ver Noticias Exitoso

Dado que se establecio conexión con el servidor y hay noticias para mostrar

Cuando la persona presiona el boton ver noticias

Entonces el sistema muestra las noticias en pantalla


Escenario 2: Ver Noticias Fallido por falla de conexión

Dado que no se establecio conexión con el servidor

Cuando la persona presiona el boton ver noticias

Entonces sistema informa que no se pudo establecer conexión con el servidor


Escenario 3: Ver Noticias Fallido por falta de noticias

Dado que se establecio conexión con el servidor y no hay noticias para mostrar

Cuando la persona presiona el boton ver noticias

Entonces sistema informa que no hay noticias disponibles

Registrar Persona

ID: Registrar Persona

TÍTULO: Como persona quiero registrarme para poder acceder a los detalles

REGLAS DE NEGOCIO:

- Persona mayor de 18 Años
- Mail no registrado

CRITERIOS DE ACEPTACIÓN:

Escenario 1: Registro Exitoso

Dado que la persona Juan, tiene 21 años que es mayor de 18 años y el mail juan@gmail.com no esta registrado

Cuando la persona ingresa Juan , Martinez, 21 años, juan@gmail.com

Entonces el sistema registra al nuevo usuario, genera una contraseña de manera aleatoria y la manda al mail


Escenario 2: Registro Fallido por tener menos de 18 años

Dado que la persona Martin, tiene 10 años que es menor de 18 años y el mail martin@gmail.com no esta registrado

Cuando la persona ingresa Martin , Lopez, 10 años, martin@gmail.com

Entonces el sistema informa que la persona es menor de edad


Escenario 3: Registro Fallido por mail ya registrado

Dado que la persona Leonel, tiene 25 años que es mayor de 18 años y el mail lionel@gmail.com esta registrado

Cuando la persona ingresa Lionel , Messi, 25 años, lionel@gmail.com

Entonces el sistema informa que el mail ingresado ya esta registrado

Iniciar Sesión

ID: Iniciar Sesión

TÍTULO: Como usuario quiero iniciar sesión para poder acceder a los detalles

REGLAS DE NEGOCIO:

- Tiene 3 intentos antes del bloqueo

CRITERIOS DE ACEPTACIÓN:

Escenario 1: Inicio exitoso

Dado Que el usuario juan@gmail.com esta registrado, esta en primer intento y la contraseña "hola123" es correcta

Cuando el usuario ingresa juan@gmail.com, "hola123"

Entonces el sistema inicia sesión y habilita el acceso a los detalles


Escenario 2: Inicio Fallido por usuario no registrado

Dado Que el usuario martin@gmail.com no esta registrado

Cuando el usuario ingresa martin@gmail.com, 'contraseña123'

Entonces el sistema informa que el mail ingresado no se encuentra registrado


Escenario 3: Inicio Fallido por contraseña icorrecta

Dado Que el usuario lionel@gmail.com esta registrado, esta en primer intento y la contraseña "mundial" es incorrecta

Cuando el usuario ingresa lionel@gmail.com, "mundial"

Entonces el sistema informa que la contraseña es incorrecta e incrementa en uno los intentos


Escenario 4: Inicio Fallido por contraseña icorrecta

Dado Que el usuario pepe@gmail.com esta registrado, esta en tercer intento y la contraseña "mundial2" es incorrecta

Cuando el usuario ingresa pepe@gmail.com, "mundial2"

Entonces el sistema informa que la contraseña es incorrecta y bloquea la cuenta


Escenario 5: Inicio Fallido cuenta bloqueada

Dado Que el usuario gonzalo@gmail.com esta registrado y la cuenta esta bloqueada

Cuando el usuario ingresa gonzalo@gmail.com

Entonces el sistema informa que la cuenta esta bloqueada

Cerrar Sesión

ID: Cerrar Sesión

TÍTULO: Como usuario quiero cerrar sesión para poder proteger mis datos

REGLAS DE NEGOCIO:

CRITERIOS DE ACEPTACIÓN:

Escenario 1: Cierre exitoso

Dado que el usuario tiene una sesión abierta

Cuando el usuario presiona el boton cerrar sesión

Entonces el sistema cierra la sesión y bloquea los accesos a los detalles

Acceder Detalle

ID: Acceder Detalle

TÍTULO: Como usuario quiero acceder a un detalle para informarme

REGLAS DE NEGOCIO:

- Acceso a 5 detalles por dia

CRITERIOS DE ACEPTACIÓN:

Escenario 1: Acceso exitoso

Dado que se establecio conexión con el servidor y el usuario juan@gmail.com accedio a 1 detalle que es menor a 5 detalles

Cuando el usuario presiona el boton "ver detalles"

Entonces El sistema muestra el detalle de la noticia e incrementa la cantidad de detalles visto


Escenario 2: Acceso exitoso

Dado que se establecio conexión con el servidor y el usuario juan@gmail.com accedio a 4 detalles que es menor a 5 detalles

Cuando el usuario presiona el boton "ver detalles"

Entonces El sistema muestra el detalle de la noticia, incrementa los intentos y Bloquea el acceso a los detalles por el resto del dia


Escenario 3: Acceso Fallido por falta de conexión

Dado que no se establecio conexión con el servidor

Cuando el usuario presiona el boton "ver detalles"

Entonces El sistema informa que no se establecio conexión con el servidor


Escenario 4: Acceso fallido por limite de accesos

Dado que se establecio conexión con el servidor y el usuario juan@gmail.com accedio a 5 detalles que es igual a 5 detalles

Cuando el usuario quiere ver detalles

Entonces El sistema informa que el acceso a los detalles fue bloqueado por el resto del dia


Parcial1CU

Actores

  • Persona(Usuario no registrado)
  • Usuario
  • Otro
  • Servidor

Casos de Uso Resueltos

Ver Noticias

Nombre: Ver Noticias

Descripción: Este Cu describe como otro mira noticias

Actores: Otro

Precondiciones:

Curso Normal:
Acciones del actor Acciones del Sistema
Paso 1: Otro selecciona la opción "Ver noticias" Paso 2: El sistema ejecuta el cu "Recibir Noticias"
Paso 3: El sistema muestra las noticias en pantalla

Curso alterno:

- Paso alterno 2, no se recibieron noticias. Se informa. Fin del CU

Postcondición: Se mostro una noticias en pantalla

Registrar Persona

Nombre: Registrar Persona

Descripción: Este cu describe como una persona se registra en el sistema

Actores: Persona

Precondiciones:

Curso Normal:
Acciones del actor Acciones del Sistema
Paso 1: La persona selecciona la opción "Registrar Persona"
Paso 3: La persona ingresa datos solicitados
Paso 2: El sistema solicita nombre, apellido, edad y mail
Paso 4: El sistema valida que la persona no sea menor de 18 años
Paso 5: El sistema valida que el usuario no este registrado en el sistema

Curso alterno:

- Paso alterno 4: La persona es menor de 18 años. Se informa. Fin del Cu
- Paso alterno 5: El usuario ingresado ya se encuentra registrado. Se notifica. Vuelve al paso 2

Postcondición: Se registro un nuevo usuario

Iniciar Sesión

Nombre: Iniciar Sesión

Descripción: Este cu describe como una usuario realiza un inicio de sesión

Actores: Usuario

Precondiciones:

Curso Normal:
Acciones del actor Acciones del Sistema
Paso 1: El usuario ingresa la opción "Iniciar Sesión"
Paso 3: El usuario ingresa datos solicitados
W Paso 2: El Sistema solicita nombre de usuario y contraseña
Paso 4: El sistema valida que el usuario este registrado
Paso 5: El Sistema valida que el usuario no este bloqueado
Paso 6: El sistema valida contraseña
Paso 7: El sistema realiza el inicio de sesión y habilita la opción para ver detalles

Curso alterno:

- Paso alterno 4: Usuario no registrado. Se informa. Vuelve al paso 2.
- Paso alterno 5: Usuario Bloqueado. Se informa. Fin del cu
- Paso alterno 6: Contraseña incorrecta. Se informa y se incrementa en un intento
- Paso alterno 6: Contraseña incorrecta en el intento 3. Se informa y se bloquea la cuenta. Fin del Cu

Postcondición:

Cerrar Sesión

Nombre: Cerrar Sesión

Descripción: Este cu describe como un usuario logueado cierra la sesión

Actores: Usuario

Precondiciones: Tener una sesión abierta

Curso Normal:
Acciones del actor Acciones del Sistema
Paso 1: El usuario selecciona la opción "Cerrar Sesión"
Paso 3: El usuario confirma la operación
Paso 2: El sistema solicita confirmación del usuario
Paso 4: El sistema realiza el cierre de sesión y deshabilita las opciones para el acceso a los detalles

Curso alterno:

- Paso alterno 3: No acepta la confirmación. Se notifica. Fin del CU

Postcondición: La sesión fue cerrada y se deshabilita la opción de ver detalles

Acceder Detalle

Nombre: Acceder Detalle

Descripción: Este cu describe como un usuario logueado accede al detalle de una noticia

Actores: Usuario

Precondiciones: Debe tener una sesión abierta

Curso Normal:
Acciones del actor Acciones del Sistema
Paso 1: El usuario selecciona la opción Acceder detalle Paso 2: El sistema valida la cantidad de accesos Paso 3: El sistema ejecuta el cu "Recibir Noticias" Paso 4: El sistema muestra la noticias e incrementa los accesos del usuario

Curso alterno:

- Paso alterno 2: Tiene 5 accesos. Se notifica que ya no puede acceder a detalles por el resto del dia. Fin del CU
- Paso alterno 3: No hay noticias para mostras. Se notifica. Fin del Cu

Postcondición: Se accedio al detalle de una noticia

Recibir Noticias

Nombre: Recibir Noticias

Descripción: Este cu describe como se retornan las noticias

Actores: Servidor

Precondiciones: Se debe haber ejecutado el cu "Ver noticias" o "Acceder Detalle"

Curso Normal:
Acciones del actor Acciones del Sistema
Paso 2: El servidor acepta la conexión y valida el tokem
Paso 3: El servidor retorna un conjunto de noticias
Paso 1: El sistema solicita conexión con el servidor y envia tokem
Paso 4: El sistema valida noticias recibidas
Paso 5: El sistema muestra las noticias en recibidas en pantalla y cierra la conexión con el servidor

Curso alterno:

- Paso alterno 1: No se establecio conexión con el servidor. Se informa. Fin del cu
- Paso alterno 4: No hay noticias para mostrar. Se informa. Fin del CU.
- Paso alterno 5: Tokem invalido. Se informa. Fin del CU.

Postcondición: Las noticias fueron recibidas

Segunda Fecha

Segundo Parcial

Extraemos los datos como en el parcial anterior, la fotocopia esta super borrosa, pero bueno.

Parcial2

Roles

  • Persona (Cliente no registrado)
  • Cliente

Historias de Usuario Resueltas

En este parcial hablamos que otro sistema se encarga de liberar la reserva pasadas las 48hs, esto lo pregunte y me dijeron que es una abstracción más y que solo pregunte si esta disponible o no.

Registrar Persona

ID: Registrar Persona

TÍTULO: Como persona me quiero registrar para poder alquilar una carpa

REGLAS DE NEGOCIO:

- Dni no registrado
- Solo personas mayores de 21 años
- Contraseña con mas de 6 caracteres

CRITERIOS DE ACEPTACIÓN:

Escenario 1: Registro exitoso

Dado que el dni 123456 no esta registrado, la contraseña "contra1321" tiene mas de 6 caracteres y tiene 23 años que es mayor de 21 años

Cuando la persona ingresa Juan, Carosella, 01/01/2000,123456, juan@gmail.com, "contra1321"

Entonces el sistema registra al nuevo usuario y envia un mensaje de bienvenida al correo ingresado


Escenario 2: Registro fallido por dni ya registrado

Dado que el dni 654321 esta registrado, la contraseña "cosa1233" tiene mas de 6 caracteres y tiene 23 años que es mayor de 21 años

Cuando la persona ingresa Martin, Suarez, 01/01/2000, 654321, martin@gmail.com, "cosa1233"

Entonces el sistema informa que el usuario ya se encuentra registrado


Escenario 3: Registro fallido por contraseña con menos de 6 caracteres

Dado que el dni 666666 no esta registrado, la contraseña "arbol" no tiene mas de 6 caracteres y tiene 23 años que es mayor de 21 años

Cuando la persona ingresa Luis, Miguel, 01/01/2000, 666666, luis@gmail.com, "arbol"

Entonces el sistema informa que la contraseña tiene que tener al menos 6 caracteres


Escenario 4: Registro fallido por ser menor de edad

Dado que el dni 77777 no esta registrado, la contraseña "muldialMesi" tiene mas de 6 caracteres y tiene 20 años que es menor de 21 años

Cuando la persona ingresa Tomas, Martinez, 01/01/2003, 77777, tomas@gmail.com, "muldialMesi"

Entonces el sistema informa que la persona es menor de edad


Pedir Presupuesto

ID: Pedir Presupuesto

TÍTULO: Como persona quiero pedir un presupuesto para ir de viaje

REGLAS DE NEGOCIO:

- La fecha debe estar en el año actual
- Debe estar disponible

CRITERIOS DE ACEPTACIÓN:

Escenario 1: Pedido exitoso

Dado que la fecha 01/01/2023 esta en el año actual y la carpa esta disponible

Cuando la persona ingresa Roja, 5, 01/01/2023

Entonces el sistema genera un codigo, imprime el presupuesto y reserva la carpa por 48hs


Escenario 2: Pedido fallido por no estar en el año actual

Dado que la fecha 01/01/2021 no esta en el año actual

Cuando la persona ingresa Azul, 10, 01/01/2021

Entonces el sistema informa que la fecha ingresada no se encuentra en el año actual


Escenario 3: Pedido fallido por carpa no disponible

Dado que la fecha 01/01/2023 esta en el año actual y la carpa no esta disponible

Cuando la persona ingresa Roja, 5, 01/01/2023

Entonces el sistema informa que la carpa ingresada no se encuentra disponible


Alquilar Carpa

ID: Alquilar Carpa

TÍTULO: Como Cliente quiero alquilar una carpa para poder vivir

REGLAS DE NEGOCIO: - Seña no menor al 50%
- Seña no mayor al 100%
- Pago con tarjeta de credito

CRITERIOS DE ACEPTACIÓN:

Escenario 1: Alquiler exitoso

Dado que el codigo 123 tiene una seña de 70$ que es mayor al 50% , menor al 100% del monto y el cliente posee una tarjeta de credito valida

Cuando el cliente ingresa 123, 01/01/2023, 70$ y los datos de una tarjeta valida

Entonces el sistema registra el alquiler, envia un comprobante con el numero de alquiler y el monto restante a pagar al correo del cliente


Escenario 2: Alquiler fallido por seña menor al 50% del monto

Dado que el codigo 123 tiene una seña de 10$ que es menor al 50%

Cuando el cliente ingresa 123, 01/01/2023, 10$

Entonces el sistema informa que la seña es menor al 50%


Escenario 3: Alquiler fallido por seña mayor al 100% del monto

Dado que el codigo 123 tiene una seña de 200$ que es mayor al 50% y mayor al 100% del monto

Cuando el cliente ingresa 123, 01/01/2023, 200$

Entonces el sistema informa que la seña ingresada es mayor al 100% del monto


Escenario 4: Alquiler fallido por problemas con la tarjeta de credito

Dado que el codigo 123 tiene una seña de 100$ que es mayor al 50% , menor al 100% y el cliente posee una tarjeta de credito invalida

Cuando el cliente ingresa 123, 01/01/2023, 100$ y los datos de una tarjeta invalida

Entonces el sistema informa hay problemas con el pago

Pagar Resto

ID: Registrar Persona

TÍTULO:

REGLAS DE NEGOCIO:

- No se abono el 100% del monto
- Pago con tarjeta de credito

CRITERIOS DE ACEPTACIÓN:

Escenario 1: Pago exitoso

Dado que el codigo 123 no pago el 100% y posee una tarjeta de credito valida

Cuando el cliente ingresa 123 y los datos de una tarjeta de credito valida

Entonces el sistema registra el pago completo


Escenario 2: Pago fallido por haber pagado el 100% del monto

Dado que el codigo 123 pago el 100%

Cuando el cliente ingresa 123

Entonces el sistema informa que ya se pago el 100% del monto


Escenario 3: Pago exitoso

Dado que el codigo 123 no pago el 100% y posee una tarjeta de credito invalida

Cuando el cliente ingresa 123 y los datos de una tarjeta de credito invalida

Entonces el sistema informa que hay problemas con el pago

Pagar con Tarjeta

ID: Pagar con Tarjeta

TÍTULO: Como cliente quiero pagar con tarjeta para alquilar una carpa o pagar el resto de la misma

REGLAS DE NEGOCIO:

CRITERIOS DE ACEPTACIÓN:

Escenario 1: Pago exitoso

Dado que se establecio conexión con el servidor, la fecha 4/4/2030 no esta vencida, el numero 1234 es valido y tiene fondos suficientes

Cuando el cliente ingresa 1234

Entonces el sistema registra el pago


Escenario 2: Pago fallido por falta de conexión

Dado que no se establecio conexión con el servidor

Cuando el cliente intenta pagar

Entonces el sistema informa que no se establecio la conexión


Escenario 3: Pago fallido por tarjeta vencida

Dado que se establecio conexión con el servidor, la fecha 4/4/2021 esta vencida, el numero 3214 es valido

Cuando el cliente ingresa 3214

Entonces el sistema informa que la tarjeta se encuentra vencida


Escenario 4: Pago fallido por numero invalido

Dado que se establecio conexión con el servidor, la fecha 4/4/2030 no esta vencida, el numero 6666 es invalido

Cuando el cliente ingresa 6666

Entonces el sistema informa que el numero ingresado es invalido


Escenario 5: Pago fallido por fondos insuficientes

Dado que se establecio conexión con el servidor, la fecha 4/4/2030 no esta vencida, el numero 3333 es valido y no tiene fondos suficientes

Cuando el cliente ingresa 3333

Entonces el sistema informa que la tarjeta no tiene fondos suficientes



Parcial2Cu

Actores

  • Persona(Usuario no registrado)
  • Usuario
  • Otro
  • Servidor

Casos de Uso Resueltos

El iniciar sesión y cerrar sesión no se implementan

Registrar persona

Nombre: Registrar Persona

Descripción: Este cu describe como una persona se registra

Actores: Persona

Precondiciones:

Curso Normal:
Acciones del actor Acciones del Sistema
Paso 1: La persona selecciona la opcion "registrar Persona" Paso 3: La persona ingresa datos solicitados Paso 2: El sistema solicita nombre, apellido, fecha de nacimiento, dni, dirección de correo electronico y contraseña Paso 4: El sistema verifica dni no registrado Paso 5: El sistema valida que la contraseña no tenga mas de 6 caracteres Paso 6: El sistema valida que la persona no tenga mas de 21 años

Curso alterno:

- Paso alterno 4: dni registrado. Se informa. Fin del cu - Paso alterno 5: contraseña con menos de 6 caracteres. Se notifica. Vuelve al paso 2. - Paso alterno 6: persona menor de 21 años. Se informa. Fin del cu

Postcondición: Se registro el nuevo usuario

Pedir Presupuesto

Nombre: Pedir Presupuesto

Descripción: Este cu describe como otro solicita un presupuesto

Actores: otro

Precondiciones:

Curso Normal:
Acciones del actor Acciones del Sistema
Paso 1: Otro selecciona "Pedir Presupuesto" Paso 3: Otro ingresa datos solicitados Paso 2: El sistema solicita un tipo de carpa, cantidad de personas y fecha del evento. Paso 4: El sistema valida que la fecha se encuentre en el año actual Paso 5: El sistema valida que la fecha este disponible Paso 6: El sistema genera un codigo, imprime el presupuesto y reserva la carpa por 48hs

Curso alterno:

- Paso alterno 4: La fecha no se encuentra en el año actual. Se notifica. Vuelve al paso 2 - Paso alterno 5: La carpa no esta disponible. Se notifica. Vuelve al paso 2.

Postcondición: Se reservo la carpa para la fecha ingresada

Alquilar Carpa

Nombre: Alquilar Carpa

Descripción: Este cu describe como un usuario alquila una carpa

Actores: Usuario

Precondiciones: El usuario debe tener una sesión abierta

Curso Normal:
Acciones del actor Acciones del Sistema
Paso 1: El usuario selecciona la opción "alquilar Carpa" Paso 3: El usuario ingresa datos solicitados Paso 2: El sistema solicita codigo de presupuesto, dirección y la seña a pagar Paso 4: El sistema valida que la seña no sea menor al 50% del monto Paso 5: El sistema valida que la seña no sea mayor al 100% del monto Paso 6: El sistema ejecuta el cu "Pagar con tarjeta" Paso 7: El sistema registra el pago, envia un comprobante con el nro de alquiler y monto restante a pagar al correo

Curso alterno:

- Paso alterno 4: La seña es menor al 50%. Se informa. Fin del Cu - Paso alterno 5: La seña es mayor al 100%. Se informa. Fin del Cu - Paso alterno 6: El pago no se realiza. Se notifica. Fin del CU

Postcondición:

Pagar Resto

Nombre: Pagar resto

Descripción: Este cu describe como un usuario paga el resto de un alquiler

Actores: Usuario

Precondiciones: El usuario debe tener una sesión iniciada

Curso Normal:
Acciones del actor Acciones del Sistema
Paso 1: El usuario selecciona la opción "Pagar resto" Paso 3: El usuario ingresa datos solicitados Paso 2: El sistema solicita numero de alquiler Paso 4: El sistema valida que no se pago el 100% del pago Paso 5: El sistema ejecuta el cu "Pagar con tarjeta" Paso 6: El sistema registra el pago completo del alquiler

Curso alterno:

- Paso alterno 1: Ya se pago el 100% del alquiler

Postcondición:

Pagar con tarjeta

Nombre: Recibir Noticias

Descripción:

Actores:

Precondiciones:

Curso Normal:
Acciones del actor Acciones del Sistema
Paso 2: Paso 1:

Curso alterno:

Postcondición: