[{"data":1,"prerenderedAt":833},["ShallowReactive",2],{"navigation_docs":3,"-projetos-integradores-pi-03-pedidos-restaurante-readme":252,"-projetos-integradores-pi-03-pedidos-restaurante-readme-surround":830},[4,96,189],{"title":5,"icon":6,"path":7,"stem":8,"children":9},"⚙️ Engenharia de Software","i-lucide-book-open","\u002Fengenharia-software","1.engenharia-software",[10,12,16,20,24,28,32,36,40,44,48,52,56,60,64,68,72,76,80,84,88,92],{"title":5,"path":7,"stem":11},"1.engenharia-software\u002Findex",{"title":13,"path":14,"stem":15},"📋 Plano de Ensino e Aplicações","\u002Fengenharia-software\u002Fengenharia-software-aplicacoes","1.engenharia-software\u002F01.engenharia-software-aplicacoes",{"title":17,"path":18,"stem":19},"Cap 01: Introdução e Natureza do Software","\u002Fengenharia-software\u002Fcap-01","1.engenharia-software\u002F02.cap-01",{"title":21,"path":22,"stem":23},"Cap 02: Modelos de Processo de Software","\u002Fengenharia-software\u002Fcap-02","1.engenharia-software\u002F03.cap-02",{"title":25,"path":26,"stem":27},"Cap 03: As Atividades do Processo","\u002Fengenharia-software\u002Fcap-03","1.engenharia-software\u002F04.cap-03",{"title":29,"path":30,"stem":31},"Cap 04: Metodologias Ágeis","\u002Fengenharia-software\u002Fcap-04","1.engenharia-software\u002F05.cap-04",{"title":33,"path":34,"stem":35},"Cap 05: Fundamentos de Requisitos","\u002Fengenharia-software\u002Fcap-05","1.engenharia-software\u002F06.cap-05",{"title":37,"path":38,"stem":39},"Cap 06: Elicitação e Levantamento","\u002Fengenharia-software\u002Fcap-06","1.engenharia-software\u002F07.cap-06",{"title":41,"path":42,"stem":43},"Cap 07: Especificação de Requisitos (ERS)","\u002Fengenharia-software\u002Fcap-07","1.engenharia-software\u002F08.cap-07",{"title":45,"path":46,"stem":47},"Cap 08: Validação e Gestão","\u002Fengenharia-software\u002Fcap-08","1.engenharia-software\u002F09.cap-08",{"title":49,"path":50,"stem":51},"Cap 09: Fundamentos da Modelagem","\u002Fengenharia-software\u002Fcap-09","1.engenharia-software\u002F10.cap-09",{"title":53,"path":54,"stem":55},"Cap 10: Diagrama de Casos de Uso (Conceitos)","\u002Fengenharia-software\u002Fcap-10","1.engenharia-software\u002F11.cap-10",{"title":57,"path":58,"stem":59},"Cap 11: Casos de Uso (Prática e Relações)","\u002Fengenharia-software\u002Fcap-11","1.engenharia-software\u002F12.cap-11",{"title":61,"path":62,"stem":63},"Cap 12: Diagrama de Classes (Conceitos)","\u002Fengenharia-software\u002Fcap-12","1.engenharia-software\u002F13.cap-12",{"title":65,"path":66,"stem":67},"Cap 13: Herança e Polimorfismo","\u002Fengenharia-software\u002Fcap-13","1.engenharia-software\u002F14.cap-13",{"title":69,"path":70,"stem":71},"Cap 14: Diagrama de Sequência","\u002Fengenharia-software\u002Fcap-14","1.engenharia-software\u002F15.cap-14",{"title":73,"path":74,"stem":75},"Cap 15: Diagramas Dinâmicos (Estados e Atividades)","\u002Fengenharia-software\u002Fcap-15","1.engenharia-software\u002F16.cap-15",{"title":77,"path":78,"stem":79},"Cap 16: Qualidade de Software (SQA)","\u002Fengenharia-software\u002Fcap-16","1.engenharia-software\u002F17.cap-16",{"title":81,"path":82,"stem":83},"Cap 17: Estratégias de Teste","\u002Fengenharia-software\u002Fcap-17","1.engenharia-software\u002F18.cap-17",{"title":85,"path":86,"stem":87},"Cap 18: Manutenção e Evolução","\u002Fengenharia-software\u002Fcap-18","1.engenharia-software\u002F19.cap-18",{"title":89,"path":90,"stem":91},"Cap 19: Gerência de Configuração (SCM)","\u002Fengenharia-software\u002Fcap-19","1.engenharia-software\u002F20.cap-19",{"title":93,"path":94,"stem":95},"Cap 20: Conclusão e Próximos Passos","\u002Fengenharia-software\u002Fcap-20","1.engenharia-software\u002F21.cap-20",{"title":97,"icon":98,"path":99,"stem":100,"children":101},"🛠️ Atividades","i-lucide-wrench","\u002Fatividades","2.atividades",[102,105,109,113,117,121,125,129,133,137,141,145,149,153,157,161,165,169,173,177,181,185],{"title":103,"path":99,"stem":104},"📋 Orientações Gerais","2.atividades\u002Findex",{"title":106,"path":107,"stem":108},"📅 Cronograma","\u002Fatividades\u002Fcronograma","2.atividades\u002F01.cronograma",{"title":110,"path":111,"stem":112},"✏️ Atividade 01: Escopo e Personas","\u002Fatividades\u002Fatv-01-escopo","2.atividades\u002F02.atv-01-escopo",{"title":114,"path":115,"stem":116},"⚙️ Atividade 02: Processos de Software","\u002Fatividades\u002Fatv-02-processos","2.atividades\u002F03.atv-02-processos",{"title":118,"path":119,"stem":120},"📋 Atividade 03: Engenharia de Requisitos","\u002Fatividades\u002Fatv-03-requisitos","2.atividades\u002F04.atv-03-requisitos",{"title":122,"path":123,"stem":124},"📝 Atividade 04: User Stories e Backlog","\u002Fatividades\u002Fatv-04-backlog","2.atividades\u002F05.atv-04-backlog",{"title":126,"path":127,"stem":128},"🎭 Atividade 05: Casos de Uso (UML)","\u002Fatividades\u002Fatv-05-casos-uso","2.atividades\u002F06.atv-05-casos-uso",{"title":130,"path":131,"stem":132},"🖼️ Atividade 06: Prototipagem e Wireframes","\u002Fatividades\u002Fatv-06-prototipagem","2.atividades\u002F07.atv-06-prototipagem",{"title":134,"path":135,"stem":136},"🏛️ Atividade 07: Diagrama de Classes (UML)","\u002Fatividades\u002Fatv-07-classes","2.atividades\u002F08.atv-07-classes",{"title":138,"path":139,"stem":140},"🔀 Atividade 08: Diagrama de Sequência (UML)","\u002Fatividades\u002Fatv-08-sequencia","2.atividades\u002F09.atv-08-sequencia",{"title":142,"path":143,"stem":144},"🧪 Atividade 09: Qualidade e Testes","\u002Fatividades\u002Fatv-09-testes","2.atividades\u002F10.atv-09-testes",{"title":146,"path":147,"stem":148},"🏁 Atividade 10: Projeto Integrador Final","\u002Fatividades\u002Fatv-10-projeto-final","2.atividades\u002F11.atv-10-projeto-final",{"title":150,"path":151,"stem":152},"📊 Atividade 11: Diagrama de Atividades (UML)","\u002Fatividades\u002Fatv-11-atividades","2.atividades\u002F12.atv-11-atividades",{"title":154,"path":155,"stem":156},"🔄 Atividade 12: Diagrama de Transição de Estados (UML)","\u002Fatividades\u002Fatv-12-estados","2.atividades\u002F13.atv-12-estados",{"title":158,"path":159,"stem":160},"🏗️ Atividade 13: Arquitetura de Software e Padrões","\u002Fatividades\u002Fatv-13-arquitetura","2.atividades\u002F14.atv-13-arquitetura",{"title":162,"path":163,"stem":164},"🌐 Atividade 14: Modelagem de APIs REST e Swagger","\u002Fatividades\u002Fatv-14-apis-swagger","2.atividades\u002F15.atv-14-apis-swagger",{"title":166,"path":167,"stem":168},"🌿 Atividade 15: GitFlow e Trabalho Colaborativo","\u002Fatividades\u002Fatv-15-gitflow-colaboracao","2.atividades\u002F16.atv-15-gitflow-colaboracao",{"title":170,"path":171,"stem":172},"🚀 Atividade 16: Pipelines de CI\u002FCD com GitHub Actions","\u002Fatividades\u002Fatv-16-pipelines-cicd","2.atividades\u002F17.atv-16-pipelines-cicd",{"title":174,"path":175,"stem":176},"🐳 Atividade 17: Containerização de Ambientes com Docker","\u002Fatividades\u002Fatv-17-conteineres-docker","2.atividades\u002F18.atv-17-conteineres-docker",{"title":178,"path":179,"stem":180},"🔒 Atividade 18: Segurança no Desenvolvimento e OWASP","\u002Fatividades\u002Fatv-18-seguranca-devsecops","2.atividades\u002F19.atv-18-seguranca-devsecops",{"title":182,"path":183,"stem":184},"📈 Atividade 19: Métricas de Software, Estimativas e DORA","\u002Fatividades\u002Fatv-19-metricas-estimativas","2.atividades\u002F20.atv-19-metricas-estimativas",{"title":186,"path":187,"stem":188},"🏆 Atividade 20: Projeto Final Avançado (Fase 2)","\u002Fatividades\u002Fatv-20-projeto-final-avancado","2.atividades\u002F21.atv-20-projeto-final-avancado",{"title":190,"icon":191,"path":192,"stem":193,"children":194},"🖼️ Galeria de Projetos Integradores","i-lucide-image","\u002Fprojetos-integradores","3.projetos-integradores",[195,197,207,216,225,234,243],{"title":190,"path":192,"stem":196},"3.projetos-integradores\u002Findex",{"title":198,"path":199,"stem":200,"children":201},"🅿️ Projeto 01: Gestão de Estacionamentos","\u002Fprojetos-integradores\u002Fpi-01-gestao-estacionamentos","3.projetos-integradores\u002F01.pi-01-gestao-estacionamentos\u002Findex",[202,203],{"title":198,"path":199,"stem":200},{"title":204,"path":205,"stem":206},"README","\u002Fprojetos-integradores\u002Fpi-01-gestao-estacionamentos\u002Freadme","3.projetos-integradores\u002F01.pi-01-gestao-estacionamentos\u002F2.readme",{"title":208,"path":209,"stem":210,"children":211},"🔐 Projeto 02: Gerador de Senhas","\u002Fprojetos-integradores\u002Fpi-02-gerador-senhas","3.projetos-integradores\u002F02.pi-02-gerador-senhas\u002Findex",[212,213],{"title":208,"path":209,"stem":210},{"title":204,"path":214,"stem":215},"\u002Fprojetos-integradores\u002Fpi-02-gerador-senhas\u002Freadme","3.projetos-integradores\u002F02.pi-02-gerador-senhas\u002F2.readme",{"title":217,"path":218,"stem":219,"children":220},"🍣 Projeto 03: Pedidos Restaurante","\u002Fprojetos-integradores\u002Fpi-03-pedidos-restaurante","3.projetos-integradores\u002F03.pi-03-pedidos-restaurante\u002Findex",[221,222],{"title":217,"path":218,"stem":219},{"title":204,"path":223,"stem":224},"\u002Fprojetos-integradores\u002Fpi-03-pedidos-restaurante\u002Freadme","3.projetos-integradores\u002F03.pi-03-pedidos-restaurante\u002F2.readme",{"title":226,"path":227,"stem":228,"children":229},"📱 Projeto 04: Empréstimos Dispositivos","\u002Fprojetos-integradores\u002Fpi-04-emprestimos-dispositivos","3.projetos-integradores\u002F04.pi-04-emprestimos-dispositivos\u002Findex",[230,231],{"title":226,"path":227,"stem":228},{"title":204,"path":232,"stem":233},"\u002Fprojetos-integradores\u002Fpi-04-emprestimos-dispositivos\u002Freadme","3.projetos-integradores\u002F04.pi-04-emprestimos-dispositivos\u002F2.readme",{"title":235,"path":236,"stem":237,"children":238},"📦 Projeto 05: Gestão de Estoque","\u002Fprojetos-integradores\u002Fpi-05-gestao-estoque","3.projetos-integradores\u002F05.pi-05-gestao-estoque\u002Findex",[239,240],{"title":235,"path":236,"stem":237},{"title":204,"path":241,"stem":242},"\u002Fprojetos-integradores\u002Fpi-05-gestao-estoque\u002Freadme","3.projetos-integradores\u002F05.pi-05-gestao-estoque\u002F2.readme",{"title":244,"path":245,"stem":246,"children":247},"🛵 Projeto 06: Aplicativo de Delivery","\u002Fprojetos-integradores\u002Fpi-06-delivery","3.projetos-integradores\u002F06.pi-06-delivery\u002Findex",[248,249],{"title":244,"path":245,"stem":246},{"title":204,"path":250,"stem":251},"\u002Fprojetos-integradores\u002Fpi-06-delivery\u002Freadme","3.projetos-integradores\u002F06.pi-06-delivery\u002F2.readme",{"id":253,"title":204,"body":254,"description":824,"extension":825,"links":826,"meta":827,"navigation":425,"path":223,"seo":828,"stem":224,"__hash__":829},"docs\u002F3.projetos-integradores\u002F03.pi-03-pedidos-restaurante\u002F2.readme.md",{"type":255,"value":256,"toc":802},"minimark",[257,270,273,278,300,302,306,311,347,351,371,373,377,384,388,392,396,475,477,481,484,536,538,542,545,570,572,582,584,588,592,595,598,608,612,621,624,626,630,634,641,644,646,650,653,691,693,697,787,798],[258,259,260,261,265,266,269],"p",{},"Abaixo, apresento a estruturação técnica detalhada do projeto, incorporando os princípios de ",[262,263,264],"strong",{},"Engenharia de Software"," e ",[262,267,268],{},"Sustentabilidade"," que você valoriza em sua prática pedagógica.",[271,272],"hr",{},[274,275,277],"h2",{"id":276},"_1-contexto-do-projeto-pedidos-dothi-sushi","1. Contexto do Projeto: Pedidos DoThi Sushi",[279,280,281,288,294],"ul",{},[282,283,284,287],"li",{},[262,285,286],{},"Objetivo:"," Desenvolver um sistema web para gerenciamento de pedidos de sushi, permitindo o cadastro, visualização e controle organizado.",[282,289,290,293],{},[262,291,292],{},"Problema a Resolver:"," Substituir processos manuais para evitar perda de comandas, erros de anotação, demora no atendimento e o impacto ambiental do desperdício de papel.",[282,295,296,299],{},[262,297,298],{},"Sustentabilidade:"," O projeto atua diretamente na redução de resíduos físicos, alinhando-se ao seu interesse em tecnologia sustentável.",[271,301],{},[274,303,305],{"id":304},"_2-engenharia-de-software","2. Engenharia de Software",[307,308,310],"h3",{"id":309},"_21-requisitos-funcionais-rf","2.1 Requisitos Funcionais (RF)",[279,312,313,319,325,331,337],{},[282,314,315,318],{},[262,316,317],{},"RF-001",": O sistema deve permitir a identificação do cliente e do prato solicitado.",[282,320,321,324],{},[262,322,323],{},"RF-002",": O sistema deve permitir a seleção da forma de pagamento no momento do pedido.",[282,326,327,330],{},[262,328,329],{},"RF-003",": O sistema deve realizar a listagem organizada de todos os pedidos cadastrados.",[282,332,333,336],{},[262,334,335],{},"RF-004",": O sistema deve permitir a exclusão de pedidos.",[282,338,339,342,343,346],{},[262,340,341],{},"RF-005",": O sistema deve gerenciar o ",[262,344,345],{},"Status do Pedido"," (ex: Em Preparo, Pronto, Entregue).",[307,348,350],{"id":349},"_22-requisitos-não-funcionais-rnf","2.2 Requisitos Não Funcionais (RNF)",[279,352,353,359,365],{},[282,354,355,358],{},[262,356,357],{},"RNF-001 (Desempenho)",": O sistema deve registrar o pedido de forma rápida para diminuir problemas operacionais.",[282,360,361,364],{},[262,362,363],{},"RNF-002 (Integridade)",": Garantir o armazenamento persistente das informações em banco de dados para evitar extravios.",[282,366,367,370],{},[262,368,369],{},"RNF-003 (Usabilidade)",": Interface simples em HTML5\u002FCSS3 para facilitar o uso pelo atendente.",[271,372],{},[274,374,376],{"id":375},"_3-modelagem-de-dados-mysql","3. Modelagem de Dados (MySQL)",[258,378,379,380,383],{},"Utilizando os padrões de ",[262,381,382],{},"Modelo Relacional"," observados em seus planos de ensino, a estrutura inicial do banco de dados é definida abaixo:",[307,385,387],{"id":386},"_31-modelo-entidade-relacionamento-mer","3.1 Modelo Entidade-Relacionamento (MER)",[389,390],"mermaid",{"code":391},"erDiagram\n    PEDIDO {\n        int id_pedido PK\n        string nome_cliente\n        string prato_escolhido\n        string forma_pagamento\n        string status_pedido\n        datetime data_pedido\n    }\n",[307,393,395],{"id":394},"_32-script-ddl-data-definition-language","3.2 Script DDL (Data Definition Language)",[397,398,403],"pre",{"className":399,"code":400,"language":401,"meta":402,"style":402},"language-sql shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","CREATE DATABASE dothi_sushi_db;\nUSE dothi_sushi_db;\n\nCREATE TABLE pedidos (\n    id_pedido INT AUTO_INCREMENT PRIMARY KEY,\n    nome_cliente VARCHAR(100) NOT NULL,\n    prato_escolhido VARCHAR(150) NOT NULL,\n    forma_pagamento ENUM('Dinheiro', 'Cartão', 'Pix') NOT NULL,\n    status_pedido ENUM('Recebido', 'Em Preparo', 'Pronto', 'Entregue') DEFAULT 'Recebido',\n    criado_em TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n);\n\n","sql","",[404,405,406,414,420,427,433,439,445,451,457,463,469],"code",{"__ignoreMap":402},[407,408,411],"span",{"class":409,"line":410},"line",1,[407,412,413],{},"CREATE DATABASE dothi_sushi_db;\n",[407,415,417],{"class":409,"line":416},2,[407,418,419],{},"USE dothi_sushi_db;\n",[407,421,423],{"class":409,"line":422},3,[407,424,426],{"emptyLinePlaceholder":425},true,"\n",[407,428,430],{"class":409,"line":429},4,[407,431,432],{},"CREATE TABLE pedidos (\n",[407,434,436],{"class":409,"line":435},5,[407,437,438],{},"    id_pedido INT AUTO_INCREMENT PRIMARY KEY,\n",[407,440,442],{"class":409,"line":441},6,[407,443,444],{},"    nome_cliente VARCHAR(100) NOT NULL,\n",[407,446,448],{"class":409,"line":447},7,[407,449,450],{},"    prato_escolhido VARCHAR(150) NOT NULL,\n",[407,452,454],{"class":409,"line":453},8,[407,455,456],{},"    forma_pagamento ENUM('Dinheiro', 'Cartão', 'Pix') NOT NULL,\n",[407,458,460],{"class":409,"line":459},9,[407,461,462],{},"    status_pedido ENUM('Recebido', 'Em Preparo', 'Pronto', 'Entregue') DEFAULT 'Recebido',\n",[407,464,466],{"class":409,"line":465},10,[407,467,468],{},"    criado_em TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n",[407,470,472],{"class":409,"line":471},11,[407,473,474],{},");\n",[271,476],{},[274,478,480],{"id":479},"_4-arquitetura-e-ferramentas","4. Arquitetura e Ferramentas",[258,482,483],{},"O desenvolvimento seguirá o ecossistema técnico que você domina:",[279,485,486,496,510,523],{},[282,487,488,491,492,495],{},[262,489,490],{},"Arquitetura",": Aplicação do padrão ",[262,493,494],{},"MVC (Model-View-Controller)"," em Java para separar a lógica de negócio (pedidos) da interface web.",[282,497,498,501,502,505,506,509],{},[262,499,500],{},"Back-end",": Uso de ",[262,503,504],{},"Java"," no IntelliJ IDEA, possivelmente integrando com frameworks como ",[262,507,508],{},"Spring Boot"," para facilitar a persistência com o MySQL.",[282,511,512,515,516,265,519,522],{},[262,513,514],{},"Front-end",": Interface responsiva utilizando ",[262,517,518],{},"HTML5",[262,520,521],{},"CSS3",".",[282,524,525,528,529,532,533,522],{},[262,526,527],{},"Versionamento",": Controle de versão via ",[262,530,531],{},"Git"," e hospedagem do código no ",[262,534,535],{},"GitHub",[271,537],{},[274,539,541],{"id":540},"_5-próximos-passos-sugeridos","5. Próximos Passos Sugeridos",[258,543,544],{},"Para elevar o nível do projeto:",[546,547,548,558,564],"ol",{},[282,549,550,553,554,557],{},[262,551,552],{},"Refatoração para POO",": Implementar a classe ",[404,555,556],{},"Pedido"," com atributos encapsulados e métodos de validação.",[282,559,560,563],{},[262,561,562],{},"Relatórios",": Criar uma visualização que mostre os pratos mais solicitados, auxiliando no controle de estoque.",[282,565,566,569],{},[262,567,568],{},"Interface de Cozinha",": Desenvolver uma tela específica que liste apenas pedidos com status \"Recebido\" ou \"Em Preparo\", otimizando o fluxo operacional.",[271,571],{},[258,573,574,575,577,578,581],{},"Com base nas diretrizes de ",[262,576,264],{}," e nos padrões pedagógicos do curso, apresento o detalhamento técnico avançado para o projeto ",[262,579,580],{},"Pedidos DoThi Sushi",". Esta versão incorpora melhorias de arquitetura, fluxos operacionais e segurança de dados.",[271,583],{},[274,585,587],{"id":586},"_2-engenharia-de-software-avançada","2. Engenharia de Software (Avançada)",[307,589,591],{"id":590},"_24-diagrama-de-casos-de-uso-uml","2.4 Diagrama de Casos de Uso (UML)",[258,593,594],{},"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.",[389,596],{"code":597},"flowchart LR\n    At((\"Atendente\"))\n    Coz((\"Cozinheiro\"))\n\n    subgraph Sistema [\"Sistema DoThi Sushi\"]\n        direction TB\n        UC1([\"Cadastrar Pedido\"])\n        UC2([\"Consultar Fila de Pedidos\"])\n        UC3([\"Atualizar Status do Pedido\"])\n        UC4([\"Cancelar\u002FExcluir Pedido\"])\n        UC5([\"Gerar Resumo do Dia\"])\n    end\n\n    At --> UC1\n    At --> UC2\n    At --> UC4\n    Coz --> UC2\n    Coz --> UC3\n    UC1 -.->|\u003C\u003Cinclude>>| UC2\n",[258,599,600,603],{},[262,601,602],{},"Versão em SVG (Diagrama de Casos de Uso):",[604,605],"img",{"alt":606,"src":607},"Diagrama de Casos de Uso","\u002Fimg\u002Fprojetos-integradores\u002Fpi-03-pedidos-restaurante\u002Fusecase_dothi.svg",[307,609,611],{"id":610},"_25-diagrama-de-classes-padrão-mvc","2.5 Diagrama de Classes (Padrão MVC)",[258,613,614,615,617,618,620],{},"Para este projeto em ",[262,616,504],{},", aplicamos o padrão ",[262,619,494],{}," para garantir manutenibilidade e escalabilidade, princípios fundamentais que você leciona.",[389,622],{"code":623},"classDiagram\n    class PedidoModel {\n        -int id\n        -String nomeCliente\n        -String prato\n        -String status\n        +salvar()\n        +atualizarStatus()\n    }\n    class PedidoController {\n        +processarNovoPedido()\n        +listarPedidosAtivos()\n        +removerPedido()\n    }\n    class PedidoView {\n        +exibirFormulario()\n        +exibirPainelCozinha()\n    }\n\n    PedidoController --> PedidoModel : manipula\n    PedidoController --> PedidoView : gerencia\n",[271,625],{},[274,627,629],{"id":628},"_3-banco-de-dados-mysql","3. Banco de Dados (MySQL)",[307,631,633],{"id":632},"_31-mer-modelo-entidade-relacionamento","3.1 MER - Modelo Entidade-Relacionamento",[258,635,636,637,640],{},"A estrutura foi aprimorada para incluir o registro de ",[262,638,639],{},"Data\u002FHora",", essencial para o controle eficiente e redução de atrasos mencionados no escopo.",[389,642],{"code":643},"erDiagram\n    PEDIDO ||--o{ LOG_STATUS : \"registra\"\n    PEDIDO {\n        int id_pedido PK\n        string nome_cliente\n        string prato_escolhido\n        string forma_pagamento\n        enum status_pedido\n        datetime criado_em\n    }\n    LOG_STATUS {\n        int id_log PK\n        int id_pedido FK\n        string status_anterior\n        string novo_status\n        datetime data_alteracao\n    }\n",[271,645],{},[274,647,649],{"id":648},"_4-melhorias-sugeridas-implementadas","4. Melhorias Sugeridas Implementadas",[258,651,652],{},"As seguintes melhorias foram integradas para elevar a qualidade técnica do projeto:",[279,654,655,661,667,677],{},[282,656,657,660],{},[262,658,659],{},"Validação de Status",": O sistema impede que um pedido seja excluído sem que haja um registro de justificativa, aumentando o controle sobre extravios.",[282,662,663,666],{},[262,664,665],{},"Gestão de Sustentabilidade",": Implementação de um \"Modo Digital\" onde o cliente pode visualizar o status do seu pedido via QR Code, eliminando totalmente a necessidade de comandas físicas.",[282,668,669,672,673,676],{},[262,670,671],{},"Integridade Referencial",": Uso de chaves estrangeiras (",[404,674,675],{},"FK",") para garantir que cada alteração de status esteja vinculada a um pedido existente.",[282,678,679,682,683,686,687,690],{},[262,680,681],{},"Arquitetura Java",": Utilização de ",[262,684,685],{},"JDBC"," ou ",[262,688,689],{},"JPA\u002FHibernate"," para a conexão segura entre o Back-end em Java e o MySQL.",[271,692],{},[274,694,696],{"id":695},"_5-plano-de-implementação-timeline","5. Plano de Implementação (Timeline)",[698,699,700,716],"table",{},[701,702,703],"thead",{},[704,705,706,710,713],"tr",{},[707,708,709],"th",{},"Semana",[707,711,712],{},"Fase",[707,714,715],{},"Foco Técnico",[717,718,719,733,750,762,774],"tbody",{},[704,720,721,727,730],{},[722,723,724],"td",{},[262,725,726],{},"S1",[722,728,729],{},"Requisitos",[722,731,732],{},"Refinamento das formas de pagamento e pratos.",[704,734,735,740,743],{},[722,736,737],{},[262,738,739],{},"S2",[722,741,742],{},"Modelagem",[722,744,745,746,749],{},"Configuração do banco ",[404,747,748],{},"dothi_sushi_db"," no MySQL.",[704,751,752,757,759],{},[722,753,754],{},[262,755,756],{},"S3",[722,758,500],{},[722,760,761],{},"Desenvolvimento das classes DAO (Data Access Object) em Java.",[704,763,764,769,771],{},[722,765,766],{},[262,767,768],{},"S4",[722,770,514],{},[722,772,773],{},"Construção da interface responsiva com HTML5 e CSS3.",[704,775,776,781,784],{},[722,777,778],{},[262,779,780],{},"S5",[722,782,783],{},"Integração",[722,785,786],{},"Testes de fluxo: do cadastro à entrega do pedido.",[258,788,789,790,793,794,797],{},"Este detalhamento técnico pode ser facilmente convertido para o formato ",[262,791,792],{},"Marp"," para suas apresentações ou para o ",[262,795,796],{},"Jekyll\u002FMkDocs"," para documentação oficial do projeto.",[799,800,801],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":402,"searchDepth":416,"depth":422,"links":803},[804,805,809,813,814,815,819,822,823],{"id":276,"depth":416,"text":277},{"id":304,"depth":416,"text":305,"children":806},[807,808],{"id":309,"depth":422,"text":310},{"id":349,"depth":422,"text":350},{"id":375,"depth":416,"text":376,"children":810},[811,812],{"id":386,"depth":422,"text":387},{"id":394,"depth":422,"text":395},{"id":479,"depth":416,"text":480},{"id":540,"depth":416,"text":541},{"id":586,"depth":416,"text":587,"children":816},[817,818],{"id":590,"depth":422,"text":591},{"id":610,"depth":422,"text":611},{"id":628,"depth":416,"text":629,"children":820},[821],{"id":632,"depth":422,"text":633},{"id":648,"depth":416,"text":649},{"id":695,"depth":416,"text":696},"Este novo projeto, intitulado Pedidos DoThi Sushi, alinha-se perfeitamente com sua experiência acadêmica e técnica, utilizando uma stack robusta baseada em Java e MySQL.","md",null,{},{"title":204,"description":824},"jaF3gpQxu63BbH81QKjId5UgxhPx8FgFRDFS5wnejuA",[831,832],{"title":217,"path":218,"stem":219,"description":402,"children":-1},{"title":226,"path":227,"stem":228,"description":402,"children":-1},1788375147448]