Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CU REAL Renovar Prest-2021 Enunciado
CU REAL Renovar Prest-2021 Enunciado
Nota: se complementa con el archivo DIAGRAMAS CU REAL- RENOVAR PRESTAMO Y PROCESAR VENTA.EAP
Objetivo
Mostrar el ejemplo de caso de uso real desde el Caso de uso inicial, luego la Descripción del CU Real,
continuando con el Diagrama de CU real, y los dos diagramas de clase parciales uno a una capa y otro a
tres capas. Se colocan los macro algoritmos en las dos soluciones (a Una y Tres capas)
-
Descripción del ejemplo
En este ejemplo se utiliza el caso de uso real RENOVAR PRESTAMO en una Sistema de información de
Préstamos bibliotecarios que no permite reservar libro. El sistema solo permite prestar libros a
Estudiantes activos.
Pasos:
1 Se entrega el Caso de uso inicial Renovar préstamo
2 Se entrega el Diagrama de clases inicial, sin métodos
3 Se entrega la Descripción del CU Real
4 Se procede a elaborar el Diagrama de CU real (Ver archivo DIAGRAMAS DE CASOS DE USO- RENOVAR
PRESTAMO.EAP) a partir de la Descripción del CU real.
Nota: Se entrega el Diagrama de CU Real en caso de que el flujo alterno: imprimir morosidad, exige el
nombre del estudiante y el título del libro
5 Se procede a crear el Diagrama de clases a una capa, a partir de dos Partes:
5.1 A partir de la Descripción del CU real
5.2 A partir del Diagrama de CU real.
6 Se crea el macroalgoritmo a una capa
7 Se procede a crear el Diagrama de clases a tres capas, a partir de dos Partes:
7.1 A partir de la Descripción del CU real
7.2 A partir del Diagrama de CU real y Diagrama de clases a una capa.
8 Se crea el macroalgoritmo a tres capas.
9 Se crea el Diagrama de colaboración a tres capas.
10 Se crea el Diagrama de secuencia a tres capas.
Precondiciones:
El Bibliotecario debió ingresar al sistema
Pos condiciones
Se actualizó la fecha de entrega del Préstamo
Escenario principal de éxito
1. El Estudiante se acerca al bibliotecario con un libro que desea renovar el préstamo
2. El Bibliotecario solicita Carnet y libro al Estudiante
3. El Bibliotecario ingresa el código del libro y el carnet del estudiante
4. El Sistema consulta que el préstamo exista
5. El Sistema valida que la fecha de entrega sea igual o menor a la fecha actual
6. El Sistema consulta si el Estudiante es moroso con el código del estudiante
7. El Sistema actualiza la fecha de entrega del préstamo.
8. El Sistema imprime la ficha de la renovación del préstamo (Código del libro, Título del libro, Código del
estudiante, Nombre del estudiante, fecha del préstamo, fecha de entrega)
9. El Bibliotecario le informa al estudiante los datos de la ficha de la renovación del préstamo.
10. El Estudiante parte con el libro.
Flujos alternos
4a. El Sistema identifica que el Préstamo no existe con el código del libro y el código del estudiante;
1 El Sistema presenta el Mensaje de error: El Préstamo no existe
2 El Bibliotecario informa al Estudiante que el préstamo no existe
3 El Sistema cancela el caso de uso Renovar préstamo
Formulario PrestamoFRM
Flujos alternos
2a. El Sistema identifica que el Préstamo no existe con el código del libro y el código del
estudiante;
1. El Sistema presenta el Mensaje de error M1:” El Préstamo no existe”, en la sección
Mensaje del formulario PrestamoFRM y activa el botón Aceptar
2. El Bibliotecario presiona el botón Aceptar del formulario PrestamoFRM
3. El Sistema cancela el caso de uso Renovar préstamo
4. El Bibliotecario informa al estudiante que el préstamo no existe
3a. El Sistema identifica que la fecha de entrega es mayor a la fecha actual
1. El Sistema presenta el Mensaje informativo M2:” Estudiante entrega libro con
atraso”, en la sección Mensaje del formulario PrestamoFRM y activa el botón
Aceptar
2. El Bibliotecario presiona el botón Aceptar del formulario PrestamoFRM
3. El Sistema cancela el caso de uso Renovar Préstamo.
4. El Bibliotecario le informa al estudiante que entregó tarde el libro y por tanto que
no se le renovará el préstamo.
5. El Sistema llama al caso de uso Devolver libro.
4a. El Sistema identifica que el Estudiante es moroso
1 El Sistema presenta el Mensaje informativo M3: “Estudiante PEDRITO PEREZ
reportado como moroso del libro XXXXX”, en la sección Mensaje del formulario
PrestamoFRM y activa el botón Aceptar
1.1 El Sistema Consulta Nombre de estudiante en EstudianteENT, con
CodEst
1.2 El Sistema Consulta Título del libro en LibroENT, con CodLib
1.3 El Sistema imprime la Ficha en la sección de FICHA PRESTAMO del
formulario PréstamoFRM
4 Profesor Diego Guerrero Peña
2. El Bibliotecario presiona el botón Aceptar del formulario PrestamoFRM
Fecha entrega
ConsulMoroso(CodEst) ConEst(CodEst) ConLib(CodLib)
RePrest(CodLib, CodEst)
ConPrest(CodLib, codEst)
ValidaFecha()
ActPrest(CodLib, fecha)
ImprimeFicha()
ImprimeMensaje(Mx)
EjecutarAceptar()
EnviarNotificacion()
ImprimirMorosidad(codEst,
CodLibro)
DevolverLibro(codEst, codLib)
Clase Prestamo{
Void RePrest(Cod_Libro){
RePrest(codlib ,CodEst);
Si ConPrest(codLib, codEst) ent
Si ValidarFecha() ent
Si Not(Moroso.ConsulMoroso(CodEst) ent
ActPrest(CodLib, fecha);
ImprimirFicha();
Sino
Imprimir morosidad(codEst,Codlibro)
Finsi
Sino
ImprimirMensaje(M2:”Estudiante entrega libro con atraso”);
Devolverlibro(Codlibro,CodEst);
Finsi
Sino
ImprimirMensaje(M1:”Prestamo no existe”);
Finsi
}}
Fecha entrega
RePret(CodLib, CodEst) RenoPrest(Cod_Libro) ConPrest(CodLib) ConLib(CodLib)
ImprimirFicha() ValidarFecha() ActPrest(CodLib,
ImprimirMensaje(Mx) ActPrest(CodLib, fecha); fecha)
EjecutarAceptar() ImprimirFicha()
ImprimirMoroso(codEst, ImprimirMorosidad(codEst,
codLibro) codLibro)
MorosoENT EstudianteENT
CodLib CodEst
CodEst NomEst
FechaPres
FechaEntre
ConsulMoroso(CodEst) ConEst(CodEst)
Void RenoPrest(Cod_Libro) {
PrestamoFRM.RePret(codlib ,CodEst);
Si PrestamoENT.ConPrest(CodLib) ent
Si ValidarFecha() ent
Si ¡MorosoENT.ConsulMoroso(CodEst) ent
ActPrest(CodLib, fecha);
PrestamoFRM.ImprimirFicha();
Sino
PrestamoFRM.Imprimir(M1:”Estudiante reportado como moroso”);
Finsi
Sino
PrestamoFRM.Imprimir(M2:”Estudiante entrega libro con atraso”);
Devolverlibro(Codlibro,CodEst);
Finsi
Sino
PrestamoFRM.Imprimir(M3:”Prestamo no existe”);
Finsi
}}
Clase PrestamoCTRL
{
Void ActPrest(CodLib, Fecha);
{
PrestamoENT.ActPrest(CodLib, Fecha);
}
}
Clase PrestamoCTRL
{
Void ImprimirFicha()
{
NombreEst=EstudianteENT.ConEst(CodEst);
TituloLibro=LibroENT.ConLib(CodLib);
PrestamoFRM.ImprimirFicha():
}
}
Clase PrestamoFRM
{
Void ImprimirFicha()
{
Codigo libro= PrestamoCTRL.CodLib;
Titulo Libro= TituloLibro;
Codigo Estudiante=PrestamoCTRL.CodEst;
Nombre estudiante = NombreEst;
Fecha Actual = PrestamoCTRL.FechaACT;
FechaEntrega= PrestamoCTRL.FechaEntrega;
Mostrar (Ficha prestamo);
}
}