El sistema que elegí fue una minimización de un restaurante de comida rápida.
Componentes:
- Cajero: Es el encargado de tomar las ordenes y pasarlas a la cocina para posteriormente cobrar el monto total del pedido.
- Cocina: Recibe las ordenes del cajero y se encarga de preparar el pedido, posteriormente sirve los platos para su posterior entrega.
- Ayudante: Se encarga de recibir los pedidos preparados por la cocina y los entrega al cliente, cerrando así el ciclo.
Siguiendo la nomenclatura del libro, el sistema completo queda definido por los componentes:
Modelado y descripción formal de los componentes:
Componente
|
Descripción
|
Modelado
|
---|---|---|
Cajero
|
Estados
Acciones
|
|
Cocina
|
Estados
Acciones
|
|
Ayudante
|
Estados
Acciones
|
Diagrama de Transiciones
El sistema que elegí es altamente concurrente, es común que en un restaurante veamos a todo el equipo trabajando al mismo tiempo, por ejemplo, el cajero puede estar recibiendo ordenes constantemente y enviarlas a la cocina, no espera a que la cocina termine las ordenes, así mismo el ayudante quien constantemente entrega ordenes mientras el cajero y la cocina trabajan.
Es por ello que encontré múltiples caminos a diversos estados, pero se puede notar un miniloop con los estados {000} → {100} → {200} → {010} → {020} → {001} que indican el camino de la transición si el sistema no fuera concurrente
No hay comentarios:
Publicar un comentario