Вы находитесь на странице: 1из 9

Politcnico Grancolombiano

Trabajo Ejercicio Proyecto segunda entrega

Andres Guevara
Mauricio Moreno
Jonathan Pinto
Jaime Wilchez

Bogot D.C
25/04/15

Problema.
En una Casa de Reposo se debe permitir a un mdico solicitar una enfermera para
atender a un paciente.
Como no es muy usual esto, las enfermeras estn organizadas de manera que en
todo momento solo haya una disponible.
Cada enfermera se identifica por su nombre y tiene asignado en minutos la duracin
de su turno.
La enfermera que est de turno, sabe adems el tiempo que le falta para terminar su
turno y si est ocupada con un paciente.
Los turnos de las enfermeras estn organizados de manera circular.
Al principio no haba ni tantos pacientes, ni mdicos ni enfermeras y se llevaba a
mano la bitcora con ayuda del tradicional reloj de pared, pero ahora se necesita de
un sistema ms automtico.
Los doctores requieren saber cuntas enfermeras hay en el hospicio, conocer cual
est de turno, indicar cunto le falta a una enfermera (dado su id) para comenzar su
turno. Ocupar enfermera con un paciente (retorna la enfermera de turno si no est
ocupada, o null en caso contrario), liberar enfermera (la enferma de turno que estaba
ocupada atendiendo a un paciente queda de nuevo disponible salvo que su turno
haya terminado, si no estaba ocupada genera error).
El sistema debe avanzar turno un minuto, de tal suerte que la enfermera que est de
turno disminuye el tiempo que le falta en 1. Si llega a 0, se inicia el turno de la
siguiente enfermera, pasando la que sali de turno a ocupar la ltima posicin.
Adems, las enfermeras por supuesto entran y salen de trabajar de acuerdo con su
horario de trabajo, de tal suerte que al ingresar al trabajo una enfermera se coloca en
la ltima posicin y al salir la enfermera del asilo se retira del sistema circular.
Modelamiento a travs de POO
El objeto a modelar segn el universo del discurso es un sistema que almacena y
controla las enfermeras que trabajan en una casa de reposo. La casa de reposo cuenta
con mdicos que se encargan de ocupar a las enfermeras con los pacientes; tambin
cuenta con enfermeras que se organizan de manera circular dentro del auspicio.
El medico puede consultar cuantas enfermeras tienen en cola y estn disponibles para
asignarlas a un paciente. El sistema siempre garantiza que haya por lo menos una
enfermera disponible para atender a los pacientes. Tambin pueden consultar con el
sistema cuanto le falta a una enfermera para comenzar el turno segn el orden que
tenga en el sistema circular, liberar a una enfermera que este ocupada con un paciente
y existe un procedimiento que vuelve a ingresar a la enfermera al sistema circular
siempre y cuando el turno de la enfermera no haya terminado.
Para controlar el turno de la enfermera el sistema conoce cual enfermera inicio turno y
cuando finaliza turno. Con esta informacin el sistema comienza a actualizar cuanto le
falta a una enfermera para terminar el turno descontando un minuto al tiempo final.
Una vez las enfermera finalizan su turno, el sistema se encarga de sacar a la enfermera
de la cola circular y asignarla a una cola para que se conozca el cundo debe iniciar el
prximo turno.

Diagramas de Casos de Uso.


Solicitud de enfermera por el medico

Consultas de Enfermera

Consulta duracin turno enfermera

Libera Enfermera

Termina Turno

Inicia Turno

Diagrama de Clases

Diagrama de secuencia

Problema.
Josefina cuenta la forma en que maneja su monedero.
Guarda en l, tanto monedas como billetes de acuerdo a su denominacin.
A la cartera le han fijado un mximo nmero de monedas que puede guardar por peso y no
acepta vueltos en monedas y preferir billetes que de todos modos tambin tienen un lmite por
volumen.
Cada vez que Josefina detecta que el monedero est muy lleno, logra cambiar la denominacin
de su contenido a travs de compras pequeas y cambiar monedas de baja denominacin por
billetes o monedas de mayor valor y lo mismo con el papel moneda.
A la hora del pago de sus transacciones, Josefina, valida si tiene dinero suficiente en el
monedero y luego si procede a ubicar los valores de mayor denominacin a menor
denominacin que completen el valor exacto a pagar y cuando ya los tiene, empieza un juego
que consiste en buscar monedas o billetes de menor denominacin para cambiarlos por los
billetes o monedas que tiene sobre el aparador y de este modo disminuir el peso y el volumen
del monedero.
Josefina sabe cuntas monedas y billetes de cada denominacin tiene y si tengo que escoger le
doy prioridad a salir de las monedas.

Diagrama de Clases.

Diagrama de Casos de Uso.

TDA Monedero.
C.V: Un monedero es un objeto en el cual se pueden almacenar monedas de los valores de
$50, $100, $200, $500 y $1000, adems billetes con denominaciones de $1000, $2000, $5000,
$10000, $20000 y $50000, adicionalmente se pueden intercambiar entre ellos al momento de
realizar una compra.
Operaciones:
1) Crear Monedero: (limiteMonedas:int, limiteBilletes: int):monedero.
-

Objetivo: Crear un monedero que almacene billetes y monedas.


Entradas: lmite de monedas y lmite de billetes.
Salidas: El monedero.
Precondicin: limiteMonedas y limiteBilletes > 0.
Postcondicin: Monedero con los lmites establecidos.

2) Cambiar Monedas: (tipo: moneda, valor: Denominacin, cantidad:int):Monedas.


-

Objetivo: Cambiar monedas, dependiendo de su denominacin.


Entradas: Tipo de moneda.
Salidas: Salen las monedas de menor denominacin y se quedan las de mayor
denominacin.
Precondicin: El monedero est lleno.
Postcondicin: Se disminuye la cantidad de monedas del monedero.

3) Cambiar Billetes: (tipo: billete valor: Denominacin, cantidad:int):Billetes.


-

Objetivo: Cambiar billetes, dependiendo de su denominacin.


Entradas: Tipo de billete.
Salidas: Salen los billetes de menor denominacin y se quedan los de mayor
denominacin.
Precondicin: El monedero est lleno.
Postcondicin: Se disminuye la cantidad de billetes del monedero.

4) Validar Dinero: (tipo: Dinero, cantidad:int):Billetes y Monedas.


- Objetivo: Comprobar si el monedero se encuentra lleno.
- Entradas: Tipo de dinero
- Salidas: true si est lleno, fale si est vaco
- Precondicin: El monedero debe existir previamente.
- Postcondicin: Se realiza el proceso para dejarlo menos pesado.
5) Ordenar Denominacin (tipo: Dinero, valor: Denominacin, cantidad:int):Billetes y
Monedas.
- Objetivo: Organizar las monedas y billetes de mayor a menor denominacin.
- Entradas: Tipo de dinero y denominaciones de cada uno.
- Salidas: El dinero ordenado.
- Precondicin: El monedero debe estar lleno
- Postcondicin: El dinero queda debidamente organizado.

6) Contar Monedas (tipo: Dinero, valor: Denominacin, cantidad:int): Monedas.


- Objetivo: Contar la cantidad de monedas que se tienen por cada denominacin.
- Entradas: Monedas ordenadas.
- Salidas: Cantidad de monedas por cada denominacin.
- Precondicin: El monedero este creado y tenga monedas.
- Postcondicin: Se establece la cantidad de monedas por cada denominacin.

7) Contar Billetes (tipo: Dinero, valor: Denominacin, cantidad:int): Billetes.


- Objetivo: Contar la cantidad de billetes que se tienen por cada denominacin.
- Entradas: Billetes ordenados.
- Salidas: Cantidad de billetes por cada denominacin.
- Precondicin: El monedero este creado y tenga billetes.
- Postcondicin: Se establece la cantidad de monedas por cada denominacin.

Вам также может понравиться