76
C ENTRO E STADUAL DE E DUCAÇÃO T ECNOLÓGICA P AULA S OUZA FACULDADE DE TECNOLOGIA DE LINS PROF. ANTONIO SEABRA CURSO SUPERIOR DE TECNOLOGIA EM BANCO DE DADOS LEONARDO RIGO RIBEIRO DA SILVA MATHEUS MARIANO DA SILVA SISTEMA WEB DE GERENCIAMENTO BIBLIOTECÁRIO LINS/SP 2º SEMESTRE/2013

CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

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

LEONARDO RIGO RIBEIRO DA SILVA

MATHEUS MARIANO DA SILVA

SISTEMA WEB DE GERENCIAMENTO BIBLIOTECÁRIO

LINS/SP 2º SEMESTRE/2013

Page 2: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

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

LEONARDO RIGO RIBEIRO DA SILVA

MATHEUS MARIANO DA SILVA

SISTEMA WEB DE GERENCIAMENTO BIBLIOTECÁRIO

Trabalho de Conclusão de Curso apresentado à Faculdade de Tecnologia de Lins para obtenção do Título de Tecnólogo em Banco de Dados.

Orientador: Prof. Me. Fábio Lúcio Meira

LINS/SP 2º SEMESTRE/2013

Page 3: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

LEONARDO RIGO RIBEIRO DA SILVA

MATHEUS MARIANO DA SILVA

SISTEMA WEB DE GERENCIAMENTO BIBLIOTECÁRIO

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 do

Prof. Me. Fábio Lucio Meira.

Data de aprovação: 12 /12/2013

________________________________________

Orientador: Prof. Me. Fábio Lucio Meira

________________________________________

Prof. Esp. Alciano Gustavo G. Oliveira

________________________________________

Prof. Me. Alexandre Ponce de Oliveira

Page 4: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

A minha mãe Adriana, que me ilumina e apoia incondicionalmente. Ao meu pai Cláudio, que me guia por quais caminhos percorrer; e a minha irmã Rafaela, que mesmo com pouca idade, me ensina a cada dia uma nova liturgia de amar.

Leonardo Rigo Ribeiro da Silva

Page 5: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

Dedico a minha família principalmente aos meus pais Rita e Carlos, que me apoiaram e me incentivaram a nunca desistir, mesmo nos momentos mais difíceis em que eu pensava que não seria possível seguir em frente com este trabalho.

Matheus Mariano da Silva

Page 6: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

AGRADECIMENTOS

Primeiramente e acima de tudo, queremos agradecer a Deus por ter nos dado

força e fé quando tudo parecia perdido e incerto; e por permitir que realizássemos

esse grande feito em nossas vidas.

Agradecemos especialmente ao Professor Fábio Lúcio Meira, que aceitou

humildemente em ser nosso orientador neste árduo trabalho e por ter nos passado

um pouco de sua imensa sabedoria.

Agradecemos também ao Prof. Me. Mário Henrique de Souza Pardo que nos

sancionou várias dúvidas e por ter nos apoiado e incentivado durante o

desenvolvimento do trabalho.

A todos os professores que nos ajudaram nas dúvidas decorrentes do curso

durante esses anos, especialmente as professoras Luciane Noronha do Amaral e

Gisele Molina Bocari e aos Professores Anderson Pazin, Adriano Bezerra e Luiz

Fernando de Oliveira Silva.

Ao nosso colega Cleberton Santos por ter nos ajudado na criação do logotipo

do site.

Ao nosso colega de classe João Otávio de Almeida por ter nos ajudado em

várias dúvidas referentes à implementação do sistema.

E por último, mas não menos importante, queremos agradecer especialmente

aos nossos amigos Márcio, Everaldo, Elisangela e Mariana (Turma A) por todo

apoio, companheirismo e por nos ensinarem o verdadeiro significado da amizade.

Leonardo Rigo Ribeiro da Silva

Matheus Mariano da Silva

Page 7: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

“São as nossas escolhas que revelam o que realmente somos, muito mais do que as nossas qualidades.”

J. K. Rowling

Page 8: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

RESUMO

O objetivo do presente trabalho foi o desenvolvimento de um sistema de gerenciamento web para uma biblioteca, que seja capaz de melhorar as funcionalidades de quem trabalha nela e interagir com quem a frequenta de forma rápida e intuitiva. Para tanto, fez-se necessário um estudo e a utilização de tecnologias para web, tais como Java Server Pages, Servlets, Hypertext Markup Language e jQuery; conjuntamente da tecnologia de banco de dados e da integração que há entre web e uma base de dados. Para um melhor entendimento deste trabalho também é apresentado a análise de negócios e análise de requisitos, que atendem, de maneira mais abrangente, as funcionalidades de uma biblioteca, não tendo em vista uma biblioteca em particular. Tal desenvolvimento deste projeto justifica-se no fato de que a implementação de um sistema de gerenciamento utilizando a web seria viável para uma biblioteca que atrairia mais leitores, sendo que estes teriam acesso às pesquisas online ao rol de obras. Por fim, este documento apresenta uma conclusão sobre o trabalho, em que são descritas as principais dificuldades para se desenvolver para web, e também, apresenta alguns aprimoramentos e ampliações que podem ser realizados em projetos futuros, considerando que o desenvolvimento web e móvel é expansivo. Palavras-chave: Biblioteca. Internet. Site. HTML5. Sistema Web. Banco de dados. JSP. Servlet.

Page 9: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

ABSTRACT

The objective of this work was the development of a web management system for a library, which is able to improve the functionality of those who work in it and interact with those who attend quickly and intuitively. Therefore, it was necessary to study and use of web technologies such as Java Server Pages, Servlets, Hypertext Markup Language and jQuery; together technology and database integration that exists between web and a database. For a better understanding of this work also presents business analysis and requirements, serving, more broadly, the features of a library, not aimed at a particular library. Such a development of this project is justified in the fact that the implementation of a management system using the web would be feasible for a library that would attract more readers, and they have access to online surveys to the list of works. Finally, this document presents a conclusion about the work, describing the main difficulty is in developing web and also presents some improvements and extensions that can be realized in future projects, given that development web and mobile is expansive. Keywords: Library. Internet. Site. HTML5. Web System. Database. JSP. Servlet.

Page 10: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

LISTA DE ILUSTRAÇÕES

Figura 1.1 - Arquitetura de aplicativo servlet. ............................................................ 20

Figura 1.2- Aquitetura de aplicativo servlet com servidor HTTP. ............................... 20

Figura 1.3 – Mecanismo de uma aplicação Java para acessar um banco de dados.22

Figura 2.1 - Diagrama de Caso de Uso. .................................................................... 30

Figura 2.2 – Diagrama de classes. ............................................................................ 31

Figura 2. 3 – Diagrama de Atividade Login Restrito .................................................. 32

Figura 2. 4 – Diagrama de MVC Login Restrito. ........................................................ 32

Figura 2.5 – Diagrama de Sequência Login Restrito. ................................................ 33

Figura 2. 6 – Diagrama de Atividade Manter Leitor. .................................................. 33

Figura 2. 7 – Diagrama de MVC Manter Leitor. ......................................................... 34

Figura 2. 8 – Diagrama de Sequência Manter Leitor. ................................................ 34

Figura 2.9 – Diagrama de Atividade Manter Autor. ................................................... 35

Figura 2.10 – Diagrama de MVC Manter Autor. ........................................................ 35

Figura 2. 11 – Diagrama de Sequência Manter Autor. .............................................. 36

Figura 2. 12 – Diagrama de Atividade Manter Editora. .............................................. 36

Figura 2. 13 – Diagrama de MVC Manter Editora. .................................................... 37

Figura 2. 14 – Diagrama de Sequência Manter Editora. ........................................... 37

Figura 2.15 – Diagrama de Atividade Manter Obra. .................................................. 38

Figura 2. 16 – Diagrama de MVC Manter Obra. ........................................................ 38

Figura 2. 17 – Diagrama de Sequência Manter Obra. ............................................... 39

Figura 2. 18 – Diagrama de Atividade Efetuar Empréstimo....................................... 40

Figura 2. 19 – Diagrama de MVC Efetuar Empréstimo. ............................................ 40

Figura 2. 20 – Diagrama de Sequência Efetuar Empréstimo. ................................... 41

Figura 2. 22 – Diagrama de MVC Encerrar Empréstimo. .......................................... 42

Figura 2. 23 – Diagrama de Sequência Encerrar Empréstimo. ................................. 42

Figura 2. 24 – Diagrama de Atividade Gerar Multa. .................................................. 43

Figura 2. 25 – Diagrama de MVC Gerar Multa. ......................................................... 43

Figura 2. 26 – Diagrama de Sequência Gerar Multa. ................................................ 44

Figura 2. 27 – Diagrama de Atividade Renovar Empréstimo. .................................... 44

Figura 2. 28 – Diagrama MVC Renovar Empréstimo. ............................................... 45

Page 11: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

Figura 2. 29 – Diagrama de Sequência Renovar Empréstimo. ................................. 45

Figura 2. 30 – Diagrama de Atividade Consultar Obra. ............................................. 46

Figura 2. 31 – Diagrama de MVC Consultar Obra. .................................................... 46

Figura 2. 32 – Diagrama de Sequência Consultar Obra. ........................................... 46

Figura 2. 33 – Diagrama de Atividade Efetuar Login (Usuário Leitor). ...................... 47

Figura 2. 34 – Diagrama de MVC Efetuar Login (Usuário Leitor). ............................. 47

Figura 2. 35 – Diagramas de Sequência Efetuar Login (Usuário Leitor). .................. 48

Figura 2. 36 – Diagrama de Atividade Efetuar Reserva. ........................................... 48

Figura 2.37 – Diagrama de MVC Efetuar Reserva. ................................................... 49

Figura 2.38 – Diagrama de Sequência Efetuar Reserva. .......................................... 49

Figura 2.39 – Diagrama do Modelo Relacional do Banco de Dados. ........................ 50

Figura 2.40 – Diagrama do Modelo Lógico do Banco de Dados. .............................. 51

Figura 3.1 – Home Page do Funcionário. .................................................................. 52

Figura 3.2 – Login de Usuários. ................................................................................ 53

Figura 3.3 – Home Page do Leitor. ........................................................................... 53

Figura 3.4 – Visualizar Minhas Reservas. ................................................................. 54

Figura 3.5 – Visualizar Meus Empréstimos. .............................................................. 54

Figura 3.6 – Listar Obras. .......................................................................................... 55

Figura 3.7 – Página de Detalhes da Obra. ................................................................ 56

Figura 3.8 – Carrinho das Reservas. ......................................................................... 56

Figura 3.9 – Pesquisar no Acervo da Biblioteca. ....................................................... 57

Figura 3.10 – Resultado da Pesquisa. ...................................................................... 57

Figura 3.11 – Página Inicial do Bibliotecário. ............................................................. 58

Figura 3.12 – Cadastrar Leitor. .................................................................................. 59

Figura 3.13 – Apresentar Leitor. ................................................................................ 59

Figura 3.14 – Lista de Leitores. ................................................................................. 59

Figura 3.15 – Cadastrar Autor. .................................................................................. 60

Figura 3.16 – Autores. ............................................................................................... 60

Figura 3.17 – Cadastrar Editora. ............................................................................... 61

Figura 3.18 – Lista de Editoras. ................................................................................. 61

Figura 3.19 – Cadastrar Gênero Literário. ................................................................. 61

Figura 3.20 – Gêneros Literários. .............................................................................. 62

Figura 3.21 – Cadastrar Obra. ................................................................................... 62

Figura 3.22 – Apresentar Obra. ................................................................................. 63

Page 12: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

Figura 3.23 – Lista de Leitores. ................................................................................. 63

Figura 3.24 – Página de Reservas. ........................................................................... 64

Figura 3.25 – Listar Reservas. .................................................................................. 64

Figura 3.26 – Página de Visualizar Reserva. ............................................................ 65

Figura 3.27 – Página Efetuar Reserva como Empréstimo......................................... 65

Figura 3.28 – Página de Empréstimos. ..................................................................... 66

Figura 3.29 – Página de Efetuar Empréstimo. ........................................................... 66

Figura 3.30 – Página Listar Empréstimos.................................................................. 67

Figura 3.31 – Página Apresentar Empréstimo. .......................................................... 67

Figura 3.32 – Página Empréstimos Multados. ........................................................... 67

Page 13: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

LISTA DE ABREVIATURAS E SIGLAS

ASP – Active Server Pages

CDD – Classificação Decimal de Dewey

CGI – Common Gateway Interface

CSS – Cascading Style Sheet

HTML – HyperText Markup Language

HTTP – HyperText Transfer Protocol

HTTPS – HyperText Transfer Protocol Secure

IDE – Integrated Development Environment

ISO – International Organization for Standardization

JDBC – Java Database Connectivity

JEE – Java Enterprise Edition

JME – Java Micro Edition

JSE – Java Standard Edition

JSP – JavaServer Pages

MER – Modelo Entidade Relacionamento

MVC – Modelo Visão Controle

OMG – Object Management Group

PHP – Personal Home Page

RG – Registro Geral

SQL – Structured Query Language

SSL – Secure Sockets Layer

UML – Unitified Modeling Language

XE – Express Edition

XML – Extensible Markup Language

Page 14: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

SUMÁRIO

INTRODUÇÃO ......................................................................................... 16

1 TECNOLOGIAS E FERRAMENTAS ................................................... 18

1.1 TECNOLOGIA JAVA ............................................................................... 18

1.2 TECNOLOGIA SERVLET ......................................................................... 19

1.3 JSP ...................................................................................................... 21

1.4 APACHE TOMCAT ................................................................................. 21

1.5 SISTEMA GERENCIADOR DE BANCO DE DADOS ORACLE ...................... 22

1.6 JDBC .................................................................................................... 22

1.7 UNIFIED MODELING LANGUAGE (UML) .................................................. 23

1.8 HTML5 .................................................................................................. 23

1.9 CASCADING STYLE SHEET (CSS) .......................................................... 24

1.10 NETBEANS INTEGRATED DEVELOPMENT ENVIRONMENT (IDE) ............ 25

1.11 ASTAH COMUMMUNITY ....................................................................... 25

1.12 JQUERY .............................................................................................. 25

2 ANÁLISE E PROJETO DE SISTEMA ................................................. 26

2.1 ANÁLISE DE NEGÓCIO .......................................................................... 26

2.1.1 Instrução do Problema .......................................................................... 26

2.1.2 Análise de Mercado .............................................................................. 27

2.1.3 Atores e Envolvidos no Processo ............................................................ 27

2.1.4 Descrição do Ambiente Atual ................................................................. 27

2.2 VISÃO GERAL DO PRODUTO ................................................................. 28

2.2.1 Perspectiva do Produto ......................................................................... 28

2.2.2 Premissas e Dependências.................................................................... 28

2.2.3 Características ..................................................................................... 28

2.2.4. Outros Requisitos do Produto ................................................................ 29

2.3. ANÁLISE DE REQUISITOS ..................................................................... 29

2.3.1. Diagrama de Caso de Uso .................................................................... 30

Page 15: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

2.3.2. Diagrama de Classes ........................................................................... 31

2.3.3 Especificações de Histórias e Diagramas ................................................. 31

2.3.3.1 Login Restrito .................................................................................... 31

2.3.3.2 Manter Leitor ..................................................................................... 33

2.3.3.3 Manter Autor ..................................................................................... 35

2.3.3.4. Manter Editora .................................................................................. 36

2.3.3.5. Manter Obra ..................................................................................... 38

2.3.3.6 Efetuar Empréstimo ........................................................................... 40

2.3.3.7 Encerrar Empréstimo ......................................................................... 41

2.3.3.8 Gerar Multa ...................................................................................... 42

2.3.3.9 Renovar Empréstimo .......................................................................... 44

2.3.3.10 Consultar Obra ................................................................................ 45

2.3.3.11 Efetuar Login (Usuário Leitor) ............................................................ 47

2.3.3.12 Efetuar Reserva ............................................................................... 48

2.3.4 Projeto de Banco de Dados ................................................................... 50

2.3.4.1 Diagrama de Dados (MER) ................................................................. 50

2.3.4.2 Mapeamento para Modelo Relacional e Projeto Físico ............................ 51

3 IMPLEMENTAÇÃO .............................................................................. 52

3.1 PÁGINA DE ÍNICIO DO SISTEMA ............................................................. 52

3.2 INTERFACE GRÁFICA DO USUÁRIO ....................................................... 53

3.2.1 Página Inicial do Usuário Leitor .............................................................. 53

3.2.2 Página de Lista de Obras ...................................................................... 55

3.2.2 Página de Detalhes da Obra .................................................................. 55

3.2.2 Reservar Obra ..................................................................................... 56

3.2.2 Pesquisar no Acervo de Obras ............................................................... 57

3.3 INTEFACE GRÁFICA DO BIBLIOTECÁRIO ................................................ 58

3.3.1 Página Inicial do Bibliotecário ................................................................. 58

3.3.2 Cadastrar e Listar Leitor ........................................................................ 58

3.3.3 Cadastrar Autores ................................................................................ 60

3.3.4 Cadastrar Editora ................................................................................. 61

Page 16: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

3.3.5 Cadastrar Gênero Literário .................................................................... 61

3.3.6 Cadastrar Obra .................................................................................... 62

3.3.7 Página de Reservas ............................................................................. 64

3.3.8 Página de Empréstimos ........................................................................ 65

CONSIDERAÇÕES FINAIS .................................................................... 68

REFERÊNCIAS BIBLIOGÁFICAS.......................................................... 69

APÊNDICE A ........................................................................................... 72

A.1 ENCERRAR RESERVAS NÃO REALIZADAS ............................................ 72

A.2 BLOQUEAR LEITOR INADIMPLENTE ...................................................... 73

A.3 DESBLOQUEAR LEITOR INADIMPLENTE ................................................ 74

Page 17: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

16

INTRODUÇÃO

O hábito da leitura é capaz de realizar mudanças construtivas tanto para a

formação cultural como para formação de uma pessoa como cidadã, e é

na biblioteca, em meio a todos os livros que um mundo diferente é descoberto pelas

crianças, adolescentes e adultos. (DUTRA, 2011)

Contudo, não basta para uma biblioteca ter um grande número de obras com

renomados títulos e clássicos. Um bom gerenciamento e uma organização bem

estruturada são capazes de influenciar no apreço que o cliente tem pelo

estabelecimento. Nos dias atuais, o uso de um sistema informatizado que gerencie

as funções e atividades de uma instituição ou de uma empresa pode ser um

diferencial para se obter um gerenciamento eficaz. A informatização de uma

biblioteca traz benefícios para suas funcionalidades administrativas, pois facilita os

processos de controle sobre o fluxo do acervo de obras e de clientes.

E a realização de consultas e reservas às obras via site web traz para o

usuário mais comodidade e rapidez para a escolha da obra desejada.

Independentemente de onde o usuário estiver ele poderá obter todas as informações

da obra e de seu autor, o que influencia numa tomada de decisão mais rápida para

suas necessidades pessoais ou profissionais, sendo esta a maior justificativa para

que um sistema de gerenciamento de bibliotecas possa ter uma visão para o cliente.

Neste trabalho é apresentado um site web de gerenciamento bibliotecário,

agradável e intuitivo que permite ao frequentador da biblioteca realizar consultas ao

acervo de obras, bem como ao bibliotecário para que possa realizar suas

funcionalidades e gerenciamento das regras de negócios da biblioteca.

Objetiva-se que os leitores da biblioteca sintam mais facilidade e comodidade

para pesquisar os livros de seu agrado no acervo em qualquer lugar que estejam; e

que o fluxo de operações feitas pelo sistema possa agilizar a administração dos

serviços propostos pela biblioteca. Para o desenvolvimento deste trabalho de

conclusão de curso tomou-se como base na linguagem de programação Java

orientada a objetos, e do uso do sistema de gerenciamento de banco de dados

Oracle e do servidor web Apache Tomcat.

Os capítulos deste trabalho estão organizados da seguinte forma: no primeiro

capítulo descreve-se as tecnologias e as ferramentas que se fizeram necessárias

Page 18: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

17

para o desenvolvimento deste trabalho; no segundo capítulo trata-se da análise de

negócios e análise de requisitos, em que se discute como as regras de negócios e

como o escopo do sistema proposto foram desenvolvidos; e no terceiro apresenta-se

a implementação e o funcionamento do site.

Por fim, são apresentadas as considerações finais dos autores deste trabalho

de conclusão de curso, abordando uma breve discussão sobre as dificuldades,

assim como, o aprendizado adquirido durante o desenvolvimento deste trabalho de

conclusão de curso.

Page 19: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

18

1 TECNOLOGIAS E FERRAMENTAS

Neste primeiro capítulo são abordadas as tecnologias e as ferramentas

utilizadas no desenvolvimento deste projeto.

1.1 TECNOLOGIA JAVA

De acordo com Pamplona (2009), a tecnologia Java não se prende a

nenhuma arquitetura. Sua criação teve início em 1991, sob o nome de Green

Project. Nele trabalharam James Gosling, Mike Sheridan e Patrik Naughton.

Segundo Campos (2006), o projeto pretendia que a linguagem Java fosse

empregada na programação de produtos eletrônicos. As linguagens C e C++ não

atendiam as necessidades que se desejavam da nova linguagem, pois necessitavam

ser compiladas para cada tipo específico de processador. Além do mais, o ciclo de

vida dos produtos eletrônicos são maiores que os de software e haveria de se

manter a compatibilidade retroativa. Assim, iniciou o projeto de linguagem de

programação apropriada a este tipo de nicho: a linguagem Java foi criada. O anúncio

oficial da linguagem foi feito em maio de 1995 na conferência da Sun World em San

Francisco.

As características da linguagem Java são: sua abordagem para orientação a

objetos, compilada e independente de arquitetura de computadores. Estas

características possibilitam a esta linguagem ser robusta e extensível. Podem-se

fazer sistemas que executem em desktop, em rede, para a Internet, com

processamento distribuído, para executar em celulares e palms, entre outros.

A linguagem Java é executada em mais de 850 milhões de computadores

pessoais e em bilhões de dispositivos em todo o mundo, inclusive telefones

celulares e dispositivos de televisão. (Java, 2013)

A linguagem Java é dividida em três principais arquiteturas de acordo com

Deitel (2012): Java Enterprise Edition (JEE) é voltado para o desenvolvimento de

aplicações de larga escala, redes distribuídas e aplicações baseadas na web; Java

Micro Edition (JME) é voltado para o desenvolvimento de aplicações para pequenos

dispositivos limitados de memória, como os smartphones; e Java Standard Edition

(JSE) é utilizado numa vasta gama de aplicações, tais como computadores

Page 20: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

19

pessoais, notebooks e arquiteturas com poder de processamento e memória

consideráveis.

1.2 TECNOLOGIA SERVLET

Segundo Kurniawan (2002), a tecnologia Servlet é a base do desenvolvimento

de aplicativos web que utilizam a linguagem de programação Java. É uma das

tecnologias mais importantes, e é subjacente para outra tecnologia Java popular

para o desenvolvimento de aplicativos: Java Server Pages (JSP).

A criação de conteúdos web dinâmicos se tornou possível por meio da

tecnologia Common Gateway Interface (CGI). Entretanto, à medida que a Internet se

tornou mais e mais popular, o CGI começou a apresentar grandes falhas em

aplicativos escalonáveis de Internet. Sendo assim, gradativamente tecnologias

novas e melhores surgiram e substituíram o CGI, e uma dessas foi a tecnologia

Servlet, que foi introduzida pela Sun Microsystems em 1995.

Os benefícios do uso de servlets se dão pelo seu desempenho que é superior

a CGI, pois não há processo de criação para cada solicitação de cliente. Ao invés,

cada solicitação é gerenciada pelo processo contentor de servlet. Depois que um

servlet termina de processar uma solicitação, ele permanece na memória,

aguardando outra solicitação. (KURNIAWAN, 2002)

Os servlets têm acesso a toda a família de bibliotecas Java, incluindo a

biblioteca Java Database Connectivity (JDBC) para acessar bancos de dados

corporativos. Os servlets também podem acessar uma biblioteca de chamadas

específicas de Hypertext Transfer Protocol (HTTP) e receber todos os benefícios da

linguagem Java madura, incluindo a portabilidade, desempenho, reutilização e

proteção contra acidentes. Hoje os servlets são uma escolha popular para as

construções de aplicações web interativas. (ORACLE, 2013)

De acordo com Kurniawan (2002), um servlet é uma classe Java que pode ser

automaticamente carregada e executada por um servidor web especial. Esse

servidor web cliente de servlet é chamado de um contentor servlet, que antigamente

era conhecido como Máquina Servlet pelos desenvolvedores. Os servlets interagem

com clientes por meio de um modelo de solicitação-resposta baseado em HTTP,

pois a tecnologia servlet trabalha sobre HTTP, um contentor servlet precisa suportar

HTTP como o protocolo para solicitações do cliente e respostas de servidor.

Page 21: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

20

Entretanto, um contentor servlet também pode suportar protocolos semelhantes, tal

como Hypertext Transfer Protocol Secure (HTTPS), HTTP sobre Secure Sockets

Layer (SSL), para transações seguras.

A figura 1.1, que se encontra logo abaixo, apresenta como é a arquitetura de

um aplicativo serlvet, em que um aplicativo servlet também pode incluir conteúdo

estático, tais como páginas de HyperText Markup Language (HTML) e arquivos de

imagem.

Figura 1.1 - Arquitetura de aplicativo servlet. Fonte: Kurniawan, 2002, p.6.

Segundo Kurniawan (2002), não é preferível a permissão que o contentor

servlet sirva conteúdo estático, pois o conteúdo é mais rápido se for servido por um

servidor de HTTP mais potente, tal como o servidor web Apache. A prática mais

comum é colocar um servidor web na frente, para gerenciar todas as solicitações de

cliente. Por sua vez, o servidor web serve o conteúdo estático e passa aos

contentores servlet todas as solicitações de cliente para servlets.

A figura 1.2, logo abaixo, demonstra como é a arquitetura de uma aplicação

que emprega um servidor de HTTP.

Figura 2.2- Aquitetura de aplicativo servlet com servidor HTTP. Fonte: Kurniawan, 2002, p.6.

Page 22: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

21

1.3 JSP

Segundo Schemes (2011) o JSP é uma linguagem orientada para a criação

de páginas e aplicações para a internet. Seu desenvolvimento é em Java. As

páginas criadas são compostas por códigos HTML e Extensible Markup Language

(XML), em conjunção com as tags (etiquetas: funções primárias para Java) especiais

para programar script de servidor em sintaxe Java. O JSP possibilita ao

desenvolvedor a criação de páginas de Internet com aplicações que acessam banco

de dados e manipulam arquivos no formato texto, englobando assim a maioria das

funções de aplicativos web.

É preciso destacar que “a tecnologia JSP é uma extensão da tecnologia servlet”. Isso significa que JSP não substitui servlets como a tecnologia para escrever aplicativos Internet/intranet do lado servidor. Na verdade, JSP foi montada na base de servlet e precisa da tecnologia servlet para trabalhar. (KURNIAWAN, 2002, p. 219)

Precisamente, o JSP resolve as desvantagens da tecnologia servlet, permite

ao programador, por exemplo, interseccionar código com conteúdo estático. Se o

programador trabalhar com gabarito de página HTML, escrito por um web designer,

o programador pode acrescentar um código na página HTML e salvá-lo como um

arquivo.jsp. Se posteriormente, o web designer precisar alterar a cor de algum

elemento no corpo do HTML, simplesmente, abre o arquivo e o edita, de acordo.

Ação que seria totalmente trabalhosa se somente a tecnologia servlet fosse

empregado. (KURNIAWAN, 2002.)

1.4 APACHE TOMCAT

O desenvolvimento do Tomcat foi feito pela Sun Microsystems, mas em 1999

o software foi entregue à Fundação de Software Apache, e se tornou parte do

projeto Jakarta. O Tomcat trabalha como um servidor web, ou seja, ele permite a

solicitação de serviços HTTP para Servlets. Sua principal característica técnica é

estar centrada na linguagem de programação Java, mais especificamente nas

tecnologias de Servlets e de JSP. Esta abordagem rivaliza, por exemplo, com a

usada pela Microsoft com o Active Server Pages (ASP), baseada na linguagem

Visual Basic. (KURNIAWAN, 2002).

Page 23: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

22

1.5 SISTEMA GERENCIADOR DE BANCO DE DADOS ORACLE

O Oracle Database 10g Express Edition (Oracle Database XE) é uma versão

gratuita do banco de dados da Oracle. O Oracle Database XE é capaz de criar

tabelas, exibições e outros objetos de banco de dados, importação, exportação e

visualização de dados tabela, executar consultas e scripts de Structured Query

Language (SQL) e gerar relatórios de dados. (ORACLE, 2013)

1.6 JDBC

De acordo com Ricarte (2002), a tenologia Java permite o acesso a bancos

de dados relacionais através das funcionalidades definidas no pacote java.sql e

associados, que definem a biblioteca JDBC. O JDBC é uma Application

Programming Interface (API) para execução e manipulação de resultados

a consultas SQL através de Java. Para desenvolver uma aplicação em Java e

bancos de dados relacionais, é preciso ter disponível o pacote da API JDBC e

possuir o acesso a um servidor de banco de dados relacional; e um driver de JDBC

adequado ao Sistema de Gerenciamento de Banco de Dados (SGBD) que será

utilizado na aplicação. A figura 1.3, a seguir, apresenta como é a organização do

mecanismo de um aplicativo Java, que por meio da utilização da biblioteca JDBC,

consegue o acesso a um banco de dados.

Figura 3.3 – Mecanismo de uma aplicação Java para acessar um banco de dados. Fonte: Ricarte, 2012, adaptado pelos autores.

Page 24: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

23

1.7 UNIFIED MODELING LANGUAGE (UML)

De acordo com Pressman (2011), a UML é uma linguagem-padrão para

descrever e documentar projetos de software; usada para visualizar, especificar,

construir e documentar os artefatos de um sistema. Os diagramas de UML ajudam

os desenvolvedores de software a construir um software mais robusto e elaborado,

pois dão uma compreensão maior do funcionamento do sistema desenvolvido.

Desenvolvida na década 1990 por Grady Booch, Jim Rumbaugh e Ivar

Jacobson, a UML combinou grupos de notações de modelagens concorrentes

usadas pela indústria do software na época. No ano de 1997, a primeira versão do

padrão de UML, chamada de UML 1.0, foi apresentado ao Object Management

Group (OMG), uma associação sem fins lucrativos que se dedica a manter

especificações para ser usadas pela indústria de computadores. Contudo, a UML 1.0

foi revisada tornando-se a UML 1.1 e dotada mais tarde naquele ano. Atualmente, o

padrão é a UML 2.0, que agora é um padrão da International Organization for

Standardization (ISO). A UML 2.0 viabiliza treze tipos diferentes de diagramas para

uso na modelagem de software. Entre eles estão os diagramas de classe, atividade,

caso de uso e sequência. (PRESSMAN, 2011)

Segundo Gama (2013), os diagramas de caso de uso descrevem

relacionamentos e dependências entre um grupo de caso de uso e os atores

participantes no processo; os diagramas de atividades descrevem a sequência de

atividades de um sistema. Já os diagramas de sequência apresentam a troca de

mensagens, isto é, chamada de método, entre diversos objetos, numa situação

específica e delimitada. E os diagramas de classe mostram as diferentes classes

que fazem um sistema e como elas se relacionam. São chamados de diagramas

“estáticos” porque mostram as classes, com seus métodos e atributos bem como os

relacionamentos estáticos entre elas: quais classes “conhecem” quais classes ou

quais classes “fazem parte” de outras classes, mas não mostram a troca de

mensagens entre elas.

1.8 HTML5

De acordo com Tableless (2012), o HTML é uma linguagem para publicação

de conteúdo, que pode ser texto, imagem, vídeo, áudio, entre outros, na web. Entre

Page 25: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

24

1993 e 1995, o HTML ganhou as versões HTML+, HTML 2.0 e HTML 3.0, onde

foram propostas diversas mudanças para enriquecer as possibilidades da

linguagem. Entretanto, segundo Botelho (2012), o HTML estancou na versão 4.0.1

desde 1999 e não acompanhou as dinâmicas mudanças que ocorreram nos últimos

anos.

Contudo, uma nova versão do HTML fora lançada no ano de 2008, sob o

nome de HTML5. Essa nova versão tem como principal objetivo facilitar a

manipulação do elemento possibilitando o desenvolvedor a modificar as

características dos objetos de forma não intrusiva e de maneira que seja

transparente para o usuário final. (SILVERMAN, 2012)

Segundo Tableless (2012), ao contrário das versões anteriores, o HTML5

fornece ferramentas ao CSS e ao Javascript para fazerem seu trabalho da melhor

maneira possível. O HTML5 permite por meio de suas APIs a manipulação das

características destes elementos, de forma que o website ou a aplicação continue

leve e funcional. As versões antigas do HTML não continham um padrão universal

para a criação de seções comuns e específicas como rodapé, cabeçalho, sidebar,

menus e etc. Não havia um padrão de nomenclatura de IDs, classes ou tags, assim

como, não havia um método de capturar de maneira automática as informações

localizadas nos rodapés dos websites.

Há outros elementos e atributos que tiveram sua função e significado

modificados e que agora podem ser reutilizados de forma mais eficaz. Por exemplo,

elementos como B ou I que foram descontinuados em versões anteriores do HTML

agora assumem funções diferentes e entregam mais significado para os usuários.

(TABLELESS, 2012)

1.9 CASCADING STYLE SHEET (CSS)

De acordo com Silva (2012), o CSS pode ser definido como um mecanismo

simples para adicionar estilos. A vantagem do uso de CSS é a de separar a

marcação HTML, da apresentação do site.

O HTML destina-se unicamente a estruturar e marcar o conteúdo, ficando por

conta das CSS toda a responsabilidade pelo visual do documento, o HTML marca e

estrutura textos, cabeçalhos, parágrafos, links, botões, formulários, imagens e

Page 26: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

25

demais elementos da página e o CSS define cores, posicionamento na tela, estilos

de linhas, bordas e tudo o mais relacionado à apresentação. (SILVA, 2012)

1.10 NETBEANS INTEGRATED DEVELOPMENT ENVIRONMENT (IDE)

Popular entre os desenvolvedores de softwares, o NetBeans IDE possibilita

ferramentas necessárias para criar aplicações desktop pessoais, profissionais,

corporativas, para a Internet e plataformas móveis a partir da tecnologia Java, assim

como a linguagem C e C++, Personal Home Page (PHP), JavaScript, e Groovy. O

Netbeans é um software de Open-Source, cuja licença não restringe de nenhuma

maneira a sua distribuição entre os usuários, sendo assim acessível a todos.

(NETBEANS, 2013)

1.11 ASTAH COMUMMUNITY

O Astah Community uma ferramenta para o desenvolvimento de diagramas

que ilustram as interfaces, dependências, relações de acordo com o padrão UML,

proporcionando uma maior agilidade e melhora na modelagem do sistema. Através

dessa ferramenta torna-se possível uma melhor compreensão dos problemas e

facilitando o entendimento entre a equipe de desenvolvimento, pois tem como

objetivo melhorar a comunicação por meio dos diagramas. (ASTAH, 2013)

1.12 JQUERY

Segundo Carvalho (2010), jQuery é uma biblioteca JavaScript criada em 2006

por John Resig que além de muito poderosa e fácil de utilizar, pode ser utilizada e

modificada sem qualquer custo. Essa biblioteca consegue abstrair do desenvolvedor

web muito da programação exigida para criação de recursos de interatividade em

um site.

Page 27: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

26

2 ANÁLISE E PROJETO DE SISTEMA

Neste segundo capítulo são apresentadas as análises feitas sobre o

desenvolvimento e o funcionamento do sistema proposto por este projeto de

graduação, bem como a documentação do protótipo e suas regras de negócios.

2.1 ANÁLISE DE NEGÓCIO

Segundo Kerber (2012), a realização de uma análise de negócios foca na

compreensão de como a organização funciona e alcança seus desígnios e define

quais as capacidades que devem possuir para que ela possa prover produtos ou

serviços que atendam aos seus clientes.

Nesta primeira parte do capítulo é envolvida a compreensão das

funcionalidades dos negócios elaborados pela biblioteca para que o projeto de

sistema abranja todas as suas funcionalidades e requisitos.

2.1.1 Instrução do Problema

O cadastro de obras e de leitores, o controle dos empréstimos e as gerações

das multas se tornam muito rudimentares e trabalhosos quando são realizados em

tabela de controle feita a mão, pois geram uma grande quantidade de papéis e

sobrecarga para o bibliotecário, sendo que a implementação de um simples software

de gerenciamento que realizasse essas funções adequadamente iria eliminar toda a

papelada e abrandar o serviço do bibliotecário, além de o controle sobre as obras se

tornar mais eficaz e ágil.

Um leitor que não tenha muito tempo pra ficar vários minutos ou horas para

pesquisar algum livro de seu interesse nas prateleiras da biblioteca, obviamente não

desempenhará uma pesquisa minuciosa para atender sua necessidade, sendo ela

profissional ou pessoal, portanto ao acessar um site em seu computador ou

notebook que lhe permite uma boa consulta a todas as obras contidas na biblioteca

e que possa reservar qual deseja, irá suprir esse problema que o leitor enfrenta,

visto que será apenas necessária a confirmação do empréstimo e da retirada da

obra na propriedade da biblioteca.

Page 28: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

27

2.1.2 Análise de Mercado

O protótipo desenvolvido por este projeto procura atender em geral, uma

biblioteca simples, que careça de uma solução informatizada e integrada para atingir

todos os seus processos de negócios e funcionalidades principais.

O projeto também pretende suprir as necessidades dos clientes da biblioteca,

realizou uma integração das funcionalidades da organização com o seu cliente de

uma forma rápida e intuitiva.

2.1.3 Atores e Envolvidos no Processo

O funcionário, que desempenha a função de bibliotecário é responsável pela

inserção e alteração dos dados da obra, do autor, da editora e do leitor. Além de,

efetivar os empréstimos e as devoluções, assim como as multas quando a obra não

é devolvida no prazo determinado.

O leitor é responsável por fazer seu login no sistema, por consultar o acervo e

realizar a reserva da obra.

2.1.4 Descrição do Ambiente Atual

Em uma biblioteca sem um sistema integrado de informática, o bibliotecário

utiliza uma ficha de papel cadastral na qual são registrados os dados pessoais dos

leitores. Essas fichas são organizadas em pastas ou em blocos por ordem

alfabética. Outrossim as obras como livros, atlas e gibis são catalogadas em uma

folha de registro.

Os empréstimos são anotados em uma tabela, na qual são inseridos os dados

do leitor, da obra emprestada e a data de devolução.

Caso ocorra um atraso na devolução da obra, o leitor é cobrado a pagar uma

multa e enquanto a multa não for paga o leitor é bloqueado, ou seja, fica impedido

de realizar outros empréstimos de livros até a realização do pagamento.

Para classificar e organizar as obras, a biblioteca utiliza a Classificação

Decimal de Dewey (CDD). Criada por Melvin Dewey em 1873, que utiliza a

linguagem universal dos números arábicos para a classificação de obras e

documentos.

Page 29: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

28

2.2 VISÃO GERAL DO PRODUTO

Por meio desta seção do documento da Análise, o projeto é exposto como um

produto que está suscetível aos olhos do mercado de negócios e aos dos usuários,

além de listar as principais características funcionais, de apresentar as

dependências de execução e uma breve descrição das regras de negócio

específicas que abrangem o funcionamento da biblioteca, utilizado como parâmetro

para o desenvolvimento do sistema.

2.2.1 Perspectiva do Produto

O produto é totalmente autônomo e independente, ou seja, ele não depende ou

interage com algum outro sistema. E sua intenção é agilizar os processos funcionais

de uma biblioteca, auxiliando o funcionário no controle geral das obras contidas, dos

leitores cadastrados e o monitoramento dos empréstimos. E, além disso, este

produto busca atrair e facilitar o público de pessoas que frequentam a organização

bibliotecária, com o fácil acesso aos conteúdos do acervo.

2.2.2 Premissas e Dependências

Para o produto ser acessado é necessário que o usuário, seja ele o

funcionário ou o leitor, possua uma conexão com a rede internet em seu computador

ou dispositivo móvel. E o site é compatível apenas com os navegadores Mozilla

Firefox, Chrome e Safari em suas últimas versões.

2.2.3 Características

A seguir estão listadas as funcionalidades do sistema:

Acesso ao sistema (login) pelos usuários (leitor e funcionário da biblioteca);

Pesquisa de obras do rol de livros da biblioteca, que pode ser classificada

pelo título da obra, nome do autor e editora;

Inserção, alteração e exclusão de obras, autores, editoras e leitores no

sistema pelo bibliotecário;

Page 30: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

29

Geração de empréstimos de livros pelos usuários, gerando a data de

devolução;

Aplicação multas aos leitores quando as devoluções são delongadas,

bloqueando o leitor no sistema bibliotecário;

Renovar e encerrar empréstimos;

Realizar reserva de obras através do acesso do leitor no sistema;

2.2.4. Outros Requisitos do Produto

Muitas bibliotecas adotam vários tipos de punição para o leitor que atrasa ou

que não devolve o livro, mas para este projeto a regra adotada é o bloqueio do leitor

no sistema, não podendo realizar empréstimo ou reserva de nenhuma obra do

acervo pelo dobro do tempo em que a obra ficara atrasada.

Um leitor pode realizar apenas um empréstimo por vez; cada empréstimo

pode conter até três obras diferentes, não sendo permitida a repetição de obras. Os

empréstimos possuem uma duração de uma semana, incluindo finais de semanas e

feriados, podendo ser renovados por mais sete dias. As reservas são apenas

efetuadas pelo leitor na sua visão web e só é permitida a reserva de três obras que

não estejam emprestadas ou já reservadas.

2.3 ANÁLISE DE REQUISITOS

Nesta segunda seção do capítulo são levantadas as especificações de

requisitos do projeto proposto.

De acordo com as informações apresentadas por Lamounier (2012), a Análise

de Requisitos é uma etapa em que o desenvolvedor faz um estudo detalhado dos

dados levantados na atividade de Análise de Negócios; de onde são construídos

modelos a fim de representar o sistema de software a ser desenvolvido por este

trabalho de conclusão de curso.

A engenharia de requisitos tem por objetivo, assegurar que o sistema de

software está atendendo as reais necessidades do cliente e verifica se os modelos

construídos na análise de negócios estão de acordo com os requisitos propostos

pelo cliente. (LAMOUNIER, 2012.)

Page 31: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

30

Em suma, esta seção traz a documentação das informações e das funções

por meio do estudo dos diagramas de caso de uso, atividade sequência, de Modelo

Visão Controle (MVC) e de sequência; ademais, apresentar a modelagem do banco

de dados.

2.3.1. Diagrama de Caso de Uso

A figura abaixo, figura 2.1, apresenta-se o diagrama de casos de uso que

compreendem as funcionalidades dos atores no sistema.

Figura 2.1 - Diagrama de Caso de Uso. Fonte: Elaborado pelos autores, 2013.

Page 32: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

31

2.3.2. Diagrama de Classes

Figura 2.2 – Diagrama de classes. Fonte: Elaborado pelos autores, 2013.

2.3.3 Especificações de Histórias e Diagramas

Esta subseção apresenta abstrações de pequenas histórias narrativas

envolvendo a interação entre os usuários, funcionário e leitor, - outrossim, chamados

de atores – e o sistema. A ideia é que estas pequenas histórias representem as

funcionalidades do sistema desenvolvido.

2.3.3.1 Login Restrito

Para possuir o acesso ao sistema, e de todos os seus recursos, o funcionário

que desempenha a função de bibliotecário se conecta ao sistema utilizando uma

conta com login e senha, pré-cadastrados no sistema.

Page 33: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

32

Ao ter os dados autenticados, o funcionário desempenha as prerrogativas

disponíveis de ser o usuário administrador do sistema da biblioteca, ou seja, é o

funcionário que administra as principais funcionalidades do sistema.

Figura 2. 3 – Diagrama de Atividade Login Restrito Fonte: Elaborado pelos autores, 2013.

Figura 2. 4 – Diagrama de MVC Login Restrito. Fonte: Elaborado pelos autores, 2013.

Page 34: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

33

Figura 2.5 – Diagrama de Sequência Login Restrito. Fonte: Elaborado pelos autores, 2013.

2.3.3.2 Manter Leitor

É de responsabilidade do funcionário cadastrar, alterar e consultar os

registros de leitores da biblioteca. Após a inserção de um novo leitor, o sistema gera

o nome de usuário e senha do leitor, a partir do e-mail e do número do RG,

respectivamente.

Figura 2. 6 – Diagrama de Atividade Manter Leitor. Fonte: Elaborado pelos autores, 2013.

Page 35: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

34

Figura 2. 7 – Diagrama de MVC Manter Leitor. Fonte: Elaborado pelos autores, 2013.

Figura 2. 8 – Diagrama de Sequência Manter Leitor. Fonte: Elaborado pelos autores, 2013.

Page 36: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

35

2.3.3.3 Manter Autor

O bibliotecário cadastra, altera e consulta os registros dos autores das obras

contidas no acervo da biblioteca.

Figura 2.9 – Diagrama de Atividade Manter Autor. Fonte: Elaborado pelos autores, 2013.

Figura 2.10 – Diagrama de MVC Manter Autor. Fonte: Elaborado pelos autores, 2013.

Page 37: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

36

Figura 2. 11 – Diagrama de Sequência Manter Autor. Fonte: Elaborado pelos autores, 2013.

2.3.3.4. Manter Editora

O bibliotecário cadastra, altera e consulta os registros das editoras presentes

nos livros do acervo da biblioteca.

Figura 2. 12 – Diagrama de Atividade Manter Editora. Fonte: Elaborado pelos autores.

Page 38: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

37

Figura 2. 13 – Diagrama de MVC Manter Editora. Fonte: Elaborado pelos autores, 2013.

Figura 2. 14 – Diagrama de Sequência Manter Editora. Fonte: Elaborado pelos autores, 2013.

Page 39: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

38

2.3.3.5. Manter Obra

O cadastramento de obras no acervo da biblioteca é realizado pelo

funcionário, que também é responsável pelas alterações e exclusões dos dados.

Figura 2.15 – Diagrama de Atividade Manter Obra. Fonte: Elaborado pelos autores, 2013.

Figura 2. 16 – Diagrama de MVC Manter Obra. Fonte: Elaborado pelos autores, 2013.

Page 40: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

39

Figura 2. 17 – Diagrama de Sequência Manter Obra. Fonte: Elaborado pelos autores, 2013.

Page 41: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

40

2.3.3.6 Efetuar Empréstimo

O funcionário efetua o empréstimo de obra para um leitor; para realizar um

empréstimo o leitor deve estar cadastrado no banco de dados e não possuir

nenhuma devolução em haver e quando efetuado o empréstimo, o status do título

deverá ser atualizado.

Figura 2. 18 – Diagrama de Atividade Efetuar Empréstimo. Fonte: Elaborado pelos autores, 2013.

Figura 2. 19 – Diagrama de MVC Efetuar Empréstimo. Fonte: Elaborado pelos autores, 2013.

Page 42: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

41

Figura 2. 20 – Diagrama de Sequência Efetuar Empréstimo. Fonte: Elaborado pelos autores, 2013.

2.3.3.7 Encerrar Empréstimo

O funcionário encerra o empréstimo de obra para um leitor. Quando efetuado o empréstimo, o status do título deverá ser atualizado.

Figura 2. 21 – Diagrama de Atividade Encerrar Empréstimo.

Fonte: Elaborado pelos autores, 2013.

Page 43: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

42

Figura 2. 22 – Diagrama de MVC Encerrar Empréstimo. Fonte: Elaborado pelos autores, 2013.

Figura 2. 23 – Diagrama de Sequência Encerrar Empréstimo. Fonte: Elaborado pelos autores, 2013.

2.3.3.8 Gerar Multa

Se por ventura houver atraso na devolução da obra, o bibliotecário efetua

uma multa, que o bloqueia pelo dobro de tempo de atraso.

Page 44: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

43

Figura 2. 24 – Diagrama de Atividade Gerar Multa. Fonte: Elaborado pelos autores, 2013.

Figura 2. 25 – Diagrama de MVC Gerar Multa. Fonte: Elaborado pelos autores, 2013.

Page 45: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

44

Figura 2. 26 – Diagrama de Sequência Gerar Multa. Fonte: Elaborado pelos autores, 2013.

2.3.3.9 Renovar Empréstimo

O funcionário possui a funcionalidade de renovar o empréstimo por mais uma

semana, lembrando que a renovação só pode ser efetuada no dia marcado para a

devolução da obra.

Figura 2. 27 – Diagrama de Atividade Renovar Empréstimo. Fonte: Elaborados pelos autores, 2013.

Page 46: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

45

Figura 2. 28 – Diagrama MVC Renovar Empréstimo. Fonte: Elaborado pelos autores, 2013.

Figura 2. 29 – Diagrama de Sequência Renovar Empréstimo. Fonte: Elaborado pelos autores, 2013.

2.3.3.10 Consultar Obra

O leitor consulta as informações e a disponibilidade das obras no acervo

bibliotecário, podendo classificar a pesquisa por nome, autor, editora e gênero.

Page 47: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

46

Figura 2. 30 – Diagrama de Atividade Consultar Obra. Fonte: Elaborado pelos autores, 2013.

Figura 2. 31 – Diagrama de MVC Consultar Obra. Fonte: Elaborado pelos autores, 2013.

Figura 2. 32 – Diagrama de Sequência Consultar Obra. Fonte: Elaborado pelos autores, 2013.

Page 48: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

47

2.3.3.11 Efetuar Login (Usuário Leitor)

Para desempenhar as prerrogativas fornecidas pelo sistema, o leitor deve

informar seu login e sua senha primeiramente. Após a autenticação o leitor será

capaz realizar as reservas das obras desejadas.

Figura 2. 33 – Diagrama de Atividade Efetuar Login (Usuário Leitor). Fonte: Elaborado pelos autores, 2013.

Figura 2. 34 – Diagrama de MVC Efetuar Login (Usuário Leitor). Fonte: Elaborado pelos autores, 2013.

Page 49: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

48

Figura 2. 35 – Diagramas de Sequência Efetuar Login (Usuário Leitor). Fonte: Elaborado pelos autores, 2013.

2.3.3.12 Efetuar Reserva

O leitor registra ou cancela a reserva de títulos e quando registrada ou

cancelada, o status da obra deverá ser atualizado.

Figura 2. 36 – Diagrama de Atividade Efetuar Reserva. Fonte: Elaborado pelos autores, 2013.

Page 50: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

49

Figura 2.37 – Diagrama de MVC Efetuar Reserva. Fonte: Elaborado pelos autores, 2013.

Figura 2.38 – Diagrama de Sequência Efetuar Reserva. Fonte: Elaborado pelos autores, 2013.

Page 51: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

50

2.3.4 Projeto de Banco de Dados

Nesta subseção do segundo capítulo são apresentados como os dados estão

organizados e inseridos no banco de dados do sistema, por meio dos diagramas

relacional e lógico.

2.3.4.1 Diagrama de Dados (MER)

Figura 2.39 – Diagrama do Modelo Relacional do Banco de Dados. Fonte: Elaborado pelos autores, 2013.

Page 52: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

51

2.3.4.2 Mapeamento para Modelo Relacional e Projeto Físico

Figura 2.40 – Diagrama do Modelo Lógico do Banco de Dados. Fonte: Elaborado pelos autores, 2013.

Page 53: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

52

3 IMPLEMENTAÇÃO

Neste capítulo são apresentadas as páginas web utilizadas na interface

gráfica do sistema web do leitor e do funcionário da biblioteca, tendo em vista que

todas foram desenvolvidas em tecnologia JSP e estilizadas com CSS3.

3.1 PÁGINA DE ÍNICIO DO SISTEMA

Ao acessar o sistema no navegador web a primeira página a ser apresentada

na tela é a que se encontra na figura 3.1. Nesta página estão as informações

básicas do sistema que podem ser visualizados por qualquer usuário na web. É a

partir desta página que se tem acesso as demais funcionalidades, que são vetadas

para os usuários que não possuem cadastro no sistema e/ou que não trabalham na

biblioteca.

Figura 3.1 – Home Page do Funcionário. Fonte: Elaborado pelos autores, 2013.

O bloqueio que se dá aos usuários nas demais funcionalidades deve-se aos

campos de login e senha, apresentados detalhadamente na figura 3.2, que quando

preenchidos devidamente redirecionam o usuário paras as telas de sua respectiva

função.

Page 54: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

53

Figura 3.2 – Login de Usuários. Fonte: Elaborado pelos autores, 2013.

3.2 INTERFACE GRÁFICA DO USUÁRIO

Nesta seção são apresentadas as páginas web do sistema na visão do

usuário leitor que possui cadastro na biblioteca.

3.2.1 Página Inicial do Usuário Leitor

Na figura 3.3 é apresentada a página principal utilizada pelo usuário leitor,

que permite o acesso às funcionalidades cabíveis a ele.

Figura 3.3 – Home Page do Leitor. Fonte: Elaborado pelos autores, 2013.

Page 55: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

54

Nesta página o usuário pode visualizar os seus dados pessoais e aos livros

que reservou e que pegou como empréstimo no acervo de livros clicando nas

imagens apresentadas na tela. (figura 3.5)

Figura 3.4 – Visualizar Minhas Reservas. Fonte: Elaborado pelos autores, 2013.

Quando o leitor é inadimplente ao devolver o livro em atraso, aparece uma

mensagem que ele está bloqueado para fazer novos empréstimos e reservas na

biblioteca, como pode ser visto na figura 3.5.

Figura 3.5 – Visualizar Meus Empréstimos. Fonte: Elaborado pelos autores, 2013.

Page 56: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

55

3.2.2 Página de Lista de Obras

Na figura 3.6, abaixo, é apresentada a listagem do acervo de livros no site.

Nota-se que ao lado de cada obra há um botão para visualizar a obra com mais

detalhes em outra página web.

Figura 3.6 – Listar Obras. Fonte: Elaborado pelos autores, 2013.

3.2.2 Página de Detalhes da Obra

Na página apresentada na figura acima redireciona o usuário leitor para a

página apresentada na figura 3.7 que traz todos os dados do livro selecionado, como

o nome da editora, a quantidade de páginas, o número de chamada no acervo da

biblioteca, o gênero literário e a sinopse; bem como a opção de selecionar a obra

para uma reserva na biblioteca.

Page 57: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

56

Figura 3.7 – Página de Detalhes da Obra. Fonte: Elaborado pelos autores, 2013.

3.2.2 Reservar Obra

Como se pode ver na figura 3.8, é apresentada a página em que o usuário

visualiza quais os livros que o usuário selecionara para uma reserva. Podendo

adicionar outro ou remover algum antes de confirmar a reserva.

Figura 3.8 – Carrinho das Reservas. Fonte: Elaborado pelos autores, 2013.

Page 58: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

57

3.2.2 Pesquisar no Acervo de Obras

Na figura 3.9 é apresentada, em maior detalhe, como o usuário leitor realiza

uma pesquisa no rol de obras da biblioteca, podendo fazê-la de acordo com o título,

o gênero literário, a editora e o nome do autor da obra. E na figura 3.10 apresenta o

resultado de uma pesquisa realizada pelo título da obra.

Figura 3.9 – Pesquisar no Acervo da Biblioteca. Fonte: Elaborado pelos autores, 2013.

Figura 3.10 – Resultado da Pesquisa. Fonte: Elaborado pelos autores, 2013.

Page 59: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

58

3.3 INTEFACE GRÁFICA DO BIBLIOTECÁRIO

Nesta seção, são apresentadas as páginas web do sistema na visão do

administrador bibliotecário.

3.3.1 Página Inicial do Bibliotecário

Na Figura 3.11 é apresentada a página em que bibliotecário é redirecionado

após a inserção correta de seu login e senha no sistema, nesta tela concede-se

todas as funcionalidades do gerenciamento da biblioteca, como o controle dos

empréstimos e reservas e do cadastramento das obras e do leitor.

Figura 3.11 – Página Inicial do Bibliotecário. Fonte: Elaborado pelos autores, 2013.

3.3.2 Cadastrar e Listar Leitor

Na figura 3.12 é apresentada a página de cadastro de dados do leitor, com a

opção de buscar o leitor pelo nome; e na figura 3.13 apresenta-se o resultado da

busca, em que se pode visualizar os dados do leitor e as opções de deletá-lo ou de

alterar seus dados.

Page 60: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

59

Figura 3.12 – Cadastrar Leitor. Fonte: Elaborado pelos autores, 2013.

Figura 3.13 – Apresentar Leitor. Fonte: Elaborado pelos autores, 2013.

Na figura 3.14, abaixo, é apresentada a tela que lista todos os leitores

cadastrados no sistema.

Figura 3.14 – Lista de Leitores. Fonte: Elaborado pelos autores, 2013.

Page 61: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

60

3.3.3 Cadastrar Autores

Na figura 3.15 é apresentada a página de cadastro dos dados dos autores e

escritores das obras contidas no acervo, e na figura 3.16 apresenta-se como esses

dados são listados ao bibliotecário.

Figura 3.15 – Cadastrar Autor. Fonte: Elaborado pelos autores, 2013.

Figura 3.16 – Autores. Fonte: Elaborado pelos autores, 2013.

Page 62: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

61

3.3.4 Cadastrar Editora

Na figura 3.17 é apresentada a página de cadastro das editoras dos livros e

na figura 3.18 é apresentada uma listagem das editoras cadastradas no sistema.

Figura 3.17 – Cadastrar Editora. Fonte: Elaborado pelos autores, 2013.

Figura 3.18 – Lista de Editoras. Fonte: Elaborado pelos autores, 2013.

3.3.5 Cadastrar Gênero Literário

Na figura 3.19 é apresentada a página de cadastramento dos gêneros

literários das obras.

Figura 3.19 – Cadastrar Gênero Literário. Fonte: Elaborado pelos autores, 2013.

Page 63: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

62

Na figura 3.20 apresenta-se a página em que os gêneros inseridos no sistema

são listados para o bibliotecário.

Figura 3.20 – Gêneros Literários. Fonte: Elaborado pelos autores, 2013.

3.3.6 Cadastrar Obra

Na figura 3.21 apresenta-se a página de cadastro dos dados pertencentes à

obra, bem como na figura 3.22 apresenta-se estes dados com a opção de apagá-los

e alterá-los.

Figura 3.21 – Cadastrar Obra. Fonte: Elaborado pelos autores, 2013.

Page 64: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

63

Figura 3.22 – Apresentar Obra. Fonte: Elaborado pelos autores, 2013.

O administrador bibliotecário também visualiza e pesquisa as obras no acervo

numa tela semelhante a do usuário leitor (figura 3.23), todavia ao selecionar a obra

será a tela apresentada na imagem anterior que ele será redirecionado.

Figura 3.23 – Lista de Leitores. Fonte: Elaborado pelos autores, 2013.

Page 65: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

64

3.3.7 Página de Reservas

Na Figura 3.24, que se encontra abaixo, apresenta-se a página para as

funções disponíveis para as reservas de obras, que são visualizar uma reserva em

detalhes e listar todas as reservas efetuadas pelo usuário leitor.

Figura 3.24 – Página de Reservas. Fonte: Elaborado pelos autores, 2013.

Na figura a seguir, figura 3.25, encontra-se a página em que as reservas são

listadas. O funcionário seleciona a reserva para visualizá-la com maiores detalhes

para efetuá-la como empréstimo ou encerrá-la. (figura 3.26)

Figura 3.25 – Listar Reservas. Fonte: Elaborado pelos autores, 2013.

Page 66: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

65

Figura 3.26 – Página de Visualizar Reserva. Fonte: Elaborado pelos autores, 2013.

Ao selecionar a opção de efetuar a reserva como empréstimo, o bibliotecário

irá inserir os dados para o empréstimo e confirmando a obra e o leitor pré-

estabelecidos pela reserva. (figura 3.27)

Figura 3.27 – Página Efetuar Reserva como Empréstimo. Fonte: Elaborado pelos autores, 2013.

3.3.8 Página de Empréstimos

Na figura 3.28 são apresentadas as funções para realizar um empréstimo de

uma obra no acervo. Além das funcionalidades comuns de efetuar, pesquisar e listar

os empréstimos, também apresenta-se a função atualizar as multas; que confere, ao

chamar uma stored procedure inserida no banco de dados, se a data de bloqueio do

leitor já passara. Se a data estipulada passou, então o leitor é liberado ao seu

acesso para realizar empréstimos e reservas.

Page 67: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

66

Figura 3.28 – Página de Empréstimos. Fonte: Elaborado pelos autores, 2013.

A figura a seguir, figura 3.29, apresenta a página em que um empréstimo é

efetuado. Nesta página o funcionário seleciona o leitor e a obra e confirma a data do

empréstimo e a data posterior de sete dias para a devolução.

Figura 3.29 – Página de Efetuar Empréstimo. Fonte: Elaborado pelos autores, 2013.

Como se pode ver na figura 3.30, ao listar os empréstimos é apresentada a

opção de selecioná-los. E assim, na figura 3.31, quando o leitor atrasa com a

devolução da obra, apresenta-se o status de atraso no empréstimo com a opção de

multá-lo; e quando multado apresenta-se a data de desbloqueio do leitor.

Page 68: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

67

Figura 3.30 – Página Listar Empréstimos. Fonte: Elaborado pelos autores, 2013.

Figura 3.31 – Página Apresentar Empréstimo. Fonte: Elaborado pelos autores, 2013.

Por fim, ao clicar na opção de “Atualizar Multas”, apresentada na figura 3.28,

o funcionário irá visualizar os leitores ainda multados. (figura 3.32)

Figura 3.32 – Página Empréstimos Multados. Fonte: Elaborado pelos autores, 2013.

Page 69: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

68

CONSIDERAÇÕES FINAIS

Ultimamente, as pessoas não possuem muito tempo para atividades que

merecem cautela e até mesmo a lazeres. Bem como, a realização de uma boa

pesquisa, seja ela pessoal ou profissional, em um rol de livros de uma biblioteca se

torna complicada quando não se tem tempo a disposição. Com a utilização de um

recurso web que lista as buscas supriria essa adversidade cotidiana, e

conclusivamente, este fora nosso tema e objetivo para este trabalho de conclusão

de curso. Um sistema de gerenciamento web em que o frequentador da biblioteca

pode realizar suas pesquisas e reservar o livro que quiser.

A partir de pesquisas e das análises sobre o desenvolvimento web, buscou-se

atingir o objetivo deste trabalho, que fora conquistado com êxito, mesmo com umas

dificuldades técnicas que surgiram em pleno desenvolvimento, tais como: a

programação de Java em páginas web em conjunto com comandos SQL; e o

desenvolvimento de códigos de CSS para a formatação das páginas. Contudo, tais

dificuldades não alteraram o resultado final do que se buscava neste projeto, apenas

exigiram mais atenção no processo de desenvolvimento.

Com isso conclui-se que o sistema desenvolvido fora concluído com

satisfação e que possui condições para atuar como um gerenciador de negócios e

funcionalidades que uma biblioteca possui em sua organização, tendo em vista que,

além de possuir a integração com o cliente, o sistema interage com o bibliotecário

para que suas atividades de trabalho sejam mais fáceis e dinâmicas. O uso do

HTML5 se mostrou interessante, assim como a utilização da biblioteca jQuery, que

facilitou a implantação de certos recursos visuais para as páginas web. A conexão

entre os Servlets e as páginas JSP com o banco de dados Oracle fora inicialmente

trabalhosa e complicada, mas tal atividade se mostrou menos adversa com

pesquisas a novos materiais e de auxílios de professores experientes.

Também se chegou à conclusão de que o desenvolvimento de um sistema

de gerenciamento web com conexão a um banco de dados, assim como qualquer

outro sistema ou projeto, apresenta algumas dificuldades, que por ora, podem ser

grandes ou simples, mas que se tiver certa concentração e dedicação das partes

envolvidas no trabalho o resultado final será obtido satisfatoriamente.

Page 70: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

69

REFERÊNCIAS BIBLIOGÁFICAS

ASTAH. Astah Professional. 2013. Disponível em:

<http://astah.net/editions/professional> Acesso em: 18 abr. 2013. BOTELHO, R. As novidades do HTML5. Devmedia. 28 mar. 2012. Disponível em:

<http://www.devmedia.com.br/as-novidades-do-html5/23992> CAMPOS, M. F. Iniciação do Java: com Orientação a Objetos. 2006. Disponível em: <http://www.camposmf.eti.br/java/apostila/IJava.pdf> Acesso em: 19 mar. 2013. CARVALHO, L. A. O que é jQuery? – Vivendo futuro com Liberdade. 2010.

Disponível em: <http://www.webulando.com.br/jquery/o-que-e-jquery> Acesso em: 16 abr. 2013. DEITEL, P.; DEITEL, H. Java: como programar. Tradução Edson Furmankiewicz. 8. ed. São Paulo: Pearson Prentice Hall, 2010. DUTRA, J. Bibliotecas planejam atividades para 2011. Prefeitura Municipal de Ibiporã, Ibiporã, 10 de fev 2011. Disponível em:

<http://www.novamaringa.mt.gov.br/Noticias/Biblioteca-municipal-solange-felix-da-silva-integra-pessoas-e-oferece-ensino-leitura-e-conhecimento-de-graca/> Acesso em: 12 mar. 2013. GAMA, M. Elmentos UML. Manual do Umbrella UML Modeller - KDE Documentation. 1 jun. 2013. Disponível em: <http://docs.kde.org/stable/pt_BR/kdesdk/umbrello/uml-elements.html> JAVA. O que é a tecnologia Java e por que é necessária?. 2013. Disponível em: <http://www.java.com/pt_BR/download/faq/whatis_java.xml> Acesso em: 20 mar. 2013. LAMOUNIER, H. Atividades básicas ao processo de desenvolvimento de Software. 2007. Disponível em: <http://www.devmedia.com.br/atividades-basicas-ao-processo-de-desenvolvimento-de-software/5413> Acesso em: 04 abr. 2013. KERBER, C. B. Resumo do BABOK 2.0: A Análise de Negócios. 2009. Disponível em: <http://www.kerber.com.br/analise-de-negocios-BABOK-resumo-a-analise-de-negocios.php> Acesso em: 01 abr. 2013.

Page 71: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

70

KURNIAWAN, B. Java para a Web com Servlets, Jsp e Ejb. 1. ed. Rio de Janeiro:

Ciência Moderna, 2002. NETBEANS. Características do Netbeans IDE. 2013. Disponível em:

<https://netbeans.org/features/ide/index.html> Acesso em: 20 mar. 2013. ORACLE. Oracle Database Express Edition 10g. 2013a. Disponível em:

<http://www.oracle.com/pls/xe102/homepage> Acesso em: 08 abr. 2013. _______. Java Servlet Technology Overview. 2013b. Disponível em:

<http://www.oracle.com/technetwork/java/javaee/servlet/index.html> Acesso em: 30 mar. 2013. PAMPLONA, V. F.. O que é Java? JavaFree.org, 10 out. 2009. Disponível em: <http://javafree.uol.com.br/artigo/871498/> Acesso em: 11 dez. 2011. PRESSMAN, R. S. Engenharia de Software - Uma Abordagem Profissional. 7. ed. Porto Alegre: Bookman, 2011. RICARTE, I. L. M. Interface entre Java e Banco de Dados Relacional. Faculdade de Engenharia Elétrica e de Computação da Universidade Estadual de Campinas (UNICAMP). Campinas, 15 out. 2002. Disponível em: <http://www.dca.fee.unicamp.br/cursos/PooJava/javadb/jdbc.html> Acesso em: 19 mar. 2013. SCHEMES, A. JSP. Tecnologia em Sistemas de Informação de informação –

Universidade do Estado de Santa Catarina (UDESC), 2011 <http://www.comp.ita.br/~gian/tes04/trabalhos/jsp-all.signed.pdf> Acesso em: 29 mar. 2013. SILVA, M. S. CSS e Padrões Web. Site do Maujor, 2012. Disponível em:

<http://www.maujor.com/index.php> Acesso em: 11 abr. 2013. SILVERMAN, M. The history of HTML5. Mashable. 17 jul. 2012. Disponível em:

<http://mashable.com/2012/07/17/history-html5/> Acesso em: 19 mar. 2013. TABELESS. Guia de Referencia de HTML5. 2 jan. 2012. Disponível em:

<http://tableless.com.br/guia-de-referencia-de-html5/#.UXd4dEpj_2k> Acesso em: 03 abr. 2013.

Page 72: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

71

________. Visão Geral do HTML5. 2 jan. 2012. Disponível em:

<http://tableless.com.br/html5/?chapter=1> Acesso em: 14 dez. 2013. THOMAZ, M. Regras de negócio na Aplicação, no Banco de Dados ou no Servidor de Aplicação. 2009. Disponível em: <http://www.edudelphipage.com.br/opinioes/regras-sgdb-aplicacao-multicamadas/marcos-thomaz > Acesso em: 22 nov. 2013.

Page 73: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

72

APÊNDICE A

Durante o processo de implementação e desenvolvimento deste trabalho de

conclusão de curso, algumas regras de negócios foram tratadas na camada do

banco de dados, ao invés de serem tratadas na camada da própria aplicação. Tal

meio de implementação fora utilizado pelo motivo dos autores terem optado por uma

estratégia de desenvolvimento mais simples e rápida, pois muito sobre a

manipulação de dados em comandos SQL foi-se abordada durante o período do

curso, o que gerou um conhecimento melhor e sobre tal manipulação.

Muito se discute sobre as vantagens e as desvantagens desse tipo de

desenvolvimento.

Segundo Thomas (2009), com uma centralização das regras de negócio no

banco, tanto faz qual a linguagem utilizada na aplicação, pois as regras podem ser

executadas independentemente da aplicação implementada, porém às vezes a

aplicação necessita muito do banco de dados, o que faz com que o acesso a ele

fique lento.

Neste apêndice é apresentado como as regras de negócios da biblioteca

foram centralizadas no banco de dados, por meio de Stored Procedures.

A.1 ENCERRAR RESERVAS NÃO REALIZADAS

Quando o leitor reserva uma obra, mas não comparece até a data máxima da

reserva para retirar a obra, e quando o administrador bibliotecário manda listar as

reservas, durante a listagem das reservas o servlet aciona o código abaixo presente

na DAO:

public boolean encerrarReserva(Reserva r) {

try {

criarConexao("{call cancelarReserva(?)}");

cs.setInt(1, r.getCodigo());

cs.execute();

cs.close();

con.close();

} catch (SQLException e) {

return false;

}

return true;

}

Page 74: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

73

Este comando, por meio da biblioteca e conexão JDBC, consiste em chamar

uma Stored Procedure que seleciona na tabela as reservas que tem a data de

retirada anterior á data atual, e que exclui na tabela Reserva e ItemReserva as

reservas não realizadas. Tal procedure encontra-se no código a seguir:

create or replace PROCEDURE"CANCELARRESERVA"(codR number)

AS

data date;

codigo number;

BEGIN

SELECT r.dataretirada

INTO data

FROM reserva r

WHERE r.dataretirada < SYSDATE AND r.codigo = codR;

DELETE FROM itemreserva WHERE codigoreserva = codigo;

DELETE FROM reserva WHERE codigo = codigo;

END;

A.2 BLOQUEAR LEITOR INADIMPLENTE

Ao multar o leitor que possui a entrega das obras de empréstimos atrasadas o

servlet aciona o método abaixo na DAO, que chama uma Stored Procedure no

banco de dados:

public boolean bloquearLeitor(int cod) {

try {

criarConexao("{call BLOQUEARLEITOR(?)}");

cs.setInt(1, cod);

cs.execute();

cs.close();

con.close();

} catch (SQLException e) {

return false

}

return true;

}

Na Stored Procedure, apresentada a seguir, é selecionado na tabela

Empréstimo o código do leitor e a data de devolução dos empréstimos cuja data de

devolução seja anterior à data atual; e logo após faz-se os cálculos que duplicam a

Page 75: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

74

diferença entre a data que seria a devolução com a data atual; e adiciona a

diferença encontrada à data atual, encontrando assim a data de desbloqueio do

leitor que é inserida na tabela multa. Por fim, bloqueia-se o leitor com a alteração de

seu status na tabela.

create or replace PROCEDURE BLOQUEARLEITOR2 (codE number)

AS

dataDev date;

cod number;

Cleitor number;

de number;

Cobra number;

dataBloqueio DATE;

BEGIN

SELECT e.codigoleitor, e.datadevolucao

INTO Cleitor,dataDev

FROM emprestimo e

WHERE e.datadevolucao < SYSDATE AND e.codigo = codE;

SELECT (SYSDATE - (dataDev-1)) * 2 INTO de FROM DUAL;

SELECT (SYSDATE + de) INTO dataBloqueio FROM DUAL;

UPDATE multa SET databloqueio = dataBloqueio WHERE

codigoemprestimo = codE;

UPDATE leitor SET status = 1 WHERE codigo = Cleitor;

END;

A.3 DESBLOQUEAR LEITOR INADIMPLENTE

Ao selecionar a opção de atualizar multas, apresentada na figura 3.28, o

servlet aciona o método abaixo presente na DAO, que por sua vez aciona uma

stored procedure no banco de dados:

public boolean desbloquearLeitor(Emprestimo emp) {

try {

criarConexao("{call desbloquearleitor(?)}");

cs.setInt(1, emp.getCodigo());

cs.execute();

cs.close();

con.close();

} catch (SQLException e) {

return false; }

return true;}

Page 76: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA ...fateclins.edu.br/v4.0/trabalhoGraduacao/6pvUsm2DGgd9lbz...Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para

75

Na Stored Procedure, apresentada logo abaixo, seleciona-se as multas cuja

data de bloqueio é anterior à data atual, portanto o leitor tem o seu status alterado,

sendo assim desbloqueado para realizar empréstimos e reservas no sistema.

create or replace PROCEDURE "DESBLOQUEARLEITOR" (codE number)

AS

dataDev date;

cod number;

Cleitor number;

Cemp number;

BEGIN

SELECT e.codigo,e.codigoleitor, m.codigoemprestimo

INTO cod,Cleitor, Cemp

FROM emprestimo e, multa m

WHERE m.databloqueio < SYSDATE AND e.codigo =

m.codigoemprestimo AND e.codigo = codE;

UPDATE leitor SET status = 0 WHERE codigo = Cleitor;

DELETE FROM itememprestimo WHERE codigoemprestimo = codE;

DELETE FROM emprestimo WHERE codigo = codE;

END;