clasimplicio / SAP008-burger-queen-api-client

Interface para controle de pedidos de uma hamburgueria - Quarto projeto na Laboratória
0 stars 1 forks source link
Logo Chapa Burger # **Burger Queen API Client**
HTML5 CSS3 JavaScript React Node.js Jest Git GitHub Figma
**Autoria:** [Clarissa Simplício](https://github.com/clasimplicio) e [Karla Oliveira](https://github.com/kabianca) **Status do Projeto:** _Concluído_ **Implementações Futuras:** ampliar cobertura de testes

Índice

1. Apresentação

Quarto projeto realizado no Bootcamp de Desenvolvimento Web da Laboratória e teve como objetivo principal consolidar metodologias de trabalho em equipe, desenvolvimento ágil, user centricity, product design, research, versionamento de código, além de introduzir o uso do framework React e principios de integração entre interface e API.

Para acessar o resultado final, clique aqui.

Função login senha
Atendimento servico@teste.com 123456
Cozinha cozinha@teste.com 123456

1.1 Problema

Um pequeno restaurante de hambúrgueres, que está crescendo, necessita uma interface em que se possa realizar pedidos utilizando um tablet, e enviá-los para a cozinha para que sejam preparados de forma ordenada e eficiente. Este projeto tem duas áreas: interface (cliente) e API (servidor). Nosso cliente nos pediu para desenvolver uma interface que se integre com a API.

Esse é um projeto 100% por demanda, embora seja possível (e aconselhável) fazer sugestões de melhora e mudança, prioritariamente nos asseguramos de cumprir os requisitos solicitados.

1.2 Informações sobre o cliente:

Burger Queen, um fast food cuja proposta de serviço 24 horas foi muito bem recebida e, para continuar a crescer, precisa de um sistema que ajude a receber pedidos de nossos clientes.

A interface deve mostrar os dois menus (café da manhã e restante do dia), cada um com todos os seus produtos. O usuário deve poder escolher que produtos adicionar e a interface deve mostrar o resumo do pedido com o custo total.

2. Idealização do Projeto

O planejamento desse projeto foi realizado de modo integral com auxílio GitHub Projects, onde foi possível agrupar problemas e acompanhar as solicitações e aprovações de Pull Requests associados à resolução desses problemas e tudo isso disposto de maneira bastante intuitiva em um Kanban Dashboard. Além disso, tornou possível visualizar o andamento do trabalho com gráficos configuráveis e trabalhar com milestones (marcos).

3. Desenho de interface do usuário

A interface foi projetada e implementada para ser usada em tablets, por isso optou-se pelo uso de botões e elementos com áreas clicáveis amplas.

3.1 Protótipos de baixa fidelidade

3.2 Protótipo de alta fidelidade

Protótipo de Alta Fidelidade

4. Histórias de usuário

4.1 Definição do produto

O Product Owner nos apresentou este backlog que é o resultado do seu trabalho com o cliente até hoje.

4.1.1 História 1: Garçom/Garçonete deve poder entrar no sistema

Eu, como garçom/garçonete quero entrar no sistema de pedidos.

4.1.2 História 2: Garçom/Garçonete deve ser capaz de anotar o pedido do cliente

Eu como garçom/garçonete quero poder anotar o pedido de um cliente para não depender da minha memória, saber quanto cobrar e poder enviar os pedidos para a cozinha para serem preparados em ordem.

4.1.3 História 3: Chefe de cozinha deve ver os pedidos

Eu como chefe de cozinha quero ver os pedidos dos clientes em ordem, poder marcar que estão prontos e poder notificar os garçons/garçonetes que o pedido está pronto para ser entregue ao cliente.

4.1.4 História 4: Garçom/Garçonete deve ver os pedidos prontos para servir

Eu como garçom/garçonete quero ver os pedidos que estão prontos para entregá-los rapidamente aos clientes.

5. Estrutura de apresentação

6. Hacker edition

As seções chamadas Hacker Edition são opcionais. Se você terminou tudo e ainda sobrou tempo, faça essa parte. Assim você poderá aprofundar e exercitar mais sobre os objetivos de aprendizagem do projeto.

A aplicação deve seguir 80% ou mais das pontuações de Performance, Progressive Web App, Accessibility e Best Practices do Lighthouse.

7. Objetivos de aprendizagem priorizados

JavaScript HTTP react
Testes unitários Solicitações o requisições (request) e respostas (response). jsx
Testes assíncronos Cabeçalhos (headers) components
Mocking Corpo (body) events
Verbos HTTP lists-and-keys
Codigos de status de HTTP conditional-rendering
Encodings e JSON lifting-up-state
CORS (Cross-Origin Resource Sharing) hooks
css-modules
routing

8. Fonte das imagens