estudo requisitos

39
Unioeste - Universidade Estadual do Oeste do Paraná CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS Colegiado de Informática Curso de Bacharelado em Informática Estudo de Requisitos Alunos: Fabio G. Koerich Osmar dos Santos Professor: Victor F. A. Santander Disciplina: PES III CASCAVEL 2009

Upload: joyce-da-matta

Post on 29-Jan-2016

218 views

Category:

Documents


0 download

DESCRIPTION

estudo da disciplina de engenharia de software

TRANSCRIPT

Page 1: Estudo Requisitos

Unioeste - Universidade Estadual do Oeste do ParanáCENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICASColegiado de InformáticaCurso de Bacharelado em Informática

Estudo de Requisitos

Alunos: Fabio G. KoerichOsmar dos Santos

Professor: Victor F. A. SantanderDisciplina: PES III

CASCAVEL2009

Page 2: Estudo Requisitos

Sumário

Sumário ii

1 Introdução 1

1.1 Motivação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 O Sistema Proposto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 1

2 Requisitos Funcionais 3

2.1 Cliente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2.2 Endereço . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

2.3 Funcionário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 5

2.4 Produto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

2.5 Grupo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.6 Categoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

2.7 Tamanho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

2.8 Preço . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

2.9 Divisões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

2.10 Pedido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11

2.11 Relatorios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 13

3 Modelagem Organizacional i* 15

3.1 Diagrama de Dependências Estratégicas (SD) . . . . . . . . . .. . . . . . . . . 15

3.2 Diagrama de Razões Estratégicas (SR) . . . . . . . . . . . . . . . . . .. . . . . 18

4 Requisitos Não-Funcionais 20

4.1 Requisitos de Processo . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . 20

4.2 Requisitos de Usabilidade . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . 21

4.3 Requisitos de Segurança . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . 21

4.4 Requisitos de Performance . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . 21

ii

Page 3: Estudo Requisitos

4.5 Grafo SIG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22

4.6 Recursos Externos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 24

4.6.1 Restrições econômicas . . . . . . . . . . . . . . . . . . . . . . . . . . .. 24

5 Casos de Uso 25

6 Diagrama de Classes 32

7 Conclusão 36

iii

Page 4: Estudo Requisitos

Capítulo 1

Introdução

1.1 Motivação

Este trabalho foi realizado com o intuito de desenvolver um sistema computacional para

o controle de vendas de um restaurante, que também poderá disponibilizar entrega domiciliar,

mas pode ser estendido para outros estabelecimentos do gênero. Buscamos ainda projetar um

sistema que propicie agilidade, usabilidade e flexibilidade aos funcionários da empresa que

vierem a utilizá-lo.

1.2 O Sistema Proposto

O presente projeto visa desenvolver um sistema computacional para o controle de vendas de

um restaurante que também realize entregas domiciliares através de um serviço de Tele Entrega.

O sistema será desenvolvido tendo em vista a empresa Cantina da Pina (Restaurante e Piz-

zaria), podendo o mesmo ser fácilmente estendido para outros estabelecimentos do gênero que

possuam uma lógica de negócio semelhante.

O mesmo deverá ser capaz de realizar o cadastro e manutenção das informações de clientes,

funcionários e produtos, assim como possibilitar a venda deprodutos industrializados ou pro-

duzidos no próprio estabelecimento.

A empresa trabalha com dois modelos de venda, vendas por telefone, onde um cliente re-

aliza o seu pedido através do telefone podendo o mesmo decidir pela entregua de sue pedido

em sua residência ou efetuar a busca no estabelecimento. Além das vendas por telefone existe

ainda a venda no local, onde os clientes compram e consomem osprodutos no próprio esta-

belecimento, este também conhecido como pedido mesa ou compram e consomem os em sua

Page 5: Estudo Requisitos

própria residência.

Um estudo de viabilidade anterior nos levou a escola do sistema que aqui citamos. Esse

documento visa, portanto, especificar os requisitos e a modelagem orientada a objetos desse

sistema que gerencia as vendas em um Restaurante que realiza vendas no local e que pode ter

serviço de Tele Entrega.

2

Page 6: Estudo Requisitos

Capítulo 2

Requisitos Funcionais

A seguir, são apresentados os requisitos funcionais do sistema, assim como uma breve

descrição dos mesmos.

2.1 Cliente

[RF-1] - Cadastro de Cliente

O sistema deverá permitir a realização de cadastro de clientes, para tal será fornecido ao

menos o Nome do cliente, e os seguintes campos adicionais: RG,CPF e Data de Nascimento.

Durante a inserção o sistema deverá atribuir um identificador, código, único para o cliente.

Assim como registrar a o dia em que a operação foi realizada.

O sistema deverá exibir mensagens confirmando a inserção dosdados ou a existência de

algum erro durante a operação.

[RF-2] - Remoção de Cliente

O sistema deverá permitir a remoção de um cliente previamente inserido no sistema, esta

operação deverá estará disponível após a localização dos dados do cliente no sistema.

O sistema deverá exibir mensagens confirmando a remoção dos dados ou a existência de

algum erro durante a operação.

[RF-3] - Atualização de Cliente

O sistema deverá permitir a atualização dos dados de um cliente previamente cadastrado no

sistema, esta operação estará disponível após a localização dos dados do cliente no sistema.

Page 7: Estudo Requisitos

O sistema deverá exibir mensagens confirmando a atualizaçãodos dados ou a existência de

algum erro durante a operação.

[RF-4] - Busca de Cliente

O sistema deverá permitir a realização da busca dos dados de um cliente através de seu

código ou nome.

O sistema deverá exibir mensagens informando a inexistência de um cliente com os dados

buscados, ou ainda a existência de algum erro durante a operação.

2.2 Endereço

[RF-5] - Cadastro de Endereço

O sistema deverá permitir a realização de cadastro de endereços para um cliente previa-

mente localizado, para tal será fornecido ao menos o Nome, Rua, Número e Bairro do endereço,

e os seguintes campos adicionais: Complemento e Dica.

O sistema deverá exibir mensagens confirmando a inserção dosdados ou a existência de

algum erro durante a operação.

[RF-6] - Remoção de Endereço

O sistema deverá permitir a remoção de um endereço previamente inserido no sistema

a partir de um cliente previamente localizado, esta operação deverá estará disponível após a

localização dos dados do endereço no sistema.

O sistema deverá exibir mensagens confirmando a remoção dos dados ou a existência de

algum erro durante a operação.

[RF-7] - Atualização de Endereço

O sistema deverá permitir a atualização dos dados de um endereço previamente cadastrado

no sistema, esta operação estará disponível após a localização dos dados do cliente e dos dados

do endereço em questão no sistema.

O sistema deverá exibir mensagens confirmando a atualizaçãodos dados ou a existência de

algum erro durante a operação.

4

Page 8: Estudo Requisitos

[RF-8] - Busca de Endereço

O sistema deverá permitir a realização da busca dos dados de um endereço, a partir de um

cliente em especifico, através de seu nome ou rua.

O sistema deverá exibir mensagens informando a inexistência de um endereço com os

dados buscados, ou ainda a existência de algum erro durante aoperação.

2.3 Funcionário

[RF-9] - Cadastro de Funcionário

O sistema deverá permitir a realização de cadastro de funcionários, para tal será fornecido

ao menos o Nome do funcionário, e os seguintes campos adicionais: RG, CPF e Data de Nasci-

mento. Durante a inserção o sistema deverá atribuir um identificador, código, único para o

funcionário. Assim como registrar a o dia em que a operação foi realizada.

O sistema deverá exibir mensagens confirmando a inserção dosdados ou a existência de

algum erro durante a operação.

[RF-10] - Remoção de Funcionário

O sistema deverá permitir a remoção de um funcionário previamente inserido no sistema,

esta operação deverá estará disponível após a localização dos dados do funcionário no sistema.

O sistema deverá exibir mensagens confirmando a remoção dos dados ou a existência de

algum erro durante a operação.

[RF-11] - Atualização de Funcionário

O sistema deverá permitir a atualização dos dados de um funcionário previamente

cadastrado no sistema, esta operação estará disponível após a localização dos dados do fun-

cionário no sistema.

O sistema deverá exibir mensagens confirmando a atualizaçãodos dados ou a existência de

algum erro durante a operação.

[RF-12] - Busca de Funcionário

5

Page 9: Estudo Requisitos

O sistema deverá permitir a realização da busca dos dados de um funcionário através de seu

código ou nome.

O sistema deverá exibir mensagens informando a inexistência de um funcionário com os

dados buscados, ou ainda a existência de algum erro durante aoperação.

2.4 Produto

[RF-13] - Cadastro de Produto

O sistema deverá permitir a realização de cadastro de produtos, para tal será fornecido ao

menos o Nome do produto e o grupo ao qual ele pertence, e ainda oseguinte campo adicional:

Descrição. Durante a inserção o sistema deverá atribuir um identificador, código, único para o

produto.

O sistema deverá exibir mensagens confirmando a inserção dosdados ou a existência de

algum erro durante a operação.

[RF-14] - Remoção de Produto

O sistema deverá permitir a remoção de um produto previamente inserido no sistema, esta

operação deverá estará disponível após a localização dos dados do produto no sistema.

O sistema deverá exibir mensagens confirmando a remoção dos dados ou a existência de

algum erro durante a operação.

[RF-15] - Atualização de Produto

O sistema deverá permitir a atualização dos dados de um produto previamente cadastrado

no sistema, esta operação estará disponível após a localização dos dados do produto no sistema.

O sistema deverá exibir mensagens confirmando a atualizaçãodos dados ou a existência de

algum erro durante a operação.

[RF-16] - Busca de Produto

O sistema deverá permitir a realização da busca dos dados de um produto através de seu

código ou nome.

O sistema deverá exibir mensagens informando a inexistência de um produto com os dados

buscados, ou ainda a existência de algum erro durante a operação.

6

Page 10: Estudo Requisitos

2.5 Grupo

[RF-17] - Cadastro de Grupo

O sistema deverá permitir a realização de cadastro de grupos, onde os produtos serão sub-

divididos, para tal será fornecido o Nome do grupo e a categoria a qual ele pertence.

O sistema deverá exibir mensagens confirmando a inserção dosdados ou a existência de

algum erro durante a operação.

[RF-18] - Remoção de Grupo

O sistema deverá permitir a remoção de um grupo previamente inserido no sistema, esta

operação deverá estará disponível após a localização dos dados do grupo no sistema e somente

se não existir um produto que pertença ao grupo em questão.

O sistema deverá exibir mensagens confirmando a remoção dos dados, a existência de

algum produto no grupo em questão ou a existência de algum erro durante a operação.

[RF-19] - Atualização de Grupo

O sistema deverá permitir a atualização dos dados de um grupopreviamente cadastrado no

sistema, esta operação estará disponível após a localização dos dados do grupo no sistema.

O sistema deverá exibir mensagens confirmando a atualizaçãodos dados ou a existência de

algum erro durante a operação.

[RF-20] - Busca de Grupo

O sistema deverá permitir a realização da busca dos dados de um grupo através de seu

nome.

O sistema deverá exibir mensagens informando a inexistência de um grupo com a infor-

mação buscada, ou ainda a existência de algum erro durante a operação.

7

Page 11: Estudo Requisitos

2.6 Categoria

[RF-21] - Cadastro de Categoria

O sistema deverá permitir a realização de cadastro de categorias, onde os grupos serão

subdivididos, para tal será fornecido o Nome da categoria.

O sistema deverá exibir mensagens confirmando a inserção dosdados ou a existência de

algum erro durante a operação.

[RF-22] - Remoção de Categoria

O sistema deverá permitir a remoção de uma categoria previamente inserida no sistema,

esta operação deverá estará disponível após a localização dos dados da categoria no sistema e

somente se não existir um grupo que pertença a categoria em questão.

O sistema deverá exibir mensagens confirmando a remoção dos dados, a existência de

algum grupo na categoria em questão ou a existência de algum erro durante a operação.

[RF-23] - Atualização de Categoria

O sistema deverá permitir a atualização dos dados de uma categoria previamente cadastrada

no sistema, esta operação estará disponível após a localização dos dados de uma categoria no

sistema.

O sistema deverá exibir mensagens confirmando a atualizaçãodos dados ou a existência de

algum erro durante a operação.

[RF-24] - Busca de Categoria

O sistema deverá permitir a realização da busca dos dados de um categoria através de seu

nome.

O sistema deverá exibir mensagens informando a inexistência de uma categoria com a

informação buscada, ou ainda a existência de algum erro durante a operação.

8

Page 12: Estudo Requisitos

2.7 Tamanho

[RF-25] - Cadastro de Tamanho

O sistema deverá permitir a realização de cadastro de tamanhos, o qual será relacionado

com as categorias e os grupos, para tal será fornecido o Nome do tamanho.

O sistema deverá exibir mensagens confirmando a inserção dosdados ou a existência de

algum erro durante a operação.

[RF-26] - Remoção de Tamanho

O sistema deverá permitir a remoção de um tamanho previamente inserido no sistema, esta

operação deverá estará disponível após a localização dos dados do tamanho no sistema e se ele

não estiver relacionado com nenhuma categoria ou grupo.

O sistema deverá exibir mensagens confirmando a remoção dos dados ou a existência de

algum erro durante a operação.

[RF-27] - Atualização de Tamanho

O sistema deverá permitir a atualização dos dados de um tamanho previamente cadastrado

no sistema, esta operação estará disponível após a localização dos dados do tamanho no sistema.

O sistema deverá exibir mensagens confirmando a atualizaçãodos dados ou a existência de

algum erro durante a operação.

[RF-28] - Busca de Tamanho

O sistema deverá permitir a realização da busca dos dados de um tamanho através de seu

nome.

O sistema deverá exibir mensagens informando a inexistência de um tamanho com os dados

buscados, ou ainda a existência de algum erro durante a operação.

2.8 Preço

[RF-29] - Cadastro de Preço

O sistema deverá permitir a realização de cadastro de preços, para tal será fornecido o valor,

9

Page 13: Estudo Requisitos

grupo e o tamanho ao qual ele pertence.

O sistema deverá exibir mensagens confirmando a inserção dosdados ou a existência de

algum erro durante a operação.

[RF-30] - Remoção de Preço

O sistema deverá permitir a remoção de um preços previamenteinserido no sistema, esta

operação deverá estará disponível após a localização dos dados do preço no sistema, e somente

se não existir nenhum relacionamento com o mesmo.

O sistema deverá exibir mensagens confirmando a remoção dos dados ou a existência de

algum erro durante a operação.

[RF-31] - Atualização de Preço

O sistema deverá permitir a atualização dos dados de um preçopreviamente cadastrado no

sistema, esta operação estará disponível após a localização dos dados do preço no sistema.

O sistema deverá exibir mensagens confirmando a atualizaçãodos dados ou a existência de

algum erro durante a operação.

[RF-32] - Busca de Preço

O sistema deverá permitir a realização da busca dos dados de um preço através das relações

do mesmo.

O sistema deverá exibir mensagens informando a inexistência de um preço com os dados

buscados, ou ainda a existência de algum erro durante a operação.

2.9 Divisões

[RF-33] - Cadastro de Divisões

O sistema deverá permitir a realização de cadastro de divisões que um produto pode sofrer,

para tal será fornecido uma quantidade de divisões e a categoria e o tamanho ao qual ela se

refere.

O sistema deverá exibir mensagens confirmando a inserção dosdados ou a existência de

algum erro durante a operação.

10

Page 14: Estudo Requisitos

[RF-34] - Remoção de Divisões

O sistema deverá permitir a remoção de uma divisão previamente inserida no sistema, esta

operação deverá estar disponível após a localização dos dados da divisão no sistema.

O sistema deverá exibir mensagens confirmando a remoção dos dados ou a existência de

algum erro durante a operação.

[RF-35] - Atualização de Divisões

O sistema deverá permitir a atualização dos dados de uma divisão previamente cadastrada

no sistema, esta operação estará disponível após a localização dos dados da divisão no sistema.

O sistema deverá exibir mensagens confirmando a atualizaçãodos dados ou a existência de

algum erro durante a operação.

[RF-36] - Busca de Divisões

O sistema deverá permitir a realização da busca dos dados de uma divisão através das

relações da mesma.

O sistema deverá exibir mensagens informando a inexistência de uma divisão com os dados

buscados, ou ainda a existência de algum erro durante a operação.

2.10 Pedido

Para todas as operações sobre pedido o funcionário que esta logado no sistema realizando a

mesma deverá ser armazenado em um log.

[RF-37] - Cadastrar Pedido Mesa

O sistema deverá permitir o cadastro de pedido na mesa, também conhecido como no local,

para tal será fornecido os produtos do pedido e sua configuração - tamanho, divisões, observação

- assim como dados do cliente se assim ele quiser. Durante a inserção o sistema deverá atribuir

um identificador, código, único para o pedido.

O sistema deverá exibir mensagens confirmando a inserção dosdados ou a existência de

algum erro durante a operação.

11

Page 15: Estudo Requisitos

[RF-38] - Cadastrar Pedido Telefone

O sistema deverá permitir o cadastro de pedido telefone, também conhecido como tele

entregas, para tal será fornecido os produtos do pedido e suaconfiguração - tamanho, divisões,

observação, - dados do cliente e local de entrega se assim elequiser. Durante a inserção o

sistema deverá atribuir um identificador, código, único para o pedido.

O sistema deverá exibir mensagens confirmando a inserção dosdados ou a existência de

algum erro durante a operação.

[RF-39] - Atualizar Pedido

O sistema deverá permitir a atualização dos dados de um pedido previamente cadastrada no

sistema, esta operação estará disponível após a localização dos dados do pedido no sistema.

O sistema deverá manter algum tipo de log da operação.

O sistema deverá exibir mensagens confirmando a atualizaçãodos dados ou a existência de

algum erro durante a operação.

[RF-40] - Cancelar Pedido

O sistema deverá permitir o cancelamento de um pedido previamente inserida no sistema,

esta operação deverá estar disponível após a localização dos dados do pedido no sistema. No

momento de sua efetivação uma justificativa deverá ser fornecida para tal operação.

O sistema deverá manter algum tipo de log da operação.

O sistema deverá exibir mensagens confirmando o cancelamento ou a existência de algum

erro durante a operação.

[RF-41] - Fechar Pedido

O sistema deve possibilitar o fechamento do pedido, que é o momento do pagamento, esta

operação deverá estar disponível após a localização do pedido no sistema.

O sistema deverá exibir mensagens confirmando o fechamento ou a existência de algum

erro durante a operação.

[RF-42] - Entregar Pedido

O sistema deverá possibilitar a associação de um funcionário, previamente cadastrado no

12

Page 16: Estudo Requisitos

sistema, com um pedido telefone, também previamente cadastrado no sistema, de modo que

este funcionário é a pessoa que efetuou a entrega na residência do cliente.

O sistema deverá exibir mensagens confirmando esta associação ou a existência de algum

erro durante a operação.

[RF-43] - Busca Pedido

O sistema deverá permitir a realização da busca dos dados de um pedido através de seu

código.

O sistema deverá exibir mensagens informando a inexistência de um pedido com os dados

buscados, ou ainda a existência de algum erro durante a operação.

[RF-44] - Impressão Pedido

O sistema deverá permitir a impressão de todos os dados constantes em um pedido, previa-

mente inserido no sistema e estando o mesmo sendo visualizado pelo atendente, em duas vias:

uma de caráter cupom fiscal, com todos os dados, e outra com função de facilitar o trabalho da

cozinha, com o código do pedido e os produtos constantes no mesmo e suas características -

tamanho, divisões.

O sistema deverá exibir mensagens na existência de algum erro durante a operação.

2.11 Relatórios

[RF-45] - Pedidos Fechados

O sistema deverá listar os pedidos fechados entre um períodofornecido pelo usuário, ou

por funcionário que realizou a operação.

O sistema deverá exibir mensagens na existência de algum erro durante a operação.

[RF-46] - Pedidos Em Aberto

O sistema deverá listar os pedidos que não estão fechados e que não tenham sido cancelados

entre um período fornecido pelo usuário, ou por funcionárioque realizou a operação.

O sistema deverá exibir mensagens na existência de algum erro durante a operação.

13

Page 17: Estudo Requisitos

[RF-47] - Pedidos Cancelados e ou Atualizados

O sistema deverá listar os pedidos cancelados ou e atualizados entre um período fornecido

pelo usuário, ou por funcionário que realizou a operação.

O sistema deverá exibir mensagens na existência de algum erro durante a operação.

[RF-48] - Pedidos Entregues

O sistema deverá listar os pedidos entregues entre um período fornecido pelo usuário, ou

por funcionário que realizou a operação.

O sistema deverá exibir mensagens na existência de algum erro durante a operação.

14

Page 18: Estudo Requisitos

Capítulo 3

Modelagem Organizacional i*

Nesta seção serão apresentados os Diagramas de Dependênciae Razões Estratégicas, SD e

SR, e suas descrições.

3.1 Diagrama de Dependências Estratégicas (SD)

Na figura 3.1 temos o Diagrama de Dependências Estratégicas (SD).

Segue abaixo na tabela 3.1 que contém as dependências entre os atores do sistema, esta

tabela visa facilitar a visualização das dependências.

Numa visão mais geral do sistema, o atorCliente pode interagir com o sistema de duas

formas, quando faz um pedido por telefone aoAtendente ou no estabelecimento aoGarçom.

Esses por fim interagem com oSistema Gestoratendendo as solicitações doCliente.

O Objetivo principal do cliente para com o sistema é a realização de um pedido, que pode

ser satisfeito pelo sistema de duas formas diferentes. O pedido pode ser realizado por telefone

Pedido Telefonee no próprio estabelecimentoIniciar Pedido Mesa. Além do Pedido, oCliente

também pode verificar o preço de um dos produtos do estabelecimento através do recursoVer-

ificar Preço Telefone. Quando esta no estabelecimento o cliente pode solicitar novos produtos

e finalizar a venda, estas duas possibilidades são representadas respectivamente pelos objetivos

Adicionar Produto ao PedidoeFinalizar Pedido Mesaquando são solicitados aoGarçom eles são

representados pelas tarefasAtualizar Pedido eSolicitar Valor Final . Para realizar estes objetivos

o cliente espera eficiência no atendimento por parte do garçom, esta eficiência é representada

pelo objetivo-softEficiência no Atendimento. Ao final de cada solicitação de adição de um

produto ao pedido oGarçom solicita aoAtendenteos produtos, representada no diagrama pela

tarefaSolicitar Pedido. Se o cliente estiver solicitando um pedido via telefone além das opções já

Page 19: Estudo Requisitos

Figura 3.1: Diagrama de Dependências Estratégicas(SD)

citadas ele pode querer modifar o seu pedido, está opção e representada pelo objetivoModificar

Pedido. Durante o processo de pedido via telefone o cliente espera uma agilidade doAtendente,

a representamos pelo objetivo-softAgilidade.

16

Page 20: Estudo Requisitos

Depender Dependee Tipo de Dependência Descrição DependênciaCliente Garçom Objetivo Adicionar Produto ao Pedido

Iniciar Pedido MesaFinalizar Pedido Mesa

Objetivo-Soft Eficiência no AtendimentoAtendente Objetivo Pedido Telefone

Modificar PedidoRecurso Verificar Preço TelefoneObjetivo-Soft Agilidade

Atendente Sistema Gestor Objetivo Emitir RelatórioCRU

Tarefa Efetivar PedidoRealizar ModificaçãoFinalizar Pedido

Recurso Busca no Banco de DadosImprimir Cupom Fiscal

Objetivo-Soft ConfiabilidadeFlexibilidadeUsabilidade

Garçom Atendente Tarefa Solicitar Valor FinalSolicitar PedidoAtualizar Pedido

Tabela 3.1: Dependencias Entre os Atores no SD

O Atendentepode realizar uma busca no banco de dados, esta possibilidade é representada

pelo recursoBusca no Banco de Dados. Outro recurso éImprimir Cupom Fiscal a partir desse o

atendente obtém um cupom fiscal com os produtos vendidos e os dados do cliente que os solici-

tou. Como objetivos oAtendentetemEmitir Relatórios que possibilita a emissão de um relatório

especifico sobre as vendas eEfetuar Cadastro cadastrar produtos, funcionários ou clientes no

banco de dados. OAtendenterealiza também algumas solicitações, são elas a finalizaçãode um

pedido feito por um cliente e modificações nele realizadas, esteja o cliente as solicitando via

telefone ou no próprio estabelecimento. Essas opções são representadas respectivamente pelas

tarefasFinalizar Pedido e Realizar Modificação. Além das tarefas, recursos e objetivos já cita-

dos o Atendente espera do sistemaConfiabilidade, ou seja, garantias sobre os dados armazena-

dos,Flexibilidade caracterizada por mudanças que podem ser realizadas em diversos aspectos

e Usabilidade caracterizada pela facilidade na utilização do sistema. Essas possibilidades são

representadas pelos objetivos-softConfiabilidade, Flexibilidade e Usabilidade.

17

Page 21: Estudo Requisitos

3.2 Diagrama de Razões Estratégicas (SR)

Realizamos a expansão nos atoresSistema Gestor, AtendenteeGarçom. Na figura 3.2 temos

o Diagrama de Razões Estratégicas (SR)

Ao expandirmos o atorGarçom verificamos que o objetivoAdicionar Produto ao Pedido,

consiste na tarefaDetalhamento da Modificação. Nesta tarefa pode-seAdicionar Produto ou

Remover Produto. O objetivoFinalizar Pedido Mesana verdade consiste no recursoValor Final

do Pedido.

Na expansão do Atendente percebemos que o objetivoPedido Telefonetrata-se da adição

de Produtos a venda, dessa forma foi gerada a tarefaAdicionar Produtos a Venda. O objetivo

Modificar Pedido também foi transformado em uma tarefa, se trata da tarefaDetalhamento da

Modificação assim como no atorGarçom pode-seAdicionar Produto ou Remover Produto da

venda.

Por fim, ao expandirmos o atorSistema Gestorverificamos que o recursoBusca no Banco

de Dados, gera a tarefaDetalhamento da Busca, está tarefa é decomposta em outras oito tarefas

disjuntas:Grupo para busca de grupo,Categoria para busca de categoria,Tamanho para busca

de tamanhos,Funcionário para busca de funcionario,Cliente para busca de clientes,Endereço

para busca de endereços,Produto para busca de produtos ePedido para buscar pedidos. O

objetivoEmitir Relatório gera a tarefaDetalhe do Relatório, essa tarefa é decomposta em quatro

recursos onde um deles é utilizado, são eles: relatório do pedidos fechados, representado pelo

recursoPedidos Fechados, em abertosPedidos Abertos, cancelados e ou atualizadosPedidos

Cancelados e ou Atualizadose entreguesPedidos Entregues.

O objetivoCRU, consiste na tarefaDetalhamento CRUestá tarefa é decomposta em outras

dez tarefas ambas disjuntas:Grupo para CRU de Grupo,Categoria para CRU de Categoria ,

Tamanho para CRU de Tamanho,Funcionário para CRU de Funcionários,Cliente para CRU de

Clientes,Endereçopara CRU de Endereço,Produto para CRU de Produto,Pedido para CRU

de Pedido,Divisoespara CRU de Divisoes ePreço para CRU de Preço. O recursoImprimir

Cupom Fiscal gera a tarefaVias, que visa fornecer ao sistema o numero de vias de Cupom

Fiscal necessárias. Temos, por fim, a tarefaRealizar Modificaçõesesta tarefa passa a ser repre-

sentada pela tarefaDetalhe da Modificação, esta assim com para os atoresAtendentee Garçom

e decomposta nasRemover Produtoe Adicionar Produto .

18

Page 22: Estudo Requisitos

Figura 3.2: Diagrama de Razões Estratégicas(SR)

19

Page 23: Estudo Requisitos

Capítulo 4

Requisitos Não-Funcionais

4.1 Requisitos de Processo

[RNF/PROC-1]

O sistema deverá ser desenvolvido de forma a ser compatível com o sistema operacional

Windows.

[RNF/PROC-2]

O programa deverá utilizar um sistema de gerenciamento de banco de dados.

[RNF/PROC-3]

Para a implementação do sistema, deverá ser utilizada a linguagem orientada a objetos Java,

pois ela proporciona uma interface amigável para o usuário efacilidade de manutenção.

[RNF/PROC-4]

O sistema deverá possuir uma documentação impressa que especifique sua utilização pelos

funcionários do restaurante que irão operá-lo.

[RNF/PROC-5]

É necessário um histórico do sistema, que permita a emissão de relatórios detalhados do

controle de vendas e cadastros do restaurante.

Page 24: Estudo Requisitos

4.2 Requisitos de Usabilidade

[RNF/USA-6]

O sistema deverá possuir uma interface amigável e clara, visando facilitar a interação do

usuário (funcionário do restaurante) com o sistema.

[RNF/USA-7]

As mensagens de erro apresentadas ao usuário pelo sistema deverão ser claras e precisas.

4.3 Requisitos de Segurança

[RNF/SEG-8]

O sistema deve garantir a integridade dos dados armazenados, através do uso de um

gerenciador de banco de dados.

[RNF/SEG-9]

Os dados armazenados terão uma cópia atualizada (backup) a fim de evitar a perda de

informações relativas ao controle do restaurante. Essa cópia será realizada na própria máquina

cujo sistema está instalado.

4.4 Requisitos de Performance

[RNF/PER-10]

É esperado que o sistema tenha um tempo de resposta razoavelmente rápido no cadastro e

busca de clientes, produtos e funcionários, efetuados pelousuário do sistema (funcionário do

restaurante).

[RNF/PER-11]

O sistema deve possuir espaço disponível em disco para armazenar os dados de todos os

clientes e funcionários do restaurante, bem como a descrição dos produtos os grupos entre

21

Page 25: Estudo Requisitos

outros dados.

4.5 Grafo SIG

O grafo SIG (Softgoal Interdependency Graph), que ilustra ointer-relacionamento entre os

requisitos não funcionais, é apresentado na próxima página.

Figura 4.1: Softgoal Interdependency Graph(SIG)

Por meio do SIG, observa-se como os requisitos não funcionais são decompostos e opera-

cionalizados. Segue uma explicação descritiva do grafo apresentado.

22

Page 26: Estudo Requisitos

A Usabilidadedo sistema é um softgoal composto pelas operacionalizações: umainterface

amigávele umaboa identificação de erros, que possibilitam o fácil acesso ao sistema por usuários

leigos. Ela também associa-se ao softgoalDocumentação, que garante a criação de um manual

impresso orientando o usuário do sistema.

A Documentação, por sua vez, contribui para amanutençãodo sistema, uma vez que os

problemas podem ser mais facilmente identificados e tratados.

A usabilidade influencia negativamente nocusto previsto para o desenvolvimento do sistema,

visto que é necessária a contratação de designers, que são profissionais especializados, para

a criação de uma interface adequada aos usuários. Esta interface agradável também pode

confrontar-se com uma interface consistente, causando atraso notempo de respostado sistema.

O softgoalPortabilidade é alcançado pela junção dos softgoals compatibilidade com oWin-

dows, gerenciador debanco de dadose utilização da linguagem de programaçãoJava. A portabil-

idade ajuda nausabilidadedo sistema, proporcionando uma interface amigável e de fácil acesso

para o usuário.

A Performancedo sistema associa-se ao softgoalusabilidadee é operacionalizada através da

rapidez no tempo de respostado sistema, doespaço livre em discopara o armazenamento dos

cadastros e pedidos do restaurante.

Quanto melhor a performance do sistema, sua usabilidade poderá ser prejudicada, visto

que serão necessários mais recursos para o funcionamento dosistema. Quanto à rapidez de

processamento, é preciso um tempo de resposta satisfatóriotanto para as operações efetuados

pelo usuário do sistema como para a utilização do site pelo cliente. O site terá capacidade para

diversos acessos simultâneos à página.

A Segurançado sistema é operacionalizada pelaintegridade dos dados armazenados. O

backup dos dados contribui negativamente para o softgoalespaço livre em disco, visto que ele

ocupará o dobro de armazenamento.

O Custo de implantação do sistemaé um softgoal alcançado pela compra das máquinas

necessárias, pelo pagamento dos programadores visto que o software para o desenvolvimento é

freeware e não é necessário adquirir licença.

O softgoalManutençãodo sistema associa-se com o softgoalhistórico do sistema, que apre-

senta relatórios retirados do banco de dados.

23

Page 27: Estudo Requisitos

4.6 Recursos Externos

4.6.1 Restrições econômicas

[RNF/ECO-12]

O custo do desenvolvimento e implantação do sistema (não incluindo os custos de

manutenção) não deverá ultrapassar em mais de 5% o valor previsto em seu estudo de

viabilidade.

24

Page 28: Estudo Requisitos

Capítulo 5

Casos de Uso

Figura 5.1: Diagrama de Casos de Uso

[Caso de Uso 1] - Adição de produto ao pedido

Ator(es): Clientes, garçons e atendentes

Fluxo de Eventos:

Pegue número do pedido;

Se o pedido não estiver aberto:

Extended: Inicia pedido;

Adicione o produto ao pedido;

Page 29: Estudo Requisitos

[Caso de Uso 2] - Alteração de cadastro de cliente

Ator(es): Atendente

Fluxo de Eventos:

Pegue o CPF do cliente;

Se houver um cliente cadastrado nesse CPF:

Altere os dados do cliente;

Senão: Mostre mensagem de erro.

[Caso de Uso 3] - Alteração de cadastro de funcionário

Ator(es): Atendente

Fluxo de Eventos:

Pegue o número do funcionário;

Se houver um funcionário cadastrado nesse número:

Altere os dados do funcionário;

Senão: Mostre mensagem de erro.

[Caso de Uso 4] - Alteração de cadastro de produto

Ator(es): Atendente

Fluxo de Eventos:

Pegue o número do produto;

Se houver um produto cadastrado nesse número:

Altere os dados do produto;

Senão: Mostre mensagem de erro.

[Caso de Uso 5] - Consulta de dados de clientes

Ator(es): Atendente

Fluxo de Eventos:

Pegue o CPF do cliente;

Se houver um cliente cadastrado nesse CPF:

Mostre os dados do cliente;

26

Page 30: Estudo Requisitos

Senão: Mostre mensagem de erro.

[Caso de Uso 6] - Consulta de dados de funcionários

Ator(es): Atendente

Fluxo de Eventos:

Pegue o número do funcionário;

Se houver um funcionário cadastrado nesse número:

Mostre os dados do funcionário;

Senão: Mostre mensagem de erro.

[Caso de Uso 7] - Consulta de dados de produtos

Ator(es): Atendente

Fluxo de Eventos:

Pegue o número do produto;

Se houver um produto cadastrado nesse número:

Mostre os dados do produto;

Senão: Mostre mensagem de erro.

[Caso de Uso 8] - Consulta de dados de vendas

Ator(es): Atendente

Fluxo de Eventos:

Pegue o número do cupom fiscal;

Se houver um cupom fiscal do número:

Mostre os dados da venda;

Senão: Mostre mensagem de erro.

[Caso de Uso 9] - Cadastro de clientes

Ator(es): Atendente

Fluxo de Eventos:

Pegue os atributos do cliente (CPF, telefone, nome, endereço);

Adicione o cliente ao sistema.

27

Page 31: Estudo Requisitos

[Caso de Uso 10] - Cadastro de funcionários

Ator(es): Atendente

Fluxo de Eventos:

Pegue os atributos do funcionário (documentação, telefone, nome, endereço);

Adicione o funcionário ao sistema.

[Caso de Uso 11] - Cadastro de produtos

Ator(es): Atendente

Fluxo de Eventos:

Pegue os atributos do produto (nome, descrição, preço);

Adicione o produto ao sistema.

[Caso de Uso 12] - Efetivar pedido por telefone

Ator(es): Atendente

Fluxo de Eventos:

Pegue CPF do cliente;

Se o cliente não estiver cadastrado:

Extended: Cadastro de cliente.

Pegue os atributos do pedido;

Efetive o pedido;

[Caso de Uso 13] - Emissão de cupom de controle interno

Ator(es): Atendente

Fluxo de Eventos:

Pegue o número do pedido;

Se houverem produtos não industrializados no pedido:

Selecione os produtos a serem produzidos;

Imprima o cupom de controle interno;

[Caso de Uso 14] - Emissão de cupom fiscal

28

Page 32: Estudo Requisitos

Ator(es): Atendente

Fluxo de Eventos:

Pegue o número do pedido;

Se o pedido já estiver finalizado:

Imprima cupom fiscal.

[Caso de Uso 15] - Emissão de relatório de funcionários

Ator(es): Atendente

Fluxo de Eventos:

Pegue o número do funcionário;

Imprima o relatório que descreve suas vendas;

[Caso de Uso 16] - Emissão de relatório de vendas

Ator(es): Atendente

Fluxo de Eventos:

Imprima o relatório de todas as vendas realizadas;

[Caso de Uso 17] - Emissão de relatório do dia

Ator(es): Atendente

Fluxo de Eventos:

Pegue o dia;

Imprima relatório de vendas do dia;

[Caso de Uso 18] - Faz pedido por telefone

Ator(es): Cliente

Fluxo de Eventos:

Atendente pega os CPF do cliente;

Se o cliente não estiver cadastrado:

Extended: Cadastro de cliente;

Atendente pega os dados do pedido;

29

Page 33: Estudo Requisitos

[Caso de Uso 19] - Faz pedido no local

Ator(es): Cliente

Fluxo de Eventos:

Se o Cliente quiser se identificar: Atendente pega os CPF do cliente;

Se o cliente não estiver cadastrado:

Extended: Cadastro de cliente;

Atendente pega os dados do pedido;

[Caso de Uso 20] - Finaliza pedido

Ator(es): Cliente, Garçom e Atendente

Fluxo de Eventos:

Pegue o número do pedido;

Finalize pedido;

Mostre valor final;

[Caso de Uso 21] - Inicia pedido

Ator(es): Cliente, Garçom e Atendente

Fluxo de Eventos:

Abra um novo pedido;

[Caso de Uso 22] - Remoção de cliente

Ator(es): Atendente

Fluxo de Eventos:

Pegue CPF do cliente;

Exclua o cadastro do cliente;

[Caso de Uso 23] - Remoção de funcionário

Ator(es): Atendente

Fluxo de Eventos:

Pegue o número do funcionário;

30

Page 34: Estudo Requisitos

Exclua o cadastro do funcionário;

[Caso de Uso 24] - Remoção de produto

Ator(es): Atendente

Fluxo de Eventos:

Pegue o número do produto;

Exclua o cadastro do produto;

[Caso de Uso 25] - Remoção de produto do pedido

Ator(es): Cliente, Garçom e Atendente

Fluxo de Eventos:

Pegue o número do pedido;

Pegue o número do produto;

Exclua o produto do pedido;

31

Page 35: Estudo Requisitos

Capítulo 6

Diagrama de Classes

Abaixo se encontra a figura com o diagrama de classes do sistema. Uma breve descrição

textual das classes apresentadas no diagrama segue na próxima pagina:

Pessoa

A classe Pessoa possui os camposid, um identificador único gerado automaticamente,

nomeque contem o seu nome,rg que contem o seu RG,cpf que contem seu CPF e o campo

datanascimentoque contem a data de nascimento da pessoa.

Cliente

A classe Cliente herda todos os campos da classe Pessoa além deum campoclientedesde

que contem a data de cadastro do Cliente e o campocódigoque contem um código único.

Funcionário

A classe Funcionário herda todos os campos da classe Pessoa além de um campofuncionar-

iodesdeque contem a data de cadastro do Funcionário e o campocódigoque contem um código

único.

Produto

A classe Produto possui os camposid, um identificador único gerado automaticamente,

nomeque contem o seu nome,descriçãoque contem uma descrição breve do produto ecódigo

um código pra identificação do produto que será utilizado para busca e inserção no pedido.

Grupo

Page 36: Estudo Requisitos

Figura 6.1: Diagrama de Classes

A classe Grupo possui os camposid, um identificador único gerado automaticamente e

nomeque contem o seu nome para futura busca.

33

Page 37: Estudo Requisitos

Tamanho

A classe Tamanho possui os camposid, um identificador único gerado automaticamente e

nomeque contem o seu nome para futura busca.

Categoria

A classe Categoria possui os camposid, um identificador único gerado automaticamente e

nomeque contem o seu nome para futura busca.

Divisões

A classe Divisões possui o campodivideemque é utilizado para se definir em quantas partes

um Produto pertencente ao um Grupo e Categoria pode ser dividido.

Preço

A classe Divisões possui o campopreço que é utilizado para se definir o preço de um

Produto pertencente ao um Grupo e Tamanho.

SubItem

A classe SubItem possui os camposid um identificador único,quantidadeque representa

a quantidade de um produto,subtotalo valor parcial do subitem edescriçãoque contem uma

descrição do subitem.

Item

A classe Item possui os camposid um identificador único edivisoesque representa a

quantidade de divisoes escolhidas para um produto a ser inserido no pedido.

Pedido

A classe Pedido possui os camposid um identificador único,datapedidoa data de realização

do pedido, umcódigopra identificação e umaobservação.

PedidoMesa

34

Page 38: Estudo Requisitos

A classe PedidoMesa herda todos os atributos da classe Pedido e possui o camponumero

que contem o numero da mesa do estabelecimento de onde o pedido foi realizado.

PedidoTelefone

A classe PedidoTelefone herda todos os atributos da classe Pedido e possui o campotelefone

que contem o telefone de onde o pedido foi realizado.

PedidoCancelado

A classe PedidoTelefone herda todos os atributos da classe Pedido e possui o campos

datacancelamentoque contem a data do cancelamento do pedido emotivoque contem o motivo

do cancelamento.

PedidoFechado

A classe PedidoFechado herda todos os atributos da classe Pedido e possui o campo

datafechamentoque contem a data de fechamento do pedido.

PedidoEntregue

A classe PedidoFechado herda todos os atributos da classe PedidoTelefone e possui o

campodataentregaque contem a data de entrega do pedido.

Endereço

A classe Endereço possui os camposid um identifador único do endereço,nome uma

identificação para busca do endereço,rua a rua do local,numerocom o numero do local,bairro

o bairro do local,complementoum complemento ao endereço edica uma dica.

35

Page 39: Estudo Requisitos

Capítulo 7

Conclusão

A especificação de requisitos e também a modelagem orientadaa objetos apresentados neste

documento nos mostrou que o sistema consiste na comunicaçãoentre o cliente e a empresa, de-

pendendo também em grande parte do banco de dados para armazenagem de dados de clientes,

produtos e também das vendas.

Também é importante enfatizar que esse sistema, deve facilitar para os clientes do estab-

elecimento uma maior facilidade na hora da realização de um pedido, seja ele por telefone, via

internet e até mesmo se o cliente estiver no estabelecimento.

Finalmente o sistema visa suprir os requisitos que foram apresentados pelos funcionários

durante o período de entrevista e coleta dos dados.