PROYECTO DELIVERY - PLAN 111MIL

INTRODUCCIÓN

En el siguiente documento se desarrolla las características esenciales de un sistema de información correspondiente al dominio de Caso Práctico Nº2 - Pizzeria en el marco del Plan111.

Estas características comprenden la definición de los objetivos, límites, alcances del sistema, los procesos que se llevan a cabo dentro del mismo, su arquitectura de software, tecnologías aplicadas en el desarrollo, definición de la estructuras de la base de datos a través del diagrama de entidad-relación, la diagramación del modelo del sistema en lenguaje de modelado unificado (UML), diagrama de casos de uso y máquina de estado. Para la obtención de datos necesarios se utilizó el dominio de negocio aportado por el Plan111 como base añadiendo el proceso de Delivery.

Dominio

A continuación se detalla el enunciado para conocer el dominio con el cual se trabajará.

Una pizzería de la ciudad ofrece a sus clientes una amplia variedad de pizzas de fabricación propia, de varios tamaños (8, 10 y 12 porciones). Los clientes tienen a disposición un menú que describe para cada una de las variedades, el nombre, los ingredientes y el precio según el tamaño y el tipo (a la piedra, a la parrilla, de molde) de la pizza. Los clientes realizan sus pedidos en el mostrador o por teléfono.

El pedido debe contener el nombre del cliente, para llamarlo cuando su pedido está listo; la cantidad de pizzas, el tamaño, la variedad, la fecha del pedido y la demora estimada informada al cliente.

El pedido va a la cocina y cuando está preparado se informa al que lo tomó para que se genere la factura correspondiente y se le entregue el pedido al cliente.

Esta empresa también cuenta con el servicio de delivery, cuando se toma dicho pedido (puede ser telefónico) deberán solicitarse datos extras como direccion y número de teléfono. Con los datos solicitados, el pedido será entregado al personal de entrega para poder efectuar la entrega requerida por el cliente.

El dueño de la pizzería ha manifestado la necesidad de acceder al menos a la siguiente información:

  • Variedades y tipos de pizzas más pedidas por los clientes.
  • Ingresos (recaudaciones) por períodos de tiempo.
  • Pedidos (cantidad y monto) por períodos de tiempo.
  • Barrios donde más se realizan entregas de pedidos.
  • Entregar hoja de ruta al personal de entrega.

DESARROLLO

Procesos que se llevan a cabo

El sistema prestará soporte a los siguientes procesos que se llevan a cabo dentro de la organización:

  • Pedido: Cada pedido es generado por el cliente cuando éste los solicita teniendo a disposición un menú que describe para cada uno la variedad, nombre, ingredientes, precio y tipo de pizza que desee. Luego de que el cliente realiza la elección se despacha el pedido hacia la cocina, con datos del cliente y del pedido. Además se notifica al cliente la demora estimada del pedido.

  • Confección de Menú: La confección del menú para ofrecer a los clientes se establecen en base al tipo de pizza, la variedad y tamaño de la misma.

  • Envíos a domicilio (Delivery): En el supuesto que la entrega del pedido sea a domicilio, se le pedirá al cliente que informe su domicilio y número de teléfono para realizar la entrega. Se deberá tener en cuenta que el personal de entrega podrá llevar más de un pedido por viaje. El coste de este envío estará determinado por medio de un cálculo según la distancia que se encuentre el domicilio del negocio con respecto a la del cliente.

LÍMITE

El límite de este sistema es:

Desde la confección de menues, pedidos, registros de personal hasta la emisión de informes con la información requerida por el dueño.

PROPIEDADES DEL SISTEMA

Objetivos

  • Brindar soporte en la gestión de los pedidos de la Pizzería.
  • Proveer información de los procesos que abarca.

Requerimientos

  • Atender la consulta del cliente (telefónica o personal) por el empleado.

  • Buscar el/los menues que el cliente solicita por el empleado.

  • Si el cliente esta dentro del local, deberá entregar el/los menues al cliente por el empleado.

  • El empleado toma los datos del pedido al cliente.

  • Si el pedido fue solicitado con entrega a domicilio, estimar el costo de envio con los datos aportados por el cliente.

Alcances

  • Registrar los menues que se ofrecen a los clientes.

  • Registrar datos del Personal de Entrega junto con sus vehiculos.

  • Gestionar el pedido desde su registro hasta la entrega.

  • Asignar el pedido a un PersonaldeEntrega para que se realize la entrega.

  • Realizar informes con la información solicitada por el dueño de la organización.

  • El sistema debera ofrecer una hoja de ruta recomendada para entregarle o sugerirle al personal de entrega y asi optimizar tiempo y calidad de servicio.

ARQUITECTURA DE SOFTWARE

Se define una arquitectura CLIENTE - SERVIDOR desktop – arquitectura en capas.

Aplicación:

Se utiliza el patrón para organizar la implementación de este sistema complejo en capas de servicios auto contenidas, para logar un sistema mantenible, de bajo acoplamiento, adaptable y escalable. Mejorando la portabilidad, los cambios de hardware, del sistema operativo y todo lo que afecta solamente a una capa, se pueden modificar sin alterar al resto de las capas.

CAPA DE PRESENTACIÓN

Vista Desktop

CAPA LÓGICA DE NEGOCIOS

Controladores

CAPA DE PERSISTENCIA

ORM - Hibernate

TECNOLOGÍAS APLICADAS

DIAGRAMA DE CLASES (UML)

DIAGRAMA CASOS DE USOS (USE CASE)

DIAGRAMA CASOS DE USOS TRAZO FINO

Nivel del Use Case: Negocio Sistema de Información

Nombre del Use Case: Registrar Pedido

ID: 01

Actor Principal: Vendedor

Actor Secundario: No aplica

Tipo de Use Case: Concreto Abstracto

Objetivo: Registrar un nuevo pedido

Precondiciones: No aplica

Post - Condiciones

Éxito: El pedido fue registrado con éxito

Fracaso:

  • Opción Cancelar

Curso Normal

Alternativas

01. El caso de uso comienza cuando el Vendedor (V) selecciona la opción RegistrarPedido.

02. El sistema solicita que se ingrese el nombre del cliente.

03. El V ingresa el nombre del cliente.

04. El sistema solicita que ingrese el teléfono del cliente.

05. El V ingresa el teléfono del cliente.

06. El sistema solicita que se seleccione el tipo de entrega para el pedido.

07. El V selecciona la opción Mostrador y es así.

  1. Elige la opción Domicilio.
    1. El sistema solicita que se seleccione la localidad correspondiente.
    2. El V selecciona la localidad correspondiente.
    3. El sistema solicita que se seleccione el barrio correspondiente de dicha localidad.
    4. El V selecciona el barrio correspondiente.
    5. El sistema solicita que se selección la calle correspondiente de ese barrio.
    6. El V selecciona la calle correspondiente.
    7. El sistema solicita que se ingrese la altura correspondiente.
    8. El V ingresa la altura correspondiente.
    9. El V selecciona la opción Calcular Costo de Envió.
    10. Llamar Caso de Uso “Calcular Costo de Envió”.
    11. El sistema muestra el costo del envió.

08. El sistema solicita que seleccione la variedad de la pizza.

09. El V selecciona una variedad.

10. El sistema solicita que selección el tipo.

11. El V selecciona el tipo.

12. El sistema solicita que se seleccione el tamaño.

13. El V selecciona el tamaño.

14. El sistema solicita que se ingrese la cantidad de pizzas con las características anteriormente seleccionadas.

15. El sistema solicita que se seleccione la confirmación de la agregación de dicha pizza.

16. El V selección la opción Agregar.

17. El sistema muestra el registro con los siguientes datos: Variedad, Tipo, Tamaño, Cantidad, SubTotal.

18. El sistema calculara el monto total del pedido.

19. El sistema solicita la confirmación del pedido.

20. El V selecciona la opción Aceptar.

  1. Opción Cancelar.
    1. El sistema muestra la situación.
    2. Cancelar Caso de Uso.

21. El sistema registra el pedido con los siguientes datos:

Fecha, Hora, NombreCliente, TelefonoCliente, Localidad, Barrio, Calle, Altura, Variedad, Tipo, Tamaño, Cantidad

22. Fin Caso de Uso.

Observaciones: No aplica

Asociaciones de Extensión: Calcular Costo de Envio

Asociaciones de Inclusión: No aplica

Use Case donde se incluye: No aplica

Use Case al que extiende: No aplica

Use Case de Generalización: No aplica

Autor: Plan 111mil

Fecha Creación: 01/06/2018

Autor Última Modificación: Plan 111mil

Fecha última Modificación 12/06/2018

MÁQUINA DE ESTADO

DIAGRAMA DE ENTIDAD-RELACIÓN (DER)

HISTORIAL DE VERSIONES

Control de Versionado Datos
Fecha de Creación: 15/04/2018
Última Modificación: 13/06/2018
Versión Actual: 1.18

INTEGRANTES

Equipos Integrantes
Profesores Araceli Mendoza
Nicolás Oliva
Ramiro Bertalot
Equipo A Guido Cavallo
Sebastián Cuaglia
Ruben Malizia
Pablo Cruciani
Equipo B Daniel Rosso
Pablo Mansilla
Federico Boccardo
Hernán Grosso