- Versão 1.0
- Engenharia de Software
- Construção de Software - 2024.01
Instituto de Informática/UFG
Curso: Engenharia de Software
Professor: Elias Batista Ferreira
Alunos:
- Amadeu Lee;
- Arthur Faria Peixoto;
- João Gabriel Cavalcante França;
- Leonardo Moreira de Araújo;
- Luca Santos Martins.
O projeto consiste em um sistema de gerenciamento de pedidos em um restaurante, facilitando as operações cotidianas dentro desse ambiente. Diversas ações estão contempladas, tais como anotar pedidos digitalmente, modificar o status dos pedidos, imprimir o pedido digitalmente, fechar contas de mesas, calcular lucros em intervalos determinados, acompanhar pedidos atribuídos a garçons e monitorar o estoque do estabelecimento.
Dentro do sistema, há a distinção entre dois tipos de funcionários responsáveis pelas principais operações: o garçom e o gerente. Enquanto o garçom concentra-se nas atividades diretas relacionadas aos pedidos, como a anotação e o controle dos pedidos, o fechamento das contas, entre outras, enquanto isso, o gerente desempenha a parte relacionada ao controle de estoque, financeiro e das estatísticas do restaurante. Portanto, cabe ao gerente, quando identificada a falta de algum produto em estoque, providenciar a compra e a reposição do item.
-
StatusAtendimento
- Enum que possui o status do atendimento do cliente, podendo ser: aberto ou finalizado
-
Atendimento
- Classe que possuí as características gerais do atendimento do cliente, possuindo informações como: o status do atendimento, o garçom responsável pela mesa, o valor gasto e o id da mesa
-
PedidoStatus:
- Enum que possui o status do pedido do cliente, podendo ser: pendente, em preparo, pronto e entregue
-
Mesa:
- Classe que possuí somente o id da mesa (o código de identificação dela) e um booleano dizendo se ela está livre ou ocupada
-
Funcionário:
- Classe que possuí os dados do funcionário (nome, cpf, email, idade, telefone)
-
Pedido:
- Classe que diz respeito ao pedido propriamente dito, ele tem uma lista de pedidos com todos os itens solicitados, o status do pedido, a mesa que pediu e o funcionário responsável pelo atendimento
-
ItemVenda:
- Classe que refere ao item solicitado pelo cliente. Ex: X-bacon. Possuí o nome, o preço do pedido e uma lista com todos os ingredientes necessários para preparar o item
-
Estoque:
- Classe que possuí uma lista com todos os ingredientes existentes em estoque, cada item possuí um nome e a quantidade (atributos da classe ItemEstoque)
-
ItemEstoque:
- Classe que possuí o nome do ingrediente e a quantidade existente em estoque, podendo essa ser inteira e/ou fracionada
-
TipoMovimentação:
- Enum que possui os tipos de movimentações que podem ser realizadas no estoque, sendo "entrada" ou "saída" de itens
- Utilização do Git e GitHub para se fazer o versionamento do código
- A atuação dos membros do grupo se deu através de branchs paralelas, criadas a partir da branch principal (development), onde foram disponibilizadas novas features e correções de bugs
- Após o commit e o push das mudanças se é criado uma "pull request" para que seja avaliado posteriormente e após isso, se faça o merge dela com a branch principal (development)