Baixe o app para aproveitar ainda mais
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.
Compartilhar