FACULDADE DE BALSAS CURSO DE SISTEMAS DE INFORMAÇÃO SISJOL - SISTEMA DE CONTROLE ACADÊMICO PARA ESCOLA JOVEM ON LINE. José Euclides da Silva Lopes

Tamanho: px
Começar a partir da página:

Download "FACULDADE DE BALSAS CURSO DE SISTEMAS DE INFORMAÇÃO SISJOL - SISTEMA DE CONTROLE ACADÊMICO PARA ESCOLA JOVEM ON LINE. José Euclides da Silva Lopes"

Transcrição

1 1 FACULDADE DE BALSAS CURSO DE SISTEMAS DE INFORMAÇÃO SISJOL - SISTEMA DE CONTROLE ACADÊMICO PARA ESCOLA JOVEM ON LINE José Euclides da Silva Lopes Balsas (MA) 2013

2 2 FACULDADE DE BALSAS CURSO DE SISTEMAS DE INFORMAÇÃO SISJOL - SISTEMA DE CONTROLE ACADÊMICO PARA ESCOLA JOVEM ON LINE por José Euclides da Silva Lopes Trabalho de Conclusão de Curso apresentado como exigência parcial para obtenção do título de Bacharel em Sistemas de Informação à Faculdade de Balsas, sob a orientação do Professor Jefferson Fontinelle da Silva. Balsas (MA) 2013

3 3 DEDICATÓRIA A Deus por ter me dado a oportunidade de viver. A todos os meus familiares pelo incentivo e carinho constante. Em especial a minha mãe, pois sem ela nada seria possível, a minha amada esposa e meu querido filho que tanto me apoiaram nessa etapa da minha vida.

4 4 AGRADECIMENTOS Agradeço a todos que direta ou indiretamente, contribuíram para a elaboração deste trabalho. Em especial ao professor Jefferson Fontinele da Silva, pelo apoio e paciência. A meus companheiros de curso por ter me ajudado no decorrer desta etapa.

5 5 RESUMO O desenvolvimento de sistemas computacionais pra desktop são o foco deste projeto. Para tanto serão estudadas técnicas de análise e modelagem de sistemas, softwares para gerenciamento de informação, softwares para geração de relatórios e softwares para controle de versão. A proposta é desenvolver um sistema para cadastro de alunos e controle de frequências, bem como cadastro de usuários de uma instituição de ensino de informática denominada Jovem On Line. O sistema será implementado no ambiente de programação NetBeans. Estre as várias linguagens de programação que ele disponibiliza optou-se por JAVA devido às vantagens que a mesma disponibiliza tais como: utiliza o paradigma de programação orientado a objetos permitindo assim que o desenvolvedor crie um programa a partir de pequenas partes e possibilita a criação de programas com recursos gráficos semelhantes aos utilizados em interface Windows. Esperasse que com o uso do SISJOL haja uma redução de custos. Palavras-chave: Desktop. JAVA. Orientação a Objetos.

6 6 LISTA DE FIGURAS Figura Prototipação evolucionária Figura Prototipação descartável Figura : Tabela de departamentos Figura : Tabela de funcionários Figura 4.1.1: Arquitetura do SISJOL Figura 4.1.2: Estrutura de pastas Figura 4.2.1: Diagrama de caso de uso do cadastro de aluno Figrua 4.2.2: Diagrama de atividades de cadastro do aluno Figura 4.3.1: Diagrama ER do banco Figura 4.4.1: Tela principal do SISJOL Figura 4.5.1: Tela para matricula de alunos Figura 4.6.1: Tela de cadastro de aluno Figura 4.8.1: Uso da ferramenta Git

7 7 LISTA DE SIGLAS API - application programming interfaces Birt - Business Intelligence and Reporting Tools CPF Cadastro de Pessoa Física DBMS - database management system IDE - Interface Development Environment JUDE - Java and UML Developer Environment SGBD s - Sistemas de Gerenciamento de Banco de Dados SQL - Structured Query Language TI Tecnologia da Informação UML - Unified Modeling Language XML - extensible Markup Language... 26

8 8 LISTA DE APÊNDICES APENDICE A Especificação de Caso de Uso/ Requisitos ADENDICE B Telas do SISJOL APENDICE C Relatório de Cadastro de Alunos APENDICE D Relatório de alunos aptos a receber certificado... 79

9 9 SUMÁRIO 1. INTRODUÇÃO Delimitação do tema Problemática Problemas Específicos Objetivos Objetivo Geral Objetivos Específicos Justificativa Metodologia REFERENCIAL TEÓRICO Análise de Software Prototipação Desenvolvimento de Software Java para Desktop Ferramentas de Desenvolvimento Ferramentas de Controle de Versão Teste de Software Ferramentas para Geração de Relatórios Levantamento de Requisitos Banco de Dados SGBD MySQL MySQL WorkBench Jude Community ESTUDO DE CASO Requisitos mínimos que o sistema deve atender... 33

10 10 4. IMPLEMENTAÇÃO DO SISJOL Sistema Proposto Levantamento de Requisitos Modelo do Banco de Dados Projeto de Telas Padronização do Layout Implementação Lógica de Negócios Relatórios Controle de Versão Teste Implantação Redução de custos CONCLUSÃO Trabalhos Futuros REFERÊNCIAS BIBLIOGRÁFICAS APÊNDICE... 51

11 11 1. INTRODUÇÃO Segundo Moran (2003) a cada dia que passa as escolas estão incluindo novas tecnologias em seu ambiente e utilizando-as nas atividades pedagógicas e administrativas, visando garantir o acesso imediato à informação. Ainda em conformidade com o autor acima citado é comum o uso de sistemas informatizados capazes de integrar todas as informações da escola em bancos de dados, tornado possível não só registrar como também atualizar instantaneamente toda a documentação referente aos processos escolares e a vida acadêmica do aluno. Para Santos (2002) a instituições escolares estão sofrendo mudanças a cada dia para melhor formar cidadãos oferecendo a possibilidade de aprender competências e habilidades necessárias que facilitam a inserção social. Com isso, a cada vez mais é exigido das instituições de ensino uma gestão escolar eficiente, a qual pode ser facilitada pela utilização de recursos inteligentes oferecidos pela tecnologia de informação e sistemas de informação. (STAIR, 2002). A tecnologia da informação tem facilitado à tomada de decisões nas instituições de ensino. Pois para que haja um bom planejamento das atividades escolares e a instituição consiga desempenhar bem seu papel é indispensável no cenário atual o uso da tecnologia da informação. A TI é utilizada para que os processos escolares sejam dotados de confiabilidade, eficiência e eficácia, melhorando assim o desempenho das atividades em uma instituição de ensino e por consequência apoia os processos educacionais e a gestão escolar. (FRANCO et al., 2009). A gestão escolar tem a ver com todas as atividades organizacionais e documentais necessárias para garantir que todos os cursos oferecidos cumpram com seus requisitos, com o mínimo de erro o máximo de eficiência e participação dos alunos e professores. Com a quantidade enorme de informação surgem problemas para os gestores escolares na maioria das vezes relacionados com a vida acadêmica do aluno. Por isso os gestores estão cada vez mais recorrendo a sistemas informatizados que auxiliam de maneira rápida e eficiente a inserção e localização de dados escolares da vida acadêmica do aluno. (STAR, 2002).

12 12 A tecnologia veio para mecanizar os processos e a informação tem o propósito básico de habilitar a instituição escolar a alcançar seus objetivos pelo uso eficiente dos recursos disponíveis através da tecnologia, portanto, tecnologia e informação trabalhando juntas podem dar condições favoráveis ao crescimento e auxiliar no futuro de instituições escolares. Segundo Josuttis (2008) a tecnologia de informação aliada a uma melhor prática em desenvolvimento de software possibilita a construção e aplicações em prazos bastante curtos, capazes de atender desde pequenos a grandes volumes de utilização com precisão e eficiência. Para que um software seja criado bem estruturado e possua boa qualidade é necessário que o processo de desenvolvimento seja feito de tal forma que possibilite uma boa manutenção e um bom reaproveitamento do mesmo. (SOMMERVILLE, 2003). Existem dois aspectos entre muitos que se deve dar uma atenção especial ao se desenvolver um software para uma empresa ou instituição são eles: heterogeneidade e mudança. A heterogeneidade lida com o fato das intuições possuírem vários sistemas e quase sempre esses sistemas são dotados de arquiteturas diferentes. O mundo por sua vez esta em constante mudança, obrigando a TI a se modificar para dar suporte a essas mudanças. (HURWITZ et al., 2009). Com o intuito de enfrentar desafios tais como, heterogeneidade e mudança, optou-se por Java como linguagem para desenvolvimento tendo em vista que segundo Deitel (2005) essa linguagem lida muito bem com esses dois aspectos. Dois outros fatores tiveram peso crucial na escolha da linguagem, são eles: facilidade de desenvolvimento e habilidade previa do desenvolvedor com a linguagem. Baseado nisso a proposta deste trabalho é desenvolver um software utilizando a linguagem de programação acima citada para um ambiente de gestão acadêmica de uma instituição de ensino de informática que faça o controle de todos os dados da vida acadêmica do aluno.

13 Delimitação do tema Este trabalho tem como objetivo apresentar o desenvolvimento de um sistema em Java SE, o sistema em questão será proposto para uma instituição de ensino de informática e fará entre outros o controle de frequências dos alunos. A instituição escolhida foi à escola de informática Jovem On Line Problemática Todo o processo escolar é realizado de forma manual o que gera uma baixa produtividade e falta de informações quantitativas confiáveis Problemas Específicos Há uma grande dificuldade em controlar os processos escolares tais como, lançamento de notas, de frequências entre outros, o que acaba gerando desorganização, devido os seus processos escolares serem realizado exclusivamente de forma manual Objetivos Objetivo Geral Este trabalho tem como objetivo o desenvolvimento do sistema de controle acadêmico para a escola de informática Jovem On Line localizada à Rua José Leão s\n centro Objetivos Específicos Fazer o levantamento de requisitos do sistema; Desenvolver o projeto do sistema; Realizar a prototipação; Desenvolver o banco de dados;

14 14 Realizar a implementação; Implantação do sistema; Realizar testes Justificativa A informação é um fator crucial na gestão acadêmica por ser um recurso decisivo e indispensável tanto no contexto interno como no relacionamento com o exterior, pois atua como método facilitador na busca e no registro das informações dos processos de tomada de decisão no ambiente acadêmico. (MORAN, 2003). Quanto mais confiável, segura e oportuna for essa informação, maior será a agilidade nos processos do ambiente escolar e melhor será a resposta diante da concorrência. Para alcançar o objetivo proposto depende, em sua maioria, reconhecer a importância da informação e do aproveitamento das oportunidades oferecidas pela TI para orientarem os gestores diante dos problemas de eficiência e eficácia dentro da gestão escolar. O desenvolvimento deste sistema fará com que os processos tornem-se mais rápidos e práticos de ser realizados tendo em vista que atualmente a escola Jovem On Line não possui um sistema de informação gerencial que facilite a administração escolar no que diz respeito à execução, acompanhamento e controle de suas atividades, já que todos os seus processos acadêmicos de um modo geral são realizados de forma manual que acaba gerando desorganização, excesso de papel, e extravio de documentos, o que acarreta em uma baixa produtividade e falta de informações. O uso da linguagem de programação Java para o desenvolvimento do sistema de controle acadêmico (SISJOL) se dá principalmente pelas vantagens que esta linguagem oferece, de acordo com (DEITEL, 2005) aqui estão algumas delas: Linguagem multiplataforma: Uma das grandes vantagens da utilização de Java é dá-se pelo fato de que a mesma é uma linguagem facilmente adaptável para uma infinidade de sistemas em qualquer plataforma, além de

15 15 ser uma linguagem é também uma plataforma de desenvolvimento, por esta razão é possível desenvolver aplicações para desktop, web, celular, cartão; Orientada a Objetos: A linguagem Java segue o paradigma de programação Orientado a Objetos, o que a torna linguagem extremamente poderosa Metodologia Através do levantamento de informações nos arquivos da escola de informática Jovem On Line pôde-se dar inicio a metodologia que seria usada para desenvolvimento deste trabalho. A metodologia é composta pelas seguintes etapas: Primeira: foi feita uma análise para saber quem seriam os possíveis usuários do sistema e os mesmos foram também identificados; Segunda: foram colhidos dados em geral para a elaboração do documento de requisitos do sistema; Terceira: revisão bibliográfica sobre a linguagem de programação Java; Quarta: definição e desenvolvimento do banco de dados; Quinta: implementação do sistema; O restante deste trabalho esta organizado em 4 capítulos: Capítulo 2 Referencial Teórico: apresenta os principais conceitos e tecnologias utilizadas para o desenvolvimento deste trabalho. Capítulo 3 Estudo de Caso: define o estudo de caso e mostra a proposta de solução. Capítulo 4 Implementação do SISJOL: mostra os detalhes da implementação do SISJOL. Capítulo 5 Conclusão: apresenta as considerações finais.

16 16 2. REFERENCIAL TEÓRICO Neste capítulo será abordada toda a pesquisa bibliográfica utilizada no trabalho. Os temas que são apresentados nesse capítulo englobam os assuntos relacionados ao desenvolvimento de um software utilizando Java. Também são apresentadas as ferramentas e tecnologias utilizadas durante o desenvolvimento Análise de Software Atualmente existem diversos tipos de softwares cada um com suas propriedades e particularidades, dentre eles estão os que são destinados à educação e ao controle escolar. Porém o desenvolvimento de um sistema mesmo de pequeno porte requer um alto nível de complexidade, pois muitas são as etapas que precisam ser seguidas, tais como: especificação, desenvolvimento, gerenciamento e evolução. (SOMMERVILLE, 2003). O termo software abrange muito mais do que um simples programa de computador, dependendo do porte e da finalidade, um software pode ser até uma série de programas separados, tendo em vista um software não é apenas um programa más também toda a documentação associada que explica como utilizar o sistema e os dados de configuração necessários para fazer com que esses programas operem corretamente. (PRESSMAN, 2006). Por esta razão ao se desenvolver um sistema de computador deve-se antes de tudo pensar nas especificações, pois possuem a finalidade de descrever as funcionalidades e restrições do software, no desenvolvimento, já que o software deve ser produzido de modo que atenda as suas especificações, na validação, pois o software tem de ser validado para garantir que ele faça o que o cliente deseja, e na possível evolução do mesmo já que ele deve evoluir para atender às necessidades de mudança do cliente. (SOMMERVILLE, 2003). As atividades descritas acima para desenvolvimento de um sistema podem ser realizadas utilizando diferentes processos de software (descritos mais detalhadamente na seção 2.7) e de diversas maneiras distintas, para que o mesmo atenda as necessidades do cliente.

17 17 Um sistema de computador é dito bem sucedido quando ele atende às necessidades tanto do cliente quanto das pessoas que o usam, quando apresentem um bom desempenho sem falhas por um longo período, quando é fácil de modificar e mais fácil ainda de usar. Porém para que se consiga um bom resultado ao se desenvolver um software é necessário que haja disciplina tanto no projeto quanto na construção do protótipo e do sistema final. (PRESSMAN, 2006) Prototipação Para se desenvolver um software deve-se sempre ouvir os clientes e usuários finais, pois são eles que expressão boa parte dos requisitos que o mesmo irá conter. Porém na maioria das vezes esses usuários sentem muitas dificuldades em expressar seus reais requisitos (ver seção 2.9), tornando assim quase impossível prever como o sistema afetará as práticas de trabalho, como interagirá com outros sistemas e que operações dos usuários devem ser automatizadas. Para reduzir as incertezas sobre o que o sistema irá fazer é necessário que se faça uma análise cuidadosa do mesmo bem como previsões sistemáticas de requisitos e isso só será possível se um protótipo do sistema estiver disponível. (SOMMERVILLE, 2003). A versão inicial de um sistema de software recebe o nome de protótipo, ela é utilizada para mostrar conceitos, experimentar opções de projeto e, em geral, para conhecer mais sobre os problemas e suas possíveis soluções. Para que os usuários possam fazer experiências há à necessidade do desenvolvimento rápido de um protótipo, isso ajuda também a controlar os custos de desenvolvimento além de apoiar atividades importantíssimas para o desenvolvimento tais como, levantamento e validação de requisitos. (DENNIS & WIXOM, 2005). No que se refere ao levantamento de requisitos o protótipo é de fundamental importância, pois permite que os usuários do sistema realizem experiências para ver como o sistema apoia seu trabalho, isso faz com que esses usuários tenham novas ideias para os requisitos já existentes, podendo até identificar pontos positivos e negativos em relação ao software e criar novos requisitos. Outra função importante do protótipo é que ele pode revelar erros nos requisitos.

18 18 Como foi dito anteriormente é difícil para o usuário final prever como vai utilizar o sistema para dar apoio ao seu trabalho diário. A situação piora ainda mais se o sistema for de grande porte, pois o nível de complexidade é muito maior, e provavelmente será impossível fazer essa avaliação antes de o sistema ser construído e colocado em operação. Para lidar com essa dificuldade no desenvolvimento de um protótipo pode-se utilizar duas abordagens de implementação, são elas: prototipação evolucionária e descartável. (PRESSMAN, 2006). A prototipação evolucionária fornece ao usuário um sistema incompleto e relativamente simples, que implementa os requisitos mais importantes do usuário ao longo de muitos estágios. À medida que novos requisitos estão sendo descobertos e implementados o sistema é ampliado, até chegar o ponto que se deseja (Figura 2.2.1). Na prototipação evolucionária não existe nenhuma especificação detalhada de sistema e, em alguns casos, pode nem haver um documento formal de requisitos. Atualmente a prototipação evolucionária é a técnica mais utilizada para o desenvolvimento de sites e aplicações de correio eletrônico. (DENNIS & WIXOM, 2005). Desenvolver especificação abstrata Construir sistema protótipo Utilizar sistema protótipo Entregar sistema Sim Sistema adequado? Não Figura Prototipação evolucionária Fonte: (SOMMERVILLE, 2003). De acordo com SOMMERVILLE, 2003, o uso da prototipação evolucionária para o desenvolvimento de software oferece duas principais vantagens: 1. Rápido fornecimento do sistema: Como discutido anteriormente é essencial que o software seja disponibilizado rapidamente, já que em alguns casos o fornecimento rápido e a facilidade de uso são mais

19 19 importantes do que detalhes de funcionalidade ou facilidade de manutenção do software a longo prazo. 2. Compromisso do usuário com o sistema: O fato dos usuários do sistema estarem envolvidos com o processo de desenvolvimento não quer dizer apenas que o sistema tenha uma maior possibilidade de atender seus requisitos, mas significa dizer também que os usuários vão querer contribuir para que ele funcione já que assumiram um compromisso. Por outro lado a prototipação descartável esta mais voltada em ajudar no aprimoramento e na classificação da especificação do sistema. Essa abordagem é utilizada quando se quer a redução de custos totais no ciclo de vida do protótipo e para isso ela amplia o processo de análise de requisitos, o protótipo é escrito, avaliado e modificado (Figura 2.2.2). A função principal nesse tipo de abordagem é esclarecer os requisitos e fornecer informações adicionais para que os gerentes avaliem os riscos de processo. O protótipo é dito descartável por que após a avaliação ele é descartado não sendo, portanto utilizado como base para o desenvolvimento do posterior do sistema. (DENNIS & WIXOM, 2005). Esboçar requisitos Desenvolver protótipo Avaliar protótipo Especificar sistema Componentes reutilizáveis Desenvolver software Validar sistema Sistema de software entregue Figura Prototipação descartável Fonte: (SOMMERVILLE, 2003). Porém, o protótipo descartável de software é mais utilizado para ajudar a desenvolver os requisitos que o sistema irá conter e não para a validação de projeto, por isso quase sempre o protótipo é bem diferente o sistema final. Mas de acordo com Sommerville (2003), essa abordagem possui vários problemas tais como:

20 20 1. Para que se obtenha uma implementação rápida simplifica-se demais e características importantes como às funções de segurança acabam sendo excluídas do protótipo. 2. Esse tipo de implementação não possui apoio legal como um contrato entre o cliente e o fornecedor. 3. Em uma implementação de protótipo requisitos não funcionais, como capacidade de segurança e confiabilidade não podem ser testados adequadamente. Por essas razões é que frequentemente desenvolvedores optam por utilizar uma abordagem de prototipação evolucionária tanto para softwares para desktop quanto para Web. Optou-se por abordar esse tópico já que atualmente há um protótipo do mesmo em funcionamento que foi desenvolvido para que os usuários pudessem experimentar para ver como o sistema pode apoiar o seu trabalho de maneira rápida bem como servir de base para validação dos requisitos do sistema final Desenvolvimento de Software Java Para Desktop Em maio de 1995 foi anunciada pela empresa Sun Microsystems a linguagem de programação que faria uma das grandes revoluções no mundo do software. Tal linguagem de programação foi desenvolvida por uma equipe de programadores chefiada por James Gosling e recebeu o nome de Java, que atualmente pertence a Oracle. O fato de a linguagem ser portável para outros sistemas operacionais é o que chamava mais atenção. Embora a linguagem seja constantemente utilizada para o desenvolvimento de aplicações Web ou para dispositivos móveis, ela também é muito usada para aplicações Desktop. (GONÇALVES, 2006). O uso de Java em aplicações para Desktop esta se tornando cada vez mais comum, embora essa área tenha sido dominada por linguagens nativas como, C; C++, entre outras. Java é uma linguagem de programação que usa como paradigma a orientação a objeto. As linguagens convencionais são compiladas para código nativo, porém a linguagem Java é exatamente o contrário ela é compilada para um bytecode que é executado por uma máquina virtual. Dessa forma um

21 21 programa Java pode rodar em muitos sistemas operacionais sem a necessidade de alterá-los para a plataforma do sistema, bastando apenas que uma maquina virtual compatível esteja instalada. (DEITEL, 2005). Um programa Java é formado por várias partes chamadas de classes. Essas por sua vez também são formadas por várias partes chamadas de métodos. Os métodos realizam tarefas e retornam informações ao conclui-las. Dessa forma desenvolvedores podem criar cada parte que precisam para formar um programa Java. Mas na prática, o que geralmente se vê graças à reutilização de classes é o uso das ricas coleções de classes existentes nas bibliotecas de classe Java, também conhecidas como APIs do Java (application programming interfaces). Em Java, existem duas bibliotecas de componentes gráficos que disputam a preferência dos desenvolvedores de sistemas desktop: Swing e SWT (Standard Widget Toolkit). Por essas vantagens é que Java é uma da linguagens de programação que mais cresceu nos últimos anos. (DEITEL, 2005) Ferramentas de Desenvolvimento Na construção de um software é comum o uso de ferramentas que possibilitam tornar o desenvolvimento mais rápido e fácil, tais ferramentas são conhecidas como ambiente integrado para desenvolvimento de software ou IDE (Interface Development Environment). Trata-se de um framework, que pode ser definido como sendo uma estrutura de suporte, que permite que outro projeto de software possa ser organizado e desenvolvido. Um framework geralmente inclui outros programas que servem de apoio para a construção e podem ajudar no desenvolvimento do software. (GONÇALVES, 2006). Entre as IDE s mais conhecidas, citam-se duas das mais utilizadas: o Eclipse e o NetBeans. O Eclipse é um ambiente de desenvolvimento integrado para criação de softwares em Java, porém com o uso de plug-ins acoplados, a IDE pode suportar várias outras linguagens de programação aumentando assim seu poder. O Eclipse foi desenvolvido em Java (ver seção 2.3) e tem seu código fonte aberto. (GONÇALVES, 2006).

22 22 O NetBeans é um ambiente integrado para desenvolvimento de software, desenvolvido pela Sun Microsystems, ele é gratuito e de código aberto, e possibilita o desenvolvimento de sistemas nas linguagens de programação C, C++, Java entre outras. Ele também é uma ferramenta de desenvolvimento multiplataforma, além de ser totalmente escrito em Java. Abaixo estão algumas das funcionalidades que este IDE disponibiliza: (GONÇALVES, 2006). Um editor amigável de telas; Integração com banco de dados; Plug-ins de diversos tipos que possibilitam um aumento na capacidade do programa; Além dessas funcionalidades, o IDE ainda permite que o próprio desenvolvedor crie seus próprios plug-ins, aumentando ainda mais sua capacidade. Por essas e outras vantagens é que o NetBeans vem atraindo cada vez mais desenvolvedores de todo o mundo. Por esta razão é que o NetBeans foi escolhido como IDE para desenvolvimento deste trabalho, citou-se também o Eclipse pois o mesmo poderia ter sido a ferramenta de escolha do desenvolvedor já que ambas possuem características semelhantes Ferramentas de Controle de Versão O controle de versão é um dos fatores de extrema importância no desenvolvimento de um software, pois geralmente são feitas várias alterações para que se alcance o resultado esperado e consequentemente a satisfação do cliente e dos usuários do mesmo. Por esta razão é comum o uso de sistemas desenvolvidos com o proposito de registrar as várias versões que um sistema pode ter, versões estas que vão deste o inicio de sua construção até a entrega final do software. (PRESMAN, 2006). Um sistema de controle de versão 1 trata-se de um gerenciador de repositórios. É constantemente utilizado como um repositório de arquivos para o código-fonte de um programa em desenvolvimento. Sistemas desta natureza possuem controle de acesso, permitindo assim fiscalizar toda mudança feita no 1 Controle de versão. Disponível em: <http: Acesso em 15 de setembro de 2013.

23 23 código-fonte, além de registrar informações diversas como: quem fez a alteração, por que foi feita e ainda identificar problemas corrigidos ou melhorias nas mudanças realizadas. A falta de controle de versão ocasiona muitas vezes diversos problemas no desenvolvimento de sistemas, tais como: perder alterações; sobrescrever um código; falta de controle de alterações (quem fez a alteração, por que foi feita); contradições e falhas versões. Com o uso de programas de controle versão problemas como estes acima citados podem ser evitados. Citam-se aqui dois dos softwares com esta finalidade e de código-fonte abertos são eles: o Git e o Mercurial. O Git 2 é uma ferramenta para o controle de versão de software, foi inicialmente projetado e desenvolvido por Linus Torvalds para o desenvolvimento do Kernel Linux. O Git é um software livre distribuído sobre os termos da licença GNU (General Public License version 2). O Mercurial 3 trata-se de uma ferramenta de controle de versão multiplataforma. Foi inicialmente escrito para rodar sobre um sistema operacional Linux, mas logo foi adaptado para Windows, Mac OS X, além da maioria dos sistemas UNIX. Funciona principalmente através de linhas de comando inseridas pelo usuário. Neste projeto opta-se pelo Git como ferramenta de controle de versão devido ao fato do desenvolvedor já conhecer e utilizar o mesmo Teste de Software Ao se desenvolver um sistema uma fase muito importante a ser levada em consideração é a fase de testes, pois é nela que serão descobertos os possíveis erros, inconsistências e falhas no software. Um erro frequente ao se desenvolver um 2 Git for Windows. Disponível em: <http://code.google.com/p/msysgit/>. Acesso em 01 de Outubro de Mercurial. Disponível em: <https://netbeans.org/kb/docs/ide/mercurial_pt_br.html>. Acesso em: 15 de setembro de 2013.

24 24 sistema é querer testá-lo assim que os primeiros módulos são concluídos. (DENNIS & WIXOM, 2005). Para que testes importantes não sejam esquecidos ou desconsiderados não se devem testar eventos diferentes impulsivamente, porque os testes importantes podem ser negligenciados e, na ocorrência de um erro poderá ser difícil reproduzir a sequencia de eventos que ocasionou o erro. Testes devem ser feitos seguindo um critério sistemático, os resultados precisam ser documentados para que seja possível saber o que foi testado. Muitas são as maneiras e técnicas de se testar um software, não importando o paradigma utilizado para o desenvolvimento do mesmo. Abaixo estão descritas algumas das técnicas mais conhecidas e utilizadas segundo DENNIS & WIXOM, Dos testes descritos abaixo foi realizado apenas o teste de aceitação por ser o único que se encaixa com as especificações do sistema proposto devido a seu nível de complexidade, tendo em vista que os outros testes segundo Sommerville (2003) são realizados geralmente em sistemas e grande porte. Testes de Unidade: Os testes classificados como testes de unidade focam uma unidade, um programa ou um módulo do programa que executa uma função especifica que pode ser testada. A finalidade desse teste é assegurar que o modulo ou programa execute corretamente sua função conforme definido na especificação do programa. Em se tratando de testes de unidade há duas categorias que devem ser levadas em consideração: teste de caixa preta e teste de caixa branca. O teste de caixa preta trata é voltado para as especificações do programa, é muito utilizado para testar uma unidade que possui um grau normal de complexidade. O teste de caixa branca é utilizado somente quando a complexidade for alta, este testa examina o código fonte do programa para testar seus elementos principais. Testes de Integração: Testes de integração testam um conjunto de programas ou módulos que precisam trocar dados entre si, para verificar se podem trabalhar juntos sem erros.

25 25 Eles são realizados com o propósito de assegurar que as interfaces ou vínculos existentes entre partes diferentes do sistema ou módulos funcionem corretamente. Testes de Sistema: Os testes e sistema são parecidos com os testes de integração, também avaliam se os dados podem ser trocados entre sistemas ou módulos sem erros. Porém a principal diferença ente os dois é que os testes de sistema avaliam em que grau de satisfação os requisitos operacionais, a usabilidade, a segurança e o desempenho do sistema esta diante de uma carga intensa no sistema. Testes de Aceitação: São testes realizados principalmente pelos usuários. Possuem o objetivo como o próprio nome sugere de confirmar a aceitação do usuário perante o sistema. Testes de aceitação possuem basicamente dois estágios são eles: teste alfa e teste beta. No teste alfa são usados dados simulados para testar o sistema. No teste beta são usados dados reais. Diante disso, observa-se que testes são de fundamental importância no desenvolvimento de um software, pois como dito anteriormente ajudam a localizar erros e possíveis inconsistências. Outro fator de extrema importância na fase de desenvolvimento de um sistema computacional é o uso de uma ferramenta de geração de relatórios oriundos do banco de dados. Ferramenta esta que será descrita mais adiante Ferramentas para Geração de Relatórios No desenvolvimento de um sistema há sempre a necessidade de coleta de dados e posterior salvamento em um banco de dados (ver seção 2.9), para que possam ser acessados a qualquer momento. Tais dados costumam ser visualizados através de relatórios que facilitam o entendimento. Uma rotina comum para os desenvolvedores é a criação de aplicações com o uso de relatórios. Neste sentido existem muitas ferramentas para criação de relatórios no mercado atualmente,

26 26 porém serão abordadas adiante duas das mais utilizadas para aplicações desktop, são elas: Birt e o ireport. O Birt 4 (Business Intelligence and Reporting Tools) é um projeto da fundação Eclipse, e trata-se de uma ferramenta de geração de relatórios, por ser uma ferramenta open source é muito utilizada pelos desenvolvedores. Com o Birt é possível desenvolver relatórios para desktop de maneira simples, já que permite a criação destes sem as complexidades adicionais do ambiente de desenvolvimento integrado Eclipse. O ireport é uma ferramenta para geração de relatórios visuais, que possui como característica o desenvolvimento no formato de XML (extensible Markup Language) do padrão JasperReports. O JasperReports é uma biblioteca escrita em Java, de código fonte aberta, que foi projetada por Teodor Danciu em 2001, com o proposito de ajudar os desenvolvedores a criar relatórios para aplicações Desktop e Web. Mesmo sendo uma biblioteca simples, ainda exige que o desenvolvedor conheça seu formato XML, pois o mesmo é utilizado para criar os relatórios, o que torna essa tarefa muito demorada. Por esta razão em outubro de 2002 foi lançada por Giulio Toffoli, a ferramenta descrita acima que recebeu o nome de ireport. (GONÇAVES, 2008). A ferramenta escolhida neste trabalho para geração de relatórios foi o ireport devido ao fato do desenvolvedor já possuí habilidades previas com a mesma Levantamento de Requisitos Um requisito é uma declaração do que o sistema deve ser ou quais características ele precisa possuir. No levantamento de requisitos cliente e desenvolvedor trabalham juntos para descobrir as informações ou serviços que o sistema deve fornecer, bem como o desempenho exigido do mesmo e as restrições de hardware para que o sistema funcione corretamente conforme previsto. (DENNIS & WIXOM, 2005). 4 Artigo Java Magazine 38 - Relatórios e Gráficos com Eclipse. Disponível em: < 8Yof >. Acesso em 10 de outubro de 2013.

27 27 A finalidade da etapa de levantamento de requisitos é fazer uma conversão da explicação de alto nível dos requisitos expostos pelo cliente em uma lista mais precisa que possa ser usada como informação para o restante da fase de análise criando assim os casos de uso que mais tarde se expandem com base nos requisitos. (SOMMERVILLE, 2003). Os requisitos por natureza dividem-se em funcionais e não funcionais. Um requisito funcional é aquele que se relaciona diretamente a um processo que o sistema tem de executar ou as informações que ele precisa conter. Os requisitos não funcionais têm a ver com as propriedades comportamentais que o sistema deve possuir, como desempenho e usabilidade. A fase de levantamento de requisitos é de fundamental importância, pois também auxilia na criação do banco de dados que o sistema irá conter. A fase de levantamento de requisitos teve um papel fundamental no sistema proposto, pois permitiu que se pudesse ter uma noção do tamanho do mesmo, e como consequência facilitou o levantamento das tabelas que o banco de dados iria conter Banco de Dados Ao se desenvolver um software deve-se pensar na função de armazenagem de dados, pois é ela quem gerencia como eles serão persistidos e como serão tratados pelos programas que estão sendo executados no sistema. A essa função dá-se o nome banco de dados, que basicamente é um arquivo ou conjunto de arquivos que guardam algum tipo de informação e que estão relacionadas entre si de alguma maneira, como por exemplo, por meio de campos comuns para que a mesma possa ser acessada ou alterada. (DENNIS & WIXOM, 2005). Um banco de dados conta com um software que o cria e o manipula, este software é conhecido como sistema de gerenciamento de banco de dados (DBMS, database management system). Há diversos tipos de DBMS, como exemplo cita-se, o Oracle, o MySQL, o MySQL Server, o DB2, o PostgreSQL entre outros, que podem gerenciar os dados e trocar informações com diversos aplicativos.

28 28 Para guardar a informação um banco de dados usa formatos diferentes de armazenagem de dados. Um exemplo disso são os bancos de dados multidimensionais e banco de dados relacionais. O conceito de banco de dados multidimensional é relativamente novo, e tem sido conduzido em grande parte pelo crescimento de data warehousing, já o banco de dados relacional é o tipo mais popular de banco de dados em uso para o desenvolvimento de sistemas. (DENNIS & WIXOM, 2005). Um banco de dados multidimensional ao armazenar seus dados primeiro faz um cálculo dos dados em múltiplas dimensões e armazena as respostas usando matrizes, o que deixa o carregamento inicial relativamente lento, mas por outro lado o acesso a esses dados é extremamente rápido devido às respostas que já existem nas matrizes. (DENNIS & WIXOM, 2005). Para DEITEL (2005) um banco de dados relacional é uma representação lógica de dados que permite acesso aos dados sem considerar sua estrutura física. Um banco de dados relacional armazena seus dados em tabelas. As tabelas são compostas de linhas, e as linhas são compostas de colunas nas quais os valores são armazenados. Sob uma perspectiva de desenvolvimento o banco de dados relacional é muito mais fácil de trabalhar já que esta baseado em coleções de tabelas, e cada tabela possui um campo ou campos que representam a chave primária, cujo valor é diferente para cada linha da tabela. Desta forma as tabelas são relacionas entre si, colocando a chave primária de uma como uma chave estrangeira na tabela relacionada. Grande parte dos sistemas de gerenciamento de bancos de dados relacionais utilizam uma técnica conhecida como integridade referencial, pois esta assegura que os valores que unem as tabelas por meio de chaves primarias e estrangeiras são válidos e estão sincronizados. (DATE, 2000). A figura ilustra uma tabela de exemplo que pode ser utilizada em um sistema computacional, e o principal objetivo dessa tabela é armazenar os atributos de departamentos de uma determinada empresa. A figura objetiva mostrar o relacionamento entre chave primaria e estrangeira, tendo em vista que possui uma chave estrangeira que referencia a chave primaria da tabela

29 29 CodDepartamento descdepartamento Departamento Pessoal Figura : Tabela de departamentos Fonte: (DATE, 2000). codempregado Nome coddepartamento Salário Localização Guilherme ,00 Balsas Figura : Tabela de funcionários Fonte: (DATE, 2000). Tendo em vista que as linhas são únicas dentro de uma tabela os valores das colunas particulares podem ser duplicados entre as linhas. No exemplo acima citado podem existir diversos funcionários que fazem parte do mesmo departamento. Porém devido à integridade referencial existente entre as tabelas se houver a tentativa de inserção de um funcionário na tabela e o código do departamento digitado não constar na tabela , o sistema de gerenciamento de banco de dados indicará que houve um erro, não permitindo assim a inserção, pois o DBMS antes de inserir verificaria os números do código do departamento na tabela e descobriria que o numero é invalido. Em um banco de dados às tabelas possuem um numero de colunas fixo, porém o numero de linhas é variável linhas estas que guardam as ocorrências dos dados na tabela. A linguagem padrão para acessar os dados nas tabelas de um banco é a linguagem conhecida como Structured Query Language (SQL). Essa linguagem opera nas tabelas como um todo em vez de operar nos registros individuais das tabelas, assim sendo uma consulta escrita em SQL é aplicada simultaneamente a todos os registros de uma tabela. Por esta razão quando as consultas precisam incluir informações de mais de uma tabela, as tabelas são reunidas primeiro através de seus relacionamentos de chaves primárias e

30 30 estrangeiras, e são tratadas como se fossem uma grande tabela. (DENNIS & WIXOM, 2005). Tendo em vista que os dados são um fator de fundamental importância e sem eles não haveria a necessidade da existência de um sistema computacional, abordou-se esse tópico a fim de mostrar a importância que um banco de dados possui dentro de um software. Dentre os SGBD s (Sistemas de Gerenciamento de Banco de Dados) citados nesse tópico o escolhido para desenvolvimento deste trabalho foi o MySQL SGBD MySQL Desenvolvido na Suécia o MySQL 5 é um servidor de banco de dados SQL (Structured Query Language Linguagem Estruturada para Pesquisas) gratuito e de código fonte aberto que tem como características principais: rapidez, confiança, estabilidade, multitarefa e multiusuário, ele é muito utilizado por alguns órgãos públicos no Brasil e no mundo, tais como: Banco Bradesco, NASA, Nokia, Google, entre outros. O servidor MySQL pode ser usado em sistemas de produção com alta carga e missão crítica. Por possuir licença dupla os usuários podem escolher entre usar o programa como um produto gratuito ou podem comprar uma licença comercial padrão. Desde seu inicio o MySQL expandiu-se bastante partindo de uma pequena equipe de três pessoas até seu quadro atual que possui aproximadamente 400 profissionais no mundo inteiro nas áreas de desenvolvimento e manutenção, e ainda conta com mais de mil contribuintes testando-o, integrando-o a outros produtos e escrevendo a respeito dele. A fácil integração com o PHP tem garantido o sucesso ao MySQL permitindo assim que o mesmo cresça ainda mais. Outro fator importante na escolha do MySQL é que ele disponibiliza ferramentas de gerenciamento tais como o MySQL Workbench descrito no próximo tópico. 5 MySQL. Disponível em: =ocomen. Acesso em: 01 de Outubro de 2013.

31 MySQL WorkBench O MySQL WorkBench 6 é uma ferramenta para modelagem de dados, que integra o desenvolvimento, 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. Outro recurso que a ferramenta possibilita é a realização de engenharia reversa de esquemas de banco de dados, bem como gerar todos os scripts em SQL. Para facilitar o entendimento a respeito das ações a serem realizadas e classes a serem implementadas é comum o uso de ferramentas para modelagem de dados, na seção seguinte será descrita a ferramenta de modelagem usada neste trabalho Jude Community O JUDE 7 (Java and UML Developer Environment) é uma das ferramentas de modelagem UML mais poderosas que existe na categoria free, ele é rico em funcionalidades, e oferece características como edição e impressão de diagramas UML (Unified Modeling Language Linguagem de Modelagem Unificada), importa/exporta código fonte Java, saída de gráficos e disposição automática. Ele também é extremamente fácil e leve de usar. A linguagem UML auxilia o desenvolvedor a visualizar o desenho do sistema bem como a comunicação entre os objetos do mesmo de forma padronizada. Por esta razão abordou-se este tópico e optou-se pelo uso de tal ferramenta. 6 MySQL WorkBench. Disponível em: <http://www.mysql.com/products/workbench/>. Acesso em: 01 de Outubro de Jude Community. Disponível em: <http://jude.change-vision.com/judeweb/product/jude_pl.html>. Acesso em: 01 de Outubro de 2013.

32 32 3. ESTUDO DE CASO A escola Jovem On Line é uma instituição de ensino voltada para jovens de baixa renda, fica localizada em Balsas à Rua José Leão, s/n Centro. Atualmente a instituição possui noventa e oito alunos. O principal objetivo da escola de informática Jovem On Line é introduzir a informática através de aulas de computação a fim de aumentar as chances no mercado de trabalho para milhares de jovens, no entanto a instituição escolar tem enfrentado barreiras desde o inicio por não contar com um sistema para automatizar os processos escolares. Atualmente, todo o processo é realizado de forma manual o que gera uma baixa produtividade e falta de informações confiáveis para as tomadas de decisões. Este trabalho tem como foco realizar uma pesquisa sobre a linguagem de programação Java SE, bem como as ferramentas utilizadas para o desenvolvimento de uma solução que tem como objetivo promover o aumento da eficiência nos processos escolares da instituição acima citada. O SYSJOL (Sistema Joven On Line) facilitará a manutenção dos processos escolares. O sistema em questão será desenvolvido de forma que facilite a manutenção do mesmo para que assim possa ter flexibilidade às mudanças organizacionais que constantemente são exigidas. O sistema proposto deverá funcionar como um gerenciador de processos, sendo que os papéis deverão ser substituídos por formulários eletrônicos o que resultará na diminuição do tempo de resposta, armazenamento dos dados, redução de custo e por consequência aumento da eficiência e eficácia dos gestores educacionais, visando garantir a melhoria dos resultados financeiros. O desperdício de tempo e as falhas na confirmação ou alteração de dados, processos estes que atualmente são realizados de forma manual não mais existiram, pois ambos serão automatizados visando facilitar tanto o processo de matrícula como de renovação. Antes de efetivar a matrícula será realizada uma pesquisa no sistema para verificar a disponibilidade de vagas em uma determinada turma, evitando assim o preenchimento desnecessário no formulário de matricula.

33 33 O uso da ferramenta em questão também facilitará o processo de entrega de certificados, pois gerará automaticamente uma lista informando quais os alunos que estão aptos á receberem o certificado de conclusão de curso. A ferramenta também automatizará os seguintes processos: controle de frequências, emissão de diário de classe e registro de conteúdo programático. Todos com os respectivos controles de segurança de acesso por nível de usuário Requisitos mínimos que o sistema deve atender Cadastrar Usuário: O sistema deverá permitir ao funcionário realizar o cadastro de um novo usuário. Ao efetuar o logon no sistema, que será concedido utilizando uma senha individual, o sistema apresentará um Menu de opções, entre elas cadastrar usuário, ao preencher os dados solicitados, o novo usuário estará apto a usar o sistema de acordo com o nível de acesso para ele liberado. Matricular Aluno: O sistema deverá permitir ao funcionário realizar a matrícula de um novo aluno. Ao efetuar o logon no sistema, que será concedido utilizando uma senha individual, o sistema apresentará um Menu de opções, entre elas efetuar Matrícula. Cadastrar Conteúdo: O atendente de acordo com o nível de acesso poderá cadastrar o conteúdo de cada turma ou solicitar conteúdo já cadastrado para uma determinada turma. Ao efetuar o logon no sistema, que será concedido utilizando uma senha individual, o sistema apresentará um Menu de opções, entre elas cadastrar conteúdo programático. Registrar Frequência: O professor poderá efetuar a frequência do aluno. Ao efetuar o logon no sistema, que será concedido utilizando uma senha individual, o sistema apresentará um Menu de opções, entre elas inserir frequência, o professor registrará a frequência do aluno automaticamente no sistema com o mesmo em sala de aula.

34 34 4. IMPLEMENTAÇÃO DO SISJOL Jovem On Line). Neste tópico será apresentado à implementação do SISJOL (Sistema 4.1. Sistema Proposto Com o objetivo de automatizar os processos de cadastro de aluno, controle de frequência e entrega de certificados da escola de informática Joven On Line, foi proposto o desenvolvimento de um sistema de gestão escolar denominado SISJOL. O sistema em questão é um sistema para desktop e foi desenvolvido utilizando a linguagem de programação Java. A forma como a arquitetura do SISJOL esta organizada pode ser vista na figura Apresentação Controle de Acesso Persistência Banco de Dados Figura 4.1.1: Arquitetura do SISJOL Fonte: (Date, 2000) Conforme visto na figura acima o SISJOL é composto por 4 camadas, são elas: Apresentação: é responsável pela entrada e saída do sistema (visualização). Controle de acesso: esta camada é responsável por permitir ou não acesso ao sistema. Persistência: responsável por persistir os dados no banco de dados. Banco de Dados: responsável por armazenar os dados. A figura demonstra a estrutura de pastas que compõem o sistema proposto.

35 35 Figura 4.1.2: Estrutura de pastas A estrutura da figura acima citada é composta pelos seguintes pacotes: Apresentação: neste pacote estão presentes as doze telas (parte visual do software) que compõem o sistema. Controle de acesso: neste pacote consta a classe responsável pelo controle de acesso ao sistema. Ícones: composto pelos ícones que formão o sistema. Persistência: este pacote é formado pela classe responsável por persistir e recuperar os dados do sistema no banco de dados.

36 36 Relatórios: responsável por armazenar os relatórios gerados pelo software. Utilitários: armazena a classe responsável que fornece a data e hora que são utilizadas no sistema Levantamento de Requisitos O levantamento dos requisitos de um determinado software é a primeira tarefa a ser realizada na sua criação. A análise de requisitos geralmente é um processo longo e árduo a ser implementado pelo desenvolvedor, mas possui um papel fundamental, pois é através dela que outras etapas que compõem o software surgirão. Com base nas necessidades descritas pelos usuários foram detectados os requisitos que o sistema iria conter, os mesmos podem ser vistos na seção (Apêndice A), diante disso identificou-se que sistema conteria as seguintes funções principais: cadastro de alunos; certificados; cursos; frequências; grade curricular; matricula; responsável; semestre; turma; usuários; login e tela principal. Para facilitar o entendimento foi feita a especificação do sistema baseado nos requisitos levantados, para isso utilizou-se a Linguagem de Modelagem Unificada (UML) a fim de apresentar o diagrama de caso de uso e o diagrama de atividades para a tarefa de cadastro de aluno. Na figura pode-se observar o diagrama de caso de uso de cadastro de aluno.

37 37 Figuraa 4.2.1: Diagrama de caso de uso do cadastro de aluno. A figura acima demostra as etapas que ocorrem para que seja efetuado o cadastro de um aluno no sistema, são elas: após estar conectado o usuário solicita a tela de cadastro de aluno, o sistema informa que é necessário que seja feito o cadastro do responsável pelo aluno, apos efetuar o cadastro do mesmo o sistema permite que se faça o cadastro do aluno. A figura ilustra o diagrama de atividades de cadastro de aluno. Figrua 4.2.2: Diagrama de atividades de cadastro do aluno. No diagrama acima as etapas ocorrem de seguinte forma: Inicio: é o principio da atividade de cadastro de aluno.

38 38 Consultar aluno: antes de o cadastro ser efetuado o sistema informará ao usuário que terá que ser feita uma pesquisa para verificar se o mesmo já não esta cadastrado, caso já esteja o fluxo seguirá pela esquerda sendo possível efetuar a alteração dos dados aluno, o sistema permitira que os dados sejam gravados na etapa seguinte e finalizará o processo de cadastro de aluno. Se o aluno ainda não estiver cadastrado o sistema permitira que seja feito o cadastro o do aluno após verificar se o responsável já esta cadastrado e então permitirá o usuário gravar os dados e finalizará o processo Modelo do Banco de Dados Para armazenar as informações necessárias ao funcionamento do SISJOL optou-se pelo uso de um banco de dados relacional. Conforme mencionado anteriormente na seção 2.9, um banco de dados ou modelagem relacional serve para facilitar os acessos aos dados e isso possibilita que usuários possam utilizar uma grande variedade de abordagens no que se refere ao tratamento das informações, segundo DEITEL (2005). Ainda em conformidade com o autor em um banco de dados relacional um dos principais conceitos é a Entidade Relacionamento (ER), pois é ela quem faz a descrição de todo o sistema, assim como o relacionamento entre os dados e um modelo gráfico. A maior parte das modelagens de dados utiliza como forma estruturada de relacionar os dados o modelo Entidade Relacionamento. Com o levantamento dos requisitos (Ver Apêndice A) expostos na seção 4.2 pode-se traçar o modelo ER do banco. A figura mostra o modelo de ER do SISJOL. O banco é composto por 12 tabelas relacionadas entre se a fim de obter as informações necessárias quando solicitadas. Todas as tabelas possuem um ou mais campos de identificação únicos, algumas possuem chaves estrangeiras (ver seção 2.9) que fazem o relacionamento entre as tabelas. As tabelas são descritas como segue: login, responsável, aluno, endereço, telefone, certificado, matricula, frequência, turma, grade curricular, curso e semestre. A tabela de login serve para o cadastro de pessoas autorizadas a usarem o sistema; a tabela responsável visa cadastrar o responsável pelo aluno; a tabela aluno, endereço e telefone servem para cadastrar as informações do aluno, a tabela certificado conterá os alunos que

39 39 receberam certificado; a tabela matricula tem como objetivo guardar a informações de matricula do aluno; a tabela de frequência armazenará as frequências do aluno; na tabela turma ficarão armazenadas as turmas disponíveis; na tabela grade curricular conterão os conteúdos e aulas registradas; a tabela curso indica os cursos disponíveis e na tabela semestre ficarão persistidos os semestres. Figura 4.3.1: Diagrama ER do banco

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com REVISÃO ENGENHARIA DO SOFTWARE Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Software Sequencia de Instruções a serem seguidas ou executadas Dados e rotinas desenvolvidos por computadores Programas

Leia mais

ESCOLA ESTADUAL DE EDUCAÇÃO PROFISSIONAL ESTRELA TÉCNICO EM INFORMÁTICA SISTEMA DE LOCADORA. Rodrigo Luiz da Rosa

ESCOLA ESTADUAL DE EDUCAÇÃO PROFISSIONAL ESTRELA TÉCNICO EM INFORMÁTICA SISTEMA DE LOCADORA. Rodrigo Luiz da Rosa ESCOLA ESTADUAL DE EDUCAÇÃO PROFISSIONAL ESTRELA TÉCNICO EM INFORMÁTICA SISTEMA DE LOCADORA Rodrigo Luiz da Rosa Estrela 2012 EIXO TECNOLÓGICO: Informação e Comunicação TÍTULO: SISTEMA DE LOCADORA AUTOR:

Leia mais

15 Conceitos de Bancos de Dados com o LibreOffice Base

15 Conceitos de Bancos de Dados com o LibreOffice Base Introdução a Informática - 1º semestre AULA 14 Prof. André Moraes Objetivos desta aula: Explorar as propriedades na criação de bancos de dados no LibreOffice Base; Criar e explorar tabelas; Criar e explorar

Leia mais

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas Conteúdo Programático Nomeclaturas JDK JRE JEE JSE JME JVM Toolkits Swing AWT/SWT JDBC EJB JNI JSP Conteúdo Programático Nomenclatures

Leia mais

Diretrizes para criação de um padrão de desenvolvimento de sistemas de informação baseados em cots

Diretrizes para criação de um padrão de desenvolvimento de sistemas de informação baseados em cots Diretrizes para criação de um padrão de desenvolvimento de sistemas de informação baseados em cots Roosewelt Sanie Da Silva¹ 1 Ciência da Computação Universidade Presidente Antônio Carlos (UNIPAC) Rodovia

Leia mais

Documento de Requisitos

Documento de Requisitos UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO Documento de Requisitos Sistema Gerenciador de Atendimento de Chamados Técnicos Grupo: Luiz Augusto Zelaquett

Leia mais

Roteiro 2 Conceitos Gerais

Roteiro 2 Conceitos Gerais Roteiro 2 Conceitos Gerais Objetivos: UC Projeto de Banco de Dados Explorar conceitos gerais de bancos de dados; o Arquitetura de bancos de dados: esquemas, categorias de modelos de dados, linguagens e

Leia mais

Sistema BuildParty para montagem e gerenciamento de eventos. Plano de Testes. Versão <1.1> DeltaInfo. Soluções para web Soluções para o mundo

Sistema BuildParty para montagem e gerenciamento de eventos. Plano de Testes. Versão <1.1> DeltaInfo. Soluções para web Soluções para o mundo Sistema BuildParty para montagem e gerenciamento de eventos Plano de Testes Versão DeltaInfo Soluções para web Soluções para o mundo DeltaInfo 2 Histórico de Revisões Data Versão Descrição Autores

Leia mais

LEI DE ACESSO A INFORMAÇÃO DIREITO DO CIDADÃO

LEI DE ACESSO A INFORMAÇÃO DIREITO DO CIDADÃO DESCRIÇÃO DO SIGAI O SIGAI (Sistema Integrado de Gestão do Acesso à Informação) é uma solução de software que foi desenvolvida para automatizar os processos administrativos e operacionais visando a atender

Leia mais

SISTEMA GERENCIAL TRATORPLAN

SISTEMA GERENCIAL TRATORPLAN SISTEMA GERENCIAL TRATORPLAN SIGET Fabrício Pereira Santana¹, Jaime William Dias¹, ², Ricardo de Melo Germano¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil fabricioblack@gmail.com germano@unipar.br

Leia mais

FERRAMENTAS PARA DESENVOLVIMENTO EM C#

FERRAMENTAS PARA DESENVOLVIMENTO EM C# FERRAMENTAS PARA DESENVOLVIMENTO EM C# Camila Sanches Navarro 1,2, Wyllian Fressatti 2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil sanchesnavarro@gmail.com wyllian@unipar.br Resumo. Este artigo

Leia mais

Thiago Hernandes de Souza

Thiago Hernandes de Souza Thiago Hernandes de Souza Dedicatória Confia ao SENHOR as tuas obras, e teus pensamentos serão estabelecidos. (Provérbios 16:3) Primeiramente ao Senhor Jesus Cristo, por fazer o intermédio junto a Deus

Leia mais

MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S. Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick

MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S. Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento

Leia mais

TECNOLOGIAS E FRAMEWORKS UTILIZADAS NO DESENVOLVIMENTO DE SISTEMAS GERENCIAIS

TECNOLOGIAS E FRAMEWORKS UTILIZADAS NO DESENVOLVIMENTO DE SISTEMAS GERENCIAIS TECNOLOGIAS E FRAMEWORKS UTILIZADAS NO DESENVOLVIMENTO DE SISTEMAS GERENCIAIS Janderson Fernandes Barros ¹, Igor dos Passos Granado¹, Jaime William Dias ¹, ² ¹ Universidade Paranaense (UNIPAR) Paranavaí

Leia mais

Softwares de Sistemas e de Aplicação

Softwares de Sistemas e de Aplicação Fundamentos dos Sistemas de Informação Softwares de Sistemas e de Aplicação Profª. Esp. Milena Resende - milenaresende@fimes.edu.br Visão Geral de Software O que é um software? Qual a função do software?

Leia mais

O que é software? Software e Engenharia de Software. O que é software? Tipos de Sistemas de Software. A Evolução do Software

O que é software? Software e Engenharia de Software. O que é software? Tipos de Sistemas de Software. A Evolução do Software O que é software? Software e Engenharia de Software Programas de computador Entidade abstrata. Ferramentas (mecanismos) pelas quais: exploramos os recursos do hardware. executamos determinadas tarefas

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software Requisitos de Software Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti.br Requisito O que é um REQUISITO? Em software: É a CARACTERIZAÇÃO do que o

Leia mais

Unioeste Universidade Estadual do Oeste do Paraná

Unioeste Universidade Estadual do Oeste do Paraná Unioeste Universidade Estadual do Oeste do Paraná CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS Colegiado de Informática Curso de Bacharelado em Informática Especificação de Requisitos e Modelagem Orientada

Leia mais

UTILIZANDO ICONIX NO DESENVOLVIMENTO DE APLICAÇÕES DELPHI

UTILIZANDO ICONIX NO DESENVOLVIMENTO DE APLICAÇÕES DELPHI UTILIZANDO ICONIX NO DESENVOLVIMENTO DE APLICAÇÕES DELPHI Dr. George SILVA; Dr. Gilbert SILVA; Gabriel GUIMARÃES; Rodrigo MEDEIROS; Tiago ROSSINI; Centro Federal de Educação Tecnológica do Rio Grande do

Leia mais

PROPOSTA DE SOFTWARE DE INSTALAÇÃO PARA UM AMBIENTE INTEGRADO DE GERÊNCIA DE PROJETOS E DE PROCESSOS DE NEGÓCIOS

PROPOSTA DE SOFTWARE DE INSTALAÇÃO PARA UM AMBIENTE INTEGRADO DE GERÊNCIA DE PROJETOS E DE PROCESSOS DE NEGÓCIOS PROPOSTA DE SOFTWARE DE INSTALAÇÃO PARA UM AMBIENTE INTEGRADO DE GERÊNCIA DE PROJETOS E DE PROCESSOS DE NEGÓCIOS Élysson Mendes Rezende Bacharelando em Sistemas de Informação Bolsista de Iniciação Científica

Leia mais

Software automatizado para controle de consultas da clínica de fisioterapia

Software automatizado para controle de consultas da clínica de fisioterapia Software automatizado para controle de consultas da clínica de fisioterapia Jeverson Siqueira 1, Wallace Caldeira 1, Jorge Aikes Junior 1 1 Ciência da Computacão Faculdades Anglo Americano de Foz do Iguaçu

Leia mais

Unified Modeling Language UML - Notações

Unified Modeling Language UML - Notações Unified Modeling Language UML - Notações Prof. Ms. Elvio Gilberto da Silva elvio@fmr.edu.br UML Ponto de Vista É gerada com propósito geral de uma linguagem de modelagem visual usada para especificar,

Leia mais

INTRODUÇÃO BANCO DE DADOS. Prof. Msc. Hélio Esperidião

INTRODUÇÃO BANCO DE DADOS. Prof. Msc. Hélio Esperidião INTRODUÇÃO BANCO DE DADOS Prof. Msc. Hélio Esperidião BANCO DE DADOS Podemos entender por banco de dados qualquer sistema que reúna e mantenha organizada uma série de informações relacionadas a um determinado

Leia mais

PORTARIA N Nº 184 Rio de Janeiro, 27 de dezembro de 2012.

PORTARIA N Nº 184 Rio de Janeiro, 27 de dezembro de 2012. PORTARIA N Nº 184 Rio de Janeiro, 27 de dezembro de. ACRESCENTA A ARQUITETURA DE PADRÕES TECNOLÓGICOS DE INTEROPERABILIDADE -, NO SEGMENTO RECURSOS TECNOLÓGICOS, O PADRÃO TECNOLÓGICO SISTEMAS DE GERENCIAMENTO

Leia mais

Engenharia de Software

Engenharia de Software CENTRO UNIVERSITÁRIO NOVE DE JULHO Profº. Edson T. França edson.franca@uninove.br Software Sistemas Conjunto de elementos, entre os quais haja alguma relação Disposição das partes ou dos elementos de um

Leia mais

Automação do Processo de Instalação de Softwares

Automação do Processo de Instalação de Softwares Automação do Processo de Instalação de Softwares Aislan Nogueira Diogo Avelino João Rafael Azevedo Milene Moreira Companhia Siderúrgica Nacional - CSN RESUMO Este artigo tem como finalidade apresentar

Leia mais

SISGAP - Sistema Gerenciador de Avaliações Psicopedagógicas

SISGAP - Sistema Gerenciador de Avaliações Psicopedagógicas SISGAP - Sistema Gerenciador de Avaliações Psicopedagógicas Geandré Meller Zacher 1 Luiz Gustavo Galves Mahlmann 2 Newton Muller 3 RESUMO Este artigo tem como finalidade apresentar o projeto SISGAP, que

Leia mais

Prototipação de Software

Prototipação de Software UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Prototipação de Software Engenharia de Software 2o. Semestre de 2005

Leia mais

GERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD. Acadêmico: Maicon Klug Orientadora: Joyce Martins

GERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD. Acadêmico: Maicon Klug Orientadora: Joyce Martins GERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD Acadêmico: Maicon Klug Orientadora: Joyce Martins Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento do trabalho Conclusão Extensões

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2009

CURSO DESENVOLVEDOR JAVA Edição 2009 CURSO DESENVOLVEDOR JAVA Edição 2009 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso

Leia mais

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES w w w. i d e a l o g i c. c o m. b r INDICE 1.APRESENTAÇÃO 2.ESPECIFICAÇÃO DOS RECURSOS DO SOFTWARE SAXES 2.1. Funcionalidades comuns a outras ferramentas similares 2.2. Funcionalidades próprias do software

Leia mais

Figura 1 - Arquitetura multi-camadas do SIE

Figura 1 - Arquitetura multi-camadas do SIE Um estudo sobre os aspectos de desenvolvimento e distribuição do SIE Fernando Pires Barbosa¹, Equipe Técnica do SIE¹ ¹Centro de Processamento de Dados, Universidade Federal de Santa Maria fernando.barbosa@cpd.ufsm.br

Leia mais

FERRAMENTA WEB PARA MODELAGEM LÓGICA EM PROJETOS DE BANCOS DE DADOS RELACIONAIS

FERRAMENTA WEB PARA MODELAGEM LÓGICA EM PROJETOS DE BANCOS DE DADOS RELACIONAIS FERRAMENTA WEB PARA MODELAGEM LÓGICA EM PROJETOS DE BANCOS DE DADOS RELACIONAIS PAULO ALBERTO BUGMANN ORIENTADOR: ALEXANDER ROBERTO VALDAMERI Roteiro Introdução Objetivos Fundamentação teórica Desenvolvimento

Leia mais

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider Ferramenta: Spider-CL Manual do Usuário Versão da Ferramenta: 1.1 www.ufpa.br/spider Histórico de Revisões Data Versão Descrição Autor 14/07/2009 1.0 15/07/2009 1.1 16/07/2009 1.2 20/05/2010 1.3 Preenchimento

Leia mais

Informática I. Aula 19. http://www.ic.uff.br/~bianca/informatica1/ Aula 19-20/11/06 1

Informática I. Aula 19. http://www.ic.uff.br/~bianca/informatica1/ Aula 19-20/11/06 1 Informática I Aula 19 http://www.ic.uff.br/~bianca/informatica1/ Aula 19-20/11/06 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação

Leia mais

3 Estudo de Ferramentas

3 Estudo de Ferramentas 3 Estudo de Ferramentas Existem diferentes abordagens para automatizar um processo de desenvolvimento. Um conjunto de ferramentas pode ser utilizado para aperfeiçoar o trabalho, mantendo os desenvolvedores

Leia mais

Projeto Disciplinar de Infra-Estrutura de Software SISPA FACULDADE SENAC

Projeto Disciplinar de Infra-Estrutura de Software SISPA FACULDADE SENAC 1 Projeto Disciplinar de Infra-Estrutura de Software SISPA FACULDADE SENAC Edilberto Silva 1, André Luiz (1012545), Andreia Pereira da Silva (1012547) Carlos Alberto (1012206), Humberto César de Carvalho

Leia mais

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE Aluno: Roberto Reinert Orientador: Everaldo A. Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Workflow Processo

Leia mais

Revisão para a prova B2. Conteúdo das Aulas: 10, 11 e 14

Revisão para a prova B2. Conteúdo das Aulas: 10, 11 e 14 Revisão para a prova B2 Conteúdo das Aulas: 10, 11 e 14 Disciplina: Serviços de Redes Microsoft Professor: Fernando Santorsula fernando.santorsula@esamc.br Disciplina: Serviços de Redes Microsoft Professor:

Leia mais

Linguagem de Programação JAVA

Linguagem de Programação JAVA Linguagem de Programação JAVA Curso Técnico em Informática Modalida Integrado Instituto Federal do Sul de Minas, Câmpus Pouso Alegre Professora: Michelle Nery Agenda JAVA Histórico Aplicações Pós e Contras

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação Unidade 4 Ambiente de desenvolvimento Java QI ESCOLAS E FACULDADES Curso Técnico em Informática SUMÁRIO A LINGUAGEM JAVA... 3 JVM, JRE, JDK... 3 BYTECODE... 3 PREPARANDO O AMBIENTE

Leia mais

Engenharia de Software I

Engenharia de Software I Engenharia de Software I Rogério Eduardo Garcia (rogerio@fct.unesp.br) Bacharelado em Ciência da Computação Aula 05 Material preparado por Fernanda Madeiral Delfim Tópicos Aula 5 Contextualização UML Astah

Leia mais

SISTEMA DE GERENCIAMENTO E CONTROLE DE DOCUMENTOS DE TCC E ESTÁGIO

SISTEMA DE GERENCIAMENTO E CONTROLE DE DOCUMENTOS DE TCC E ESTÁGIO SISTEMA DE GERENCIAMENTO E CONTROLE DE DOCUMENTOS DE TCC E ESTÁGIO Marcelo Karpinski Brambila 1, Luiz Gustavo Galves Mahlmann 2 1 Acadêmico do Curso de Sistemas de Informação da ULBRA Guaíba < mkbrambila@terra.com.br

Leia mais

Resumo de TCC Desenvolvimento de um sistema ERP com foco nas tecnologias de software livre / código aberto

Resumo de TCC Desenvolvimento de um sistema ERP com foco nas tecnologias de software livre / código aberto UFSC - Universidade Federal de Santa Catarina CTC Centro Tecnológico INE Departamento de Informática e Estatística INE5631 Projetos I Prof. Renato Cislaghi Resumo de TCC Desenvolvimento de um sistema ERP

Leia mais

Implementação de BD. Banco de dados relacional. Elementos que compõem o banco de dados CAMPO REGISTRO TABELA. Paulo Damico MDK Informática Ltda.

Implementação de BD. Banco de dados relacional. Elementos que compõem o banco de dados CAMPO REGISTRO TABELA. Paulo Damico MDK Informática Ltda. Implementação de BD Banco de dados relacional Elementos que compõem o banco de dados CAMPO REGISTRO TABELA Implementação de BD CAMPO O elemento campo é a menor unidade de armazenamento de um banco de dados

Leia mais

SISTEMA DE CONTROLE INTERNO DE FLUXO DE CAIXA DO SETOR DE APOIO FINANCEIRO (ULBRA GUAÍBA)

SISTEMA DE CONTROLE INTERNO DE FLUXO DE CAIXA DO SETOR DE APOIO FINANCEIRO (ULBRA GUAÍBA) SISTEMA DE CONTROLE INTERNO DE FLUXO DE CAIXA DO SETOR DE APOIO FINANCEIRO (ULBRA GUAÍBA) Alessandra Lubbe 1 Alexandre Evangelista 2 Jeandro Perceval 3 José Ramiro Pereira 4 Luiz Gustavo Mahlmann 5 RESUMO

Leia mais

EIMOBILE INSTITUIÇÕES DE ENSINO MOBILE

EIMOBILE INSTITUIÇÕES DE ENSINO MOBILE UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS EIMOBILE INSTITUIÇÕES DE ENSINO MOBILE por Miguel Aguiar Barbosa Trabalho de curso II submetido como

Leia mais

AUTOR(ES): CARLOS ANTONIO PINHEIRO PINTO, ERMÍNIO PEDRAL SANTANA, GUILHERME CASSIANO DA SILVA

AUTOR(ES): CARLOS ANTONIO PINHEIRO PINTO, ERMÍNIO PEDRAL SANTANA, GUILHERME CASSIANO DA SILVA Anais do Conic-Semesp. Volume 1, 2013 - Faculdade Anhanguera de Campinas - Unidade 3. ISSN 2357-8904 TÍTULO: SISTEMA MÓVEL DE COMPRAS POR QR CODE CATEGORIA: CONCLUÍDO ÁREA: ENGENHARIAS E TECNOLOGIAS SUBÁREA:

Leia mais

UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO TECNÓLOGO EM ANALISE E DESENVOLVIMENTO DE SISTEMAS

UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO TECNÓLOGO EM ANALISE E DESENVOLVIMENTO DE SISTEMAS UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO TECNÓLOGO EM ANALISE E DESENVOLVIMENTO DE SISTEMAS Sistema de Controle de Viaturas por Pablo Wasculewsky de Matos Orientador: Prof. Me. André Vinicius

Leia mais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais Arquitetura de Computadores Introdução aos Sistemas Operacionais O que é um Sistema Operacional? Programa que atua como um intermediário entre um usuário do computador ou um programa e o hardware. Os 4

Leia mais

Palavras-Chaves: engenharia de requisitos, modelagem, UML.

Palavras-Chaves: engenharia de requisitos, modelagem, UML. APLICAÇÃO DA ENGENHARIA DE REQUISITOS PARA COMPREENSÃO DE DOMÍNIO DO PROBLEMA PARA SISTEMA DE CONTROLE COMERCIAL LEONARDO DE PAULA SANCHES Discente da AEMS Faculdades Integradas de Três Lagoas RENAN HENRIQUE

Leia mais

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos

Leia mais

Spider-PM: Uma Ferramenta de Apoio à Modelagem de Processos de Software

Spider-PM: Uma Ferramenta de Apoio à Modelagem de Processos de Software Spider-PM: Uma Ferramenta de Apoio à Modelagem de Processos de Software Renan Sales Barros 1, Sandro Ronaldo Bezerra Oliveira 1 1 Faculdade de Computação Instituto de Ciências Exatas e Naturais (ICEN)

Leia mais

ALÉM DO BUG TRACKING : GERENCIANDO O SETOR DE SUPORTE COM O MANTISBT

ALÉM DO BUG TRACKING : GERENCIANDO O SETOR DE SUPORTE COM O MANTISBT ALÉM DO BUG TRACKING : GERENCIANDO O SETOR DE SUPORTE COM O MANTISBT Juliano Flores Prof. Lucas Plautz Prestes Centro Universitário Leonardo da Vinci - UNIASSELVI Gestão de Tecnologia da Informação (GTI034)

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 10 PROFª BRUNO CALEGARO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 10 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 10 PROFª BRUNO CALEGARO Santa Maria, 10 de Outubro de 2013. Revisão aula anterior Documento de Requisitos Estrutura Padrões Template Descoberta

Leia mais

FACULDADE DE CIÊNCIAS SOCIAIS E APLICADAS DO PARANÁ. Sistema de Gestão Escolar PROJETO FINAL Schola Ratio Versão 8

FACULDADE DE CIÊNCIAS SOCIAIS E APLICADAS DO PARANÁ. Sistema de Gestão Escolar PROJETO FINAL Schola Ratio Versão 8 FACULDADE DE CIÊNCIAS SOCIAIS E APLICADAS DO PARANÁ Sistema de Gestão Escolar PROJETO FINAL Schola Ratio Versão 8 CURITIBA Nov 2012 DJULLES IKEDA OSNIR FERREIRA DA CUNHA Sistema de Gestão Escolar PROJETO

Leia mais

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Ferramenta de apoio a gerência de configuração de software Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Gerência de Configuração

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

DELEGAÇÃO REGIONAL DO ALENTEJO CENTRO DE FORMAÇÃO PROFISSIONAL DE ÉVORA REFLEXÃO 4

DELEGAÇÃO REGIONAL DO ALENTEJO CENTRO DE FORMAÇÃO PROFISSIONAL DE ÉVORA REFLEXÃO 4 REFLEXÃO 4 Módulos 0776, 0780, 0781, 0786 e 0787 1/10 8-04-2013 Esta reflexão tem como objectivo partilhar e dar a conhecer o que aprendi nos módulos 0776 - Sistema de informação da empresa, 0780 - Aplicações

Leia mais

Linguagem de Programação Visual

Linguagem de Programação Visual Linguagem de Programação Visual Unidade 1 Ambiente de desenvolvimento Curso Técnico em Informática SUMÁRIO INTRODUÇÃO... 3 SOBRE O JAVA... 3 AMBIENTE DE DESENVOLVIMENTO... 5 RECURSOS DA FERRAMENTA NETBEANS...

Leia mais

Comparando Java e C#

Comparando Java e C# Por: Lincon Alexandre Marques Jonathan T. Dos Santos Ricardo Fumio Tanimoto Abril, 2009 Comparando Java e C# Introdução Escolhemos como tema deste artigo um comparativo entre as linguagens Java e C#, duas

Leia mais

Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II

Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II Prof. MSc. Hugo Souza Na última aula falamos um pouco da necessidade do surgimento

Leia mais

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma

Leia mais

A linguagem UML. UML e Diagramas de Casos de Uso e Classes. Por que usar UML? O que é modelagem?

A linguagem UML. UML e Diagramas de Casos de Uso e Classes. Por que usar UML? O que é modelagem? UML e Diagramas de Casos de Uso e Classes Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com A linguagem UML UML (Unified Modeling Language) Linguagem de Modelagem Unificada É uma linguagem de modelagem

Leia mais

Guia de Atualização PROJURIS WEB 4.5. Manual do Técnico Atualização - ProJuris Web 4.5. Manual do Técnico Atualização - ProJuris Web 4.

Guia de Atualização PROJURIS WEB 4.5. Manual do Técnico Atualização - ProJuris Web 4.5. Manual do Técnico Atualização - ProJuris Web 4. Guia de Atualização PROJURIS WEB 4.5 Por: Fabio Pozzebon Soares Página 1 de 11 Sistema ProJuris é um conjunto de componentes 100% Web, nativamente integrados, e que possuem interface com vários idiomas,

Leia mais

PROJETO DA DISCIPLINA. PES II Processo de Engenharia de Software II

PROJETO DA DISCIPLINA. PES II Processo de Engenharia de Software II UNIOESTE - Universidade Estadual do Oeste do Paraná CCET - Centro de Ciências Exatas e Tecnológicas Colegiado de Informática Curso de Bacharelado em Informática PROJETO DA DISCIPLINA PES II Processo de

Leia mais

PSQT Prêmio SESI Qualidade no Trabalho

PSQT Prêmio SESI Qualidade no Trabalho ANEXO II PSQT Prêmio SESI Qualidade no Trabalho Manutenção Evolutiva Modelo: 4.0 Sistema Indústria, 2008 Página 1 de 18 Histórico da Revisão Data Descrição Autor 06/12/2007 Necessidades para atualização

Leia mais

Modelos de Sistemas Casos de Uso

Modelos de Sistemas Casos de Uso Modelos de Sistemas Casos de Uso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2000 Slide 1 Casos de Uso Objetivos Principais dos Casos de Uso: Delimitação do contexto de

Leia mais

Qualidade de Software

Qualidade de Software Qualidade de Software O software é algo abstrato, pois são as instruções que quando executadas atingem o propósito desejado no sistema computacional. (Algoritmo). As principais características são: Complexidade:

Leia mais

Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas. Criação de uma Serviço de Geração de Relatórios

Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas. Criação de uma Serviço de Geração de Relatórios Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas Criação de uma Serviço de Geração de Relatórios Goiânia 12/2011 Versionamento 12/12/2011 Hugo Marciano... 1.0

Leia mais

Requisitos do Sistema

Requisitos do Sistema PJ8D - 017 ProJuris 8 Desktop Requisitos do Sistema PJ8D - 017 P á g i n a 1 Sumario Sumario... 1 Capítulo I - Introdução... 2 1.1 - Objetivo... 2 1.2 - Quem deve ler esse documento... 2 Capítulo II -

Leia mais

Fundamentos da inteligência de negócios: gestão da informação e de bancos de dados

Fundamentos da inteligência de negócios: gestão da informação e de bancos de dados Fundamentos da inteligência de negócios: gestão da informação e de bancos de dados slide 1 1 Copyright 2011 Pearson Education, Inc. publishing as Prentice Hall Objetivos de estudo Como um banco de dados

Leia mais

ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL

ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL Francisco Tiago Avelar, Vitor Conrado F. Gomes, Cesar Tadeu Pozzer Universidade Federal de Santa Maria UFSM Curso de Ciência da Computação

Leia mais

TECNOLOCIA JAVA WEB PARA DESENVOLVIMENTO DE SISTEMAS DE LEILÃO

TECNOLOCIA JAVA WEB PARA DESENVOLVIMENTO DE SISTEMAS DE LEILÃO TECNOLOCIA JAVA WEB PARA DESENVOLVIMENTO DE SISTEMAS DE LEILÃO Danilo Alves Verone de Oliveira ¹, Jaime William Dias ¹ ² ¹ Universidade Paranaense (UNIPAR) Paranavaí - PR - Brasil dan.verone@hotmail.com

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL FACULDADE DE INFORMÁTICA EDITOR DE HELP MANUAL DO USUÁRIO

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL FACULDADE DE INFORMÁTICA EDITOR DE HELP MANUAL DO USUÁRIO PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL FACULDADE DE INFORMÁTICA EDITOR DE HELP MANUAL DO USUÁRIO ANA PAULA CARVALHO LORENZONI MICHELINE PARIZOTTO PROFESSORA. MILENE SELBACH SILVEIRA ORIENTADORA

Leia mais

Sistema Gerenciador de Conteúdo OpenCms: um caso de sucesso no CEFET-MG

Sistema Gerenciador de Conteúdo OpenCms: um caso de sucesso no CEFET-MG Sistema Gerenciador de Conteúdo OpenCms: um caso de sucesso no CEFET-MG Marco T. A. Rodrigues*, Paulo E. M. de Almeida* *Departamento de Recursos em Informática Centro Federal de Educação Tecnológica de

Leia mais

Sistema de Automação Comercial de Pedidos

Sistema de Automação Comercial de Pedidos Termo de Abertura Sistema de Automação Comercial de Pedidos Cabana - Versão 1.0 Iteração 1.0- Release 1.0 Versão do Documento: 1.5 Histórico de Revisão Data Versão do Documento Descrição Autor 18/03/2011

Leia mais

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013 A DIRETORIA DE INFORMÁTICA DINFO DA UNIVERSIDADE DO ESTADO DO RIO DE JANEIRO -UERJ, no uso de suas atribuições legais, estabelece: Art. 1º: Para fins de normatização do Desenvolvimento Tecnológico na UERJ

Leia mais

Características do Software

Características do Software Questionamentos Por que tanta demora para entregar? Por que os prazos se atrasam? Por que os custos são altos? Por que não achar todos os erros antes de entregar? Por que dificuldade em medir o progresso

Leia mais

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Juarez Bachmann Orientador: Alexander Roberto Valdameri Roteiro Introdução Objetivos Fundamentação teórica Desenvolvimento

Leia mais

SIGECO07 Sistema Integrado de Gestão de Contas Universidade Federal de Lavras PLANO DE PROJETO 23/09/2007 SIGECO07/GERENCIA/PROJETOS/

SIGECO07 Sistema Integrado de Gestão de Contas Universidade Federal de Lavras PLANO DE PROJETO 23/09/2007 SIGECO07/GERENCIA/PROJETOS/ SIGECO07 Sistema Integrado de Gestão de Contas Universidade Federal de Lavras PLANO DE PROJETO 23/09/2007 SIGECO07/GERENCIA/PROJETOS/ ModeloPlanoProjeto_2007_04_24 SIGECO07_PlanoProjeto_2007_09_23 Página

Leia mais

Nome da Empresa Sistema digitalizado no almoxarifado do EMI

Nome da Empresa Sistema digitalizado no almoxarifado do EMI Nome da Empresa Documento Visão Histórico de Revisões Data Versão Descrição Autor 23/02/2015 1.0 Início do projeto Anderson, Eduardo, Jessica, Sabrina, Samuel 25/02/2015 1.1 Correções Anderson e Eduardo

Leia mais

MANUAL DO GERENCIADOR ESCOLAR WEB

MANUAL DO GERENCIADOR ESCOLAR WEB CNS LEARNING MANUAL DO GERENCIADOR ESCOLAR WEB Versão Online 13 Índice ÍNDICE... 1 VISÃO GERAL... 2 CONCEITO E APRESENTAÇÃO VISUAL... 2 PRINCIPAIS MÓDULOS... 3 ESTRUTURAÇÃO... 3 CURSOS... 4 TURMAS... 4

Leia mais

FACULDADE DE TECNOLOGIA SENAI DE DESENVOLVIMENTO GERENCIAL - FATESG PROJETO INTEGRADOR 3º PERÍODO GOIÂNIA

FACULDADE DE TECNOLOGIA SENAI DE DESENVOLVIMENTO GERENCIAL - FATESG PROJETO INTEGRADOR 3º PERÍODO GOIÂNIA FACULDADE DE TECNOLOGIA SENAI DE DESENVOLVIMENTO GERENCIAL - FATESG PROJETO INTEGRADOR 3º PERÍODO GOIÂNIA 2012. INFORMAÇÕES GERAIS FACULDADE DE TECNOLOGIA SENAI DE DESENVOLVIMENTO GERENCIAL Coordenação

Leia mais

DMS Documento de Modelagem de Sistema. Versão: 1.4

DMS Documento de Modelagem de Sistema. Versão: 1.4 DMS Documento de Modelagem de Sistema Versão: 1.4 VERANEIO Gibson Macedo Denis Carvalho Matheus Pedro Ingrid Cavalcanti Rafael Ribeiro Tabela de Revisões Versão Principais Autores da Versão Data de Término

Leia mais

guia prático 2a Edição Gilleanes T.A. Guedes Novatec

guia prático 2a Edição Gilleanes T.A. Guedes Novatec guia prático 2a Edição Gilleanes T.A. Guedes Novatec Copyright 2007, 2014 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta

Leia mais

Palavras-Chaves: estoque, modelagem, requisitos, UML, vendas.

Palavras-Chaves: estoque, modelagem, requisitos, UML, vendas. UTILIZAÇÃO DA UML NO DESENVOLVIMENTO DE SISTEMA DE CONTROLE DE VENDAS E ESTOQUE GILBERTO FRANCISCO PACHECO DOS SANTOS Discente da AEMS Faculdades Integradas de Três Lagoas JACKSON LUIZ ARROSTI Discente

Leia mais

Tecnologia da Informação. Prof. Esp. Lucas Cruz

Tecnologia da Informação. Prof. Esp. Lucas Cruz Tecnologia da Informação Prof. Esp. Lucas Cruz Componentes da Infraestrutura de TI Software A utilização comercial da informática nas empresas iniciou-se por volta dos anos 1960. O software era um item

Leia mais

Conceitos de Banco de Dados

Conceitos de Banco de Dados Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir

Leia mais

Desenvolvimento de Software Livre para a área

Desenvolvimento de Software Livre para a área Desenvolvimento de Software Livre para a área de Saúde Daniel Weingaertner Departamento de Informática UFPR Centro de Computação Científica e Software Livre C3SL Programa de Extensão Conhecendo Padrões

Leia mais

Manual do Teclado de Satisfação Local Versão 1.2.2

Manual do Teclado de Satisfação Local Versão 1.2.2 Manual do Teclado de Satisfação Local Versão 1.2.2 18 de fevereiro de 2015 Departamento de Engenharia de Produto (DENP) SEAT Sistemas Eletrônicos de Atendimento 1. Introdução O Teclado de Satisfação é

Leia mais

Administração de Banco de Dados

Administração de Banco de Dados Administração de Banco de Dados Professora conteudista: Cida Atum Sumário Administração de Banco de Dados Unidade I 1 INTRODUÇÃO A BANCO DE DADOS...1 1.1 Histórico...1 1.2 Definições...2 1.3 Importância

Leia mais

Programação de Computadores II: Java. / NT Editora. -- Brasília: 2014. 82p. : il. ; 21,0 X 29,7 cm.

Programação de Computadores II: Java. / NT Editora. -- Brasília: 2014. 82p. : il. ; 21,0 X 29,7 cm. Autor José Jesse Gonçalves Graduado em Licenciatura em Matemática pela Universidade Estadual de São Paulo - UNESP, de Presidente Prudente (1995), com especialização em Análise de Sistemas (1999) e mestrado

Leia mais

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Engenharia de Software Introdução Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Tópicos Apresentação da Disciplina A importância do Software Software Aplicações de Software Paradigmas

Leia mais

PRÓTOTIPO MÓVEL DE TELEMEDICINA PARA AUXILIO DE DIAGNOSTICO CARDIACO COM ECG EM CARATER EMERGENCIAL

PRÓTOTIPO MÓVEL DE TELEMEDICINA PARA AUXILIO DE DIAGNOSTICO CARDIACO COM ECG EM CARATER EMERGENCIAL PRÓTOTIPO MÓVEL DE TELEMEDICINA PARA AUXILIO DE DIAGNOSTICO CARDIACO COM ECG EM CARATER EMERGENCIAL Adson Diego Dionisio da SILVA 1, Saulo Soares de TOLEDO², Luiz Antonio Costa Corrêa FILHO³, Valderí Medeiros

Leia mais

Aplicações Desktop: Swing/SubMacroForms. Carlos Renato Alves Gouveia Novembro/2008 cgouveia@fes.br

Aplicações Desktop: Swing/SubMacroForms. Carlos Renato Alves Gouveia Novembro/2008 cgouveia@fes.br Aplicações Desktop: Swing/SubMacroForms Carlos Renato Alves Gouveia Novembro/2008 cgouveia@fes.br Carlos Renato Alves Gouveia Especialista em Engenharia de Web Sites pela UFMS; Professor Universitário

Leia mais

Sistema para gestão de restaurante

Sistema para gestão de restaurante Sistema para gestão de restaurante Luciana Tavares Rosa luciana.rosa@inf.aedb.br AEDB Fábio Rezende Dutra fabio.dutra@inf.aedb.br AEDB Resumo:O sistema para gestão de restaurante é um software desenvolvido

Leia mais

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido Arquitetura Roteiro Arquitetura Tipos de Arquitetura Centralizado Descentralizado Hibrido Questionário 2 Arquitetura Figura 1: Planta baixa de uma casa 3 Arquitetura Engenharia de Software A arquitetura

Leia mais

SISCAI - SISTEMA DE CONTROLE DE ACESSO À INTERNET RESUMO

SISCAI - SISTEMA DE CONTROLE DE ACESSO À INTERNET RESUMO SISCAI - SISTEMA DE CONTROLE DE ACESSO À INTERNET Fábio Junior Alves 1 Ernani Vinícius Damasceno 2 RESUMO A Internet é um dos fenômenos mais interessantes em redes, sendo que seu impacto reflete em toda

Leia mais

Relatório Individual Sumarizado para bolsa Fapesp de Treinamento Técnico TT-4A

Relatório Individual Sumarizado para bolsa Fapesp de Treinamento Técnico TT-4A Relatório Individual Sumarizado para bolsa Fapesp de Treinamento Técnico TT-4A 23/02/2013 Título do Projeto: Desenvolvimento de um sistema de informações integrado para pesquisas sobre políticas públicas.

Leia mais