Buscar

PROJETO FARMÁCIA HLA - ALBERICO - HENRIQUE - LIANO 10-09-2018

Prévia do material em texto

CENTRO DE EDUCAÇÃO TECNOLÓGICA DO AMAZONAS -CETAM
DIRETORIA ACADÊMICA
CURSO TÉCNICO EM INFORMÁTICA 2017/1
	ALBERICO FREIRE DE MENDONÇA JÚNIOR
HENRIQUE JOSÉ NUNES RODRIGUES
LIANO REIMS PALHETA DE LIMA
IMPLEMENTAÇÃO E PROGRAMAÇÃO DO SISTEMA DE GERENCIAMENTO WEB DA REDE DE FARMÁCIAS HLA 
MANAUS – AM
2018
ALBERICO FREIRE DE MENDONÇA JÚNIOR
HENRIQUE JOSÉ NUNES RODRIGUES
LIANO REIMS PALHETA DE LIMA
IMPLEMENTAÇÃO E PROGRAMAÇÃO DO SISTEMA DE GERENCIAMENTO WEB DA REDE DE FARMÁCIAS HLA
Relatório da Prática da Etapa IV, apresentado à Coordenação de Prática, como requisito parcial para aprovação no componente curricular das atividades práticas, parte integrante do Curso Técnico em Informática.
Manaus, 10 de setembro de 2018
BANCA EXAMINADORA
________________________________________
(Aslon Kallel Python)
Graduação: Rede de Computadores
Especialização: Engenharia de Rede de Computadores
________________________________________
(Osvaldo Constantino Dos Santos Junior)
Graduação: Ciência Da Computação
Especialização: Inovação e Mídias Interativas
MANAUS – AM
2018
Ambiente de Aprendizagem onde foi realizada a Atividade Prática:
Instituto Benjamin Constant – Unidade do CETAM – Manaus – AM
Endereço onde foi realizada a Atividade Prática:
Av. Ramos Ferreira, 991 – Centro, Manaus – AM, 69010 – 120
Fone: (92) 3878 – 7474
Ambiente de Aprendizagem: Laboratório 06 
Turno: Matutino, Das 07:45 às 12:00hs
Período de realização:10/08/18 a 11/09/18
 
 
Relatório da Prática da Etapa IV, apresentado à Coordenação de Prática, como requisito parcial para aprovação no componente curricular das atividades práticas, parte integrante do Curso Técnico em Informática.
 
 
 
 Nota Final do Componente de Atividades Práticas IV ___:____(____________)
 	
Considerações do Instrutor da Atividade Prática:
___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Instrutor/Professor: Antônio Renato da Silva Teixeira 
Graduação: Bacharel ciência da computação
Especialização: Rede de computadores
RESUMO
O projeto consiste em implementar e desenvolver um sistema para uma rede de farmácias usando a linguagem PHP que fará ligação com o banco de dados, no qual esse sistema tem por finalidade cadastrar produtos, funcionários e clientes e realização de vendas, visando à agilidade e facilitando o trabalho dos funcionários e clientes. Tendo em vista que muitas farmácias sofrem com a lentidão no sistema de cadastros e na realização de vendas. Para isso foi usado a modelagem UML para a criação dos diagramas que facilitam na implementação do sistema. 
Palavras-chave: Desenvolvimento, programação PHP, UML, sistema de vendas, cadastro de usuário, cadastro de produtos.
ABSTRACT
The project consists of implementing and developing a system for a network of pharmacies using the PHP language that will link to the database, in which the system aims to register products, employees and customers and make sales, aiming at agility and facilitating the work of employees and customers. Considering that many pharmacies suffer from the slowness in the system of registrations and the realization of sales. For this, UML modeling was used to create the diagrams that facilitate the implementation of the system.
Key-words: Development, PHP language, UML, sales system, user registration, product registration.
LISTA DE ABREVIATURAS E SIGLAS
API – Application Programming Interface
CSS – Cascading Style Sheets
ER – Entidade-Relacionamento
GPL – General Public License
HTML – HyperText Markup Language
IDE – Integrated Development Environment
PHP – PHP: Hypertext Preprocessor
SO – Sistema Operacional
SQL – Structured Query Language
UML – Unified Modeling Language
LISTA DE FIGURAS
Figura 1 - Diagrama de caso de uso.	17
Figura 2 - Diagrama de Classe.	21
Figura 3 - Diagrama de atividade (Verificar relatório de vendas).	22
Figura 4 - Diagrama de Atividades (Cadastrar funcionário).	23
Figura 5 - Diagrama de Atividades (Cadastrar cliente).	23
Figura 6 - Diagrama de Atividades (Cadastrar produto).	24
Figura 7 - Diagrama de Atividades (Efetuar compra).	24
Figura 8 - Diagrama de Atividades (Efetuar login).	25
Figura 9 - Diagrama de sequência (Verificar relatório de vendas).	25
Figura 10 - Diagrama de sequência (Cadastrar funcionário).	26
Figura 11 - Diagrama de sequência (Cadastrar cliente).	26
Figura 12 - Diagrama de sequência (Cadastrar produto).	27
Figura 13 - Diagrama de sequência (Efetuar compra).	27
Figura 14 - Diagrama de sequência (Efetuar login)..	28
Figura 15 - Banco de dados.	29
Figura 16 – Tabela Usuário.	30
Figura 17 – Tabela Cliente.	30
Figura 18 – Tabela Produto.	30
Figura 19 - Tabela Venda.	31
Figura 20 - Tabela has venda.	31
Figura 21 - Tela inicial.	32
Figura 22 - Tela de login.	32
Figura 23 - Tela principal.	33
Figura 24 - Tela Cadastrar Funcionários.	34
Figura 25 - Tela Pesquisar Funcionários.	34
Figura 26 - Tela de cadastro de clientes do sistema.	35
Figura 27 - Tela pesquisar cliente.	36
Figura 28 - Tela de Cadastro de produtos do sistema	36
Figura 29 - Tela cadastro de produtos.	37
Figura 30 - Tela Pesquisar Produtos.	37
Figura 31 - Diagrama de Atividade.	38
Figura 32 - Teste da caixa-branca.	39
Figura 33 - Teste da caixa-preta	39
Figura 34 – Cronograma	41
LISTAS DE TABELAS
Tabela 1 - Cadastrar produtos.	17
Tabela 2 - Cadastrar Cliente..	18
Tabela 3 - Cadastrar Funcionário.	19
Tabela 4 - Efetuar Compra.	19
Tabela 5 - Efetuar login.	19
Tabela 6 - Relatório de vendas.	20
Tabela 7 - Tabela de Compatibilidade	40
Tabela 8 - Teste de Segurança	41
Tabela 9 - Orçamento	41
SUMÁRIO 
INTRODUÇÃO	11
1.	A PROBLEMÁTICA E AS QUESTÕES ORIENTADORAS DA PRÁTICA	12
1.1.	Problemática	12
1.2.	Justificativa	12
1.3.	Área de Abrangência	12
1.4.	Objetivos do Projeto	12
1.4.1.	Objetivo Geral	12
1.4.2.	Objetivo Específico	12
1.5.	Metas	13
1.6.	Benefícios	13
1.7.	Procedimentos Metodológicos	13
2.	FUNDAMENTAÇÃO TEÓRICA	13
2.1.	Tecnologias e Ferramentas do Projeto	13
2.1.1.	MySQL Workbench	14
2.1.2.	Brackets	14
2.1.3.	Microsoft Windows 7	14
2.1.4.	Astah	15
2.1.5.	Oracle VM VirtualBox	15
2.1.6.	Banco de Dados	15
2.1.7.	MariaDB em um Banco de Dados	15
2.1.8.	Linguagem PHP	15
2.2.	Normas e Padronização	16
2.2.1.	UML - Unified Modeling Language	16
2.2.2.	Diagrama de caso de uso do sistema	16
2.2.3.	Especificação de Caso de Uso	17
2.2.4.	Diagrama de classe do sistema	21
2.2.5.	Diagramas de Atividade do sistema	21
2.2.6.	Diagrama de sequência do sistema	25
2.2.7.	Modelagem do Banco de Dados	28
2.3.	Código SQL	30
3.	IMPLEMENTAÇÃO DO SISTEMA	31
3.1.	Tela Inicial	31
3.2.	Tela de Login	32
3.3.	Tela Principal	33
3.4.	Tela de cadastro de Funcionários	33
3.5.	Tela “Pesquisar Funcionários”	34
3.6.	Tela de cadastro de clientes do sistema	35
3.7.	Tela “Pesquisar Clientes”	36
3.8.	Tela de Cadastro de produtos do sistema	36
3.9.	Tela “Pesquisar Produtos”	37
4. TESTE DE SOFTWARE	38
4.1. Teste Caixa-Branca	38
4.2. Teste Caixa-Preta	39
4.3. Teste de Compatibilidade	40
4.4. Teste de Segurança	40
5. PARTE ORÇAMENTÁRIA E CRONOGRAMA DE ATIVIDADES	41
5.1. Orçamento	41
5.2 Cronograma	41
6. CONSIDERAÇÕES FINAIS	42
6.1. Conclusão	42
6.2. Dificuldades encontradas no desenvolvimento do trabalho	42
6.3. Trabalhos futuros	42
INTRODUÇÃO
Este projeto foielaborado para apresentação na disciplina de Atividades Práticas III - Banco de Dados do curso Técnico em Informática 2017/1, tendo como objetivo o uso de todo o conhecimento adquirido em sala de aula.
O projeto está voltado para o estabelecimento farmacêutico HLA e terá como meta organizar, através de um sistema computacional, todas as etapas comerciais e administrativas, prezando por uma melhor interatividade da empresa com o cliente, deixando a compra mais confortável e rápida. Para isso, foram utilizadas algumas ferramentas, tais como linguagem PHP, Microsoft Windows 7, Workbench, Astah, Brackets, dentre outros, seguindo todo o modelo implementado nos diagramas UML.
O sistema irá permitir que funcionários e administradores tenham total acesso à quantidade de estoque e vendas de produtos, o sistema tem como foco também o cadastro de pessoas, sendo funcionários ou clientes que ficaram salvos no banco de dados, controlando assim toda entrada e saída da farmácia.
1. A PROBLEMÁTICA E AS QUESTÕES ORIENTADORAS DA PRÁTICA
1.1. Problemática
Tendo em vista as dificuldades encontradas na farmácia HLA, tais como uma falta de sistema eficiente para cadastrar clientes, cadastrar produtos, verificar data de validade dos estoques, falta de acompanhamento dos produtos no estoque, dentre outros.
Diante dessa problemática, este projeto pretende implementar um sistema capaz de suprir as necessidades da farmácia HLA.
1.2. Justificativa
Resolvendo esses problemas, o projeto visa facilitar a vida tanto do cliente, quanto do funcionário desta farmácia. Tendo um atendimento mais simples, rápido e seguro.
1.3. Área de Abrangência
Visamos implementar o sistema para a cidade de Manaus – AM, onde a sede da farmácia HLA está localizada.
1.4. Objetivos do Projeto
O objetivo geral e os objetivos específicos determinados para esse estudo são os seguintes:
1.4.1. Objetivo Geral
Desenvolver um sistema simples e eficiente para auxiliar no gerenciamento de clientes, produtos e vendas de uma farmácia.
1.4.2. Objetivo Específico
· Implementar um sistema usando a linguagem PHP
· Desenvolver um banco de dados usando o MySQL
· Cadastrar funcionários
· Cadastrar clientes
· Cadastrar produtos
· Controlar o estoque e vendas
1.5. Metas
	
Garantir que a farmácia HLA tenha auxílio através de um sistema para gerenciar os dados de funcionários, clientes e vendas de produtos. Havendo uma comunicação mais ágil e interativa, tornando o cadastro mais eficiente. 
Esse sistema vai poder mostrar detalhes de todas as operações diárias mensais e anuais desta farmácia, e projetando um ambiente mais dinâmico dentro dela.
1.6. Benefícios
	
Tornar as atividades no ambiente farmacêutico mais fácil e ágil, tanto para os gestores, quanto para funcionários e clientes, através de um sistema de fácil uso que trará mais agilidade e confiança no atendimento.
1.7. Procedimentos Metodológicos
Foi feita uma pesquisa e constatado que há uma demora em algumas farmácias na pesquisa do produto. Algumas não utilizam computadores e tudo é feito manualmente, inclusive a contagem de estoque de produtos e o controle de vendas. A pesquisa foi desenvolvida através de visitas nos estabelecimentos farmacêuticos.
 
2. FUNDAMENTAÇÃO TEÓRICA
2.1. Tecnologias e Ferramentas do Projeto
Agora apresentaremos uma descrição e conceitos das ferramentas utilizadas para desenvolver a elaboração deste projeto. Este capítulo apresentará a base teórica do tema abordado no projeto com as seguintes etapas das tecnologias e ferramentas utilizadas, assim como as principais normas e padronizações e os ambientes para aplicação da prática.
2.1.1. MySQL Workbench
MySQL Workbench é uma ferramenta de design de banco de dados visual que integra o desenvolvimento SQL, administração, design de banco de dados, criação e manutenção em um único ambiente de desenvolvimento integrado para o sistema de banco de dados MySQL.
2.1.2. Brackets
É uma IDE leve usada em criação e edição de arquivos HTML, CSS e JavaScript e com uma configuração fácil que te possibilita trabalhar com PHP. Pertence à Adobe, mas é gratuito e de código-fonte aberto, possibilitando que adicione extensões para personaliza-lo. Brackets também permite trabalhar simultaneamente com vários arquivos de um projeto, possui ferramenta de edição rápida, função para seleção ou conversão de cores, compatibilidade nativa com LESS e suporte a extensões de diversos tipos.
2.1.3. Microsoft Windows 7
O Windows 7 é uma versão do Microsoft Windows, uma série de sistemas operativos produzidos pela Microsoft para uso em computadores pessoais, incluindo computadores domésticos e empresariais, laptops, tablets e PCs de centros de mídia, entre outros. Os elementos visuais que já sofreram várias mudanças na versão Vista, agora estão totalmente diferentes no Windows 7. As barras estão mais cristalinas e os ícones estão em evidência maior.
2.1.4. Astah
	É uma das ferramentas grátis para UML mais poderosas disponíveis atualmente. Com características que não são encontradas nas outras ferramentas grátis, como adicionar métodos no diagrama de sequência e a alteração se refletir no diagrama de classes. Sua performance impressiona, principalmente tratando-se de uma ferramenta 100% Java/Swing, dismistificando que Swing é lento.	
2.1.5. Oracle VM VirtualBox
Oracle VM Virtualbox é um software livre multiplataforma que permite efetuar virtualização de um ou mais sistemas operacionais em um computador com Sistema Operacional (SO) Windows (XP ou superior), Linux, Macintosh ou Solaris. Como qualquer software de virtualização, permite criar máquinas virtuais isoladas de outras máquinas virtuais e da máquina real. 
2.1.6. Banco de Dados
Segundo a Prof. Msc. Regilan Meira, banco de dados ou base de dados (sua abreviatura é BD, em inglês DB, database) são conjuntos de dados com uma estrutura regular que tem como objetivo organizar uma informação. Um banco de dados normalmente agrupa informações utilizadas para um mesmo fim de forma que possam representar coleções de informações que se relacionam de forma que crie um sentido.
2.1.7. MariaDB em um Banco de Dados
MariaDB é baseado no MySQL e está disponível sob os termos da licença GPL v2. Na maioria dos aspectos o MariaDB vai funcionar exatamente como o MySQL: todos os comandos, interfaces, bibliotecas e APIs que existem no MySQL também existem no MariaDB. Não há nenhuma necessidade de converter um bancos de dados para migrar para o MariaDB. MariaDB é um verdadeiro substituto para o MySQL.
2.1.8. Linguagem PHP
Segundo Luke Welling, PHP é uma linguagem de criação de scripts do lado do servidor que foi projetada especificamente para a Web. Dentro de uma página HTML, você pode embutir código de PHP que será executado toda vez que a página for visitada. O código de PHP é interpretado no servidor Web e gera HTML ou outra saída que o visitante verá.
2.2. Normas e Padronização
 
Neste trabalho, seguiremos as normas do modelo UML. Os diagramas de estrutura são úteis em todo o ciclo de vida de software para uma variedade de membros da equipe. Em geral, esses diagramas permitem a validação do design e a comunicação do design entre os indivíduos e as equipes.
2.2.1. UML - Unified Modeling Language
Segundo Alberto Manuel e Carlos Alberto, UML (Unified Modeling Language) é uma linguagem para especificação, construção, visualização e documentação de artefactos de um sistema de software.
É uma linguagem visual utilizada para modelar sistemas computacionais por meio do paradigma de orientação a objetos – OO. Essa linguagem tornou-se, nos últimos anos, a linguagem padrão de modelagem de software adotada internacionalmente pela indústria de desenvolvimento de software.
2.2.2. Diagrama de caso de uso do sistema
É responsável por documentar o que o sistema faz, do ponto de vista do usuário. Em outras palavras, ele descreve as principais funcionalidades do sistema e a interação dessas funcionalidades com os usuários do mesmo sistema. Nesse diagrama não nos aprofundamos em detalhes técnicos que dizemcomo o sistema faz.
Figura 1 - Diagrama de caso de uso. Fonte: Autor Próprio, (2018).
2.2.3. Especificação de Caso de Uso
Tabela 1 - Cadastrar produtos. Fonte: Autor Próprio, (2018)
	Cadastrar Produto
	Descrição
	Este caso de uso permite que um usuário logado como administrador ou funcionário cadastre um produto
	Atores
	 Administrador, Funcionário
	Pré-condições
	Ambos os usuários, administrador e funcionário, precisam estar logados no sistema, cada um com seu respectivo perfil.
	Pós-Condições
	Produto cadastrado.
	Fluxo de Eventos
	Fluxo Principal
	P1. O fluxo de eventos principal se inicia quando o administrador ou funcionário fazem login.
P2. Clicar na opção cadastrar produto.
P3. Preencher o formulário com os dados do produto e enviar para o banco de dados.
P4. O sistema cadastra o produto.
	Fluxo Alternativo
	P1. Caso ocorra algum erro no passo 4 do fluxo principal, o sistema informa o erro para o Administrador ou Funcionário.
P2. O fluxo retorna ao passo 2. do Fluxo Principal.
	Regras de Negócios
	1. O Usuário deve ter cadastro válido no sistema, com o perfil Funcionário ou Administrador para acessar as ferramentas de cadastro do produto.
Tabela 2 - Cadastrar Cliente. Fonte: Autor Próprio, (2018).
	Cadastrar Cliente
	Descrição
	Este caso de uso permite que um usuário logado como administrado ou funcionário cadastre um cliente.
	Atores
	 Administrador, Funcionário
	Pré-condições
	Ambos os usuários, administrador e funcionário, precisam esta logados no sistemas, cada um com seu respectivo perfil.
	Pós-Condições
	Cliente Cadastro.
	Fluxo de Eventos
	Fluxo Principal
	P1. O fluxo de eventos principal se inicia quando o administrador ou funcionário fazem login.
P2. Clicar na opção cadastrar Cliente.
P3. Preencher o formulário com os dados do Cliente e enviar para o banco de dados .
P4. O sistema cadastra o cliente.
	Fluxo Alternativo
	P1. Caso ocorra algum erro no passo 4 do fluxo principal, o sistema informa o erro para o Administrador ou Funcionário.
P2. O fluxo retorna ao passo 2. do Fluxo Principal.
	Regras de Negócios
	1. O Usuário deve ter cadastro válido no sistema, com o perfil Funcionário ou Administrador para acessar as ferramentas de cadastro do cliente.
Tabela 3 - Cadastrar Funcionário. Fonte: Autor Próprio, (2018).
	Cadastrar Funcionário
	Descrição
	Este caso de uso permite que um usuário logado como administrador cadastre um funcionário.
	Atores
	 Administrador.
	Pré-condições
	O usuário Administrador precisa esta logado no sistema.
	Pós-Condições
	Funcionário Cadastrado.
	Fluxo de Eventos
	Fluxo Principal
	P1. O fluxo de eventos principal se inicia quando o administrador realiza o login.
P2. Clicar na opção Cadastrar Funcionário.
P3. Preenche o formulário com os dados do Funcionário e enviar para o banco de dados. 
P4. O sistema cadastra o Funcionário
	Fluxo Alternativo
	P1. Caso ocorra algum erro no passo 4 do fluxo principal, o sistema informa o erro para o Administrador.
P2. O fluxo retorna ao passo 2. do Fluxo Principal.
	Regras de Negócios
	1. O Usuário deve ter cadastro válido no sistema, com o perfil Administrador para acessar as ferramentas de cadastro do Funcionário
Tabela 4 - Efetuar Compra. Fonte: Autor próprio, (2018).
	Efetuar Compra
	Descrição
	Este caso de uso permite que um cliente realize uma compra.
	Atores
	Cliente.
	Pré-condições
	O usuário necessita estar logado no sistema com o perfil “Cliente”.
	Pós-Condições
	Compra efetuada.
	Fluxo de Eventos
	Fluxo Principal
	P1. O fluxo de eventos principal se inicia quando o cliente entra no sistema e faz login.
P2. É mostrada uma tela com uma lista de produtos para o cliente escolher
	Fluxo Alternativo
	P1. Caso ocorra algum erro no passo 2 do fluxo principal, o sistema informa o erro para o Cliente.
P2. O fluxo retorna ao passo 1. do Fluxo Principal.
	Regras de Negócios
	1. O Usuário deve ter cadastro válido no sistema, com o perfil Cliente para acessar as ferramentas de compra do produto.
Tabela 5 - Efetuar login. Fonte: Autor próprio, (2018).
	Efetuar Login
	Descrição
	Este caso de uso permite que um Usuário tenha acesso ao sistema.
	Atores
	Cliente, Administrador, Funcionário
	Pré-condições
	O usuário necessita estar logado no sistema com o perfil “Cliente, Administrador ou Funcionário”.
	Pós-Condições
	Login efetuado com sucesso
	Fluxo de Eventos
	Fluxo Principal
	P1. O fluxo de eventos principal se inicia quando o usuário realiza cadastro.
P2. Escolher perfil de Usuário. 
P3. Entrar na pagina do perfil criado.
	Fluxo Alternativo
	P1. Caso ocorra algum erro no passo 2 do fluxo principal, o sistema informa o erro para o usuário.
P2. O fluxo retorna ao passo 1. do Fluxo Principal.
	Regras de Negócios
	1. O Usuário deve ter cadastro válido no sistema para acessar as informações do sistema.
Tabela 6 - Relatório de vendas. Fonte: Autor próprio, (2018).
	Relatório de vendas
	Descrição
	Esse caso de uso permite que um usuário logado como administrador ou funcionário veja o relatório de todas as vendas realizadas. 
	Atores
	Administrador e Funcionário.
	Pré-condições
	O usuário Administrador ou Funcionário deve esta logado no sistema.
	Pós-Condições
	Visualizar Relatório de vendas.
	Fluxo de Eventos
	Fluxo Principal
	P1. O fluxo de eventos principal se inicia quando administrador ou funcionário realizam login.
P2. Clicar na opção Vendas.
P3. Clicar no nome do cliente que realizou a comprar.
P4. Visualizar Relatório de Venda. 
	Fluxo Alternativo
	P1. Caso ocorra algum erro no passo 4 do fluxo principal, o sistema informa o erro para o Administrador ou Funcionário
P2. O fluxo retorna ao passo 2. do Fluxo Principal.
	Regras de Negocios
	1. O Usuario deve ter cadastro válido no sistema, com o perfil Administrador ou Funcionário para acessar o Relatorio de venda.
2.2.4. Diagrama de classe do sistema
Diagrama de classes é uma representação estática utilizada na área da programação para descrever a estrutura de um sistema, apresentando suas classes, atributos, operações e as relações entre os objetos.
Figura 2 - Diagrama de Classe. Fonte: Autor Próprio, (2018).
2.2.5. Diagramas de Atividade do sistema
Diagrama de Atividades é um diagrama comportamental (que especifica o comportamento do software), e através dele podemos modelar partes do comportamento de um software. Ele ilustra graficamente como será o funcionamento do software, como será a execução de alguma de suas partes e como será a atuação do sistema na realidade de negócio na qual ele está inserido.
Figura 3 - Diagrama de atividade (Verificar relatório de vendas). Fonte: Autor Próprio, (2018).
Figura 4 - Diagrama de Atividades (Cadastrar funcionário). Fonte: Autor Próprio, (2018).
Figura 5 - Diagrama de Atividades (Cadastrar cliente). Fonte: Autor Próprio, (2018).
Figura 6 - Diagrama de Atividades (Cadastrar produto). Fonte: Autor Próprio, (2018).
Figura 7 - Diagrama de Atividades (Efetuar compra). Fonte: Autor Próprio, (2018).
Figura 8 - Diagrama de Atividades (Efetuar login). Fonte: Autor Próprio, (2018).
2.2.6. Diagrama de sequência do sistema
Consiste em um diagrama que tem o objetivo de mostrar como as mensagens entre os objetos são trocadas no decorrer do tempo para a realização de uma operação.
Figura 9 - Diagrama de sequência (Verificar relatório de vendas). Fonte: Autor Próprio, (2018).
Figura 10 - Diagrama de sequência (Cadastrar funcionário). Fonte: Autor Próprio, (2018).
Figura 11 - Diagrama de sequência (Cadastrar cliente). Fonte: Autor Próprio, (2018).
Figura 12 - Diagrama de sequência (Cadastrar produto). Fonte: Autor Próprio, (2018).
Figura 13 - Diagrama de sequência (Efetuar compra). Fonte: Autor Próprio, (2018).
Figura 14 - Diagrama de sequência (Efetuar login). Fonte: Autor Próprio, (2018).
2.2.7. Modelagem do Banco de Dados
Um banco de dados relacional é um banco de dados que modela os dados de uma forma que eles sejam percebidos pelo usuário como tabelas, ou mais formalmente relações. É um mecanismo de armazenamento que permitea persistência de dados e opcionalmente implementar funcionalidades.
A modelagem abaixo mostra o esquema do Banco de Dados do sistema:
Figura 15 - Banco de dados. Fonte: Autor Próprio, (2018).
Está modelagem foi feita no MySQL Workbench 6.3.10. Através dessa ferramenta, foi possível modelar o banco de dados do nosso sistema
2.3. Código SQL
Figura 16 – Tabela Usuário. Fonte: Autor Próprio, (2018).
Figura 17 – Tabela Cliente. Fonte: Autor Próprio, (2018).
Figura 18 – Tabela Produto. Fonte: Autor Próprio, (2018).
Figura 19 - Tabela Venda. Fonte: Autor Próprio, (2018).
Figura 20 - Tabela has venda. Fonte: Autor próprio, (2018).
3. IMPLEMENTAÇÃO DO SISTEMA
3.1. Tela Inicial
A tela inicial é a primeira interface que o usuário tem acesso. Nela se encontra o botão “Entrar” que permite ao usuário acessar a tela de login.
Figura 21 - Tela inicial. Fonte: Autor Próprio, (2018).
3.2. Tela de Login
A tela de login dá acesso ao sistema. A interface é simples e de fácil compreensão. Possui 2 campos: um para inserir o e-mail e outro para a senha. Possui ainda a opção de lembrar a senha e de recupera-la, caso tenha esquecido
Figura 22 - Tela de login. Fonte: Autor Próprio, (2018).
3.3. Tela Principal
A tela principal é a tela que sucede a tela de login. É a tela onde o usuário escolherá o procedimento a ser feito. Possui campos:Figura 23 - Tela principal. Fonte: Autor Próprio, (2018).
3.4. Tela de cadastro de Funcionários
É onde o administrador realizará o cadastro de funcionários. Esta tela possui campos do tipo:
· Nome
· Sobrenome
· E-mail
· Sexo
· Senha
· Confirmar a senhaFigura 24 - Tela Cadastrar Funcionários. Fonte: Autor Próprio, (2018).
3.5. Tela “Pesquisar Funcionários”
É a tela na qual o administrador pesquisa os funcionários cadastrados no sistema. Esta tela possui o campo “Buscar Funcionários”. Caso alguma pesquisa seja encontrada, o sistema retornará o funcionário cadastrado com todos os seus dados.Figura 25 - Tela Pesquisar Funcionários. Fonte: Autor Próprio, (2018).
3.6. Tela de cadastro de clientes do sistema 
É onde o administrador ou funcionário realizarão o cadastro dos clientes. Esta tela possui os campos:
· Nome Completo
· Sexo
· CPF
· Telefone
· Rua
· Número
· Bairro
· E-mailFigura 26 - Tela de cadastro de clientes do sistema. Fonte: Autor Próprio, (2018).
3.7. Tela “Pesquisar Clientes”
É a tela na qual o administrador ou funcionário pesquisam os clientes cadastrados no sistema. Esta tela possui o campo “Buscar Clientes”. Caso alguma pesquisa seja encontrada, o sistema retornará o cliente cadastrado com todos os seus dados.Figura 27 - Tela pesquisar cliente. Fonte: Autor Próprio, (2018).
3.8. Tela de Cadastro de produtos do sistema
É onde o administrador ou funcionário realizarão o cadastro dos produtos. Esta tela possui os campos:
· Nome
· Tipo
· Digite o valor
· Informe a quantidade
Figura 28 - Tela de Cadastro de produtos do sistema
Fonte: Autor Próprio, (2018).
Figura 29 - Tela cadastro de produtos. Fonte: Autor Próprio, (2018).
3.9. Tela “Pesquisar Produtos”
É a tela na qual o administrador ou funcionário pesquisam os produtos cadastrados no sistema. Esta tela possui o campo “Buscar Produtos”. Caso alguma pesquisa seja encontrada, o sistema retornará o produto cadastrado com todos os seus dados.
Figura 30 - Tela Pesquisar Produtos. Fonte: Autor Próprio, (2018).
4. TESTE DE SOFTWARE
	Teste de Software é um processo que faz parte do desenvolvimento de software, e tem como principal objetivo revelar falhas/bugs para que sejam corrigidas até que o produto final atinja a qualidade desejada / acordada.
Profissionais que trabalham com testes (denominados analistas de testes, técnicos de testes, homologador, ou simplesmente testes) estão habituados a realizar uma bateria de testes de diferentes naturezas e propósitos, envolvendo não apenas os testes funcionais da aplicação, mas diversas outras atividades como:
· Avaliação da especificação de requisitos,
· Avaliação de projeto técnico,
· Verificações em outros documentos,
· Testes de performance e capacidade,
· Avaliação de interface,
· dentre outros.
A figura abaixo mostra como funciona o teste de software:
Figura 31 - Diagrama de Atividade. Fonte: Autor Próprio, (2018).
4.1. Teste Caixa-Branca
Garantir que todos os caminhos independentes de um módulo sejam testados pelo menos uma vez. O teste de unidade começa no centro da espiral e se concentra em cada unidade do software conforme implementado no código fonte. O teste de unidade usa intensamente técnicas de teste com caminhos específicos na estrutura de controle de um componente para garantir a cobertura completa e a máxima detecção de erro.
Figura 32 - Teste da caixa-branca. Fonte: Autor Próprio, (2018).
4.2. Teste Caixa-Preta
Refere-se a testes que são conduzidos na interface do software. Um teste de caixa-preta examina algum aspecto fundamental do sistema pouco se preocupando com a estrutura lógica interna do software.
Figura 33 - Teste da caixa-preta
Fonte: Autor Próprio, (2018).
21
4.3. Teste de Compatibilidade 
Tabela 7 - Tabela de Compatibilidade
	Sistema Operacional
	Navegador
	Descrição
	Windows 7
	Google Chrome
	A realização do teste foi bem sucedida. Todas as funções foram executadas perfeitamente.
	Windows 7
	Mozilla Firefox
	O sistema foi bem sucedido na sua parte lógica, porém houve distorção nas telas.
	Windows 7
	Internet Explorer
	O sistema foi bem sucedido na sua parte lógica, porém houve distorção nas telas.
	Linux Ubuntu
	Google Chrome
	A realização do teste foi bem sucedida. Todas as funções foram executadas perfeitamente.
	Linux Ubuntu
	Mozilla Firefox
	O sistema foi bem sucedido na sua parte lógica, porém houve distorção nas telas.
Fonte: Autor Próprio, 2018.
4.4. Teste de Segurança
O Teste de Segurança tem como meta garantir que o funcionamento da aplicação esteja exatamente como especificado. Verifica também se o software se comporta adequadamente mediante as mais diversas tentativas ilegais de acesso, visando possíveis vulnerabilidades. Para isso, testa se todos os mecanismos de proteção embutidos na aplicação de fato a protegerão de acessos indevidos.
A execução do Teste de Segurança possibilita que dúvidas sobre prováveis vulnerabilidades do software sejam sanadas. Pode auxiliar também na definição de um plano de contingência, visando determinar qual precaução será tomada contra os possíveis ataques. 
Tabela 8 - Teste de Segurança
	Teste
	Falha
	Status
	Tela de login
	Verificação do nível de acesso
	Corrigido
	Opção Compras
	Pode ser comprado somente um produto por vez
	Pendente
	Alerta de login
	Falha no alerta de erro do login
	Corrigido
Fonte: Autor Próprio, 2018
5. PARTE ORÇAMENTÁRIA E CRONOGRAMA DE ATIVIDADES
5.1. Orçamento
Tabela 9 - Orçamento
	Serviço
	Orçamento
	Mão de obra
	R$ 5.000,00
	PC 
	R$ 1,000.00
	Manutenção
	R$ 600,00
Fonte: Autor Próprio, 2018
5.2 Cronograma
Figura 34 – Cronograma
Fonte: Autor Próprio, (2018).
6. CONSIDERAÇÕES FINAIS
6.1. Conclusão
O projeto apresentado teve como objetivo implementar e desenvolver um sistema de gerenciamento pessoal, estoque e vendas para uma rede de farmácias. Para isso, foi usado o conhecimento adquirido ao longo do curso técnico em informática 2017/1. Usamos nesse projeto as técnicas aprendidas em sala de aula, usando todo o conhecimento dos integrantes para elaborar esse sistema.
Ao longo do projeto, várias dificuldades foram encontradas, muitas foram resolvidas, outras ainda serão solucionadas até o término do curso e servirão para o projeto final, a fim de obter o melhor sistema possível.
6.2. Dificuldades encontradas no desenvolvimento do trabalho
	Para desenvolver esse sistema, algumas dificuldades foram encontradas. Desde o processo de criação dos diagramas até os algoritmos em si. 
	A tela de vendas, onde o cliente escolhe e compra os seus produtos, é onde teve um grande problema, pois o usuário pode escolher apenas um produto por venda. Este é um problema que será solucionadono projeto final.
6.3. Trabalhos futuros
	De acordo com sugestões dos usuários, algumas melhorias deverão ser feitas, para o melhor desenvolvimento e uso do sistema, tais como:
· Poder comprar mais de um item por venda
· Pesquisar produtos por prateleira
· Adicionar categorias aos produtos
· Melhorar a criptografia
· Adicionar o painel do cliente
BIBLIOGRAFIA
CUNHA, Simone. Técnicas de Testes. Disponível em:
<http://testwarequality.blogspot.com/p/tenicas-de-teste.html>. Acesso em: 2 set. 2018.
LIMA, Davi de. Modele softwares com Astah Community. Disponível em:
<https://www.techtudo.com.br/tudo-sobre/astah-commmunity.html>. Acesso em: 2 set. 2018.
SILVA, Alberto M. R.; VIDEIRA, Carlos A. E. UML, Metodologias e Ferramentas CASE, Centro Atlântico, p 117, 2001.
WELLING, Luke; THOMSON, Laura. PHP e MySQL Desenvolvimento Web, Elsevier Editora, p. XXVI, 2005.

Continue navegando