CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE DE TECNOLOGIA DE LINS PROF. ANTONIO SEABRA CURSO SUPERIOR DE TECNOLOGIA EM BANCO DE DADOS FERNANDO TORRES FERREIRA DA SILVA FERRAMENTA WEB PARA GESTÃO DE TI EM MICROEMPRESA LINS/SP 2° SEMESTRE/2015 CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE DE TECNOLOGIA DE LINS PROF. ANTONIO SEABRA CURSO SUPERIOR DE TECNOLOGIA EM BANCO DE DADOS FERNANDO TORRES FERREIRA DA SILVA FERRAMENTA WEB PARA GESTÃO DE TI EM MICROEMPRESA Trabalho de Conclusão de Curso apresentado à Faculdade de Tecnologia de Lins para obtenção de Título de Tecnólogo em Banco de Dados. Orientador: Prof.ª Me. Gisele Molina Becari LINS/SP 2° SEMESTRE/2015 FERNANDO TORRES FERREIRA DA SILVA FERRAMENTA WEB PARA GESTÃO DE TI EM MICROEMPRESA Trabalho de Conclusão de Curso apresentado à Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para a obtenção do título de Tecnólogo em Banco de Dados sob orientação da Prof.ª Me. Gisele Molina Becari. Data de aprovação:___/___/___ ________________________________________ Orientadora Prof.ª Me. Gisele Molina Becari ________________________________________ Prof. Me. Adriano Bezerra ________________________________________ Prof. Dr. Fernando Muzzi À minha família, em especial a minha esposa por estar sempre ao meu lado me apoiando, incentivando e pela paciência que teve comigo nos momentos que me ausentei para me dedicar a este projeto. AGRADECIMENTOS Primeiramente a Deus por me sustentar em todos os sentidos até aqui e por aproximar colegas e amigos, permitindo uma capitação melhor de ideias para este projeto. Gostaria de agradecer minha esposa por me apoiar na correção e elaboração da monografia, desde o início me apresentando ideias. Gostaria de agradecer a minha orientadora Prof. Me. Gisele Molina Becari, pela paciência em me orientar, por se apresentar sempre preocupada com o projeto desde o início, incentivando, indicando soluções, ideias e dessa forma aumentando a motivação para concluir o projeto. Ao Prof. Me. Mario Henrique de Souza Pardo pela amizade e pelo apoio na implementação do projeto. Agradeço também a Prof. Me. Adriana de Bortoli pela paciência, pelo conhecimento compartilhado na elaboração da monografia e a Prof. Me. Luciane Noronha do Amaral pelo apoio na correção e nas ideias compartilhadas. Agradeço a todos da Fatec de Lins. RESUMO Este trabalho de pesquisa tem por objetivo principal o desenvolvimento de uma ferramenta web para auxiliar na gestão de serviços de TI em micro e pequenas empresas. Durante os estudos observou-se que trabalhos manuais, como relatórios, ordens de serviços, solicitação de orçamentos e os problemas com software e hardware, comumente recorrentes nestas organizações, gastam tempo produtivo e muitas vezes, os incidentes relacionados à tecnologia são solucionados pelo Departamento de TI ou por empresas terceirizadas gerando custos. Observou-se que estas demandas, especialmente as levadas a TI, podem ser resolvidas pelos próprios colaboradores da empresa, caso estes tenham acesso a uma ferramenta que lhes disponibilize informações rápidas e úteis, bem como se tiverem uma interação ágil com o Departamento de TI. Desta análise, surgiu a motivação para o desenvolvimento do GestorSync-1 (nome gerado a partir da ideia dos processos de TI estarem em sincronia com os negócios da empresa), que tem por objetivo otimizar esses processos dentro da organização, tornando essas ações mais rápidas e eficazes, transformando o Departamento de TI, antes reativo, em proativo, com a ajuda dos colaboradores da organização, podendo ganhar em tempo e em desenvolvimento de tecnologias que realmente auxiliem o crescimento dos negócios. Nesta pesquisa foram especificadas as ferramentas utilizadas no desenvolvimento do GestorSync-1, suas principais funções e usabilidade. Palavras-chave: TI, Desenvolvimento. Serviços, Gestão, Ferramenta, Organizações, Proativo, ABSTRACT This research is primarily engaged in the development of a web tool to assist in the management of IT services for micro and small businesses. During the study it was observed that manual jobs such as reports, work orders, request quotes and problems with software and hardware, commonly recurring in these organizations spend productive time and often technology-related incidents are solved by the Department of Or by third party companies generating costs. It was observed that these demands, especially those made to IT, can be resolved by the company's own employees, if they have access to a tool that provides them quick and useful information, and if they have an agile interaction with the IT Department. This analysis came the motivation to develop the GestorSync-1 (generated name from the idea of IT processes are in sync with the company's business), which seeks to optimize these processes within the organization, making these more rapid and effective action, turning the IT department, before reactive, in proactive, with the help of the organization's employees, can gain in time and development of technologies that really assist business growth. In this research were specified the tools used in the development of GestorSync-1, its main functions and usability. Keywords: IT, Services, Management, Tool, Organizations, Proactive, Development. LISTA DE ILUSTRAÇÕES FIGURA 1.1 – DIAGRAMA SIMPLIFICADO DE UM AMBIENTE DE SISTEMAS DE BANCO DE DADOS .................................................................................................. 17 FIGURA 1.2 – DIAGRAMA COM AS PRINCIPAIS FASES DO PROJETO DE BANCO DE DADOS................................................................................................................ 18 FIGURA 1.3 – SAME COMMANDS TAKEN IN A SCREENSHOT ............................ 20 FIGURA 1.4 – TELA INICIAL DO MYSQL WORKBENCH ........................................ 21 Figura 1.5 – The Seperation of Logic and Presentation ............................................ 22 FIGURA 1.6 – ARQUITETURA JAVAMAIL API ......................................................... 24 FIGURA 1.7 – MODELO, VISÃO E CONTROLADOR .............................................. 25 FIGURA 1.8 – ESTRUTURA DE ARQUIVOS BOOTSTRAP .................................... 27 FIGURA 1.9 – TEMA SB ADMIN 2 ............................................................................ 29 FIGURA 1.10 – MODELO DE TABELA COM O PLUGIN JQUERY DATATABLES.... 30 FIGURA 1.11 – NETBEANS IDE 8.0.2 ...................................................................... 31 FIGURA 2.1 – RELATÓRIO DE ATIVIDADES DIÁRIAS ........................................... 35 FIGURA 2.2 – LAUDO TÉCNICO .............................................................................. 36 FIGURA 2.3 – PRODUTOS COMPRA ...................................................................... 37 FIGURA 2.4 – NECESSIDADES E PRIORIDADES ................................................. 38 FIGURA 2.5 – DIAGRAMA DE ATIVIDADE EFETUAR LOGIN ................................. 43 FIGURA 2.6 – DIAGRAMA MVC EFETUAR LOGIN ................................................. 43 FIGURA 2.7 – DIAGRAMA DE SEQUÊNCIA EFETUAR LOGIN .............................. 44 FIGURA 2.8 – DIAGRAMA DE ATIVIDADE INSERIR TÓPICOS NO FÓRUM .......... 45 FIGURA 2.9 – DIAGRAMA MVC INSERIR TÓPICOS NO FÓRUM .......................... 45 FIGURA 2.10 – DIAGRAMA DE SEQUÊNCIA INSERIR TÓPICOS NO FÓRUM ..... 46 FIGURA 2.11 – DIAGRAMA DE ATIVIDADE MANTER USUÁRIO ............................ 48 FIGURA 2.12 – DIAGRAMA MVC MANTER USUÁRIO ............................................ 49 FIGURA 2.13 – DIAGRAMA DE SEQUÊNCIA MANTER USUÁRIO ......................... 49 FIGURA 2.14 – DIAGRAMA DE ATIVIDADE MANTER FORNECEDOR .................. 50 FIGURA 2.15 – DIAGRAMA MVC MANTER FORNECEDOR ................................... 50 FIGURA 2.16 – DIAGRAMA DE SEQUÊNCIA MANTER FORNECEDOR ............... 51 FIGURA 2.17 – DIAGRAMA DE ATIVIDADE MANTER PRODUTO .......................... 52 FIGURA 2.18 – DIAGRAMA MVC MANTER PRODUTO .......................................... 52 FIGURA 2.19 – DIAGRAMA DE SEQUÊNCIA MANTER PRODUTO ....................... 53 FIGURA 2.20 – DIAGRAMA DE ATIVIDADE MANTER SERVIÇO ............................ 54 FIGURA 2.21 – DIAGRAMA MVC MANTER SERVIÇO ............................................ 54 FIGURA 2.22 – DIAGRAMA DE SEQUÊNCIA MANTER SERVIÇO ......................... 55 FIGURA 2.23 – DIAGRAMA DE ATIVIDADE GERAR ORDEM DE SERVIÇO .......... 56 FIGURA 2.24 – DIAGRAMA MVC GERAR ORDEM DE SERVIÇO .......................... 56 FIGURA 2.25 – DIAGRAMA DE SEQUÊNCIA GERAR ORDEM DE SERVIÇO ....... 57 FIGURA 2.26 – DIAGRAMA DE ATIVIDADE MANTER WIKI .................................... 58 FIGURA 2.27 – DIAGRAMA MVC MANTER WIKI .................................................... 59 FIGURA 2.28 – DIAGRAMA DE SEQUÊNCIA MANTER WIKI.................................. 59 FIGURA 2.29 – DIAGRAMA DE ATIVIDADE GERAR NOTIFICAÇÕES ................... 60 FIGURA 2.30 – DIAGRAMA DE MVC GERAR NOTIFICAÇÕES .............................. 61 FIGURA 2.31 – DIAGRAMA DE SEQUÊNCIA GERAR NOTIFICAÇÕES ................. 61 FIGURA 2.32 – DIAGRAMA DE ATIVIDADE GERAR PEDIDO DE COMPRA .......... 62 FIGURA 2.33 – DIAGRAMA MVC GERAR PEDIDO DE COMPRA .......................... 63 FIGURA 2.34 – DIAGRAMA DE SEQUÊNCIA GERAR PEDIDO DE COMPRA ....... 63 FIGURA 2.35 – DIAGRAMA DE ATIVIDADE FECHAR ORDEM DE SERVIÇO ........ 65 FIGURA 2.36 – DIAGRAMA MVC FECHAR ORDEM DE SERVIÇO ........................ 66 FIGURA 2.37 – DIAGRAMA DE SEQUÊNCIA FECHAR ORDEM DE SERVIÇO ..... 66 FIGURA 2.38 – DIAGRAMA DE CASO DE USO COMPLETO ................................. 67 FIGURA 2.39 – DIAGRAMA DE CLASSES ............................................................... 68 FIGURA 2.40 – DIAGRAMA DE DADOS (MER) ....................................................... 69 FIGURA 3.1 – MYSQL WORKBENCH 6.1 E ESTRUTURA DA TABELA ORDEMSERVICO ..................................................................................................... 71 FIGURA 3.2 – TELA DE LOGIN ................................................................................ 72 FIGURA 3.3 – PÁGINA INICIAL USUÁRIO GERENTE DE TI ................................... 73 FIGURA 3.4 – CADASTRO DE USUÁRIO ................................................................ 73 FIGURA 3.5 – CADASTRO DE FORNECEDORES .................................................. 74 FIGURA 3.6 – WIKI ................................................................................................... 74 FIGURA 3.7 – FÓRUM .............................................................................................. 75 FIGURA 3.8 – ORDEM DE SERVIÇO ....................................................................... 76 FIGURA 3.9 – TELA PRINCIPAL TÉCNICO DE TI .................................................... 76 FIGURA 3.10 – FECHAMENTO E COMENTÁRIO DA ORDEM DE SERVIÇO ........ 77 FIGURA 3.11 – WIKI – WIKI CADASTRADO ............................................................ 77 FIGURA 3.12 – PERFIL ............................................................................................ 78 FIGURA 3.13 – CLASSE ORDEMSERVICO.JAVA ................................................... 78 FIGURA 3.14 – CLASSE ORDEMSERVICODAO.JAVA ........................................... 79 FIGURA 3.15 – CLASSE CONTROLEORDEMSERVICO.JAVA ............................... 79 LISTA DE QUADROS Quadro 2.1 – Eventos A – Atores em geral. .............................................................. 42 Quadro 2.2 – Eventos B – Ator Gerente de TI ........................................................... 47 Quadro 2.3 – Eventos C – Ator Técnico de TI ........................................................... 64 LISTA DE ABREVIATURAS E SIGLAS API - Application Programming Interface ASP - Active Server Pages CDDL - Common Development and Distribution License CSS - Cascading Style Sheets EJB - Enterprise Java Beans GLP - General Public License GUI - Graphical User Interface HTML - HyperText Markup Language HTTP - HyperText Transfer Protocol IDC - International Data Corporate IDE - Integrated Development Environment IMAP - Internet Message Access Protocol JDK - Java Development Kit JEE - Java Enterprise Edition JMS - Java Message Service JPA - Java Persistence API JSP - Java Server Pages MER - Modelo de Entidade e Relacionamento MPE - Micro e Pequenas Empresas MVC - Model-View-Controller PDF - Portable Document Format PHP - Personal Home Page POP3 - Post Office Protocol 3 SMTP - Simple Mail Transfer Protocol SGBD - Sistema Gerenciador de Banco de Dados SQL - Structure Query Language TI - Tecnologia da Informação UML - Unified Modeling Language VPN - Virtual Private Network XML - eXtensible Markup Language SUMÁRIO INTRODUÇÃO ...................................................................................................... 14 1 TECNOLOGIAS UTILIZADAS ........................................................................................................... 17 1.1 BANCO DE DADOS ................................................................................. 17 1.2 MODELO RELACIONAL ........................................................................... 19 1.3 MYSQL ..................................................................................................... 20 1.4 MYSQL WORKBENCH ............................................................................. 20 1.5 MODEL – VIEW- CONTROLLER (MVC) .................................................. 21 1.6 JAVA ......................................................................................................... 22 1.7 JAVA ENTERPRISE EDITION (JEE) ........................................................ 23 1.8 API JAVAMAIL .......................................................................................... 24 1.9 SERVLETS ............................................................................................... 25 1.10 JAVA SERVER PAGES (JSP) ................................................................. 26 1.11 BOOTSTRAP .......................................................................................... 26 1.12 HISTÓRIA DO BOOTSTRAP .................................................................. 27 1.13 TEMA SB ADMIN 2 ................................................................................. 28 1.14 JQUERY ................................................................................................. 29 1.15 DATATABLES.......................................................................................... 30 1.16 NETBEANS IDE...................................................................................... 31 1.17 GLASSFISH APPLICATION SERVER .................................................... 32 1.18 FINALIZAÇÃO DO CAPÍTULO ............................................................... 32 2 ANÁLISE E PROJETO DE SISTEMA .......................................................... 33 2.1 ANÁLISE DE NEGÓCIO ........................................................................... 33 2.1.1 Introdução do Problema .............................................................. 33 2.1.2 Atores Envolvidos no Processo ................................................... 34 2.1.3 Descrição do Ambiente Atual....................................................... 34 2.2. VISÃO GERAL DO PRODUTO ................................................................ 37 2.2.1 Perspectiva do Produto (Análise de Mercado) ............................ 37 2.2.2 Características ............................................................................ 38 2.2.3 Premissas e Dependências ......................................................... 39 2.3 ANÁLISE DE REQUISITOS ...................................................................... 39 2.3.1 Análise de Requisitos Funcionais ................................................ 39 2.3.2 Análise de Requisitos Não Funcionais ........................................ 40 2.4 ANÁLISE E DESIGN ................................................................................. 40 2.5 ANÁLISE E PROJETO DE SISTEMA ....................................................... 42 2.5.1 Especificação de Histórias .......................................................... 42 2.5.2 Diagrama de Caso de Uso .......................................................... 67 2.5.3 Diagrama de Classes .................................................................. 68 2.5.4 Projeto de Banco de Dados......................................................... 69 2.5.4.1 Modelo de Entidade e Relacionamento (MER) .............. 69 2.6 CONSIDERAÇÕES SOBRE O CAPÍTULO .............................................. 70 3 IMPLEMENTAÇÃO ........................................................................................... 71 3.1 IMPLEMENTAÇÃO DO BANCO DE DADOS ........................................... 71 3.2 IMPLEMENTAÇÃO DA FERRAMENTA WEB ........................................... 71 3.3 CONSIDERAÇÕES SOBRE O CAPÍTULO .............................................. 80 CONCLUSÃO ........................................................................................................ 81 REFERÊNCIAS BIBLIOGRÁFICAS ................................................................. 82 14 INTRODUÇÃO Nos dias atuais a Tecnologia da Informação (TI) é indispensável para as empresas, seja qual for o seu ramo, para uma execução ágil nas atividades a fim de aperfeiçoar o desempenho com baixo custo. De acordo com Rafael (2014), a maioria dos processos nas organizações são executados através do meio digital ou gerados e suportados por alguma tecnologia. Mesmo em ambientes simples com poucos usuários e computadores, faz-se necessário ter uma estrutura de TI. De acordo com o site Canaltech (2014), em um artigo redigido por autor desconhecido, Dreyfuss, Cassio, defende que futuramente, os humanos irão dividir suas atividades do trabalho com uma máquina, dessa forma tornando-os ainda mais dependentes um do outro. No entanto, segundo Rafael (2014), a maioria das Micro e Pequenas Empresas (MPE), e até empresas de médio porte, utilizam a TI, como um departamento de informática para resolver incidentes e não como um departamento de tecnologia da informação, estrategicamente alinhado aos negócios da empresa. Nessas empresas, normalmente gerentes e diretores alegam que a falta de investimento é gerada por não possuírem recursos, porém, as primeiras ações executadas quando qualquer tipo de incidente impacta os negócios da empresa, gerando perdas, é a aquisição de produtos ou serviços que corrijam o problema e diminuam o risco de um novo incidente. Esta situação retrata o que Rafael (2014) denomina como TI Reativa, ou seja, o departamento trabalha para corrigir problemas, mantendo a empresa conectada e operando. Uma TI proativa reduziria custos, como também eliminaria os incidentes, tornando o departamento de TI disponível e alinhado aos negócios da empresa. Gutierrez, Roberto (2014), defende que não é novidade a expansão do mercado tecnológico, por isso mostram as estatísticas, que ele deve crescer ainda mais este ano. Assim, é necessário que as organizações estejam preparadas para acompanhar este desenvolvimento. Provedores e líderes de TI que se prepararem adequadamente e atentarem aos sinais do mercado terão mais chances de sucesso e não serão devorados pela esfinge da tecnologia. (Gutierrez, Roberto, 2014). 15 Ainda de acordo com Gutierrez, Roberto (2014), nos últimos dois anos, os pilares da terceira plataforma de TI: Cloud, Big Data, Mobilidade e Social, continuam sendo os grandes modelos disruptivos que trazem, ao mesmo tempo, alto potencial de inovação para os negócios e impacto para organizações de TI. Seguindo esta tendência, pode-se observar que a utilização destas plataformas de TI têm crescido cada vez mais e se tornado indispensáveis para as empresas, auxiliando-as em tomada de decisões, execução de atividades, padronizando métodos e técnicas, bem como, colaborando na gestão de dados, sejam eles dados de clientes, mercado, fornecedores ou serviços. Faz-se necessário neste novo cenário alinhar os negócios a TI. Uma área de TI que não considerar os objetivos estratégicos da organização em que se insere como seus próprios objetivos, será uma área de TI que deseja apenas ser um simples provedor de tecnologia, haja vista que até mesmo os provedores de tecnologia, atualmente, tendem a preocupar-se com a estratégia de negócio de seus clientes, condição básica para a venda de serviços sob demanda. (MAGALHÃES; PINHEIRO, 2007, p. 36). Dentro deste contexto, surgiu a ideia deste projeto: desenvolver o GestorSYNC-1, uma solução web com o objetivo de gerenciar e direcionar estrategicamente de forma eficaz os serviços de TI. Esta ferramenta terá as seguintes funções: emissão de ordem de serviço, pedido de materiais e notificações diárias de serviços a serem executados. Também terá um fórum para dúvidas e respostas rápidas, permitindo aos usuários, a criação de tópicos que serão automaticamente enviados através de e-mail para todos os integrantes da TI. A ferramenta possuirá ainda, um espaço intitulado Wiki, que será mantido pelo administrador do sistema, contendo tutoriais, dicas e normas. Além disso, haverá a integração com fornecedores e cadastro de seus produtos, o que irá conceder informações de custos e orçamentos, com precisão, segurança e rapidez, garantindo eficiência na utilização desses dados e consequentemente o aprimoramento do uso deles para a gestão da MPE. Assim sendo, com o uso de um microcomputador com sistema Windows, plataforma de desenvolvimento como NetBeans, software Astah Comunnity para modelagem de dados Unified Modeling Linguage (UML), Java Development Kit (JDK), implementado em linguagem de programação orientada a objetos Java, 16 Servlet e Java Server Pages(JSP), framework front-end Bootstrap Open Source, empregado a biblioteca JavaScript JQuery, Application Programming Interface (API) JavaMail para envio de notificações de novos tópicos no fórum, servidor de aplicação Open Source Glassfish, Sistema Gerenciador de Banco de Dados (SGBD) MySQL e MySQL Workbench foi desenvolvida esta solução web. O GestorSYNC-1 pretende auxiliar no desenvolvimento e aperfeiçoamento da gestão dos serviços de TI, assim como na padronização e organização dos processos suportados pela Tecnologia da Informação, aplicados a boas práticas, planejamento estratégico, disponibilidade e normas de gestão, garantindo melhor atendimento a MPE. Com relação à organização deste trabalho, ela se dará da seguinte forma: o primeiro capítulo apresentará o levantamento bibliográfico das ferramentas e tecnologias utilizadas para o desenvolvimento do projeto. No segundo capítulo, será realizada a análise e o projeto de sistema, com subtítulos análise de negócio, análise de mercado, visão geral do produto, análise de requisitos, análise e design e análise de projeto. O terceiro e último capítulo constará a implementação do GestorSYNC-1, os processos de desenvolvimento, suas funcionalidades, a sua usabilidade, os processos de aprimoramento e os futuros projetos. 17 1. TECNOLOGIAS UTILIZADAS Neste capítulo serão apresentadas as tecnologias e ferramentas utilizadas para a realização deste trabalho. 1.1. BANCO DE DADOS Segundo Gonzaga e Birckan (2000), simplificando, a estrutura de um banco de dados, é uma hierarquia complexa de dados. Conforme Figura 1.1, observa-se como Elmasri e Navathe (2011) definem alguns conceitos da união do banco de dados com o software SGBD: Figura 1.1 – Diagrama simplificado de um ambiente de sistema de banco de dados. Fonte: Elmasri; Navathe, 2011, p.4 Conforme Takai, Italiano e Ferreira (2005), em 1960, surgiu o primeiro SGBD comercial, baseado nos primeiros sistemas de arquivos da época, sistemas primitivos, que não faziam o controle de acesso dos usuários e não realizava o controle dos processos. 18 O SGBD é a evolução de sistemas de arquivos de armazenamento em disco, através dessa evolução surgiu várias estruturas de dados, que tem como principal objetivo armazenar informações. No decorrer do tempo, o SGBD obteve melhorias nos modelos de dados, dessa forma houve o aprimoramento da estrutura das informações contidas no banco de dados. Atualmente, os modelos de dados mais utilizados em SGBD’s são: modelo hierárquico, modelo em redes, modelo relacional e o modelo orientado a objetos. Segundo Meira (1997), um banco de dados possui as seguintes propriedades: Um conjunto lógico ordenando de dados com um significado característico; Projetado, construido e populado com dados para uma finalidade específica, possui uma relação de usuários e aplicações pré-definida; Representado pelo ponto de vista do mundo real, o qual é chamado de “mini-mundo”, qualquer mudança do estado normal, feita no mini-mundo é refletida no banco de dados; Conforme Figura 1.2, observa-se como Elmasri e Navathe (2011) definem as principais fases de um projeto. Figura 1.2 – Diagrama com as principais fases do projeto de banco de dados. Fonte: Elmasri; Navathe, 2011, p.133 19 Para atender as exigências da ferramenta web GestorSync-1, utiliza-se neste trabalho o modelo relacional, o qual define-se a seguir. 1.2. MODELO RELACIONAL Segundo Takai, Italiano e Ferreira (2005), o modelo relacional surgiu devido às seguintes necessidades: Aumentar a independência de dados nos sistemas gerenciadores de banco de dados; Prover um conjunto de funções apoiadas em álgebra relacional para armazenamento e recuperação de dados; Permitir processamento Ad Hoc (Processamento dedicado exclusivo); Foi resultado de um estudo teórico realizado por Codd (Investigador da IBM), apresentado num artigo publicado em 1970, porém o modelo só foi implementado nos anos 80. Baseado na teoria dos conjuntos e álgebra relacional, revelou ser o mais flexível e adequado ao solucionar os diversos problemas, escalados no nível de concepção e implementação do banco de dados. A estrutura fundamental do modelo relacional é a relação (tabela). Uma relação é constituída por um ou mais atributos (campos) que traduzem o tipo de dados a armazenar. Cada instancia do esquema (linha) é chamada de tupla (registro). Este modelo não possui caminhos pré-definidos para acesso aos dados como nos modelos anteriores, possuindo uma estrutura de dados organizada em relações. Para trabalhar com essas tabelas ou relações, algumas restrições precisaram ser impostas para evitar aspectos indesejáveis, como repetição de informação, incapacidade de representar parte da informação e perda de informação. Essas restrições são: integridade referencial, chaves e integridade de junções de relações. (TAKAI, ITALIANO e FERREIRA, 2005). 20 1.3. MYSQL Conforme Pisa (2012), em seu artigo para o site TechTudo, o MySQL é um SGBD relacional de código aberto usado na maioria das aplicações gratuitas para gerir suas bases de dados. O serviço utiliza a linguagem Structure Query Language (SQL), que é uma linguagem mais popular para inserir, acessar e gerenciar o conteúdo armazenado num banco de dados. O sistema foi desenvolvido pela empresa sueca MySQL AB e publicado, originalmente, em maio de 1995. Após isto, a empresa foi comprada pela Sun Mycrosystems e, em Janeiro de 2010, comprada pela Oracle Corporation. Figura 1.3 – Same commands taken in a screenshot Fonte: Site Tournas Dimitrios, 2012 21 1.4. MYSQL WORKBENCH Segundo Imamura (2010), a ferramenta MySQL Workbench é oficial do MySQL. Sendo um ambiente completo que por sua vez concede ao usuário, processar consultas, gerar diagramas e atuar com engenharia reversa. Figura 1.4 – Tela Inicial do MySQL Workbench Fonte: Elaborada pelo autor, 2015 1.5. MODEL-VIEW-CONTROLLER (MVC) Conforme Medeiros, H. (2013), o padrão MVC é uma forma de dividir a aplicação, podendo dividir até mesmo somente uma interface de uma aplicação, conforme os elementos do padrão MVC que são: o modelo, a visão e o controlador. O objetivo do desenvolvimento do MVC era de mapear o método tradicional de entrada, processamento, e saída que utilizavam os programas baseados em Graphical User Interface (GUI). No padrão MVC teríamos então, o mapeamento de cada uma dessas três partes para o padrão MVC. A Figura 1.4 exemplifica a separação da lógica e da apresentação. 22 Figura 1.5 – The Seperation of Logic and Presentation Fonte: Site ASP.NET Fundamentals of and MVC Framework Tutorial 1.6. JAVA Conforme Grupo PET (2015 p.3), Java é uma linguagem de programação orientada a objetos desenvolvida pela Sun Microsystems. Projetada para ser pequena, simples e portável a todas as plataformas e sistemas operacionais, tanto o código fonte como os binários. Em relação a portabilidade, a linguagem é interpretada por uma máquina virtual instalada no computador, no momento da execução o compilador gera um código independente de máquina chamado byte-code, que é interpretado pela máquina virtual. Além de ser integrada à Internet, Java também é uma excelente linguagem para desenvolvimento de aplicações em geral. Permite executar jogos, fazer upload de fotos, bater papo on-line, fazer tours virtuais e usar serviços, como treinamento on-line, transações bancarias on-line e mapas interativos. 23 1.7. JAVA ENTERPRISE EDITION (JEE) Conforme Andrade (2015, p.14), a JEE é uma plataforma robusta, que se tornou padrão para o desenvolvimento de aplicações Java de grande porte e/ou para a Internet, possui bibliotecas e funcionalidades para implementar software Java distribuído, baseado em componentes modulares que executam em servidores de aplicações e que suportam escalabilidade, segurança, integridade e outros requisitos de aplicações corporativas ou de grande porte. Possui uma série de especificações (tecnologias) com objetivos distintos, por isso é considerada uma plataforma “guarda-chuva”. As mais conhecidas são: Servlets: são componentes Java executados no servidor para gerar conteúdo dinâmico para a web, como HyperText Markup Language (HTML) e eXtensible Markup Language (XML). JavaServer Pages (JSP): uma especialização de Servlets que permite que aplicações web desenvolvidas em Java sejam mais fáceis de manter. É similar às tecnologias como Active Server Pages (ASP) e Personal Home Pages (PHP), porém mais robusta por ter todas as facilidades da plataforma Java. JavaServer Faces (JSF): é um framework web baseado em Java que tem como objetivo simplificar o desenvolvimento de interfaces de sistemas para a web, através de um modelo de componentes reutilizáveis. A proposta é que os sistemas sejam desenvolvidos com a mesma facilidade e produtividade que se desenvolve sistemas desktop. Java Persistence API (JPA): é uma API padrão do Java para persistência de dados, que usa um conceito de mapeamento objeto-relacional. Essa tecnologia traz alta produtividade para o desenvolvimento de sistemas que necessitam de integração com banco de dados. Essa API possibilita que desenvolva-se aplicações usando banco de dados sem precisar escrever uma linha sequer de SQL. Enterprise Java Beans (EJB): são componentes que executam em servidores de aplicação e possuem como principais objetivos, fornecer facilidade e produtividade no desenvolvimento de componentes distribuídos, transacionados, seguros e portáveis. 24 1.8. API JAVAMAIL Conforme o tutorial do site JavaTPoint, a API JavaMail é um conjunto de APIs abstratas que modelam um sistema de correio. A API baseada em Java fornece uma estrutura independente de protocolo para construção de aplicativos “clientes de e-mail” e de mensagens, que possui a funcionalidade responsável por ler e/ou enviar o e-mail ou mensagem. O projeto API JavaMail suporta os principais provedores de protocolo: Simple Mail Transfer Protocol (SMTP), Internet Message Access Protocol (IMAP), Post Office Protocol (POP3), MBOX e POP3REMOTE. A API JavaMail está disponível como um pacote opcional para o uso com a plataforma Java SE e também está incluído na plataforma Java EE. O projeto API JavaMail está licenciado pela Common Development and Distribution License (CDDL) v1.1 e GNU General Public License (GPL) v2 com Classpath Exception. Figura 1.6 – Arquitetura JavaMail API Fonte: Site JavaTPoint 25 1.9. SERVLETS Segundo Caelum (p.53), Servlet significa um pequeno servidor, cujo objetivo é receber chamadas HyperText Transfer Protocol (HTTP), processá-las e devolver uma resposta ao usuário. Para melhor entendimento este pequeno servidor, é responsável por uma interface da aplicação, que faz leitura dos dados da requisição do usuário e retorna os dados requisitados ou uma simples resposta. Segundo Lopes (2008), Servlet são classes Java para web. Um Servlet é uma classe normal como qualquer outra. Conforme Lopes (2008), apud Sierra, Servlet vivem para servir clientes. A função mais simplificada de um Servlet é que este recebe uma solicitação do usuário e retorna uma resposta, seja ela simples como uma página de boas-vindas ou finalize o pedido do meu carrinho de compras. Por tratar de informações importantes, faz-se necessário que a regra de negócio do Servlet, seja capaz de encontrar e utilizar essas informações. Figura 1.7 – Modelo, Visão e Controlador Fonte: Caelum, 2013 26 1.10. JAVA SERVER PAGES (JSP) Segundo Braz (2007, p.6), JSP é um acrônimo para Java Server Pages, o desenvolvimento dessa tecnologia foi baseada em Java, trata-se de uma linguagem em script para desenvolvimento de sites com páginas dinâmicas. Conforme Braz (2007, p.8), JSP é o resultado da associação entre HTML e Java em uma mesma página, porém, usando-se tags HTML que relacionam-se com objetos Java em um servidor, dessa forma, podendo ser introduzido, qualquer tipo de conteúdo dinâmico na página sem que o código Java seja exibido. A princípio, o código todo que encontra-se fora das tags, nada mais é do que o HTML puro. Possibilitando que o código seja mantenedor, para que parte do código possa ser separado da camada de código responsável por gerar o conteúdo dinâmico. 1.11. BOOTSTRAP Segundo o site GetBootstrap, a ferramenta mais popular para o desenvolvimento ágil é o Framework Bootstrap, que possui uma combinação de tecnologias, como HTML, Cascading Style Sheets (CSS) e JavaScript. Ele enquadra-se no conceito de software livre, sendo aprimorado continuamente, hospedado, desenvolvido e mantido no GitHub. Simplificando, o Bootstrap é uma coleção de vários elementos e funções personalizáveis para projetos da Web, empacotados previamente em uma única ferramenta. Na elaboração de site usando o Bootstrap, é possível escolher quais elementos usar. Dessa forma, os desenvolvedores podem usar todos os elementos sabendo que não conflitarão entre si. Pode-se exemplificar como um quebra-cabeças, porém cada peça encaixase perfeitamente junto com as outras, independente da peça. Na figura 1.8, pode-se visualizar e entender a estrutura de arquivos do Bootstrap. 27 Figura 1.8 – Estrutura de Arquivos Bootstrap Fonte: Nascimento, T., 2013. 1.12. HISTÓRIA DO BOOTSTRAP Segundo Utterback, em 2011, o Bootstrap foi desenvolvido para solucionar inconsistências de desenvolvimento em projetos da equipe de engenharia do Twitter. Cada engenheiro tem sua própria maneira de codificar, visto como um trabalho especializado, quase como uma arte, é o desenvolvimento e a engenharia da web. Em projetos de grande porte, com o envolvimento de vários engenheiros a abordagem de codificação é ligeiramente diferente, as inconsistências são inevitáveis. Com o tempo, essas inconsistências podem se transformar em problemas sérios que criam incertezas e aumentam o tempo de manutenção. Ainda conforme artigo de Utterback, em 2011, o framework Bootstrap foi desenvolvido por Mark Otto e Jacob Thorton, engenheiros do Twitter, o projeto teve como principal objetivo incentivar o uso de uma única estrutura pela equipe de engenharia do Twitter, reduzindo essas inconsistências. A iniciativa certamente foi bem-sucedida, permitindo rapidez, eficiência e menos inconsistências. Em agosto de 2011, a estrutura Bootstrap foi lançada como um projeto de software livre no GitHub, pois Mark e Jacob descobriram que o projeto era algo muito maior. Após alguns meses, milhares de desenvolvedores de todo o mundo contribuíram com o código, tornando o projeto de desenvolvimento de software livre mais ativo do mundo. Transformando-o desenvolvimento web. na estrutura front-end mais popular para o 28 1.13. TEMA SB ADMIN 2 Segundo o site Start Bootstrap, o tema SB Admin 2 é baseado em Bootstrap para administradores, com a página inicial como modelo Dashboard (Painel) ou WebAPP UI (Aplicação Web com Interface de Usuário). O tema apresenta uma variedade de plugins JQuery personalizados para adicionar funcionalidade estendida, além do construído em recursos de UI Bootstrap. O projeto SB Admin 2 é mantido pela Iron Summit Media Strategies e licenciado pela Apache License v2.0. Conforme o site Start Bootstrap são citadas as características do tema como: Menu lateral responsivo com Dropdowns de vários níveis e classes Arquivos LESS para customização mais profunda; Menu de navegação superior responsivo com itens de menu ativas; Dropdown; Três estilos personalizados do Dashboard: vermelho, amarelo e verde; Dois poderosos plugins jQuery de gráficos de ações, Flot Charts e Morris.js; Páginas Bootstrap com tabelas classificáveis e pesquisáveis, usando o plugin jQuery DataTables. Botões circulares com ícones personalizados de Bootsnipp (Galeria de elementos para desenvolvedores Web). Biblioteca Bootstrap de botões sociais da Bootstrap Social; Timeline Bootstrap responsiva de Bootsnipp; Widget Bootstrap de Chat de Bootsnipp; Página de login Bootsnipp; 29 Figura 1.9 – Tema SB Admin 2 Fonte: Site Start Bootstrap, 2015 1.14. JQUERY JQuery é projetado para mudar a sua maneira de escrever Conforme artigo de Silva, M. S. postado no site Linha de Código, no dia 22 de agosto de 2005, John Resig, famoso desenvolvedor americano conhecedor de JavaScript, autor do livro “Pro JavaScript Techniques”, membro da Corporação Mozilla e graduado em Ciência da Computação no Rochester Institute of Technology, publicou em seu blog um artigo relatando sua indignação com a maneira de se escrever JavaScript. Após alguns meses da publicação do artigo, exatamente no dia 14 de janeiro de 2006, John Resig, apresentou publicamente os resultados de seus estudos, intitulado “jQuery a nova onda para JavaScript”. Ainda segundo Silva, M. S., John Resig define sua criação como: “O foco principal da biblioteca JQuery é a simplicidade. Por que submeter os desenvolvedores ao martírio de escrever longos e complexos códigos para criar simples efeitos?” 30 Estava em um momento de rara inspiração quando definiu a biblioteca, pois soube resumir muito bem o JQuery. Foi projetado para mudar a maneira de escrever JavaScript, facilitando não só a vida dos programadores experientes como também de designers e desenvolvedores com pouco conhecimento de programação. 1.15. DATATABLES DataTables trata-se de um plugin da biblioteca JQuery Javascript. Esta ferramenta é altamente flexível, baseada nos fundamentos da otimização contínua, permite adicionar controles avançados de interação para qualquer tabela HTML. Figura 1.10 – Modelo de Tabela com o plugin JQuery DataTables Fonte: Site DataTables, 2015. 31 1.16. NETBEANS IDE Conforme o site Oracle, o NetBeans é um projeto Open Source de sucesso, com grande base de utilizadores, uma crescente comunidade e perto de 100 parceiros mundiais. A Sun Microsystems fundou o projeto NetBeans em Junho de 2000 e continua a ser o seu principal patrocinador. Atualmente existem dois produtos: o NetBeans Integrated Development Environment (IDE) e a Plataforma NetBeans. O NetBeans IDE é um ambiente de desenvolvimento, uma ferramenta para programadores, que permite escrever, compilar, depurar e instalar programas. O IDE é completamente escrito em Java, mas pode suportar qualquer linguagem de programação. Existe também um grande número de módulos para extender as funcionalidades do NetBeans IDE. O NetBeans IDE é um produto livre, sem restrições à sua forma de utilização. Figura 1.11 – Netbeans IDE 8.0.2 Fonte: Elaborada pelo autor, 2015 32 1.17. GLASSFISH APPLICATION SERVER Conforme Gonçalves (p.40), o servidor de aplicações web Glassfish é Open Source, baseado no Sun Java System Application Server Platform Edition, sendo 100% compatível com as especificações Java EE 5, mantido pelo projeto GlassFish, parte da comunidade OpenJava EE. Poderoso, este servidor contém itens que um Servlet Container como o Tomcat não possui, incluindo suporte a Enterprise JavaBeans (EJB) e Java Message Service (JMS). GlassFish é uma comunidade e os principais resultados da comunidade são um Application Server compatível com Java EE 5, o GlassFish AppServer, e a implementação de referência para o Java Persistence API, TopLink Essentials. A comunidade GlassFish também mantém um repositório Maven para todos esses componentes. 1.18. FINALIZAÇÃO DO CAPÍTULO Concluindo, neste capítulo observou-se de forma mais específica as tecnologias e ferramentas utilizadas para o desenvolvimento da ferramenta GestorSync-1, bem como as definições e a história de algumas delas. 33 2. ANÁLISE E PROJETO DE SISTEMA Neste capítulo será apresentada a análise de negócio, análise de mercado, visão geral do produto, análise de requisitos, análise e design, análise e projeto. 2.1. 2.1.1. ANÁLISE DE NEGÓCIO INSTRUÇÃO DO PROBLEMA Segundo estudo realizado pelo Gartner Group, Inc., apresentado por Donna Scott em sua palestra Operation Zero Downtime, em maio de 2002, 80% das causas de downtime nos serviços de TI são decorrentes de problemas relacionados com a operação destas atividades, tais como: Aplicações não testadas, má gerência de mudanças, sobrecarga de processamento, falhas em procedimentos, falhas no cumprimento de requisitos, erros relacionados à segurança ou às rotinas de backup. (MAGALHÃES; PINHEIRO, 2007, p. 28). Nas MPEs muitos dos problemas relacionados a TI poderiam ser resolvidos pelo próprio usuário, porém no cenário atual isto não acontece, os usuários ao detectarem um problema, independente do grau de dificuldade para resolvê-lo, esperam a solução do departamento de TI e, desta forma, influenciam no tempo ocioso do funcionário. Atividades executadas manualmente, também são influenciadoras do famoso Downtime. Estas atividades referem-se às planilhas, relatórios, ordem de serviço, controle de estoque e pedido de materiais, elas, por vezes, tornam o ambiente de trabalho arcaico, colaborando de forma direta para a desorganização, desmotivação e falta de interesse nos negócios dos próprios profissionais desta MPE, onde os principais prejudicados são os funcionários, fornecedores e os clientes, ou seja, afeta a própria empresa. Pode-se observar que essas MPEs impõem serviços para a equipe de TI que poderiam ser solucionados pelos próprios usuários, o que resultaria em um ganho de tempo destes profissionais e das atividades organizacionais, pois atualmente, os profissionais de TI, são profissionais de negócios porém, algumas MPEs ainda os enxergam apenas como profissionais de tecnologias. 34 O GestorSYNC-1 propõe eliminar o tempo gasto na execução das atividades citadas acima, como preenchimento de formulários em planilhas, relatórios, ordem de serviço, controle de produtos, controle de execução dos serviços e pedido de materiais. O GestorSYNC-1 tem como principal objetivo registrar e organizar de forma centralizada as atividades da TI e desta maneira alinhar a TI ao negócio da MPE, utilizando-se de ferramentas tecnológicas e maturidade no processo de Gerenciamento de TI, para o sucesso dos negócios. 2.1.2. ATORES E ENVOLVIDOS NO PROCESSO No processo desse sistema têm-se três atores envolvidos: Gerente de TI (Usuário root), Técnico de TI e o usuário geral. O Gerente de TI será responsável pela integração do GestorSync-1 na MPE, ele possui permissão para inserir, alterar, consultar e excluir usuários, fornecedores, produtos, serviços, ordem de serviço, tutoriais, dicas e boas práticas na página Wiki, ele também poderá inserir notificações, analisar e responder tópicos no fórum. O Técnico de TI será responsável por acompanhar o andamento das ordens de serviço, realizar comentários no fórum, comentar as ordens de serviço, podendo alterar o seu status para: aberto, pendente, fechado ou urgente, ele também poderá realizar comentários em pedidos e realizar consultas na pagina do Wiki. O usuário geral de cada departamento da MPE, por sua vez, poderá solicitar os serviços internos, através de inserções de tópicos no fórum de dúvidas, poderão ainda consultar a página do Wiki e verificar o status da ordem de serviço. 2.1.3. DESCRIÇÃO DO AMBIENTE ATUAL O ambiente atual possui computadores com sistema Ubuntu, navegadores Chrome e Mozilla Firefox, possui cinco pessoas envolvidas, que executam as seguintes atividades: o supervisor de TI atende solicitações de serviços dos demais departamentos da microempresa em que atua e/ou de um departamento de TI de outra empresa, tais como: solicitação de um técnico, serviços para reparo em equipamentos de informática, serviços de implantação de rede, desenvolvimento de sistemas, administração de servidores e administração e backup de banco de dados. 35 O Supervisor de TI cria ordens de serviço, aciona o Técnico de TI e lhe apresenta o serviço a ser executado, agendando a visita. O Técnico averigua o local para realização do serviço, faz estudo com base em melhores práticas, executa o serviço solicitado e adiciona-o no relatório diário, conforme figura 2.1. Relatório de Atividades Diárias Relatório de Atividades em: __/__/____ Equipe: _______________ O.S. Hora Inicial Hora Final Serviço Detalhes Utilizado Observação 08:00 08:30 Interno 15309 08:30 09:00 Suporte 15310 09:00 10:30 Instalação 15311 10:30 11:30 Configuração Configuração 11:30 12:00 Interno 12:00 13:30 Almoço 13:30 14:00 Interno 15313 14:00 15:30 Suporte 15314 15:30 16:30 Instalação 15315 16:30 17:30 Suporte Nova Senha TP-Link Troca Roteador D-Link TP-Link Orientação ________________________ ________________________ Técnico de TI Supervisor de TI Figura 2.1 – Relatório de Atividades Diárias Fonte: Elaborada pelo autor, 2015. Em uma visita que o Técnico necessite de periféricos que não possui em estoque, faz-se o laudo técnico do componente com defeito, comunicando o Supervisor de TI, que aciona o Supervisor Financeiro responsável pelas Compras, enviando-o a solicitação de compra e/ou laudo técnico do equipamento, para que possa ser realizado o pedido de um novo equipamento, conforme figura 2.2. 36 Laudo Técnico Equipamentos com Defeito Modelo MAC Detalhes O.S. TP-Link 00:12:0E:00:00:00 Sem acesso, não restaura as configurações de fábrica. 15321 D-Link 00:12:0E:00:00:00 Queimado 15322 __/__/____ _________________________ Data Relatório Técnico de TI Figura 2.2 – Laudo Técnico Fonte: Elaborada pelo autor, 2015. O Supervisor Financeiro confere as solicitações e laudos, contabiliza os materiais com defeito e os materiais esgotados com base no relatório de pedido anterior, assim, faz a cotação dos materiais, encaminha o pedido para a Gerência e realiza o pedido após sua aprovação. O Fornecedor recebe o pedido, separa os produtos, gera nota fiscal, envia para o Departamento Financeiro e aguarda o pagamento para enviar os produtos. O Supervisor Financeiro realiza o pagamento e ao receber os produtos, confere a nota fiscal, os valores acordados e se todos os equipamentos que estavam no pedido foram enviados. O Supervisor de TI é notificado logo que a microempresa recebe os produtos, assim atualiza seu controle de estoque e aciona o Técnico para execução do serviço pendente, para melhor entendimento do leitor, pode-se observar a solicitação de compra, conforme a figura 1.6. 37 Produtos Compra Fornecedor Endereço Cidade Entregas Prajajá Data 26/10/2014 Rua Mario Covas, 1982 – Centro Fone (43)34650000 CEP 86010-120 Setor Financeiro UF Londrina CNPJ PR XX.XXX.XXX/XXXX-XX Solicitado por Empresa Arlindo SISH Tecnologia - Serviços de Informática Software e Hardware Pedido de Materiais Cod. Produto 25671 25670 Descrição TP-Link 150Mbps Antena OMNI 7DBI Modelo WR720N N° Pedido UN CX Bright0119 CX Qtd 20 20 Preço UM R$ 42,90 R$ 43,90 126 À Prazo À Vista R$ R$ 858,00 729,30 R$ R$ 878,00 658,50 R$ Total 1.387,80 _________________________________ ____________________________ Almoxarife Fornecedor Figura 2.3 – Produtos Compra Fonte: Elaborada pelo autor, 2015. 2.2. VISÃO GERAL DO PRODUTO 2.2.1. Perspectiva do Produto (Análise de Mercado) Observa-se no cenário econômico atual, que as microempresas devem estar preparadas para constantes mudanças que influenciam a TI, portanto deverão buscar por sistemas eficazes e seguros para a gestão de TI. O produto em questão trata-se de uma ferramenta web independente, pois não recebe dados de outros sistemas ou softwares, que tem por objetivo influenciar de forma positiva nos negócios da MPE, automatizando as atividades para diminuição do Downtime, aumento da produtividade, melhora do ambiente organizacional, melhora do desempenho dos funcionários, maior disponibilidade, segurança, obtendo maturidade nos processos, planejamento e transparência. 38 O GestorSYNC-1 sendo uma ferramenta web, será passível de manutenção, no entanto, irá diminuir o deslocamento do técnico até a microempresa, o administrador da ferramenta receberá treinamento para a execução e manutenção do sistema. Tendo em vista sua usabilidade, independência e facilidade em empregar manutenções a distância, existe uma demanda considerável no mercado atual e futuro para os recursos deste sistema, devido aos resultados dos avanços que se obtém com a tecnologia atual. Em nível estratégico e funcional, será notável o aumento na produção e baixa nos índices de Downtime, pois as atividades serão automatizadas. O projeto possuirá uma análise do seu progresso e estará sujeito a correções futuras, será uma ferramenta de baixo custo financeiro, possuirá uma versão gratuita limitada para testes e em projetos futuros uma versão completa com valor fixo. Tudo isso para que, haja uma melhoria nos processos organizacionais e com base no que afirmou Pinheiro (2007, p. 28), o resultado seja a redução da incerteza nos clientes que estão à procura de sinais da qualidade do serviço e tirando conclusões a partir das comunicações que recebem e das evidencias concretas, obtidas dos participantes, dos processos utilizados e das tecnologias empregadas. 2.2.2. Características Necessidades Prioridades Gerenciamento de login dos usuários do sistema Alta Gerenciamento de usuários Alta Gerenciamento das ordens de serviços Alta Gerenciamento do fórum Alta Gerenciamento do Wiki Alta Realização de notificações de serviços a serem executados Alta Figura 2.4 – Necessidades e prioridades Fonte: Elaborado pelo autor, 2015. 39 2.2.3. Premissas e Dependências A MPE deverá possuir ou criar uma rede Virtual Private Network (VPN), caso opte por manter a ferramenta privada. Os computadores da microempresa deverão possuir browser, caso opte por manter a ferramenta privada, deverá possuir ou criar uma conexão a rede VPN da MPE. Recomenda-se que o GestorSYNC-1 seja implantando em servidor web Glassfish, tendo em vista que não foi realizado testes com outro servidor web. O sistema gerenciador de banco de dados deverá ser o MySQL. O usuário que irá administrar o sistema, deverá passar por treinamento para integração do GestorSYNC-1. 2.3. ANÁLISE DE REQUISITOS Nesta seção são mostrados os requisitos funcionais e os requisitos não funcionais do GestorSYNC-1. 2.3.1. Análise de Requisitos Funcionais O GestorSYNC-1 permite três tipos de acesso: Gerente de TI (root): que gerencia os acessos e visualiza todas as informações geradas. Este usuário inclui, altera e exclui usuários, fornecedores, departamentos, funções de usuários, ordem de serviço, serviços, pedidos de compra, produtos, marca, tipo de produto, forma de contato, status, assunto, postagens no Wiki, tópicos e comentários no fórum e notificações. Técnico de TI: que será responsável por fechar e comentar a ordem de serviço, por responder e consultar tópicos no fórum, realizar pedidos de compra, consultar Wiki, gerar notificações e poderá realizar a troca de senha. Usuário geral: que visualizará ordem de serviço, inserirá e visualizará tópicos e realizará comentários no Fórum, consultará o Wiki, notificações, os pedidos de compra e poderá realizar a troca de senha. 40 O GestorSYNC-1 permite ao usuário identificar quais ordens de serviço estão em andamento pelo seu status, como: aberto, urgente, pendente e fechado. Administra as informações e os documentos, permitindo o envio de notificações de novos tópicos no fórum por e-mail. Apresentará telas apropriadas e de fácil entendimento para o usuário final. 2.3.2. Análise de Requisitos Não Funcionais A documentação deverá estar online ou no formato Portable Document Format(PDF). Toda comunicação necessária entre o GestorSYNC-1 e o usuário deve ser expressa no conjunto padrão de caracteres ANSI. O GestorSYNC-1 não deverá revelar informações pessoais dos usuários e/ou da MPE. O GestorSYNC-1 não poderá ser implantado sem um servidor web compatível com o servidor de aplicações Glassfish e deverá possuir o SGBD MySQL. O GestorSYNC-1 será compatível com vários sistemas operacionais, dependendo apenas do navegador web, garantindo eficiência, confiabilidade e portabilidade. As limitações quanto à velocidade de execução dependerão somente do hardware do servidor da microempresa, da estrutura de rede e do hardware do usuário final. O GestorSYNC-1 possuirá níveis de permissão para usuários. 2.4. ANÁLISE E DESIGN O GestorSYNC-1 será implantado em um servidor web que suporte o servidor de aplicações Glassfish, que possua o SGBD MySQL e caso opte por privatizar a ferramenta em uma rede VPN, deverá ser liberado nas configurações do servidor VPN. Para primeiro acesso o usuário deverá inserir na página de login, o usuário “root” e a senha “root”, recomenda-se que a senha de administrador seja alterada em seguida. 41 O Gerente de TI deverá cadastrar os usuários que irão manusear a ferramenta, cadastrando os dados de fornecedores, assunto, departamentos e funções, pedidos, serviços, produtos, marca, tipo de produto, formas de contato, status das ordens de serviço, poderá ainda criar tópicos no fórum e notificações diárias. O Gerente de TI será responsável, além de cadastrar todas as informações contidas no parágrafo anterior, pelas postagens no Wiki. A seguir, serão descritas algumas funcionalidades do sistema. A primeira experiência do usuário com a ferramenta será na página inicial onde ele poderá visualizar e acessar um fórum das dúvidas e experiências dos outros usuários, caso sua dúvida não tenha sido sanada, ele poderá abrir um novo tópico no fórum. Caso o usuário crie um novo tópico no fórum, o departamento de TI é notificado através de um e-mail e poderá indicar para resolução do problema uma página de Wiki, onde conterá um tutorial simples e rápido para ajudá-lo a sanar sua dificuldade. Assim sendo, caso tenha solucionado o problema aquele fórum será encerrado, todo este acompanhamento será feito pelo usuário comum e também pelo departamento de TI. A página de Wiki será mantida pelo administrador do sistema, com o intuito de oferecer aos usuários da ferramenta informações relevantes e úteis para o melhor desempenho dos sistemas operados, além de conteúdos abordando boas práticas, dicas e informações. No caso do usuário não conseguir resolver sua dúvida com a ajuda do fórum e utilizando o Wiki, o Gerente de TI gerará uma ordem de serviço. Com as informações concedidas pelo usuário poderá ter clareza na ação necessária para executar o serviço e solucionar o problema. Caso seja necessário aquisição de materiais, como por exemplo, troca de hardware, será realizado um pedido de compra. Todos os dados serão armazenados no banco de dados MySQL, gerenciados pelo Gerente de TI que deverá fazer o backup dos dados. O GestorSYNC-1 permitirá envio via e-mail de novos tópicos no fórum, afim de deixar ciente o departamento para que tomem providencias para resolver o problema o mais rápido possível. 42 2.5. ANÁLISE E PROJETO DO SISTEMA Será apresentado nesta seção, casos de uso, diagramas de atividades, diagramas de sequência, diagrama de modelo, visão e controle(MVC), projeto de Banco de Dados, modelo de entidade e relacionamento (MER) e projeto físico. 2.5.1. Especificação de Histórias Especificação para uso dos atores em geral: essa especificação trata de funcionalidade em comum a todos os atores. Quadro 2.1 – Eventos A – Atores em geral. Identificação Descrição Evento Resposta A 1 – Efetuar login Atores solicitam Dados dos Página Inicial dos A 2 – Manter fórum acesso ao sistema. usuários. usuários. Atores inserem Exibe tópico e Dados do tópico. tópicos no fórum. envia tópico por e-mail. A 3 – Consultar Atores consultam Todos os tópicos Lista de tópicos tópicos no fórum. do fórum. do fórum. A 4 – Responder Atores respondem Dados do Comentário fórum tópico no fórum. comentário. inserido. fórum Fonte: Elaborado pelo autor, 2015. A 1 – Atores em geral - Efetuar login: este evento representa a funcionalidade responsável por efetuar o login. As figuras 2.5, 2.6 e 2.7 representam os diagramas de atividade, MVC e sequência respectivamente. 43 Figura 2.5 – Diagrama de Atividade Efetuar Login. Fonte: Elaborado pelo autor, 2015. Figura 2.6 – Diagrama MVC Efetuar Login. Fonte: Elaborado pelo autor, 2015. 44 Figura 2.7 – Diagrama de sequência Efetuar Login. Fonte: Elaborado pelo autor, 2015. A 2 – Inserir tópicos no Fórum: este evento representa a funcionalidade inserir tópicos no fórum. As figuras 2.8, 2.9 e 2.10, representam os diagramas de atividade, MVC e sequência desta funcionalidade. 45 Figura 2.8 – Diagrama de Atividade Inserir Tópicos no Fórum. Fonte: Elaborado pelo autor, 2015. Figura 2.9 – Diagrama MVC Inserir Tópicos no Fórum. Fonte: Elaborado pelo autor, 2015. 46 Figura 2.10 – Diagrama de Sequência Inserir Tópicos no Fórum. Fonte: Elaborado pelo autor, 2015. A 3 – Consultar tópicos no Fórum: este evento representa a funcionalidade consultar tópicos no fórum. Os diagramas desta funcionalidade foram suprimidos por serem semelhantes aos da funcionalidade A 2 – Inserir tópicos no fórum. A 4 – Responder Fórum: este evento representa a funcionalidade responder fórum. A resposta será realizada através de um comentário inserido no tópico. Os diagramas desta funcionalidade foram suprimidos por serem semelhantes aos da funcionalidade A 2 - Inserir tópicos no fórum. Especificação para uso do ator gerente de TI (root): as especificações a seguir se referem às funcionalidades do Gerente de TI, responsável por manter o usuário, função, departamento, fornecedor, produto, serviço, ordem de serviço, Wiki, responder fórum, gerar notificações, gerar pedido de compra, manter status, forma de contato, assunto, departamento, função, tipo de produto e marca. 47 Quadro 2.2 – Eventos B – Ator Gerente de TI. Identificação Descrição Evento Resposta B 1 – Manter Responsável Dados do usuário. Cadastro, usuário realiza cadastro mensagem. do usuário. B 2 – Manter Realiza cadastro Dados do Cadastro, fornecedor do fornecedor. fornecedor. mensagem. B 3 – Manter Realiza cadastro Dados do produto. Cadastro, produto do produto. B 4 – Manter Realiza cadastro serviço do serviço. B 5 – Gerar ordem Gera ordem de Dados da ordem Mensagem de de serviço serviço. de serviço. OS gerada. B 6 – Consultar Consulta ordem Todas as ordens Lista de ordens ordem de serviço de serviço. de serviço. de serviço. B 7 – Comentar Comenta ordem Dados do Comentário ordem de serviço de serviço. comentário. inserido. B 8 – Manter Wiki Responsável Dados do Wiki. Mensagem de mensagem. Dados do serviço. Cadastro, mensagem. insere dados no Wiki inserido. Wiki. B 9 – Consultar Responsável Todos os itens do Wiki consulta Wiki. Wiki. B 10 – Gerar Gera notificações Dados da Notificação notificações diárias. notificação. inserida. B 11 – Gerar Gera pedido de Dados da compra. Mensagem pedido de compra compra Lista de Wiki. pedido de compra gerado. B 12 – Manter Mantem Status Dados do Status Mensagem de Status inserido. status B 13 – Manter Mantem a forma Dados da forma Mensagem forma de contato de contato de contato forma de contato inserido. 48 B 14 – Manter Mantem o assunto Dados do assunto assunto Mensagem assunto inserido. B 15 – Manter Mantem o Dados do Mensagem departamento departamento departamento departamento inserido. B 16 – Manter Mantem a função Dados da função função Mensagem de função inserida B 17 – Manter tipo Mantem o Tipo de Dados do tipo de Mensagem de de produto Produto produto tipo de contrato. B 18 – Manter Mantem a marca Dados da marca Mensagem de marca do produto. marca inserida. Fonte: Elaborado pelo autor, 2015. B 1 – Manter Usuário: este evento representa a funcionalidade que mantem o usuário, o Gerente de TI será responsável por realizar o cadastro, alteração e consulta dos usuários. As figuras 2.11, 2.12 e 2.13, representam os diagramas de atividade, MVC e sequência desta funcionalidade. Figura 2.11 – Diagrama de Atividade Manter Usuário. Fonte: Elaborado pelo autor, 2015. 49 Figura 2.12 – Diagrama MVC Manter Usuário. Fonte: Elaborado pelo autor, 2015. Figura 2.13 – Diagrama de Sequência Manter Usuário. Fonte: Elaborado pelo autor, 2015. 50 B 2 – Manter Fornecedor: este evento representa a funcionalidade responsável por manter o fornecedor, inserir, alterar, consultar e/ou excluir fornecedores. As figuras 2.14, 2.15 e 2.16, representam os diagramas de atividade, MVC e sequência desta funcionalidade. Figura 2.14 – Diagrama de Atividade Manter Fornecedor. Fonte: Elaborado pelo autor, 2015. Figura 2.15 – Diagrama MVC Manter Fornecedor. Fonte: Elaborado pelo autor, 2015. 51 Figura 2.16 – Diagrama de sequência Manter Fornecedor. Fonte: Elaborado pelo autor, 2015. B 3 – Manter Produto: este evento representa a funcionalidade responsável por manter o produto, inserir, alterar, buscar e/ou excluir produtos, relacionados ou não a um fornecedor. As figuras 2.17, 2.18 e 2.19, representam os diagramas de atividade, MVC e sequência desta funcionalidade. 52 Figura 2.17 – Diagrama de Atividade Manter Produto. Fonte: Elaborado pelo autor, 2015. Figura 2.18 – Diagrama MVC Manter Produto. Fonte: Elaborado pelo autor, 2015. 53 Figura 2.19 – Diagrama de Sequência Manter Produto. Fonte: Elaborado pelo autor, 2015. B 4 – Manter Serviço: este evento representa a funcionalidade responsável por manter o serviço, inserir, alterar, consultar e/ou excluir serviços. As figuras 2.20, 2.21 e 2.22, representam os diagramas de atividade, MVC e sequência desta funcionalidade. 54 Figura 2.20 – Diagrama de Atividade Manter Serviço. Fonte: Elaborado pelo autor, 2015. Figura 2.21 – Diagrama de MVC Manter Serviço. Fonte: Elaborado pelo autor, 2015. 55 Figura 2.22 – Diagrama de Sequência Manter Serviço. Fonte: Elaborado pelo autor, 2015. B 5 – Gerar Ordem de Serviço: este evento representa a funcionalidade por gerar a ordem de serviço. O administrador insere os dados da ordem de serviço, o sistema insere no banco de dados e gera um número de identificação para consulta desta ordem de serviço. As figuras 2.23, 2.24 e 2.25 representam os diagramas de atividade, MVC e sequência desta funcionalidade. 56 Figura 2.23 – Diagrama de Atividade Gerar Ordem de Serviço. Fonte: Elaborado pelo autor, 2015. Figura 2.24 – Diagrama MVC Gerar Ordem de Serviço. Fonte: Elaborado pelo autor, 2015. 57 Figura 2.25 – Diagrama de Sequência Gerar Ordem de Serviço. Fonte: Elaborado pelo autor, 2015. B 6 – Consultar Ordem de Serviço: este evento representa a funcionalidade consultar ordem de serviço pelo número de identificação gerado. Deste modo haverá o controle da ordem de serviço que é gerada para cada serviço que será realizado ao departamento solicitante. Os diagramas desta funcionalidade foram suprimidos por serem semelhantes aos da funcionalidade B 5 – Gerar ordem de serviço. B 7 – Comentar Ordem de Serviço: este evento representa a funcionalidade comentar ordem de serviço pelo número de identificação gerado. Deste modo haverá o registro das atividades realizadas até o fechamento da ordem de serviço pelo técnico de TI. Os diagramas desta funcionalidade foram suprimidos por serem semelhantes aos da funcionalidade B 5 – Gerar ordem de serviço. 58 B 8 – Manter Wiki: este evento representa a funcionalidade manter Wiki. As figuras 2.26, 2.27 e 2.28 representam os diagramas de atividade, MVC e sequência desta funcionalidade. Figura 2.26 – Diagrama de Atividade Manter Wiki. Fonte: Elaborado pelo autor, 2015. 59 Figura 2.27 – Diagrama MVC Manter Wiki. Fonte: Elaborado pelo autor, 2015. Figura 2.28 – Diagrama de Sequência Manter Wiki. Fonte: Elaborado pelo autor, 2015. 60 B 9 – Consultar Wiki: este evento representa a funcionalidade consultar Wiki. A funcionalidade realizará a consulta de cada Wiki inserido. Os diagramas desta funcionalidade foram suprimidos por serem semelhantes aos da funcionalidade B 8 – Manter Wiki. B 10 – Gerar Notificações: este evento representa a funcionalidade gerar notificações. A funcionalidade será responsável por manter os usuários cientes de cada serviço e/ou atividade que será executada na data apresentada pela notificação. As figuras 2.29, 2.30 e 2.31, representam os diagramas de atividade, MVC e sequência desta funcionalidade. Figura 2.29 – Diagrama de Atividade Gerar Notificações. Fonte: Elaborado pelo autor, 2015. 61 Figura 2.30 – Diagrama MVC Gerar Notificações. Fonte: Elaborado pelo autor, 2015. Figura 2.31 – Diagrama de Sequência Gerar Notificações. Fonte: Elaborado pelo autor, 2015. 62 B 11 – Gerar Pedido de Compra: este evento representa a funcionalidade gerar pedido de compra. A funcionalidade será responsável por gerar pedidos de materiais e/ou produtos e enviar para o departamento financeiro, que realizará a cotação e compra dos itens do pedido. As figuras 2.32, 2.33 e 2.34, representam os diagramas de atividade, MVC e sequência desta funcionalidade. Figura 2.32 – Diagrama de Atividade Gerar Pedido de Compra. Fonte: Elaborado pelo autor, 2015. 63 Figura 2.33 – Diagrama MVC Gerar Pedido de Compra. Fonte: Elaborado pelo autor, 2015. Figura 2.34 – Diagrama de Sequência Gerar Pedido de Compra. Fonte: Elaborado pelo autor, 2015. 64 Os eventos que se referem às funcionalidades citadas abaixo foram suprimidos por serem simples, com possibilidade de não haver alterações nos dados relacionados a esta funcionalidade. Funcionalidades: B 12 - Manter Status; B 13 - Manter Forma do Contato; B 14 - Manter Assunto; B 15 - Manter Departamento; B 16 - Manter Função; B 17 - Manter Tipo de Produto; B 18 - Manter Marca; Especificação para uso do ator Técnico de TI: os eventos a seguir referem-se às funcionalidades do Técnico de TI, responsável pelo comentário inserido e o fechamento da ordem de serviço, consultar o Wiki e consultar e/ou responder tópicos no fórum. Quadro 2.3 – Eventos C – Ator Técnico de TI. Identificação Descrição Evento Resposta C 1 – Comentar O Técnico de TI Dados do Comentário ordem de serviço realiza comentário comentário. inserido. na ordem de serviço. C 2 – Fechar ordem de serviço Técnico de TI responsável por Dados do fechamento. Ordem de serviço concluída. fechar a OS C 3 – Consultar Wiki Técnico de TI realiza consulta no Wiki. Fonte: Elaborado pelo autor, 2015. Lista todos os itens do Wiki Lista de Wiki. 65 C 1 – Comentar Ordem de Serviço: este evento representa a funcionalidade comentar ordem de serviço pelo número de identificação gerado. Deste modo haverá o registro das atividades realizadas até o fechamento da ordem de serviço pelo técnico de TI. Os diagramas desta funcionalidade foram suprimidos por serem semelhantes aos da funcionalidade B 5 – Gerar Ordem de Serviço. C 2 – Fechar Ordem de Serviço: este evento representa a funcionalidade fechar ordem de serviço. A funcionalidade realizará o fechamento da ordem de serviço, devido ao encerramento das atividades por conclusão e/ou por cancelamento da execução do serviço. As figuras 2.35, 2.36 e 2.37, representam os diagramas de atividade, MVC e sequência desta funcionalidade. Figura 2.35 – Diagrama de Atividade Fechar Ordem de Serviço. Fonte: Elaborado pelo autor, 2015. 66 Figura 2.36 – Diagrama MVC Fechar Ordem de Serviço. Fonte: Elaborado pelo autor, 2015. Figura 2.37 – Diagrama de Sequência Fechar Ordem de Serviço. Fonte: Elaborado pelo autor, 2015. 67 C 3 – Consultar Wiki: este caso de uso representa a funcionalidade consultar Wiki. A funcionalidade realizará a consulta de cada Wiki inserido. Os diagramas desta funcionalidade foram suprimidos por serem semelhantes aos da funcionalidade B 9 – Consultar Wiki. 2.5.2. Diagrama de Caso de Uso Figura 2.38 – Diagrama de Caso de Uso Completo Fonte: Elaborada pelo autor, 2014. 68 2.5.3. Diagrama de Classes Figura 2.39 - Diagrama de Classes. Fonte: Elaborada pelo autor, 2015. 69 2.5.4. 2.5.4.1. Projeto de Banco de Dados Modelo de Entidade e Relacionamento (MER) Figura 2.40 - Diagrama de Dados (MER). Fonte: Elaborada pelo autor, 2015. 70 2.6. CONSIDERAÇÕES SOBRE O CAPÍTULO Neste capítulo foi apresentada a análise e projeto do sistema, na figura 2.39 que se refere ao Diagrama de classe e na figura 2.40, referente ao MER, observa-se a classe ou tabela Nota Fiscal, Item da Nota, Item da Ordem de Serviço e comentário do pedido, que estão desativados mas permanecerão no projeto para trabalhos futuros. 71 3. IMPLEMENTAÇÃO Neste capítulo será descrito como as tecnologias apresentadas no primeiro capítulo foram empregadas no desenvolvimento da ferramenta GestorSync-1, ilustrando as principais telas e funcionalidades. 3.1. IMPLEMENTAÇÃO DO BANCO DE DADOS A implementação do banco de dados foi feita após a análise do sistema. O SGBD utilizado, conforme descrito no primeiro capítulo foi o MySQL 5.6. Figura 3.1 – MySQL Workbench 6.1 e estrutura da tabela ordemservico. Fonte: Elaborada pelo autor, 2015. As criações de todas as tabelas foram feitas utilizando a ferramenta MySQL Workbench 6.1, conforme Figura 3.1. 3.2. IMPLEMENTAÇÃO DA FERRAMENTA WEB Conforme descrito no primeiro capítulo, a ferramenta foi desenvolvida por meio de padrão MVC utilizando JSP, Servlets e o framework Bootstrap. 72 Para acessar a página inicial, deve-se inserir usuário e senha, ambos cadastrados no sistema pelo usuário root, determinado Gerente de TI, é possível observar a tela de login na Figura 3.2. Figura 3.2 – Tela de Login. Fonte: Elaborada pelo autor, 2015. Na figura 3.3, observa-se no menu sidebar, a opção cadastrar, todas as funcionalidades estão liberadas apenas para o usuário root, determinado Gerente de TI. Conforme descrito no capítulo anterior, as funcionalidades de responsabilidade do Gerente de TI, são: cadastro do usuário, fornecedor, departamento, função, ordem de serviço, pedido de compra, serviços, produtos, tipo de produto, marca, forma de contato, status, assunto, Wiki, fórum e notificações. As ilustrações destas funcionalidades foram suprimidas por serem semelhantes, possuindo dados pré-definidos, que podem ou não sofrer alterações futuras. 73 Figura 3.3 – Página Inicial Usuário Gerente TI. Fonte: Elaborada pelo autor, 2015. Na figura 3.4, observa-se a tela de cadastro do usuário, mantida pelo Gerente de TI, responsável por esta funcionalidade. Figura 3.4 – Cadastro de Usuário. Fonte: Elaborada pelo autor, 2015. 74 Na figura 3.5, observa-se o cadastro do fornecedor. Figura 3.5 - Cadastro de Fornecedores. Fonte: Elaborada pelo autor, 2015. Na figura 3.6, observa-se a tela de inserção do Wiki, para melhor visualização e leitura do usuário, todo o conteúdo pode ser formatado, lembrando que esta funcionalidade está liberada apenas para o Gerente de TI. Figura 3.6 – Wiki. Fonte: Elaborada pelo autor, 2015. 75 Na figura 3.7, observa-se a tela de inserção do tópico no fórum, com os dados do requisitante, Gerente de TI, esta funcionalidade está liberada para todos os usuários, ao inserir um novo tópico, automaticamente será enviado um e-mail com os dados do tópico e do usuário que inseriu para o departamento de TI, visando que seja respondido na sequência. Figura 3.7 – Fórum. Fonte: Elaborada pelo autor, 2015. Na figura 3.8, observa-se a tela para gerar a ordem de serviço, que conforme descrito acima, esta funcionalidade é de responsabilidade do Gerente de TI. 76 Figura 3.8 – Ordem de Serviço. Fonte: Elaborada pelo autor, 2015. As ilustrações a seguir, referem-se à algumas das funcionalidades de responsabilidade do usuário Técnico de TI. Pode-se observar na figura 3.9, no menu sidebar, que o usuário possui acesso apenas às funcionalidades, perfil, orçamento que contém os submenus: ordem de serviço e pedido, Help Desk que contém os submenus: Wiki e fórum, notificações e as opções de Home e Logout. Figura 3.9 – Tela Principal Técnico de TI. Fonte: Elaborada pelo autor, 2015. 77 Na figura 3.10, observa-se a ordem de serviço gerada, podendo ser comentada e fechada pelo Técnico de TI. Figura 3.10 – Fechamento e Comentário da Ordem de Serviço. Fonte: Elaborada pelo autor, 2015. Na figura 3.11, observa-se tutorial que foi inserido pelo Gerente de TI e está sendo visualizado por um usuário comum. Figura 3.11 – Wiki – Wiki cadastrado. Fonte: Elaborada pelo autor, 2015. 78 Na figura 3.12, pode-se observar o perfil do usuário, disponível e permitido a todos os usuários a alteração dos dados. Figura 3.12 – Perfil. Fonte: Elaborada pelo autor, 2015. Todas as classes foram implementadas conforme exemplo da Figura 3.13. Figura 3.13 – Classe OrdemServico.java. Fonte: Elaborada pelo autor, 2015. 79 Na figura 3.14, ilustra-se a classe OrdemServicoDAO.java, com base neste exemplo foram implementadas todas as classes DAO do projeto. Figura 3.14 – Classe OrdemServicoDAO.java. Fonte: Elaborada pelo autor, 2015. Na figura 3.15, ilustra-se a classe ControleOrdemServico.java, com base neste exemplo foram implementadas todas as classes Controle do projeto. Figura 3.15 – Classe ControleOrdemServico.java. Fonte: Elaborada pelo autor, 2015. 80 3.3. CONSIDERAÇÕES SOBRE O CAPÍTULO Neste capítulo foram tratadas apenas algumas funcionalidades da ferramenta e ressalta-se que as funcionalidades descritas no segundo capítulo foram todas implementadas. 81 CONCLUSÃO O desenvolvimento da ferramenta WEB para gestão de TI em microempresa, teve como principal objetivo diminuir o tempo perdido em ocorrências que o próprio usuário poderia resolver, devido à falta de informação e proatividade do departamento de TI. Durante a pesquisa para o desenvolvimento da ferramenta apresentada, concluiu-se que existe dentro das organizações a necessidade de se ter um departamento de TI proativo, para haver disponibilidade, comunicação, interação eficaz entre usuário e sistema, agilidade na resolução de incidentes, redução de custos, além da necessidade deste departamento estar alinhado aos negócios da empresa. O levantamento de requisitos, necessidades e problemas do ambiente de TI, tornou-se mais fácil devido a experiência profissional. Após a realização do escopo do projeto, a discussão dos processos com a orientadora, deu-se início ao desenvolvimento das principais funcionalidades da ferramenta web. O maior desafio no desenvolvimento deste trabalho foi a implementação do código, especificamente nas regras de negócio, acordadas nas servlets. Conclui-se que o objetivo de promover a proatividade nos processos foram alcançados, como por exemplo, as páginas Wiki e fórum, que permitem uma melhor comunicação entre os usuários e o departamento de TI solucionando dúvidas, além do registro das ocorrências, que podem ser referências como uma solução para ocorrências futuras. Além disso, a utilização da ferramenta GestorSync-1 proporcionará a padronização dos processos já descritos dentro da organização, bem como o respaldo ao departamento de TI das ações realizadas, pois toda a comunicação ficará registrada. O projeto contribuiu para o aperfeiçoamento das práticas acadêmicas, poderá ser consultado para o desenvolvimento de projetos futuros e podendo ser utilizado como modelo para desenvolvimento de sistemas para internet. Pensando no aprimoramento da ferramenta, pretende-se futuramente incluir prioridades para categorização das ordens de serviços, implementar a 82 funcionalidade para inserção de dados da nota fiscal, como: dados do fornecedor, produtos adquiridos, quantidade e valor, visando o controle de estoque, relatórios e gráficos dinâmicos, aprimorar a lógica de programação afim de tornar este protótipo consistente e seguro, para que em versões futuras possa ser comercializado. 83 REFERÊNCIAS BIBLIOGRÁFICAS ALMEIDA, A. Entenda os MVCs e os frameworks Action e Component Based. 03 jul. 2012. Disponível em: <http://blog.caelum.com.br/entenda-os-mvcs-e-osframeworks-action-e-component-based/> Acesso em: 05 nov. 2015. BOOTSTRAP. SB Admin 2. Start Bootstrap, 2015. Disponível em: <http://startbootstrap.com/template-overviews/sb-admin-2/> Acesso em: 07 nov. 2015. CANALTECH. Gartner revela o que o futuro reserva para empresas e usuários de TI. 21 out. 2014. Disponível em: <http://corporate.canaltech.com.br/noticia/mercado/Gartner-revela-o-que-o-futuroreserva-para-empresas-e-usuarios-de-TI/> Acesso em: 23 out. 2014. DATATABLES. DataTables Table plug-in for jQuery. SpryMedia Ltd, 2015. Disponível em: <https://www.datatables.net/> Acesso em: 07 nov. 2015. DIMITRIOS, T. Using MySQL’s Show Command: 10 Practical Examples. 27 dez. 2012. Disponível em: <https://tournasdimitrios1.wordpress.com/category/mysql/> Acesso em: 13 dez. 2015. ELMASRI, R.; NAVATHE, S. B. Sistemas de Banco de Dados. 6. ed. São Paulo: Pearson Addison Wesley, 2011. GRUPO PET COMPUTAÇÃO. O que é Java? 2011 p. 03. Apostila de Java. Universidade Federal do Rio Grande do Sul. GETBOOTSTRAP. Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web. Twitter, 2015. Disponível em: <http://getbootstrap.com/> Acesso em: 10 dez. 2015. GONZAGA, F. S.; BIRCKAN, G. Curso de PHP e MySQL. 2000, p.4. Apostila do Curso de PHP e MySQL. Florianópolis. GUTIERREZ, R. Perspectiva 2014: TI nas empresas deve continuar em forte ritmo de crescimento. IG São Paulo, São Paulo, 01 jan. 2014. Disponível em: <http://tecnologia.ig.com.br/2014-01-01/perspectiva-2014-ti-nas-empresas-devecontinuar-em-forte-ritmo-de-crescimento.html> Acesso em: 25 set. 2014. LOPES, C. Entendendo Servlet, 09 jun. 2008. Disponível em: < https://camilolopes.wordpress.com/2008/06/09/entendendo-servlet/> Acesso em: 20 out. 2015. MAGALHÃES, I. L.; PINHEIRO, B. W. Gerenciamento de serviços de TI na prática. São Paulo: Novatec Editora, 2007. p.28. NASCIMENTO, T. Desenvolvendo com Bootstrap 3: um framework front-end 84 que vale a pena. 31 out. 2013. Disponível em: <http://thiagonasc.com/desenvolvimento-web/desenvolvendo-com-bootstrap-3-umframework-front-end-que-vale-a-pena> Acesso em: 05 nov. 2015. MEDEIROS, H. Introdução ao Padrão MVC. 10 out. 2013. Disponível em: <http://www.devmedia.com.br/introducao-ao-padrao-mvc/29308> Acesso em: 07 nov. 2015. MEIRA, F. Sistemas de Bancos de Dados. 30 set. 1997. Disponível em: <https://chasqueweb.ufrgs.br/~paul.fisher/apostilas/basdad/unimar/index.htm> Acesso em: 05 nov. 2015. IMAMURA, D. Manual Completo do MySQL Workbench. 18 jun. 2011. Disponível em: <http://www.danielimamura.com.br/index.php/manual-completo-do-mysqlworkbench/> Acesso em: 05 nov. 2015. JAVATPOINT. Java Mail API Tutorial. 2014. Disponível <http://www.javatpoint.com/java-mail-api-tutorial> Acesso em: 05 nov. 2015. em: ORACLE. Bem-vindo ao NetBeans e ao site www.netbeans.org, Oracle Corporation and/or its affiliates, 2015. Disponível em: < https://netbeans.org/index_pt_PT.html> Acesso em: 20 out. 2015. ORACLE. JavaMail API FAQ. 2015. Disponível em: < http://www.oracle.com/technetwork/java/javamail/faq-135477.html#1> Acesso em: 15 set. 2015. ORACLE. MySQL – O Banco de Dados de Cógido Aberto Mais Popular do Mundo, 2015. Disponível em: <http://www.oracle.com/br/products/mysql/overview/index.html> Acesso em: 07 set. 2015. ORACLE. NetBeans IDE, 2015. Disponível em: <http://www.oracle.com/technetwork/developer-tools/netbeans/overview/index.html> Acesso em: 07 set. 2015. PELEGRI-LLOPART, E.; YUTAKA, Y.; MOUSSINE-POUCHKINE, A. The GlassFish Community Delivering a Java EE Application Server, E-book, 2007. Disponível em: < https://glassfish.java.net/faq/v2/GlassFishOverview.pdf> Acesso em: 05 nov. 2015. PISA, P. O que é e como usar o MySQL? 25 abr. 2012. Disponível em: <http://www.techtudo.com.br/artigos/noticia/2012/04/o-que-e-e-como-usar-omysql.html> Acesso em: 05 nov. 2015. RAFAEL, G. C. A realidade de ambientes de TI em micro e pequenas empresas (MPE). 27 fev. 2014. Disponível em: <http://www.profissionaisti.com.br/2014/02/arealidade-de-ambientes-de-ti-em-micro-e-pequenas-empresas-mpe/> Acesso em: 09 nov. 2015. 85 SILVA, M. S. Introdução à jQuery. 27 out. 2008. Disponível em: <http://www.linhadecodigo.com.br/artigo/2068/introducao-a-jquery.aspx> Acesso em: 07 nov. 2015. TAKAI, O. K.; ITALIANO, I. C.; FERREIRA, J. E. Introdução a Banco de Dados. 2005, p.6, p.8. Apostila de apoio aos alunos da disciplina de Introdução ao Banco de Dados. Departamento de Ciência da Computação do Instituto de Matemática e Estatística da USP. TUTORIALIZED. Fundamentals of an MVC Framework. 04 nov. 2014. Disponível em: <http://www.tutorialized.com/tutorial/Fundamentals-of-an-MVCFramework/81946> Acesso em: 21 nov. 2015 UTTERBACK, B. O que é o Bootstrap?, PrestaShop, 06 mar. 2014. Disponível em: <https://www.prestashop.com/blog/pt/2014/03/06/o-que-e-o-bootstrap-verdades-emitos-parte-1-de-2/> Acesso em: 20 out. 2015.