Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Projeto de Engenharia de Software
Sistema de gerenciamento de restaurante
2
Conteúdo Motivação Planejamento do Projeto Requisitos Arquitetura
Casos de Uso Arquitetura Classe Implementada Testes Resultados
3
Motivação O BrightChef buscar trazer uma solução para administração de restaurantes: Automatizando Entrada e Saída de insumos, controle de Estoque. Gerenciando pedidos, módulo de Delivery. Facilitando a análise de faturamento e controle de cadastros com geração de Relatórios. Organizando os pedidos de mesa/cartão, gerando o cálculo da conta e pagamento.
4
Planejamento do Projeto
O ciclo do projeto se baseou no RUP, tendo as seguintes fases: Concepção: ênfase no escopo do sistema; Elaboração: ênfase na arquitetura; Construção: ênfase no desenvolvimento; Transição: ênfase na implantação.
5
Planejamento do Projeto
Na etapa de concepção foi definido a organização do projeto. Funções: Gerente – Henrique Menezes Arquiteto de Software – Tiago Sales Analista de Sistema – Dayvid Rodrigues Analista de Sistema – Danilo Queiroz Analista de Sistema – Paulo Ferreira
6
Planejamento do Projeto
Cronograma:
7
Requisitos Elicitação de requisitos: Entrevistas Brainstorming
Análise de concorrentes Pesquisas sobre o mercado
8
Requisitos Requisitos não-funcionais: Requisitos de Processo
Identificação Descrição RNF/PROC-01 O sistema deverá ser implementado em Python 2.6 e Flex 3 utilizando o SGBD MySQL Server 5.0. RNF/PROC-02 O sistema deverá rodar em Windows e Linux. RNF/PROC-03 Deverá ser utilizada ferramenta CASE e a modelagem deverá ser feita em UML. Requisitos de Produto - Segurança Identificação Descrição RNF/SEG-01 É necessário autenticar o usuário por meio de login e senha. RNF/SEG-02 Os atores terão acesso apenas a um conjunto mínimo de funcionalidades, que compreendem as funções operacionais básicas. RNF/SEG-03 O gerente tem acesso a todas as funcionalidades. RNF/SEG-04 O acesso a funções com esse requisito não funcional só poderá ser feito pelo gerente, identificado através de login e senha. RNF/SEG-05 O acesso a funções relacionadas a insumo, produto e categoria, com exceção da função de consulta, deve ser de uso exclusivo do gerente e do almoxarife. RNF/SEG-06 O acesso a funções relacionadas a pagamento, deve ser de uso exclusivo do caixa e do gerente.
9
Requisitos Requisitos funcionais: Código Nome Prioridade RF-01
Efetuar Login Essencial RF-02 Cadastrar Cliente RF-03 Alterar Cliente RF-04 Remover Cliente RF-05 Consultar Cliente RF-06 Cadastrar Pedido Delivery RF-07 Alterar Pedido Delivery RF-08 Cancelar Pedido Delivery RF-09 Consultar Pedido Delivery RF-10 Despachar Pedido Delivery RF-11 Entregar Pedido Delivery RF-12 Cadastrar Pedido Mesa/Cartão RF-13 Alterar Pedido Mesa/Cartão RF-14 Cancelar Pedido Mesa/Cartão RF-15 Consultar Pedido Mesa/Cartão RF-31 Saída Insumo Essencial RF-32 Cadastrar Categoria RF-33 Remover Categoria RF-34 Cadastrar Funcionário RF-35 Alterar Funcionário RF-36 Remover Funcionário RF-37 Consultar Funcionário RF-38 Informação do plantel dos funcionários RF-39 Calcular comissão RF-40 Gerar relatórios de funcionários RF-41 Gerar relatórios de estoque Importante RF-42 Gerar relatórios finaceiros RF-43 Gerar relatórios extras Desejável RF-16 Informar Finalização do Pedido Essencial RF-17 Abrir Mesa/Cartão RF-18 Trocar Mesa/Cartão RF-19 Juntar Mesa/Cartão RF-20 Fechar Mesa/Cartão RF-21 Efetuar Pagamento RF-22 Cadastrar Produto RF-23 Alterar Produto RF-24 Remover Produto RF-25 Consultar Produto RF-26 Cadastrar Insumo RF-27 Alterar Insumo RF-28 Remover Insumo RF-29 Consultar Insumo RF-30 Entrada Insumo
10
Visão Geral Dos Requisitos
Diagrama de Casos de Uso
11
Casos de Usos – Pré e pós condições
Cadastrar Funcionário Pré-condição: O gerente deve ter efetuado login no sistema. Pós-condições: O funcionário cadastrado no sistema.
12
Casos de Usos - Fluxos Cadastrar Funcionário Fluxo Primário:
Inicialmente, o gerente deve entra na janela de cadastro de funcionário. O gerente informar os dados do funcionário necessários para a realização do cadastro como nome, endereço, Cpf, cargo do novo funcionário e etc. O sistema verifica se o funcionário já existe. O sistema armazena os dados do cliente no repositório e informa que o cadastro foi realizado com sucesso.
13
Casos de Usos - Fluxos Fluxo secundário:
No fluxo primário 3, se o funcionário já existir significa dizer que o funcionário já está cadastrado, o sistema exibe uma mensagem informando a ocorrência.
14
Casos de Usos - Análise Diagrama de Seqüência:
15
Casos de Usos - Análise Diagrama de Classe:
16
Casos de Usos – Pré e pós condições
Gerar Relatório Funcionário Pré-condição: O usuário deve ter efetuado login no sistema. Pós-condições: O relatório de funcionários deve ser retornado.
17
Casos de Usos - Fluxos Gerar Relatório Funcionário Fluxo Primário:
O usuário deve entrar na janela de relatórios. Seleciona o relatório de Funcionários. O sistema gera o relatório e retorna ao cliente.
18
Casos de Usos - Análise Diagrama de Seqüência:
19
Casos de Usos - Análise Diagrama de Classe:
20
Arquitetura do Sistema - Camadas
GUI Controle Dados Repositório
21
Arquitetura do Sistema - Camadas
MTV Model Template View Django MVC Model View Controller puremvc
22
Arquitetura do Sistema - Camadas
Template Django View Model & ORM Database
23
Arquitetura do Sistema - Camadas
puremvc
24
Classes Implementadas
Python: Models: Produto Views: ProdutoAdmin ProdutoService Templates: change_form.html change_list.html change_list_results.html ...
25
Classes Implementadas
Flex: Models: ProdutoVO ProdutoProxy Controller: ProdutoReloadCommand ProdutoSaveCommand ProdutoDeleteCommand Views: ProdutoTabMediator ListarProdutosTabMediator Components: ProdutoTab.mxml ListarProdutosTab.mxml
26
Ferramentas Python Django Pyunit PyAMF Flex Flex Builder 3 PureMVC
Office 2007 Jude Notepad++ Aptana Microsoft Project Git
27
Testes Teste de Unidade Teste Integração Teste de Sistema
Teste de Aceitação
28
Testes Teste de Unidade
Testar corretude de componentes individualmente: Classes Métodos Foi utilizado um framework de testes PyUnit, em específico o módulo unittest.
29
Testes Teste de Unidade - Exemplo
30
Testes Teste de Integração
Foi realizada a medida que novos componentes eram agrupados ao sistema. Com ele foi possível encontrar erro nas interfaces de comunicação entre os componentes. Exemplo: Codificação, decodificação e comunicação dos dados entre AMF e Python.
31
Testes Teste de Sistema
Após a integração completa do sistema iniciamos esse tipo de teste, onde não nos limitamos somente a requisitos funcionais mas testamos também requisitos não-funcionais. Exemplo: Testamos nos browsers: Internet Explorer, Mozilla Firefox e Google Chrome.
32
Testes Teste de Aceitação
Foram feitos testes de caixa-preta com usuários finais e a partir daí foi notificado todos os erros acontecidos e posteriormente corrigidos. Exemplo: Foi notificado no módulo estoque um problema em saída de insumo, onde a quantidade do insumo estava decrementando quando um valor superior ao do estoque atual e resultava em uma quantidade negativa no estoque do insumo.
33
Resultados Artefatos produzidos nesse projeto: Site de acompanhamento
Plano de Projeto Documento de Requisitos Plano de Testes Projeto de Testes Documento de Análise e Projeto Site de acompanhamento Aplicação
34
Resultados Versão Flex / Janela Mesa/Cartão:
35
Resultados Versão Html / Janela Entradas de Insumo:
36
Perguntas? Alguma duvida?
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.