Este novo projeto, intitulado Pedidos DoThi Sushi, alinha-se perfeitamente com sua experiência acadêmica e técnica na FATEC-Assis, utilizando uma stack robusta baseada em Java e MySQL.

Abaixo, apresento a estruturação técnica detalhada do projeto, incorporando os princípios de Engenharia de Software e Sustentabilidade que você valoriza em sua prática pedagógica.


1. Contexto do Projeto: Pedidos DoThi Sushi


2. Engenharia de Software

2.1 Requisitos Funcionais (RF)

2.2 Requisitos Não Funcionais (RNF)


3. Modelagem de Dados (MySQL)

Utilizando os padrões de Modelo Relacional observados em seus planos de ensino, a estrutura inicial do banco de dados é definida abaixo:

3.1 Modelo Entidade-Relacionamento (MER)

erDiagram
    PEDIDO {
        int id_pedido PK
        string nome_cliente
        string prato_escolhido
        string forma_pagamento
        string status_pedido
        datetime data_pedido
    }

3.2 Script DDL (Data Definition Language)

CREATE DATABASE dothi_sushi_db;
USE dothi_sushi_db;

CREATE TABLE pedidos (
    id_pedido INT AUTO_INCREMENT PRIMARY KEY,
    nome_cliente VARCHAR(100) NOT NULL,
    prato_escolhido VARCHAR(150) NOT NULL,
    forma_pagamento ENUM('Dinheiro', 'Cartão', 'Pix') NOT NULL,
    status_pedido ENUM('Recebido', 'Em Preparo', 'Pronto', 'Entregue') DEFAULT 'Recebido',
    criado_em TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);


4. Arquitetura e Ferramentas

O desenvolvimento seguirá o ecossistema técnico que você domina:


5. Próximos Passos Sugeridos

Para elevar o nível do projeto conforme os padrões da FATEC-Assis:

  1. Refatoração para POO: Implementar a classe Pedido com atributos encapsulados e métodos de validação.
  2. Relatórios: Criar uma visualização que mostre os pratos mais solicitados, auxiliando no controle de estoque.
  3. Interface de Cozinha: Desenvolver uma tela específica que liste apenas pedidos com status “Recebido” ou “Em Preparo”, otimizando o fluxo operacional.

Com base nas diretrizes de Engenharia de Software e nos padrões pedagógicos da FATEC-Assis, apresento o detalhamento técnico avançado para o projeto Pedidos DoThi Sushi. Esta versão incorpora melhorias de arquitetura, fluxos operacionais e segurança de dados.


2. Engenharia de Software (Avançada)

2.4 Diagrama de Casos de Uso (UML)

O diagrama abaixo detalha as interações entre os atores (Atendente e Cozinheiro) e o sistema, focando na resolução dos problemas de atraso e organização.

flowchart LR
    At(("Atendente"))
    Coz(("Cozinheiro"))

    subgraph Sistema ["Sistema DoThi Sushi"]
        direction TB
        UC1(["Cadastrar Pedido"])
        UC2(["Consultar Fila de Pedidos"])
        UC3(["Atualizar Status do Pedido"])
        UC4(["Cancelar/Excluir Pedido"])
        UC5(["Gerar Resumo do Dia"])
    end

    At --> UC1
    At --> UC2
    At --> UC4
    Coz --> UC2
    Coz --> UC3
    UC1 -.->|<<include>>| UC2

Versão em SVG (Diagrama de Casos de Uso): Diagrama de Casos de Uso

2.5 Diagrama de Classes (Padrão MVC)

Para este projeto em Java, aplicamos o padrão MVC (Model-View-Controller) para garantir manutenibilidade e escalabilidade, princípios fundamentais que você leciona.

classDiagram
    class PedidoModel {
        -int id
        -String nomeCliente
        -String prato
        -String status
        +salvar()
        +atualizarStatus()
    }
    class PedidoController {
        +processarNovoPedido()
        +listarPedidosAtivos()
        +removerPedido()
    }
    class PedidoView {
        +exibirFormulario()
        +exibirPainelCozinha()
    }

    PedidoController --> PedidoModel : manipula
    PedidoController --> PedidoView : gerencia


3. Banco de Dados (MySQL)

3.1 MER - Modelo Entidade-Relacionamento

A estrutura foi aprimorada para incluir o registro de Data/Hora, essencial para o controle eficiente e redução de atrasos mencionados no escopo.

erDiagram
    PEDIDO ||--o{ LOG_STATUS : "registra"
    PEDIDO {
        int id_pedido PK
        string nome_cliente
        string prato_escolhido
        string forma_pagamento
        enum status_pedido
        datetime criado_em
    }
    LOG_STATUS {
        int id_log PK
        int id_pedido FK
        string status_anterior
        string novo_status
        datetime data_alteracao
    }


4. Melhorias Sugeridas Implementadas

As seguintes melhorias foram integradas para elevar a qualidade técnica do projeto:


5. Plano de Implementação (Timeline)

Semana Fase Foco Técnico
S1 Requisitos Refinamento das formas de pagamento e pratos.
S2 Modelagem Configuração do banco dothi_sushi_db no MySQL.
S3 Back-end Desenvolvimento das classes DAO (Data Access Object) em Java.
S4 Front-end Construção da interface responsiva com HTML5 e CSS3.
S5 Integração Testes de fluxo: do cadastro à entrega do pedido.

Este detalhamento técnico pode ser facilmente convertido para o formato Marp para suas apresentações ou para o Jekyll/MkDocs para documentação oficial do projeto.