Você está na página 1de 124

CAMPUS ARARAQUARA

ANALISE E DESENVOLVIMENTO DE SISTEMAS

THIAGO AUGUSTO DE VILAS BOAS RA: N405767


OTÁVIO AUGUSTO ROSA BAIO RA: N404EA0
MIKE DOUGLAS DE PAULA SOARES RA: F0289D7
FELIPE AUGUSTO CALÓGERO RA: N390BB6
GABRIEL GODOY DOS SANTOS RA: D873385

PROJETO INTEGRADO MULTIDISCIPLINAR


Desenvolvimento de software de controle para uma pizzaria

ARARAQUARA, SP
2019
THIAGO AUGUSTO DE VILAS BOAS RA: N405767
OTÁVIO AUGUSTO ROSA BAIO RA: N404EA0
MIKE DOUGLAS DE PAULA SOARES RA: F0289D7
FELIPE AUGUSTO CALÓGERO RA: N390BB6
GABRIEL GODOY DOS SANTOS RA: D873385

PROJETO INTEGRADO MULTIDISCIPLINAR


Desenvolvimento de software de controle para uma pizzaria

Trabalho de conclusão de semestre


apresentado ao curso de Análise e
Desenvolvimento de Sistemas da
Universidade Paulista - UNIP

Coordenador: Prof. Douglas Rodrigues


Orientador: Prof. Leonildo Azevedo

ARARAQUARA, SP
2019
THIAGO AUGUSTO DE VILAS BOAS RA: N405767
OTÁVIO AUGUSTO ROSA BAIO RA: N404EA0
MIKE DOUGLAS DE PAULA SOARES RA: F0289D7
FELIPE AUGUSTO CALÓGERO RA: N390BB6
GABRIEL GODOY DOS SANTOS RA: D873385

PROJETO INTEGRADO MULTIDISCIPLINAR


Desenvolvimento de software de controle para uma pizzaria

Trabalho de conclusão de semestre


apresentado ao curso de Análise e
Desenvolvimento de Sistemas da
Universidade Paulista - UNIP

Aprovado em:

BANCA EXAMINADORA
_______________________/__/___
Prof. Douglas Rodrigues
Universidade Paulista – UNIP
RESUMO

Nos dias atuais, onde vivemos em um país que a cada dia se tem um tipo de
dificuldade ou obstáculos para o empreendedor, qualquer tipo de utilização de
tecnologia pode fazer a diferença em relação a entrega do produto ao cliente.
Pensando nisso, fazer a implementação de um sistema automatizado é nada mais do
que a inclusão de um diferencial ao atendimento dos cliente, onde pode-se entregar
um atendimento muito melhorado e ágil, diminuir a ocorrência de falhas na cobrança
de seus clientes e até mesmo a passagem dos pedidos até a produção, que evita e
fabricação de produtos incorretos.

O seguinte projeto apresenta uma ideia para o desenvolvimento de um software


de gestão, onde o tempo e custo é fixo, que funcionara em uma pizzaria possuindo as
funcionalidades principais de atendimento, controle de estoque, opiniões de clientes
sobre o estabelecimento e relatórios relacionados ao faturamento.

O desenvolvimento do sistema consiste na utilização de métodos e práticas


seguindo as orientações da engenharia de software que facilitaram tanto o
entendimento do problema, quanto a construção do sistema, apresentando requisitos
de formas bem visuais e explicativas, consequentemente, com isso evitando o máximo
de erros durante essas etapas. O processo de utilização do sistema, foi desenvolvido
com máxima facilidade de utilização possível, a fim de atender a necessidade do
cliente em relação aos seus usuários.

Palavras-chave: Analise e levantamento de requisitos, Projeto, implementação,


Testes e implantação do sistema.
ABSTRACT

Nowadays, where we live in a country that every day has a kind of difficulty or
obstacle for the entrepreneur, any use of technology can make a difference
concerning the delivery of the product to the customer. In this context, implementing
an automated system is just the inclusion of a differential customer service, where it's
possible to deliver improvements and service agile with the occurrence, reduce
failures in taxes to the customers, and avoids and manufacture incorrect products.

The following project presents a problem situation for the development of


management software where time and cost are fixed, which will work in a pizzeria
having the main features of attendance inventory control customer opinions about the
establishment and related reports to billing.

The development of the system consists of methods and practices that


facilitated both the understanding of the problem and the construction of the system
presenting requirements in very visual and explanatory ways, thus avoiding the
maximum errors during these steps. The process of the system contruction was
developed as easily as possible in order to meet the customer's needs in relation to
its users.

Palavras-chave: Requirements analysis and gathering; System Design;


Implementation; Testing and Deployment.
LISTA DE ILUSTRAÇÕES

Figura 1 Diagrama de caso de uso – Funções Funcionários .................................................................. 29


Figura 2 Diagrama de atividade - Tela Login ......................................................................................... 30
Figura 3 Diagrama de atividade - Solicitação de pedidos ..................................................................... 31
Figura 4 Diagrama de atividade - Controle de estoque ........................................................................ 32
Figura 5 Diagrama de atividade - Reclamações e Elogios ..................................................................... 33
Figura 6 Diagrama de caso de uso - Funções Administrador ................................................................ 34
Figura 7 Diagrama de atividade - Cadastro de bebidas......................................................................... 35
Figura 8 Diagrama de atividade - Cadastros de Pizzas .......................................................................... 36
Figura 9 Diagrama de atividade - Cadastro de insumos........................................................................ 37
Figura 10 Diagrama de atividade - Cadastros de Pizzaiolos .................................................................. 38
Figura 11 Diagrama de atividade - Cadastros de promoções ............................................................... 39
Figura 12 Diagrama de atividade - Relatórios - Unidade da rede com maior número de vendas ........ 40
Figura 13 Diagrama de atividade - Relatórios - Totalização de faturamento ....................................... 41
Figura 14 Diagrama de atividade - Relatórios - Sabores mais pedidos por unidade ............................ 42
Figura 15 Diagrama de atividade - Relatórios - Perdas ou cancelamentos........................................... 43
Figura 16 Fluxograma - Vendas ............................................................................................................. 47
Figura 17 Fluxograma - Login ................................................................................................................ 47
Figura 18 Fluxograma - Controle de estoque ........................................................................................ 48
Figura 19 Fluxograma - Cadastros ......................................................................................................... 48
Figura 20 Fluxograma - Relatório .......................................................................................................... 49
Figura 21 Diagrama de redes ................................................................................................................ 55
SUMÁRIO

1. INTRODUÇÃO ................................................................................................................................................ 15
2. CARACTERÍSTICAS DE UM SISTEMA DE GESTÃO PARA RESTAURANTES ....................................................... 17
3. MOTIVAÇÃO PARA A IMPLANTAÇÃO DO SISTEMA ...................................................................................... 19
4. FUNDAMENTAÇÃO TEÓRICA ........................................................................................................................ 21
4.1. ENGENHARIA DE SOFTWARE APLICADA ................................................................................................... 21
4.2. PROCESSO DE DESENVOLVIMENTO ......................................................................................................... 22
4.3. LEVANTAMENTO DE REQUISITOS............................................................................................................. 24
4.4. LINGUAGEM DE MODELAGEM ................................................................................................................. 26
4.5. METODOLOGIA DE DESENVOLVIMENTO ................................................................................................. 27
4.5.1. IMPACTO DA METODOLOGIA PARA O DESENVOLVIMENTO ............................................................... 27
5. DESENVOLVIMENTO E METODOS................................................................................................................. 29
5.1. ANALISE DE REQUISITOS DO SISTEMA E SUAS FUNCIONALIDADES ......................................................... 29
5.1.1. FUNCIONALIDADES DOS FUNCIONÁRIOS ............................................................................................ 29
5.1.2. ACESSO AO SISTEMA ............................................................................................................................ 30
5.1.3. SOLICITAÇÃO DE PEDIDOS ................................................................................................................... 31
5.1.4. CONTROLE DE ESTOQUE ...................................................................................................................... 32
5.1.5. RECLAMAÇÕES E ELOGIOS ................................................................................................................... 33
5.1.6. FUNCIONALIDADES DO ADMINISTRADOR ........................................................................................... 34
5.1.7. FUNCIONALIDADE DE CADASTROS ...................................................................................................... 35
5.1.8. RELATÓRIOS ......................................................................................................................................... 40
5.2. REGRAS DE NEGÓCIOS ............................................................................................................................. 44
5.2.1. RECEBIMENTO DE MERCADORIA ......................................................................................................... 44
5.2.2. VENDA .................................................................................................................................................. 44
5.2.3. PROMOÇÕES ........................................................................................................................................ 45
5.2.4. PREPARAÇÃO DOS PEDIDOS ................................................................................................................ 46
5.2.5. PROCESSO GERENCIAL ......................................................................................................................... 46
5.3. FLUXOGRAMA DO SISTEMA ..................................................................................................................... 47
5.4. PROJETO ................................................................................................................................................... 51
5.4.1. ARQUITETURA DO SISTEMA ................................................................................................................. 51
5.4.2. LINGUAGEM E TÉCNICAS PARA PROGRAMAÇÃO ................................................................................ 52
5.5. COMUNICAÇÃO ENTRE AS FILIAIS ............................................................................................................ 53
5.5.1. CONCEITO DE COMPUTAÇÃO EM NUVEM .......................................................................................... 53
5.5.2. TIPOS DE COMPUTAÇÃO EM NUVEM .................................................................................................. 53
5.5.3. MODELOS DE IMPLANTAÇÃO EM NUVEM........................................................................................... 54
5.5.4. DIAGRAMA DE REDE............................................................................................................................. 55
5.5.5. APLICAÇÃO DE COMUNICAÇÃO ........................................................................................................... 55
5.5.6. PROTOCOLO DE REDE .......................................................................................................................... 56
5.5.7. DEFINIÇÃO DO PROTOCOLO ................................................................................................................ 56
5.6. TESTES ....................................................................................................................................................... 57
5.7. IMPLEMENTAÇÃO DO SISTEMA ................................................................................................................ 58
5.8. ÉTICA E LEGISLAÇÃO ................................................................................................................................. 59
5.9. METODOLOGIA CIENTÍFICA ...................................................................................................................... 61
6. CONCLUSÃO .................................................................................................................................................. 63
15

1. INTRODUÇÃO

Atualmente, com o avanço da tecnologia em várias áreas de mercado,


facilitando os meios de produção de produtos, seja de grande ou pequeno porte, as
empresas vêm buscando cada vez mais essa facilidade em seus processos. Iniciando
o projeto, foi apresentado como base alguns exemplos e funcionalidades que podem
ser de grande ajuda em qualquer tipo de sistema de gestão, onde foram abordados
os itens principais para se ter um processo confiável de produção e financeiramente
falando, onde se pode garantir os dados corretos de faturamento.

O projeto faz abordagem explicativa de algumas funções que são bastante


utilizadas para desenvolvimento de sistema, iniciando com as necessidades
apresentadas pelo cliente, que foram sugeridas na proposta do trabalho. Essas
necessidades em conjunto, devem formar um sistema de gerenciamento para uma
pizzaria que possuem 3 filiais, onde o cliente conseguirá ter todas as informações
necessárias sobre seus negócios com o simples acesso ao sistema.

Para o desenvolvimento dessas funcionalidades necessárias do cliente, foi


utilizado como base alguns princípios da engenharia de software. Esses princípios
deram início ao processo de desenvolvimento com a apresentação de suas principais
fases. Dando continuidade ao desenvolvimento, foi apresentado também a forma
como o projeto pode ser apresentado ao cliente, antes mesmo de estar em
desenvolvimento, buscando um feedback em relação a aprovação para início das
atividades, onde são utilizados objetos visualmente satisfatórios.

Antes de iniciarmos a modelagem do sistema, foi apresentado um conteúdo


explicativo sobre a importância do levantamento de requisitos e como esse tipo de
prática deve ser aplicada ao projeto. Após esse tópico foi citado o tipo de metodologia
implementado para o projeto, que seguindo os parâmetros dos requisitos, foi o que
mais se encaixou no projeto, pela decisão dos desenvolvedores.

Iniciando a modelagem do sistema, conforme a utilização do modelo UML,


foram apresentadas cada funcionalidade do sistema com suas devidas descrições e
funcionamentos pela visão do usuário. Os diagramas serviram como modelos visuais
buscando facilitar o entendimento das descrições já ditas. Após o processo citado
16

acima, foi desenvolvido um fluxograma, onde conseguimos observar todo o


comportamento do sistema.

Falando um pouco sobre a questão do projeto, que é uma das fases do


processo de desenvolvimento, foram abordados assuntos como: Arquitetura do
sistema, que envolveu todos as etapas anteriores a ela, a fim de se ter uma
confirmação de todos os envolvidos sobre o entendimento das funcionalidades do
sistema, e espaço para discussões em relação a alterações do projeto. Linguagem e
técnicas de programação, onde se teve início aos algoritmos com a utilização da
linguagem C, que foi escolhida como meio de desenvolvimento em baixo custo, e por
fim principais cálculos utilizados para o desenvolvimento dos códigos, que ajudaram
a chegar aos resultados satisfatórios.

A implementação da rede de comunicação, teve como principal foco, a


explicação de toda a estrutura utilizada, abordando visualmente a representação da
rede, suas topologias físicas e lógicas, e protocolos de comunicação, essenciais para
o envio dos arquivos ao servidor requisitado pelo cliente.

A fase de testes, teve como princípio seguir a metodologia escolhida para o


projeto, tendo em vista a entrega de um produto sem falhas com funcionalidades
seguras em suas utilizações.

Para o processo de implementação do sistema, todo o conteúdo necessário


para a utilização do cliente e seus funcionários, será documentada e apresentada em
forma de manuais de treinamento.
17

2. CARACTERÍSTICAS DE UM SISTEMA DE GESTÃO PARA RESTAURANTES

Segundo o professor da Universidade Anhembi Morumbi, Ubiratan Miranda


(2018), nos dias atuais é praticamente impossível de se ter um empreendimento sem
fazer a utilização de meios tecnológicos como auxilio no trabalho. Ainda segundo ele,
qualquer estabelecimento, sendo do mais simples até o mais sofisticado, o uso da
tecnologia é empregado de alguma maneira, citando como exemplo os meios
utilizados para pagamentos eletrônicos.

Hoje em dia, cada vez mais pizzarias estão sendo inauguradas nos mais
diferentes bairros de qualquer cidade do país, segundo informação da associação de
Pizzarias Unidas de São Paulo (2018), mais de 1 milhão de pizzas são produzidas
diariamente em nosso país, com esses números podemos constatar o grande desafio
que um empreendedor encontra ao abrir esse tipo de estabelecimento, tendo que
apostar muito em diversidades para alcançar uma boa parte do público e garantir o
sucesso do seu negócio. Nesse quesito de inovações, não podemos deixar de fora o
uso da tecnologia para auxilio em geral da administração, visto que, para
gerencialmente de qualquer tipo de estabelecimento seja ele de qualquer segmento,
fica quase impossível faze-lo sem o uso de qualquer sistema gerencial, que podem
servir de ajuda desde o auxílio financeiro até o controle de gestão de compras e
estoque.

Ao entrar nos detalhes sobre o funcionamento cotidiano de um estabelecimento


desse tipo, podemos colocar em consideração alguns pontos que provavelmente um
sistema de gestão irá melhorar. É necessário que todas as informações de vendas,
utilização dos ingredientes para controle de estoque, produção, fechamento do caixa
e entre outras, estejam todas bem definidas e alinhadas para evitar um possível sério
problema no gerenciamento do negócio. Seria de muita complicação fazer o controle
de todos esses procedimentos de forma manual dependendo da movimentação do
local.

A importância de um sistema para um controle de estoque é a de que quando


todos os produtos estiverem totalmente cadastrados poderemos saber qual a
quantidade de cada produto e com isso, temos todas as informações de eventuais
perdas, erros ou extravios de produtos, assim controlando todos os itens que entram
18

e saem do local, evitando qualquer tipo de surpresa com a falta de algum item
importante para fabricação do produto final.

No entendimento do processo de atendimento fazer a utilização de comandas


manuais em muitos casos, pode fazer com que os pedidos demorem mais tempo para
serem concluídos e tem um risco muito maior de que aconteça algum tipo de erro ao
passar o pedido para fabricação, com a utilização de algum tipo de sistema, os
pedidos geralmente são feitos via dispositivos eletrônicos, melhorando a velocidade
do atendimento, e diminuindo bastante os erros de solicitação, que faz com que os
funcionários possam atender muito mais clientes.

Atualmente também implantado nas maiorias dos estabelecimentos e que


proporciona um melhor atendimento ao cliente, são os meios de avalição dos seus
processo, como as opções para comentários de reclamações que servem como
manifestação da falta de contentamento com algum aspecto do local ou elogios de
qualquer tipo, esse tipo de pratica, torna o estabelecimento mais preparado e
respeitando os direitos dos consumidores para o mercado em que está atuando,

Para termos um sistema bem desenvolvido, devemos também dar uma


importância bem significativa para a questão dos relatórios gerenciais, que funcionam
para garantir que as decisões estratégicas sejam tomadas de maneira assertiva e a
principal dificuldade para que essas decisões estejam corretas é justamente ter todas
as informações mais importantes do seu negócio, que nada mais são, do que um
resumo de todas as outros pontos comentados anteriormente, disponíveis em um só
ambiente e de fácil visualização para o empreendedor.
19

3. MOTIVAÇÃO PARA A IMPLANTAÇÃO DO SISTEMA

Após vários exemplos apresentados anteriormente sobre um sistema de


utilização para gerenciamento de processos, o empreendedor proprietário da Pizzaria
King Pizza, solicitou a solução para alguns problemas encontrados no processo geral
do seu estabelecimento, fazendo a utilização de um sistema conforme especificações
citadas anteriormente.

O proprietário, que possui 3 filiais no ramo, apresentou as dificuldades em se


ter um processo que garanta números assertivos sobre a produção, o atendimento e
o controle de matérias primas que são utilizadas para fabricação das pizzas,

Por meio dessas informações foi elaborado uma lista de solicitação de


requisitos, para que pudesse se ter um desenvolvimento do sistema de forma
adequada ao cliente, e com garantia de aprovação dos usuários utilizadores, onde foi
incorporado os seguintes itens. O proprietário necessitava de um sistema para acesso
exclusivo para alguns funcionários, com tela de login e senha, para cadastramento de
bebidas, sabores das pizzas que são fabricadas com separação de ingredientes para
cada pizza, formando assim um controle de estoque para os produtos, informações
de promoções aos clientes, e espaço reservado para reclamações e elogios dos
mesmos. Em modo administrador, necessitava de um sistema de relatórios gerenciais
onde seriam apontados os sabores que mais eram vendidos entre as 3 unidades e em
qual unidade eram vendidas, e por fim um local para visualização do faturamento
diário e mensal de cada unidade e faturamento geral da empresa.

Essas funções deveriam ser criadas utilizando um sistema de baixo custo,


devido ao seu fluxo de caixa não ser muito grande, mas que tivesse as funcionalidades
bem definidas. Com essas informações o proprietário busca melhorar os processos
que influenciam o faturamento de sua rede de pizzarias sem necessidade de muito
investimento com relação a tecnologia.
20
21

4. FUNDAMENTAÇÃO TEÓRICA
4.1. Engenharia de Software aplicada

Segundo Ricardo R. Gudwin (2015), para desenvolvimento de um determinado


software é necessário levar em consideração duas características conforme proposto
pela metodologia de engenharia de software, que são, o processo de desenvolvimento
e a linguagem de modelagem.

Um processo de desenvolvimento corresponde a um conjunto de atividades


a serem desenvolvidas por um ou mais trabalhadores da indústria de software
que seguindo uma determinada sequências logica de passos, conseguem
determinar as necessidades dos usuários e transformá-las em um sistema de
software, RICARDO R. GUDWIN (2015, pag.6).

Uma Linguagem de modelagem corresponde a uma linguagem padronizada


na qual artefatos de software possam ser desenvolvidos. Essa linguagem é
geralmente uma linguagem visual, que especifica a sintaxe e a semântica de
classes de diagramas, utilizados explicitamente para modelar partes de um
sistema de software ou de planos de construção de sistemas de software,
RICARDO R. GUDWIN (2015, pag. 6).

Com base nessas informações, podemos criar um caminho a ser seguido, e


após fazer as representações desses processos, pode-se ter um desenvolvimento
com qualidade e conforme solicitações do cliente, que será apresentado nos próximos
tópicos, onde serão abordados os assuntos citados acima em relação ao sistema
exigido no projeto.
22

4.2. Processo de desenvolvimento

Para um bom processo de desenvolvimento de software, conforme citado no


tópico anterior, temos que seguir um conjunto de atividades que são compostas por
sequências logicas de ações, a união desse conjunto de atividades faz a formação de
um ciclo, chamado ciclo de vida de desenvolvimento, e esse Ciclo de vida é formado
por algumas fases importantes para o projeto, que são os processos de Analise e
levantamento de requisitos, Projeto, Implementação, Testes e implantação do
sistema.

Falando em levantamento de requisitos podemos ressaltar que é a etapa mais


importante do processo de desenvolvimento, onde é feita a atividade de
compreendimento do problema em questão, tendo a visão do que se deve ser
construído. Essa etapa busca amplo contato com o cliente e usuários do sistema,
onde são levantadas e priorizadas as necessidades do sistema.

A etapa de Analise de requisitos é feita após o levantamento de requisitos, onde


são feitos os estudos detalhados das informações coletadas anteriormente. Nessa
fase são construídos modelos que representam o software a ser construído, onde
após a construção desses modelos, são apresentados aos clientes que faram a
validação e verificação se os mesmos atendem as necessidades e conformidades dos
requisitos.

Na fase do projeto deve-se levar em consideração o modo como o sistema terá


seu funcionamento, onde é gerada uma descrição computacional, que dita as funções
que o software deve fazer, que consequentemente devem ser iguais as realizadas na
análise de requisitos, assim podemos concretizar as ideias e trabalhar para garantir
que os requisitos do cliente sejam atendidos. Nessa fase também, devem ser
considerados aspectos importantes como: arquitetura do sistema e linguagem de
programação utilizada.

A fase de Implementação é voltada para dar continuidade ao projeto, utilizando


na pratica as diretrizes impostas anteriormente. Nessa fase se dá início ao processo
de programação e criação do software.
23

A etapa de testes, é formada por vários testes feitos em cada item funcional do
software, tendo em vista as especificações requeridas na etapa de projeto. Após essa
etapa, todos os itens do sistema testados são agrupados, tendo como resultado o
sistema finalizado.

A implantação do sistema, como parte final do processo, é a etapa onde o


sistema é integrado nas operações do cliente, tendo como objetivo uma boa transição
aos usuários que iram utilizar. Esse processo é formado pela criação e entrega de
manuais de uso, treinamento de usuários para uso correto do sistema e quando
houver, a implementação das informações que o cliente já possui sobre seu negócio
no sistema.

Todas essas etapas e funcionalidades, serão apresentadas detalhadamente


nos próximos tópicos do projeto.
24

4.3. Levantamento de requisitos

O levantamento de requisitos é a primeira etapa para o processo de


desenvolvimento, conforme já citado anteriormente, mas entrando em detalhes, essa
etapa pode ser feita de várias maneiras diferentes, porém, uma das maneiras mais
simples e utilizada é por meio de realizações de reuniões, onde são feitas entrevistas,
que por sua vez, são formadas pelas equipes de analistas de sistemas e a equipe de
usuários do cliente, onde serão abordadas as ideias para início do processo.

Esse processo do desenvolvimento, mesmo sendo um processo de diálogo


com o cliente, pode se tornar um problema caso não seja bem executado, e algumas
dificuldades podem ser descritas, como: A falta de conhecimento do cliente ou usuário
para quem serão feitas as perguntas de requisitos; O não entendimento do profissional
desenvolvedor com a entrevista sobre as solicitações do usuário, tomando rumos
diferentes do planejado; As solicitações do cliente não serem postas como relevantes
para equipe de desenvolvimento.

De acordo com GAUSE e WEIBERG (1989), a primeira comunicação com o


usuário ou cliente, deve ser de livre contexto, onde se tem o entendimento básico do
problema, os responsáveis que querem a solução desses problemas e o grau de
positividade do primeiro encontro.

Segundo Roger S. Pressman (2011), exemplos de perguntas que se deve


iniciar uma entrevista são:

 Quem está por trás da solicitação desse trabalho?


 Quem irá usar a solução?
 Qual será o benefício econômico de uma solução bem-sucedida?
 Há uma outra fonte para a solução que você precisa?

Para continuar a entrevista após obter as devidas respostas do questionário


acima, onde serão apresentadas perguntas que levaram ao entendimento detalhado
do problema e que se tenha uma opinião sobre como o cliente espera os resultados,
Roger S. Pressman (2011), indica as seguintes questões:

 Como você caracterizaria uma “boa” saída, que seria gerada por uma
solução bem-sucedida?
25

 Quais os problemas está solução irá tratar?


 Você poderia me indicar o ambiente de negócios em que a solução será
usada?
 Restrições ou problemas de desempenho afetam a maneira com que
solução será abordada?

Por fim, como finalização do processo de questionamento para se ter êxito com
o levantamento dos requisitos, Roger S. Pressman (2011), cita os seguintes
questionamentos:

 Você é a pessoa certa para responder essas perguntas?


 Minhas perguntas são relevantes para o seu problema?
 Estou fazendo perguntas demais?
 Algumas outras pessoas seriam capazes de apresentar mais
informações?
 Teria mais alguma pergunta que eu lhe pudesse fazer?

Para que a entrevista seja de boa qualidade e tenha sucesso, é de extrema


importância que o entrevistador prepare com antecedência sua entrevista. É
importante também que o entrevistador repasse ao entrevistado a duração e
quais os objetivos que se deseja alcançar na entrevista. CARVALHO e
CHIOSSI, 2001, p. 52).

Após esse processo, pode-se dar início ao processo de levantamento de


requisitos, que será apresentado nos próximos tópicos do projeto.
26

4.4. Linguagem de modelagem

Segundo descrição de Booch, Rumbaugh e Jacobson (2012), A modelagem é


uma das principais atividades que dão início ao desenvolvimento de um bom software.
Os modelos ajudam a visualizar como o sistema deveria ser realmente e permitem
especificar estruturas e comportamentos do mesmo, proporcionando uma guia para
essa construção.

Um diagrama é uma representação gráfica de um conjunto de elementos,


geralmente representadas como gráficos de vértices (itens) e arcos
(relacionamentos). São desenhadas para permitir a visualização de um
sistema sob diferentes perspectivas; nesse sentido, um diagrama constitui
uma projeção de um determinado sistema. BOOCH, RUMBAUGH e
JACOBSON (2012, pag. 57).

A UML é formada pela representação de elementos gráficos, que são usados


para uma melhor apresentação do sistema, onde fornecem nove tipos de diagramas.
Os diagramas possuem características particulares em relação a forma com que as
informações são apresentadas, e devem ser escolhidas para melhor representar a
situação problema.

Dentre esses tipos de diagramas, decidimos fazer nossa apresentação do


sistema utilizando a ideia visual de 2 tipos deles, que são: diagramas de casos de uso
e diagramas de atividades.

 Diagrama de caso de uso

Diagrama de caso de uso é utilizado para representar as funcionalidades no


ponto de visto do usuário, criando um cenário de interação das funcionalidades do
sistema com os usuários do mesmo.

 Diagrama de atividades

Diagrama de aditividades são formados como fluxogramas de controle das


atividades, dando visibilidade ao fluxo sequencial do controle de uma atividade para a
outra.
27

4.5. Metodologia de desenvolvimento

A metodologia de desenvolvimento é um processo que possui diretrizes bem


definidas, que ajudam os desenvolvedores a trabalharem de forma a conseguir
entregar um produto de bom funcionamento, com qualidade, sem ultrapassar os
limites impostos pelo cliente em relação as funcionalidades, tempo e custos.

Para desenvolvimento desse projeto, após o cliente apresentar suas limitações


financeiras disponíveis, requisitos não críticos e um tempo um tanto quanto “apertado”
para informatização de sua pizzaria, conforme citado anteriormente, foram feitas
algumas observações que ajudaram a selecionar uma metodologia que caberia no
projeto. Desse modo, algumas metodologias foram cogitadas, onde tivemos como
principal candidato o DSDM (Método de Desenvolvimento de Sistemas Dinâmicos).

4.5.1. Impacto da metodologia para o desenvolvimento

O DSDM tem como principal característica o desenvolvimento rápido


(metodologia ágil) utilizando o método incremental, que é a entrega do sistema em
várias fases, podendo assim ter um feedback do usuário constantemente durante o
processo de desenvolvimento, ajudando muito a entrega de um sistema de qualidade
e funcional ao cliente. Além dessa característica, o DSDM assume o dever de entregar
seus sistemas em tempo e custo fixo, utilizando o desenvolvimento iterativo, ou seja,
utilizando um método que faz a divisão do projeto em partes, onde são vistos
primeiramente os requisitos básicos que o sistema deve conter de imediato, e após
esses requisitos serem desenvolvidos, são revistos e complementados com as
funcionalidades “não prioritárias”. O DSDM também utiliza um sistema de testes, onde
os mesmos são feitos dentro de todo o processo, facilitando e não permitindo erros
inesperados ao final do projeto, onde são envolvidas todas as partes interessadas
pelo desenvolvimento, principalmente o próprio cliente.
28

DSDM possui alguns conceitos particulares que devem ser entendidos,


como o conceito de “Timeboxing”. Trata-se do encapsulamento do tempo
reservado para o desenvolvimento das funcionalidades, por meio da divisão
dos projetos em porções, um comum orçamento próprio, e fixas por uma data
de entrega predefinida. SBROCCO, José Henrique Teixeira de Carvalho;
MACEDO, Paulo Cesar de (2012, pg 113).

A metodologia foi implementada em nosso projeto, ajudando na organização


das funções de cada desenvolvedor, onde foram separadas as partes de
documentação e codificação. A partir dessa separação pode-se ter a responsabilidade
do desenvolvimento no tempo estimado, sendo utilizado o processo de
implementação dos requisitos prioritários, fazendo testes constantes dessas
aplicações, onde após união de todas as partes obtivemos o sistema funcional
conforme planejado de início.
29

5. DESENVOLVIMENTO E METODOS
5.1. Analise de requisitos do sistema e suas funcionalidades

Uma solicitação de requisitos funciona como uma lista de funcionalidades que


o sistema deve possuir e suas características de funcionamento, essa lista serve como
base para o desenvolvimento desse sistema, conforme as necessidades dos usuários
que iram utilizar. As listas abaixo serão representadas conforme cada função do
sistema, separadas por nome da função, descrição da função, representação da
função para o usuário ou administrador e a regra de negócios de cada função.

Os diagramas de caso de uso que serão apresentados, serão para as funções


de cada tipo de usuário, sendo eles: Administrador e funcionário. Inicialmente iremos
apresentar as funcionalidades no ponto de vista do funcionário, que podemos ver a
seguir. Após apresentação do caso de uso, será feita a apresentação por meio dos
diagramas de atividades, onde será visualmente detalhado o processo para cada
função.

5.1.1. Funcionalidades dos funcionários

Figura 1 Diagrama de caso de uso – Funções Funcionários


30

5.1.2. Acesso ao sistema

Nome: Tela de login e senha

Função: Limitar o acesso ao sistema

Descrição da função: Administrador e usuário serão cadastrados por usuário e senha


poder ter o acesso ao sistema, apenas após o login será possível acesso as funções.

Representação para o usuário: Ao iniciar essa função, será solicitado de imediato


usuário e senha para acesso, sem essas credenciais não se consegue acessar o
sistema, digitando usuário ou senha incorreto, aparecerá mensagem de erro para
tentar novamente com os dados corretos.

Figura 2 Diagrama de atividade - Tela Login


31

5.1.3. Solicitação de pedidos

Nome: Solicitação de pedidos e cadastro cliente,

Função: Coletar os dados dos clientes e seus pedidos,

Descrição da função: Armazenar data, informações do pedido e informações do


cliente,

Representação para o usuário: Após o login no sistema, será liberado o menu principal
do funcionário, onde o mesmo deverá selecionar a opção (Pedidos), sendo possível
assim, fazer a utilização da função, onde deverá fazer o preenchimento conforme as
opções sugeridas.

Figura 3 Diagrama de atividade - Solicitação de pedidos


32

5.1.4. Controle de estoque

Nome: Controle de estoque,

Função: Adicionar e retirar produtos do sistema, controlando o estoque,

Descrição da função: Permitir os usuários a realizar a entrada e saída de produtos por


meio do recebimento, vendas e produção,

Representação para o usuário: Após o login no sistema, será liberado o menu


principal, onde o usuário deverá selecionar a opção (estoque), sendo possível sua
utilização.

Figura 4 Diagrama de atividade - Controle de estoque


33

5.1.5. Reclamações e elogios

Nome: Reclamações e elogios (feedback) dos clientes

Função: Salvar as opiniões dos clientes,

Descrição da função: Armazenar o feedback do cliente em relação ao atendimento em


geral,

Representação para o usuário: Após o login no sistema, será liberado o menu


principal, onde o usuário deverá selecionar a opção (Elogios e Reclamações), sendo
possível sua utilização para inserir as opiniões dos clientes sobre atendimento,
ambiente e sabores das pizzas.

Figura 5 Diagrama de atividade - Reclamações e Elogios


34

5.1.6. Funcionalidades do Administrador

Como informado anteriormente, foram apresentadas as funções solicitadas


para utilização dos funcionários, a seguir podemos ver as funções para utilização do
administrador, onde terá algumas funcionalidades adicionais para gerenciamento das
filiais. Pensando nessas funcionalidades, onde de fato, será exclusiva para o
administrador, logo que, apenas o administrador pode fazer alterações de produtos,
preços, informar promoções, inserir funcionários no sistema ou verificar as
informações gerenciais de suas unidades, além de ter todas as outras funcionalidades
apresentadas anteriormente. Será apresentado as funcionalidades do administrador
utilizando o diagrama de casos de uso, após essa apresentação, veremos todas as
funcionalidades utilizando os diagramas de atividades.

Figura 6 Diagrama de caso de uso - Funções Administrador

Como a apresentação das funções de solicitação de pedidos, controle de


estoque e reclamações e elogios já foi apresentada anteriormente pelo diagrama de
atividades, a partir daqui, será abordado apenas as funcionalidades exclusivas do
administrador.
35

5.1.7. Funcionalidade de cadastros

Nome: Cadastros de bebidas,

Função: Cadastrar as bebidas no sistema,

Descrição da função: Armazenar nome, quantidade e valores das bebidas, sendo


utilizado para controle de estoque e vendas,

Representação para o usuário: Após fazer o login no sistema, será liberado o menu
principal, onde o usuário deverá selecionar a opção (bebidas) para utilização da
função.

Figura 7 Diagrama de atividade - Cadastro de bebidas


36

Nome: Cadastro de Pizzas,

Função: Cadastrar as pizzas no sistema,

Descrição da função: Armazenar nomes e valores das pizzas,

Representação para o usuário: Após fazer o login no sistema, será liberado o menu
principal, onde o usuário deverá selecionar a opção (pizzas), sendo possível a
utilização da função,

Figura 8 Diagrama de atividade - Cadastros de Pizzas


37

Nome: Cadastro de insumos,

Função: cadastrar os insumos da produção,

Descrição da função: Armazenar nomes, quantidades e valores de compra,

Representação para o usuário: Após o login no sistema, será liberado o menu


principal, onde o usuário deverá selecionar o sub menu (cadastros), em seguida
selecionar a opção de (insumos), sendo possível a utilização da função.

Figura 9 Diagrama de atividade - Cadastro de insumos


38

Nome: Cadastro de Pizzaiolos,

Função: Cadastrar os dados dos funcionários,

Descrição da função: Armazenar nomes, funções e salários,

Representação para o usuário: Após o login no sistema, será liberado o menu


principal, onde o usuário deverá selecionar a opção (funcionários), sendo possível sua
utilização.

Figura 10 Diagrama de atividade - Cadastros de Pizzaiolos


39

Nome: Promoções

Função: Mostrar na tela de pedidos as promoções diárias,

Descrição da função: Cadastrar as opções diárias de promoções,

Representação para o usuário: Após o login no sistema, será liberado o menu


principal, onde o usuário deverá selecionar a opção de (cadastros), ao abrir o sub
menu, devera selecionar a opção (Cadastro de promoções), sendo possível sua
utilização.

Figura 11 Diagrama de atividade - Cadastros de promoções


40

5.1.8. Relatórios

Nome: Unidade de rede com maior volume de vendas

Função: Identificar unidade de rede com maior volume de vendas

Descrição da função: Coleta informações de vendas de todas as filiais, e após


comparações informa unidade com maior número de vendas.

Representação para o usuário: Após o login no sistema, será liberado o menu


principal, onde o usuário deverá selecionar a opção (relatórios), ao abrir o sub menu,
devera selecionar a opção Unidade de rede com maior volume de vendas.

Figura 12 Diagrama de atividade - Relatórios - Unidade da rede com maior número de vendas
41

Nome: Totalização diária/mensal de faturamento

Função: Mostrar o faturamento diário e mensal de cada unidade da rede

Descrição da função: Coleta informações de vendas de ambas as filiais, diariamente


e mostra o faturamento diário. O faturamento mensal é feito através da somatória dos
faturamentos diários de cada unidade da rede.

Representação para o usuário: Após o login no sistema, será liberado o menu


principal, onde o usuário deverá selecionar a opção (relatórios), ao abrir o sub menu,
devera selecionar a opção Faturamento diário/mensal.

Figura 13 Diagrama de atividade - Relatórios - Totalização de faturamento


42

Nome: Sabores mais pedidos por unidade da rede

Função: Mostrar os sabores mais pedidos de cada unidade da rede.

Descrição da função: Coleta informações de vendas de ambas as filiais e mostra a


quantidade de vendas de cada sabor de pizza.

Representação para o usuário: Após o login no sistema, será liberado o menu


principal, onde o usuário deverá selecionar a opção (relatórios), ao abrir o sub menu,
devera selecionar a opção Sabores mais pedidos por unidade da rede.

Figura 14 Diagrama de atividade - Relatórios - Sabores mais pedidos por unidade


43

Nome: Perdas e cancelamentos de pedidos

Função: Mostrar perdas de produtos e pedidos cancelados.

Descrição da função: Coleta informações sobre perdas de produtos e cancelamentos


de pedidos e mostra ao usuário.

Representação para o usuário: Após o login no sistema, será liberado o menu


principal, onde o usuário deverá selecionar a opção (relatórios), ao abrir o sub menu,
devera selecionar a opção Perdas e cancelamentos de pedidos.

Figura 15 Diagrama de atividade - Relatórios - Perdas ou cancelamentos


44

5.2. Regras de negócios

Para iniciarmos o processo de documentação das regras de negócio, onde será


abordada o tipo de funcionamento do estabelecimento e qual a rotina por trás da
utilização do sistema, selecionamos algumas questão a serem respondidas e
observadas ao longo do processo de trabalho, por parte do funcionários e
desenvolvedores do sistema, onde teremos no caso a confirmação das utilizações de
forma correta do sistema, conforme os requisitos solicitados pelo cliente.

5.2.1. Recebimento de mercadoria

O recebimento de mercarias será feito pelos funcionários de cada filial, que


ficaram encarregados por posteriormente confirmar os pedidos com o proprietário que
faz as compras, onde, após essa confirmação, o mesmo que também gerencia as
filiais, fará o cadastro do produto no sistema, onde ele irá informar os valores de venda
para cada produto do seu estabelecimento.

5.2.2. Venda

Caso 1 – Venda por retirada

O processo de trabalho se dá início a partir do momento em que o cliente entra


no estabelecimento, a partir desse momento se inicia o processo de atendimento do
funcionário ao cliente, onde o cliente observa o cardápio que ficará exposto em uma
parte estratégica, sendo apresentado por um painel. O cliente faz as escolhas dos
produtos para o balconista, que fará a introdução do pedido no sistema. Após o pedido
estar pronto, o cliente será chamado, e será entregue seus produtos.

Caso 1.1 – Pedido via telefone

O processo se inicia com o cliente visualizando o cardápio dos produtos via


redes sociais, onde após a escolha, irá entrar em contato via telefone com a pizzaria,
e iniciará seu pedido. O funcionário nesse momento, irá coletar as seguintes
45

informações do cliente: Nome, endereço e telefone. O atendente solicita os produtos


e quantidades desejadas pelo cliente, concluindo o cadastro de venda.

Após o processo de venda feita pelo funcionário, quando concluído, os produtos


utilizados nessa venda, serão debitados automaticamente do sistema, fazendo o
controle de estoque.

Caso 2 – Consumo interno

O cliente nesse caso, entrará no estabelecimento, irá escolher uma mesa


disponível ao seu agrado, e em seguida observará o cardápio que estará disponível
em sua mesa, após essa etapa, o garçom que irá fazer o atendimento, selecionará os
itens escolhidos pelo cliente. Após o pedido estar concluído, o garçom apresenta os
itens e número da mesa ao balconista, que irá fazer a inserção do pedido no sistema.

5.2.3. Promoções

A definição das promoções será na forma de cadastro fixo no sistema, onde


serão apresentadas as promoções diárias de cada produto, sendo assim, não terá
uma promoção individual por cliente em relação as suas compras por fidelidade, mas
sim, promoções gerais que poderão ser escolhidas por qualquer cliente.

Caso 1 – promoções para venda por retirada

Nesse caso as promoções serão vistas no cardápio que, conforme exposto


anteriormente no caso de venda, ficará aparentemente apresentado em campo
especifico para promoções, onde será visualmente bem definido a promoção do dia
para que o cliente possa observar.

Caso 1.1 – Promoção por compra via telefone

Nesse processo, os clientes que farão os pedidos via telefone, terão acesso ao
cardápio online, onde da mesma forma que a venda por retirada, ficará aparentemente
apresentado em campo especifico para as promoções do dia.
46

Caso 1.2 – Promoções para venda interna

No caso das promoções para venda interna, onde o cliente consumirá os


produtos no estabelecimento, as promoções ficarão também apresentadas em campo
especifico do cardápio das mesas, porém, além do cardápio o cliente poderá consultar
o garçom ou balconista que terá acesso a visualização no sistema das promoções
apresentadas no dia em questão.

5.2.4. Preparação dos pedidos

O processo de preparação dos pedidos, será feito de forma a priorizar a entrega


juntamente com a ordem de realização dos pedidos aos funcionários, para que possa
ser feita as entregas em tempo ágil e ao mesmo tempo não deixar que o tempo de
produção para o cliente que está sentado à mesa seja em excesso, agradando o maior
número de clientes possível.

5.2.5. Processo gerencial

O processo gerencial das pizzarias será feito pelo proprietário, que terá acesso
exclusivo aos relatórios de vendas e produção das filiais, onde ele poderá verificar o
andamento dos seus negócios. Como procedimento padrão, anteriormente, o
proprietário fazia a retirada de todas as comandas manuais junto ao caixa de cada
unidade, somente no dia seguinte conseguia ter um número de faturamento dessas
unidades, por ser um trabalho manual lhe tomava muito tempo desse processo. Após
a implantação do sistema, o proprietário terá a capacidade de saber em poucos
minutos o faturamento de todas as suas unidades apenas selecionando a opção dos
relatórios no sistema, além disso, terá uma exatidão muito melhor em relação aos
números apresentados.
47

5.3. Fluxograma do sistema

O símbolo de display apresenta o que aparecerá na tela para o usuário, de acordo com a
opção escolhida pelo mesmo.

Figura 16 Fluxograma - Login

Figura 17 Fluxograma - Vendas


48

Figura 17 Fluxograma - Cadastros

Figura 16 Fluxograma - Controle de estoque


49

Figura 18 Fluxograma - Relatório


50
51

5.4. Projeto

Conforme Roger S. Pressman (2011) afirma, a atividade de projeto de software


é o conjunto de princípios, conceitos e práticas que fazem com que o desenvolvimento
de sistema possa ser feito com alta qualidade, onde os princípios estabelecem uma
ideia sobre as atitudes e ações do desenvolvimento, que orientam a realização das
atividades do projeto. Os conceitos devem ser apresentados e entendidos antes de
se iniciar as práticas de projeto, que devem levar a várias criações de apresentações
que serão utilizadas como guias para a construção.

5.4.1. Arquitetura do sistema

Como parte inicial do projeto, que consiste em colocar em pratica todos os


pontos abordados no Levantamento e analise de requisitos, a arquitetura do sistema
tem como objetivo colocar como foco principal as necessidades do cliente em relação
ao tipo de negócio que o mesmo segue, deixando um pouco de lado a questão
tecnológica, mas sim enfatizando a comunicação entre todos os envolvidos antes de
se iniciar realmente a etapa de codificação.

A arquitetura do sistema, reúne todas as etapas anteriores a ela, com o objetivo


de se ter a confirmação de que todos os desenvolvedores saibam realmente qual o
objetivo do sistema, e qual resultado real deve ser conquistado, além de se ter a
possibilidade de inclusão de mudanças, ou quais pontos podem ser alterados para
facilitar a implementação, ou seja, as decisões com relação ao desenvolvimento
devem ser tomadas nessa etapa, pois, antecedem a etapa de construção. Com a
arquitetura bem definida, pode-se entregar projetos de extrema qualidade e que tenha
a confiança do cliente.

O principal foco dessa etapa em nosso projeto, foram as frequentes reuniões e


discussões sobre os itens necessários a serem desenvolvidos, onde em um primeiro
momento, foi de extrema importância entender o problema antes de se iniciar a
construção do sistema levando em consideração a opinião de todos os integrantes do
grupo sobre as etapas abordadas anteriormente.
52

5.4.2. Linguagem e técnicas para programação

O projeto foi desenvolvido conforme proposta do cliente, em desenvolver um


sistema de baixo custo, pensando nisso, foi utilizada a linguagem de desenvolvimento
C, que apesar de ser uma linguagem que ultimamente já não é mais utilizada para
desenvolvimento, é extremamente simples, e que pode se transformar em um sistema
que atenda aos requisitos do cliente, mesmo esse não tendo uma interface gráfica
apresentável, porém funcional.

Para trazer agilidade e boa interação entre os desenvolvedores, o projeto foi


divido em módulos, conforme já citado em tópicos anteriores, onde esse tipo de
método é feito pela metodologia DSDM, facilitando a divisão do trabalho entre os
integrantes, e buscando a todo momento entregar primeiramente todos os requisitos
essenciais ao cliente.

Foram utilizadas Structs para manipular e inserir dados nos diversos módulos
de cadastro, variáveis que posteriormente serão salvas em arquivos Binários.

Dentro dos requisitos foi notório a importância de se armazenar os arquivos


presentes no cadastro, sendo necessário para consulta de produtos cadastrados,
estoque e relatórios de vendas. Com base nesta necessidade o desenvolvimento do
projeto teve como principal característica a utilização de arquivos binários, servindo
para escrita e leitura de dados.

A necessidade de compartilhamento das informações entre as filiais, trouxe a


necessidade de códigos exclusivos a cada máquina.

Para trazer mais segurança às informações, foi desenvolvido uma tela de login,
responsável por restringir o acesso de pessoas não autorizadas e também realizar a
divisão entre funções de usuários comuns e administrador.
53

5.5. COMUNICAÇÃO ENTRE AS FILIAIS

Segundo Tanenbaum (2003), uma rede é uma coleção de computadores


autônomos interconectados e aptos a trocar informações e compartilhar recursos.
Ainda segundo ele, a importância de uma rede é o compartilhamento de recursos com
objetivo de tornar programas, equipamentos e especialmente dados, acessível para
todos usuários da rede, não importando a localização física desses recursos.
Conforme essa informação, como o projeto possui maquinas que precisam ser
conectadas para se ter uma troca de informações do sistema entre as mesmas, a rede
que fará ligação entre as filiais, será implantada utilizando como meio de comunicação
a computação em nuvem.

5.5.1. Conceito de computação em nuvem

Computação em nuvem é um sistema que permite a comunicação entre


dispositivos variados, onde não necessariamente precisam estar fisicamente
conectados, não sendo necessária também a instalação de programas ou
armazenamento de dados, onde os armazenamentos das informações são feitas com
utilização de serviços on-line, com isso, podemos fazer a busca de arquivos utilizando
qualquer dispositivo em qualquer lugar conectado à rede on-line.

5.5.2. Tipos de computação em Nuvem

Existem três tipos de computação em nuvem, que são responsáveis pela


implantação do serviço e controle das informações que fazem a utilização desse
método.

Infraestrutura como serviço (IaaS), Categoria básica entre os tipos de


computação em nuvem, tem como meio de acesso e armazenamento a base na
internet, sendo possível a utilização de componentes básicos da TI como servidores
e maquinas virtuais.
54

Plataforma como serviço (PaaS), essa categoria foi desenvolvida para que as
empresas pudessem criar e desenvolver aplicativos web sem a necessidade de se
preocupar com os recursos apresentados do modelo IaaS, ou seja, sem ter a
necessidade de configuração e gestão de servidores, banco de dados ou
relacionados.

Software como serviço (SaaS), Essa categoria de computação em nuvem, foi


desenvolvida para facilitar a utilização de softwares na internet, onde se tornou
possível acessar o mesmo aplicativo em qualquer dispositivo conectado à internet
com facilidade.

5.5.3. Modelos de implantação em nuvem

Nuvem publica: O modelo público da nuvem, é o modelo que mais tem


utilização entre as empresas, onde são mais indicados para o uso do tipo de softwares
como serviços (SaaS), permitindo o aumento em sua capacidade de armazenamento.
Esses serviços são disponibilizados totalmente em ambiente virtual, acessado via
internet.

Nuvem privada: O modelo privado da nuvem, diferente do modelo público,


podem estar fisicamente localizadas em centros de processamento de dados,
implementadas em sistemas internos para atendimento corporativo de uma única
empresa, tem como característica a de oferecer os mesmos recursos de uma nuvem
publica, porém, não são compartilhadas entre os meios públicos.

Híbrida: O modelo hibrido da nuvem, é composto pela junção entre os outros


2 modelos apresentados, onde são extraídas suas melhores características e
permitem a comunicação entre os 2 modelos, onde são designadas funções distintas
para cada modelo dentro do mesmo meio organizacional.
55

5.5.4. Diagrama de Rede

Figura 19 Diagrama de redes

5.5.5. Aplicação de comunicação

Para nosso projeto será utilizado como meio de comunicação em nuvem, o


aplicativo de compartilhamento Dropbox. O aplicativo é de disponibilizado para
utilização gratuita, desde que não seja excedido o tamanho de 2gb de espaço, o que
será mais do que suficiente para os arquivos que serão utilizados pelo sistema, em
contra partida, também possui sua versão paga, que disponibiliza mais recursos de
memória para compartilhamento.

A escolha desse aplicativo foi feita devido as suas configurações de segurança


que o tornam uma boa escolha para esse tipo de sistema, que não pode ter nenhum
problema nesse segmento. O site do aplicativo aponta algumas características que
tornam sua utilização mais segura e confiável, além de citar algumas empresas de
grande influência de mercado que utilizam esse aplicativo, o que torna mais confiável
sua adesão para esse projeto.
56

5.5.6. Protocolo de rede

Durante o processo de requisitos e planejamento, foi visto a necessidade de


comunicação entre os computadores da rede, sendo necessário um protocolo de
comunicação para que todos seguissem o mesmo padrão, tornando possível a troca
de informações.

Realizamos uma análise detalhada aos principais protocolos de informação,


TCP e UDP, a fim de trazer a melhor opção com base do projeto.

5.5.7. Definição do protocolo

Analisando os requisitos, foi notório que o software em desenvolvimento jamais


poderia perder um pacote de informações, pois em uma situação como essa, uma
importante informação poderia ser perdida entre a comunicação das maquinas.

Foi decidido que o protocolo que mais adapta as requisições de nosso sistema
é o TCP, pois sua divisão em camadas torna-o uma opção mais confiável, garantindo
a entrega e segurança dos pacotes.

Protocolo de controle de transmissões (TCP), caracterizado como o sistema de


envio de pacotes mais utilizado na web, pois é amplamente completo e está entre os
mais seguros.

O TCP é dividido em quatro camadas, sendo elas aplicação, transporte, rede e


interface. Um dos pontos mais interessantes se refere à capacidade de feedback,
sendo possível ter a garantia de que um pacote foi realmente recebido pelo
destinatário.

O TCP conta com um sistema numérico que verifica a ordem dos pacotes
enviados, e em caso de falhas o pacote é reenviado até que se obtenha êxito. Outro
detalhe importante é o verificador de erros, que trabalha em ritmo constante para
garantir que as informações não sejam corrompidas no trajeto.
57

5.6. Testes

A etapa de testes foi executada seguindo os princípios da metodologia DSDM,


metodologia essa, que utilizamos como padrão para desenvolvimento de todas as
fases do projeto. Os testes foram realizados após o termino de cada funcionalidade,
ou seja, logo após o termino de uma função, era feito o teste imediato para encontrar
possíveis erros.

Como os testes segundo o DSDM são feitos de forma iterativa, sempre que era
inserida uma nova funcionalidade também eram feitos os testes, e assim
sucessivamente, até chegar ao resultado final do sistema em funcionamento. Em
outras palavras, foi todo realizado após cada formação de lógica nos códigos e em
todo o processo de programação, sendo assim, ao fim de cada modulo, fazia-se um
teste de todos os movimentos que os usuários poderiam realizar, fazendo os testes
de todas as maneiras possíveis, selecionando arquivos já existentes no sistema e
também o uso de arquivos não existentes, fazendo uma simulação de modo a
demonstrar as possíveis escolhas do usuário em cada menu.

Além dos testes em opções validas, foram realizados testes também com
algumas escolhas vistas como incorretas para nosso sistema, tendo assim, qual seria
a reação do mesmo com essas escolhas, que de fato, deveria retornar como erro ao
usuário.

Após o procedimento apresentado acima, onde cita as ações realizadas em


cada modulo, já que o sistema foi todo desenvolvido dessa maneira, após a junção de
todos os mesmos se tornando apenas um sistema em funcionamento, foi necessário
fazer a realização de testes de interatividades entre todos os módulos criados, onde
foi possível obter a confirmação real de toda essa comunicação entre as partes do
sistema.
58

5.7. Implementação do sistema

A etapa de implantação desde projeto será formada pelos manuais de ajuda e


treinamento para os usuários, onde será inserido todas as instruções de
funcionamento do sistema, onde terá as definições dos manuais de configuração de
redes, instalação do software e utilização do sistema. Podemos ver os manuais ao
final do trabalho (Apêndice).
59

5.8. Ética e legislação

Como nota de apresentação de ética e legislação, será apresentado os


parâmetros utilizados por nosso cliente em relação aos seus funcionários.

Em nossa empresa, trabalhamos sempre para sermos uma referência para


todo tipo de público, seja eles clientes, fornecedores, funcionários, independente do
cargo ou da função que ocupem de forma que sejamos exemplos do profissionalismo
e qualidade de atendimento, seja interno ou externo.

Exigimos com que todos nossos funcionários ajam da mesma maneira, com a
mesma ética, em todos os aspectos mencionados e exercidos diariamente.

A honestidade, a dignidade, o respeito, a lealdade, o decoro, o zelo, a eficácia,


a transparência e a consciência dos princípios éticos, são os valores que todos os
funcionários da empresa King Pizza prezam para o melhor atendimento ao público,
sendo assim é fortalecida a imagem da Empresa e dos seus empregados junto à
sociedade como um todo.

Prezamos também pelas atividades e assuntos particulares dos empregados,


onde os mesmos são invioláveis, desde que as atividades deles não prejudiquem a
sua imagem e os interesses econômicos e estratégicos da empresa.

Trabalhamos de forma transparente também no método de mostrar o resultado


da avaliação do desempenho de cada funcionário, onde demonstramos a qualidade
do mesmo, sendo positiva ou negativa, incentivando-o a melhorar sempre.

Somos muito maleáveis com os funcionários, sempre nos mantendo dentro das
leis trabalhistas, onde todos nossos funcionários não precisam comparecer todos os
dias, combinamos de uma maneira coerente, fazendo com que intercalam de maneira
com que compareçam mais funcionários nos dias de movimento e menos nos dias em
que tem menos movimento. Tentamos manter sempre os mesmos funcionários,
inclusive os nossos motoboys, fazendo com que trabalhe o horário necessário para
que seja registrado em nossa empresa e tenha os mesmos benefícios que os demais.
60
61

5.9. Metodologia científica

Para falarmos sobre metodologia cientifica, temos que pensar em todos os


processos realizados para a elaboração dos conteúdos expostos no projeto, com
auxílio de várias pesquisas, entre livros e artigos, pode-se concluir uma boa
metodologia cientifica para o desenvolvimento.

O modo de utilização para as pesquisas, foi na forma de entendimento das


propostas e busca pelas respostas desses problemas, onde pode-se obter os
resultados esperados após todo o estudo realizado da proposta, que
consequentemente revelou as dúvidas necessárias para que levássemos as buscas
nas referências de todo o trabalho.

Para nosso projeto, o meio de pesquisa mais utilizado foi o auxílio de livros,
artigos e revistas, que foram todos citados ao longo do projeto, onde dão início a uma
ideia a ser apresentada ou fazem a conclusão de uma proposta.
62
63

6. CONCLUSÃO

Como conclusão do projeto, podemos dizer que a utilização dos conceitos de


engenharia de software em relação a divisão de tarefas realizadas por cada
desenvolvedor do grupo foi de extrema importância para o cumprimento de todo o
cronograma apresentado na proposta do sistema. Além disso, a representação visual
realizada de cada funcionalidade deixou bem claro todas as funções necessárias para
que o sistema fosse bem-sucedido em seu desenvolvimento.

A participação de todos os desenvolvedores junto as decisões tanto de


documentação quanto ao desenvolvimento do sistema, gerou um ciclo de ótimos
aproveitamentos em relação as tarefas desenvolvidas entre o grupo. Dessa forma
buscando uma boa qualidade e entendimento de todos, em todas as etapas.

De início, temos como grande apresentação, várias partes explicativas, que


fazem a introdução de todo o conteúdo utilizado como base do sistema, não apenas
como meios de expor nosso trabalho, mas também, um método de transmitir todos os
conhecimentos abordados de uma forma bem detalhada.

Após essa etapa explicativa, foi apresentado nosso projeto seguindo o conceito
de desenvolvimento de software, onde foram utilizadas as principais fases de um ciclo
de vida de sistema, abordando as etapas de análise e levantamento de requisitos,
projeto, testes e implementação.

Para uma possível continuação no desenvolvimento desse sistema, seria


interessante o uso da implementação de interface gráfica, que disponibilizaria ao
usuário uma experiência muito mais aproveitável e agradável em termos de utilização.
64
65

REFERÊNCIAS

RICARDO R. Gudwin, Engenharia de software: uma visão prática 2º edição, 2015.


BOOCH G.; RUMBAUGH J.; JACOBSON, I. UML: Guia do usuário, Rio de Janeiro:
Campus, 2º edição, 2012.

SBROCCO, José Henrique Teixeira de Carvalho; MACEDO, Paulo Cesar


de: Metodologias Ágeis. Engenharia de Software Sob Medida. São Paulo: Érica, 2012.

GAUSE, D. C.; G. M. Weiberg, Explorando requisitos: Qualidade antes do Design,


Dorset House, 1989.

CARVALHO, A. M. B. R.; CHIOSSI, T. C. dos S. Introdução a Engenharia de software.


Campinas: Unicamp, 2001.

ROGER S. Pressman, Engenharia de software, Uma Abordagem Profissional, 7°


edição, 2011.

ANDREW S. Tanenbaum, Redes de computadores 4ª edição, 2003.


Anthony T. VelteToby J. Velte, Ph.D.Robert Elsenpeter: Cloud Computing:
Computação em Nuvem: Uma Abordagem Prática, Alta Books, Rio de Janeiro, 2012.

Por Camila Silva, Bom Dia SP — São Paulo 10/07/2018 13h11 Atualizado há um ano,
disponível em: https://g1.globo.com/sp/sao-paulo/noticia/brasil-produz-1-milhao-de-
pizzas-por-dia-estado-de-sp-consome-mais-da-metade.ghtml Acesso em 05/10/2019.

Autor desconhecido, blog Fispal Food Service – 10/12/2018, disponível em:


https://digital.fispalfoodservice.com.br/marketing/como-tecnologia-est-transformando-
gest-o-de-bares-e-restaurantes acesso em 05/10/2019.

Auto desconhecido, Dropbox, Disponível em: https://www.dropbox.com, acesso em


27/11/2019.
66
67

APÊNDICE A – MANUAL CONFIGURAÇÃO DE REDES

1- Para configuração de redes, será necessário fazer o download do arquivo para


instalação no site Dropbox.com

2- Para fazer o download do programa, será necessário criar uma conta, ou utilizar
e-mail google para conseguir o acesso. Após fazer o login, aparecerá a próxima
tela do site, onde deverá ser selecionado a opção (instalar).
68

3- Logo após selecionar a opção (instalar), aparecerá uma nova tela, onde será
possível efetuar o download da aplicação.

4- Após o download concluído, aparecerá o ícone em seu diretório de download.


69

5- Logo após o aplicativo ser instalado, abrirá uma nova tela do aplicativo
automaticamente na máquina que fará a execução. Será necessário inserir
novamente as credenciais de login cadastradas anteriormente.

6- Após inserir as credenciais, o aplicativo será liberado para utilização, clicando


em (abrir meu Dropbox),
70

7- Em seguida aparecerá uma nova tela de introdução, leia com atenção as


instruções e avance até o final, onde, após essa introdução aparecerá a tela
abaixo.

8- Após selecionar a opção que mais atenderá os requisitos do sistema, que no


caso, por orientação dos desenvolvedores, será necessária apenas a opção
(Dropbox Basic), que atenderá as necessidades de compartilhamento do
sistema.
71

9- Será aberto automaticamente o diretório de compartilhamento dos arquivos do


sistema,

10- Após aparecer a pasta de compartilhamento, será necessário clicar com o


botão direito na pasta criada no aplicativo, onde aparecerá a opção de
compartilhamento de arquivos,
72

11- Ao clicar em compartilhar, será solicitado o e-mail referente a maquina que irá
fazer o compartilhamento,

12- Após inserir o e-mail e fazer a conexão de todas as maquinas das filiais, bastará
apenas inserir os arquivos do sistema para que seja feito compartilhamento das
informações entre elas.
73

APÊNDICE B – MANUAL DE INSTALAÇÃO DO SOFTWARE

Insira o cd de instalação que acompanha o kit de usario e executeo - o.

Dentro do CD, estão cadastradas as 3 filiais, selecione os 3 arquivos e com o


botão direito esolha a opção copiar.
74

Após ter seguido o passo a passo em manual de redes, acesse a pasta


compartilhada entre as filiais, pressione o botão direito e selecione a opção colar.

O ultimo passo é criar um atalho para acesso na propria area de trabalho.


Selecione a filial utilizada no estabelecimento e com o botão direito selecione enviar
para, area de trabalho.

Instalação do software concluida.


75

APÊNDICE C – MANUAL UTILIZAÇÃO DO SISTEMA

Para ter acesso ao nosso sistema, primeiramente terá que ter uma conta com
login e senha cadastrados para conseguir utilizar todas as funcionalidades.

Para isso basta digitar o login e em seguida a senha:

Menu 1 - Principal

Para cadastros, selecione a opção 2:


76

Cadastros Pizzas

Para a execução das funções relacionadas a pizza, selecione a opção 1:

Para realizar o cadastro de Pizzas, realize os procedimentos abaixo:

Para cadastrar, selecione a opção 2:

Após, digite os sabores da pizza que deseja cadastrar:


77

Digite o valor que será vendido a pizza e pronto, pizza cadastrada com sucesso:
78

Editar cadastro - Pizza:

Para alterar a sua pizza cadastrada, volte para o menu anterior e selecione a
opção 3.

Será solicitado para digitar a ID (Código) de Cadastro da Pizza que deseja alterar:

Caso deseja alterar o nome, digite um novo nome, se não, digite o mesmo:
79

Caso deseja alterar o valor, digite um novo valor.

E pronto, sua pizza foi alterada!


80

Excluir cadastrado - Pizza

Para excluir uma pizza que já esteja cadastrada, voltar ao menu 1.2, selecione
a opção 4 e efetue os passos abaixo:

Digite o número da ID cadastrada da pizza que deseja remover:


81

Pronto, a pizza escolhida será removida:


82

Visualizar cadastros – Pizza

Para alterar a sua pizza cadastrada, volte para o anterior e selecione a opção 1:

E todas as pizzas cadastradas serão listadas na tela:


83

Bebidas

Para a execução das funções relacionadas a bebidas, volte ao menu 1.2 e


selecione a opção 2:

Cadastro - Bebidas

Selecione a opção “2 – Cadastro de Bebidas”


84

Digite o nome da bebida que será cadastrada:

Depois, digite o valor da bebida cadastrada e pronto, seu produto ja estará cadastrado:
85

Alterar bebidas cadastradas

Para alterar o seu produto cadastrado, volte para o menu anterior e selecione
a opção 3:

Digite o Número da ID do produto que deseja alterar:


86

Caso deseje alterar o nome, digite um novo nome, se não, digite o mesmo:

Caso deseja alterar o valor, digite um novo valor.


87

E pronto, sua bebida foi alterada!


88

Excluir cadastro - Bebida:

2.4 – Para excluir a bebida cadastrada, volte para o menu 1.2 e selecione a opção 3:

Visualizar bebidas cadastradas

Para visualizar suas bebidas cadastradas, volte para o menu 1.2 e selecione a opção
1:
89

E todas as bebidas cadastradas serão listadas na tela:


90

Promoção

Cadastro – Promoção

Para cadastrar uma promoção, volte ao menu 1.2 e selecione a opção 3:

Depois, selecione a opção 1:


91

Após selecionar a opção anterior, aparecerá uma lista de todas as pizzas


cadastradas.

E então escreva o numero (quantidade) de pizzas que deseja colocar em


promoção:

Depois escreva o código das pizzas desejadas:


92

Após selecionar o Código das pizzas, irá solicitar o valor que vai estar durante a
promoção e pronto, já estarão com o preço especial:
93

Cadastro – Insumos

Para cadastrar uma promoção, volte ao menu 1.2 e selecione a opção 4:

Logo após, selecione a opção 2:


94

Coloque o nome do insumo que será cadastrado:

Coloque o valor que foi pago no insumo adquirido:


95

E pronto, seu insumo foi cadastrado! Selecione a opção 1 caso deseja cadastrar mais
algum e 0 para voltar ao menu anterior.
96

Editar – Insumos

Parar realizar a edição dos insumos cadastrados, volte ao menu anterior e


selecione a opção 3:

Selecione o número da ID do insumo que deseja alterar:


97

Caso deseje alterar o nome e valor digite os novos dados, caso contrário, digite
igual estava anteriormente:

E pronto, seu insumo foi alterado:


98

Exclusão – Insumo

Para realizar a exclusão de um insumo cadastrado, volte ao menu anterior e


selecione a opção 4:

Digite a ID do insumo que deseja excluir:


99

E pronto, seu insumo foi excluído:


100

Cadastro – Funcionários

Para realizar o cadastro de um funcionário, volte ao menu 1.1 e selecione a


opção 5:

Logo após, selecione a opção 2:


101

Digite o nome do funcionário que será cadastrado no sistema:

Agora digite a função que o funcionário irá exercer:


102

Logo após, digite o salário que o funcionário irá receber para exercer a função
cadastrada:”

E pronto, seu funcionário estará cadastrado:


103

Editar – Funcionário

Para fazer alteração do seu funcionário cadastrado, volte ao menu anterior e


selecione a opção 3:

Digite a ID do funcionário que será alterado:


104

Digite o nome do funcionário, caso for alterar, digite o novo nome:

Digite a função do funcionário, caso tenha alterado de função, digitar a nova:


105

Digite o salário do funcionário, caso foi alterado, digitar o novo salário e pronto,
seu funcionário foi alterado:
106

Remover Funcionário

Para fazer alteração do seu funcionário cadastrado, volte ao menu anterior e


selecione a opção 4:

Digite a ID do funcionário que deseja remover:


107

E pronto, seu funcionário foi removido do sistema:

Para listar todos os funcionários cadastrados na empresa, basta selecionar a opção 1


no menu anterior:
108

Assim listará todos os funcionários, conforme abaixo:


109

Cadastro – Reclamação e Elogios

Para realizar o cadastro de uma reclamação ou elogio, volte ao menu 1 e


selecione a opção 6:

Cadastro – Reclamação

Para realizar o cadastro de uma reclamação, selecione a opção 1


110

Digite a reclamação desejada e aperte a tecla ENTER:

Cadastro – Elogio

Para realizar o cadastro de um elogio, selecione a opção 2 do menu anterior:


111

Digite o elogio desejado e aperte a tecla ENTER:


112

Controle de estoque

Para realizar o controle de estoque, volte ao menu 1 e selecione a opção 3:

Selecione a opção 1 para realizar o controle de estoque:


113

Recebimento – Bebidas e insumos

Selecione, opção 1 para cadastrar o recebimento de bebidas e opção 2 para


cadastrar o recebimento de insumos:

Tanto para o recebimento de bebidas quanto o recebimento de insumos, basta digitar


o ID do produto que deseja adicionar:
114

Após selecionar o código do produto (ID), digite a quantidade que foi recebida do
produto:
115

E pronto, seu produto estará cadastrado em estoque:

Saída – Insumos

Para cadastrar a saída de algum insumo, basta voltar ao menu anterior e


selecionar a opção 3:
116

Digite a ID do insumo que será dado baixa do estoque:

Digite a quantidade que foi retirada do estoque:


117

E pronto, seu insumo foi dado baixa com sucesso:

Cadastro – Perdas

Para realizar o cadastro da perda de algum produto, basta voltar ao menu


anterior, selecionar a opção 2, e seguir os passos abaixo:
118

Digite o Código do produto que será cadastrado a perda:

Logo após, informe a quantidade que foi perdida do produto selecionado:


119

Logo após, descreva o motivo da perda do produto:


120

E pronto, a perda foi cadastrada com sucesso:


121

Pedidos - Novo Pedido

Após todas as suas pizzas e produtos cadastrados, chegou a hora das vendas.
Para efetuar um novo pedido, volte ao menu principal (Menu 1) e selecione a opção
1:

Depois, selecione a opção 2:


122

Informe ao sistema, todos os dados solicitados de seu cliente e a data que foi
efetuada a venda:
123

Depois, digite o código do produto que o cliente deseja adquirir e a quantidade


solicitada. E pronto, o pedido foi efetuado:
124

Relatórios

Para a visualização dos relatórios, volte ao menu 1 e selecione a opção 4:

Para a visualização das Reclamações e Elogios, opção 1.

Para visualizar o sabor de Pizza mais pedido em cada unidade, opção 2.

Para visualizar a unidade (filial) que mais vendeu, opção 3.

Para visualizar o total vendido no dia e em algum mês desejado, opção 4.

Para visualizar todas as perdas, opção 5.

Você também pode gostar