Vous êtes sur la page 1sur 84

CENTRO PAULA SOUZA

FACULDADE DE TECNOLOGIA DE TATU


CURSO SUPERIOR DE TECNOLOGIA EM GESTO DA TECNOLOGIA DA
INFORMAO

ANDERSON LUCAS DOS SANTOS


ROGRIO DE MORAES
SERGIO DE JESUS RIBEIRO JUNIOR

DESENVOLVIMENTO DO SOFTWARE DE GESTO DE BIBLIOTECA DA


FACULDADE DE TECNOLOGIA DE TATUI

Tatu, SP
1 semestre / 2014

ANDERSON LUCAS DOS SANTOS


ROGRIO DE MORAES
SERGIO DE JESUS RIBEIRO JUNIOR

DESENVOLVIMENTO DO SOFTWARE DE GESTO DE BIBLIOTECA DA


FACULDADE DE TECNOLOGIA DE TATUI

Trabalho de Graduao apresentado

Faculdade de Tecnologia de Tatu,


como exigncia parcial para obteno
do grau de Tecnlogo em Gesto da
Tecnologia

da

Informao,

sob

orientao dos Professores Esp. Jos


Mrcio Mathias e Osvaldo D'Estefano
Rosica.

Tatu, SP
1 semestre / 2014

ANDERSON LUCAS DOS SANTOS


ROGRIO DE MORAES
SERGIO DE JESUS RIBEIRO JUNIOR

Trabalho de Graduao apresentado


Faculdade de Tecnologia de Tatu,
como exigncia parcial para obteno
do grau de Tecnlogo em Gesto da
Tecnologia da Informao, sob a
orientao dos Professores Esp. Jos
Mrcio Mathias e Osvaldo D' Estefano
Rosica.

( ) Aprovado ( ) Reprovado
Com mdia

________________________________
Prof.

________________________________
Prof.

________________________________
Prof.

________________________________
Prof.

Tatu, 20 de Junho de 2014

AGRADECIMENTOS

Agradecemos a todos os professores que se empenharam em nos transmitir


seus conhecimentos e suas experincias. Em especial ao professor Dr. Mauro
Tomazela, Professor Dr. Anderson Luiz de Souza, Prof. Dra. Eon Mouro Ribeiro,
Professora Dra. Elide Silva Garcia Vivan, Professor Esp. Jos Marcio Matias,
Professora Esp. Patrcia Moreno, Professor Engenheiro Helder Boccaletti, Professor
Osvaldo D Estefano Rosica e Professor Gino Carlo Campra.

algo complicado, difcil desenhar


produtos concentrando-se no pblico-alvo.
Muitas vezes, as pessoas no sabem o que
querem at que voc mostre elas.
(Steve Jobs)

RESUMO

Atualmente a Faculdade de Tecnologia de Tatu utilizava-se de uma


ferramenta de gesto gratuita chamada OPENBIBLIO, a qual no possua
flexibilidade, tal como no traz todos os itens necessrios para uma gesto mais
eficiente. Visualizando essa necessidade, nosso projeto prev itens necessrios
colhidos durante

o nosso

levantamento

de

requisitos efetuados junto

administrao da biblioteca. Tendo como princpio para o desenvolvimento, a viso


de gerenciamento de projetos, de engenharia de software, tcnicas de anlise e
desenvolvimento de sistemas, por meio das quais ns optamos por utilizar uma
linguagem de programao para internet estvel e segura (PHP), com o
desenvolvimento em formato de camadas MVC (baseado em Modelo Lgica de
Negcios, Viso - Telas e Controle Forma de interao), com o padro CRUD
(Create / Criar, Retried / Consultar, Update / Alterar, Delete / Excluir), dessa forma
podendo o projeto, ser hospedado tanto localmente, como em nuvem (Internet).

Palavras-chaves: Biblioteca, Programao, Internet

ABSTRACT

Currently the college of Technology in Tatu uses a free management tool


called OpenBiblio, which lacked flexibility, as it did not bring all necessary for a more
efficient management of items, you will see this need, our project provides necessary
items raised during the assessment required made by the management of the library,
as a principle for developing the vision of project management, software
development systems engineering, analysis techniques, and through which we chose
to use a programming language for stable and safe internet (PHP) with the
development of layers in MVC format (based on Model - Logical Business, Overview
- Screenshots and Control - form of interaction) with the standard CRUD (Create,
Retried, Change, Delete), this way the project can be hosted both locally and in the
cloud (Internet).

Key-words: Library, Programming, Internet

LISTA DE FIGURAS

Figura 1 - Satisfao dos usurios da biblioteca ................................................. 15


Figura 2 - Mdia de alocao de livros na biblioteca da FATEC Tatu ............... 16
Figura 3 - Nvel de inadimplncia de entrega de livros ........................................ 16
Figura 4 - Modelo de casos de uso ator operador ................................................ 31
Figura 5 - Modelo de casos de uso ator aluno ...................................................... 31
Figura 6 - Diagrama de sequncia de alocao .................................................... 33
Figura 7 - Diagrama de classes de projeto............................................................ 36
Figura 8 - Simbologia dos relacionamentos entre as classes............................. 37
Figura 9 - Simbologia e terminologia do DER....................................................... 38
Figura 10 - Diagrama de entidade relacionamento (DER) .................................... 40
Figura 11 - Exemplo de tela de cadastro de Materiais ......................................... 47
Figura 12 - Exemplo de tela de cadastro Cursos .................................................. 48
Figura 13 - Exemplo de tela de associao de cursos, materiais e disciplinas . 49
Figura 14 - Exemplo de tela de relatrios de pendencias de livros .................... 50
Figura 15 - Complexidade relativa s perguntas .................................................. 52
Figura 16 - Figura da com o clculo de fator de ajuste ........................................ 53
Figura 17 - Exemplo de viso de distribuio desktop ........................................ 55
Figura 18 - Exemplo de viso de aplicao Web (servidor) ................................. 56
Figura 19 - Exemplo de modelo de grfico (Gantt) ............................................... 57
Figura 20 - Modelo de tabela em SQLite com chave candidata primaria ........... 60
Figura 21 - Modelo de tabela em MySQL com chave candidata primaria........... 61
Figura 22 - Modelo de tabela em SQLite com chave candidata secundaria....... 62
Figura 23 - Exemplo de tabela em MySQL com chave candidata secundaria ... 63
Figura 24 - Exemplo de modelo de VIEW SQlite e MySQL................................... 63
Figura 25 - Exemplo de modelo de tabela de operaes e Itens de operaes . 64
Figura 26 - Exemplo de modelo de VIEW de operaes em MySQL ................... 65
Figura 27 - Exemplo de Trigger para atualizar registros de status ..................... 66
Figura 28 - Modelo de modelagem EER do banco de dados ............................... 67
Figura 29 - Tela de login do sistema ...................................................................... 80
Figura 30 - Tela Inicial do sistema ......................................................................... 80
Figura 31 - Tela de cadastro de alunos ................................................................. 81
Figura 32 - Tela de cadastro de materiais ............................................................. 81

Figura 33 - Tela de cadastro de Cursos................................................................. 82


Figura 34 - Tela de cadastro de Disciplinas .......................................................... 82
Figura 35 - Tela de Gerenciamento de Associao Materiais ............................. 83
Figura 36 - Tela de Gerenciamento de alocaes ................................................ 83
Figura 37 - Tela de Gerao de alocao .............................................................. 84
Figura 38 - Tela de gerao de relatrio geral pendncias para conferncias .. 84

LISTA DE TABELAS
Tabela 1: Casos de uso Ator operador ............................................................... 30
Tabela 2: Casos de uso Ator aluno ..................................................................... 30
Tabela 3: Clculo de complexidade ALI e AIE ...................................................... 42
Tabela 4: Exemplo de arquivos lgicos interno aluno ......................................... 43
Tabela 5: Exemplo de arquivos lgicos interno operador ................................... 43
Tabela 6: Exemplo de Arquivos lgicos interno alocao .................................. 43
Tabela 7: Exemplo de arquivos lgicos interno alocao ................................... 44
Tabela 8: Exemplo de arquivos lgicos interno material..................................... 44
Tabela 9: Exemplo de Arquivos de interface externa de aluno atendido ........... 45
Tabela 10: Exemplo de AIE de materiais cadastrados ......................................... 46
Tabela 11: Exemplo de Arquivos de interface externa de curso cadastrado..... 46
Tabela 12: Clculo de complexidade de ALR ....................................................... 47
Tabela 13: Exemplo de tabela de clculo de pontos por funo ........................ 51
Tabela 14: Exemplo de tabela de perguntas com os principais requisitos........ 52
Tabela 15: Exemplo de tabela de clculos das pontuaes finais ..................... 54
Tabela 16: Exemplo de tabela de viso sobre distribuio do desktop ............. 55
Tabela 17: Tabela de exemplo da viso aplicao Web (servidor) ..................... 56
Tabela 18: Tabela operador .................................................................................... 76
Tabela 19: Tabela regra de sistema ....................................................................... 76
Tabela 20: Tabela aluguel operao ...................................................................... 76
Tabela 21: Tabela Cadastro de alunos .................................................................. 77
Tabela 22: Tabela aluguel operao itens ............................................................. 77
Tabela 23: Tabela entrada de itens ........................................................................ 77
Tabela 24: Tabela itens perdidos ........................................................................... 78
Tabela 25: Tabela sada de itens ............................................................................ 78
Tabela 26: Tabela material ...................................................................................... 78
Tabela 27: Tabela cursos ........................................................................................ 79
Tabela 28: Tabela disciplinas ................................................................................. 79

LISTA DE SIGLAS

ABNT

- Associao Brasileira de Normas Tcnicas

ANSI

- American National Standards Institute

ASP

- Active Server Pages

BD

- Banco de Dados

COBIT

- Control Objectives for Information and related Technology

DB

- Database

CRUD

- Create, Retried, Update, Delete (Criar, Consultar, Atualizar, Apagar)

FATEC

- Faculdade de Tecnologia

HTML

- Hyper Text Markup Language

ISO

- International Organization for Standardization

JQuery

- Biblioteca JavaScript cross-browser

MySQL

- Linguagem de Consulta Estruturada (Structured Query Language)

MVC

- Model, View, Control (Camadas - Modelo, Viso, Controle)

NBR

- Norma Brasileira

PHP

- Hypertext Preprocessor

PF

- Pontos por funo

PMBOK

- Project Management Body of Knowledge

SGBD

- Sistema Gerenciador de Banco de Dados

SQL

- Structured Query Language (Linguagem de Banco de Dados)

XML

- Extensible Markup Language

Web

- World Wide Web (Internet)

SUMRIO

1 INTRODUO ....................................................................................................... 14
2 FASES DO PROJETO DO SISTEMA .................................................................... 19
3 SOFTWARE E SEU DESENVOLVIMENTO .......................................................... 23
3.1 ENGENHARIA DE SOFTWARE ...................................................................... 23
3.2 DESENVOLVIMENTO DO SOFTWARE .......................................................... 23
4 VISO GERAL DO SISTEMA ............................................................................... 25
4.1 REQUISITOS FUNCIONAIS DO SISTEMA ..................................................... 25
4.1.1 Cadastro de materiais ............................................................................. 25
4.1.2 Cadastro de alunos .................................................................................. 26
4.1.3 Cadastro de operador.............................................................................. 26
4.2 REQUISITOS NO FUNCIONAIS DO SISTEMA ............................................ 27
4.2.1 Segurana e confiabilidade .................................................................... 27
4.2.2 Tolerncia a falhas................................................................................... 27
4.2.3 Portabilidade ............................................................................................ 28
4.2.4 Hardware .................................................................................................. 28
4.2.5 Software .................................................................................................... 28
5 VISO DE CASO DE USO .................................................................................... 29
5.1 CONCEITO DE CASO DE USO ...................................................................... 29
5.2 OPERAO DO SISTEMA .............................................................................. 29
5.3 DEFINIO DE ATORES ................................................................................ 29
5.4 TABELA DE CASOS DE USO ......................................................................... 30
5.4.1 Modelos de casos de uso ....................................................................... 30
6 MODELOS DE SEQUNCIA ................................................................................. 32
6.1 DIAGRAMAS DE SEQUNCIA........................................................................ 32
7 VISO LGICA NVEL DE ANALISE ................................................................ 34
7.1 RELACIONAMENTOS PRINCIPAIS ENTRE AS CLASSES ........................... 34
7.2 DIAGRAMA DE CLASSES DO PROJETO ...................................................... 35
7.3 SMBOLOS DOS RELACIONAMENTOS ENTRE AS CLASSES .................... 37
8 DIAGRAMAS DE ENTIDADE E RELACIONAMENTO ......................................... 38
8.1 RELACIONAMENTOS ENTRE ENTIDADES .................................................. 38
9 VISO GERENCIAL: GERENCIAMENTO DE PROJETO .................................... 41

9.1 MTRICAS DE SOFTWARE ........................................................................... 41


9.2 PONTOS POR FUNO ................................................................................. 42
9.2.1 Arquivos lgicos internos ....................................................................... 42
9.2.2 Arquivos interface externa (AIE) ............................................................ 45
9.2.3 Entradas externas (EE)............................................................................ 47
9.2.4 Consultas externas (CE) ......................................................................... 48
9.2.5 Sadas externas (SE) ............................................................................... 49
10 PLANEJAMENTO POR DECOMPOSIO ........................................................ 51
10.1 TABELA DE CONTAGEM .............................................................................. 51
10.2 QUESTES DE AVALIAO DE COMPLEXIDADE DE SOFTWARE ......... 51
10.3 CLCULO DO FATOR DE AJUSTE .............................................................. 52
10.4 PRODUTIVIDADE, QUALIDADE, PREO E DOCUMENTAO ................. 53
11 VISO SOBRE DISTRIBUIO E IMPLEMENTAO (DEPLOYMENT).......... 55
12 CRONOGRAMA .................................................................................................. 57
13 BANCO DE DADOS DO SISTEMA ..................................................................... 58
13.1 INTRODUO A BANCO DE DADOS E SUAS REGRAS ............................ 58
13.2 DESENVOLVIMENTO DE TABELAS DO SISTEMA E VIEWS ..................... 60
13.3 DESENVOLVIMENTO DE TRIGGERS (GATILHOS) .................................... 65
13.4 REPRESENTAO DO MODELO LGICO RELACIONAL DO BANCO DE
DADOS .................................................................................................................. 66
14 SISTEMA EM MVC E CRUD COM PHP E MYSQL ............................................. 68
14.1 INTRODUO A CONCEITOS DE CRUD EM SISTEMA MVC .................... 68
15 CONSIDERAES FINAIS ................................................................................. 70
REFERNCIAS ......................................................................................................... 71
APNDICES ............................................................................................................. 73
Apndice A Glossrio de Termos Tcnicos ........................................................ 74
Apndice B Entrevista com o cliente sobre satisfao e melhorias .................... 75
Apndice C Dicionrio de Dados do Banco de Dados ........................................ 76
Apndice D Telas do sistema ............................................................................. 80

14

1 INTRODUO

No mundo globalizado, onde vivemos a necessidade da inovao,


decorrente de uma sequncia de aes compostas por implementao e
implantao, as quais nos permite gerar um acesso mais seguro e com maior
integridade de informaes, sendo esse um fator importante para uma gesto mais
exata e funcional em todos os setores e processos.
Sendo por meio dessa evoluo onde a segurana da informao, tal como a
integridade dos dados, comeou a apresentar e a gerar muitas melhorias por meios
de softwares, a qual antigamente as bibliotecas eram gerenciadas por meio de
entradas manuscritas em livros de controle, tendo em vista que o mesmo permitia
haver erros de cadastramento, tanto relativos a quem fez a sua alocao, tal como
do item alocado, assim como podendo haver falhas com relao quantificao
exata de exemplares, seu estado, duplicidade de informaes, assim como possvel
perda da mesma em caso de problemas gerados por foras naturais (Ex.:
Incndios).
O fator da duplicidade, onde a necessidade de implantao de um sistema
apenas informatizado, no fator decisivo para evitar a falha do mesmo.
Atualmente, o sistema (OPENBIBLIO) utilizado na faculdade de tecnologia de Tatu,
disponibilizado no SOURCEFORGET (Cdigo Aberto / Livre), apresenta campos
desnecessrios, como tambm, no apresenta todos os requisitos e solicitaes
identificados como necessrios pela instituio.
O novo software de gesto de biblioteca da Faculdade de Tecnologia de Tatu
prev solucionar os atuais problemas, levantados por uma entrevista feita com os
atuais funcionrios da biblioteca, onde foram encontrados entre eles, as possveis
melhorias; o controle dos livros alocados e disponveis com o bloqueio de uso em
caso de exceder o prazo estabelecido pela instituio, tal como suspenso da
carteirinha aplicada ao RA (Registro do Aluno) do aluno que no atenda os prazos
estabelecidos no sistema, seguindo as regras da biblioteca que poder ser
contemplada de forma eficaz com a utilizao do software proposto, efetuando a
gerao de relatrios por perodos de livro mais alocado, assim como bloqueio de
utilizao de usurios com pendncia de forma automtica, esse item, no est
presente no sistema atual. Para contemplar tal lacuna, utiliza-se para o novo sistema

15

proposto, o desenvolvimento de tcnicas de gesto de projetos, engenharia de


software, tal como boas prticas de desenvolvimento e anlise de sistemas para
apresentar uma soluo funcional.
Uma pesquisa feita por meio de um questionrio com os alunos e funcionrios
da biblioteca, foram levantados o grau de satisfao, a mdia de alocao de livros
por dia, e tambm o nvel de inadimplncia dos usurios, onde ser mostrado abaixo
um grfico com os resultados alcanados a partir da pesquisa. Com a viso de
gesto de projetos, como da engenharia de software aplicada a desenvolvimento de
sistemas, sendo o produto final direcionado a FATEC Tatu, como a outras
instituies de ensino, sendo resultado da necessidade da instituio o
desenvolvimento deste projeto.
Abaixo, pela figura 1, observa-se, de forma destacada, qual o nvel de
satisfao em porcentagem dos usurios do sistema, tanto internos (funcionrios),
como externos (alunos), os quais interagem de forma direta e indireta com o
sistema, sendo o resultado de 80% de usurios parcialmente satisfeitos, os quais
necessitam de mais facilidade e agilidade no processo.
Figura 1 - Satisfao dos usurios da biblioteca

20%
Bom
80%

Regular

Fonte: Autoria prpria

Pela figura 2, observa-se o nmero de livros alocados por perodo em mdia,


sendo os mesmos distribudos com uma mdia de 80 alocaes dirias, 2.000
mensais e cerca de 20.000 anuais.

16

Figura 2 - Mdia de alocao de livros na biblioteca da FATEC Tatu

Baseado em numero de livros

20000
15000
20000

10000
5000

80

2000

Diario
Mensal
Anual
Fonte: Autoria prpria

Devido ao nmero de alocaes, os quais foram baseados em dias letivos, ou


seja, quando h alunos na instituio e a biblioteca est aberta, determina-se a
necessidade de um controle mais efetivo, tendo em vista que o nvel de
inadimplncia dos alunos elevado em alguns cursos, conforme demonstra na
figura 3.
Figura 3 - Nvel de inadimplncia de entrega de livros
15% Gesto
em
Tecnologia
da
Informao

5% Outros

30% Gesto
Empresarial

50%
Automoo
Industrial

Cursos e suas inadimplncias


Fonte: Autoria prpria

A atual aplicao utilizada na biblioteca da instituio OPENSOURCE, e


com isso constam alguns problemas, tais como nos tpicos abaixo:

Duplicidade de informao em algumas tabelas sem uma organizao;

Consultas restritas e sem otimizao de querys;

Penalidades dos prazos de entrega.

Falta de controles mais precisos em parte da gesto bibliotecria.

17

Gerenciamento com ausncia de motores (triggers) para automatizar aes


no sistema e garantir uma maior segurana, tendo em vista que operaes
realizadas diretamente na pgina podem sofrer alteraes durante o processo
de gravao, caso o mesmo ocorra uma queda de conexo por parte do
usurio, tal como ausncia de controle de transaes, os quais evitariam
quase 100% esses erros, tanto por fatores externos, como externos.
Com base nos dados levantados por meios de pesquisas e entrevistas, sobre

as dificuldades e complexidades que envolvem o gerenciamento do atual sistema


bibliotecrio da FATEC Tatu, determina-se a seguinte questo: De que modo
desenvolver um software, que com eficincia possa auxiliar no gerenciamento da
gesto bibliotecria da FATEC Tatu?
Visando uma melhoria na gesto bibliotecria da instituio, partindo da
anlise de sistemas, e das confeces de documentaes de engenharia de
software, para o fim de aprimorar e melhorar o atendimento, assim como o servio
em viso de gerenciamento de uma melhor organizao das informaes que
alimentaro o sistema, sendo eles os cadastros, relatrios e consultas, que o
software disponibilizara com eficincia, eficcia, contemplando assim, preciso nos
dados e resultados. Contudo, maximizando os recursos, e acrescentando
melhorarias no controle e na integridade dos dados, o que facilitar a consulta dos
livros existentes ou no, para que possa ter um amplo melhoramento em questo do
uso do sistema em relao aos funcionrios e alunos que necessitam da biblioteca e
com isso, o controle dos livros alocados.
O desenvolvimento de um sistema de gesto bibliotecrio que contemple
todos os benefcios para se obter com eficincia e eficcia uma boa gesto
bibliotecria para a instituio FATEC Tatu:

Efetuando os levantamentos de requisitos por meios de pesquisas e


entrevistas,

para

se

obter

todas

as

reais

necessidades

serem

contempladas;

Cadastramentos dos livros, revistas, apostilas, alunos, funcionrios, etc;

Consultas aos itens disponveis na biblioteca (livros, revistas, alunos, CDS,


DVDS, etc.);

Relatrios de frequncias de alocaes, devolues, e bloqueios, com


preciso nos prazos;

18

Desenvolvimento

do

software

em

ambiente

WEB,

para

melhor

compatibilidade em amplas plataformas (Windows, Linux, Mac), e aplicaes


que disponibilizem interfaces dinmicas, direcionado para aplicaes em
ambientes desktops.
Um sistema para gesto bibliotecria que possa contemplar todos os recursos
necessrios, contando com um alto controle de cadastramento de livros, com todos
os atributos necessrios, tambm contar com o cadastramento de alunos, o
sistema ir criar um relatrio de acompanhamento do aluno que venha a fazer uma
nova alocao, sabendo assim, quantos dias ele far a devoluo do livro, ou a
mxima alocao de livros existentes que ele poder realizar.
Aplicando esses conceitos ao sistema, teremos a facilidade do uso e do
controle do software, para que os funcionrios da biblioteca possam realizar com
segurana o controle dos livros, alunos e de todos aqueles que necessitaro do uso
da biblioteca para uso pessoal.
Sendo abordadas nesse projeto de sistema, vrias tcnicas como o
levantamento de requisitos feito por meios de entrevistas e pesquisas de campo, o
qual pode fornecer, um melhor detalhamento das reais necessidades encontradas,
e tambm com a utilizao de orientao a objetos junto a programao para
podermos realizar todos os testes e assim, corrigir todos os erros e dificuldades
encontradas.

19

2 FASES DO PROJETO DO SISTEMA


Para incio das fases de desenvolvimento do projeto, precisa-se compreender
o que projeto, quais suas etapas, como tambm fazer um olhar das tcnicas da
engenharia de software para encontrar a melhor soluo no desenvolvimento do
software.
A definio proposta no PMBOK (PMI, 2004, p. 21), diz que "um projeto um
esforo temporrio empreendido para criar um produto, servio ou resultado
exclusivo.
Desta forma para que um projeto seja vivel, precisar passar por todas fases
de analises e levantamento de dados, sendo o primeiro passo a criao do Termo
de abertura de projeto.
Segundo PMBOK (PMI, 2004, p.45), o termo de abertura de projetos a
autorizao do projeto, sob a qual constam as necessidades do projeto, as
quais sero levantadas durante sua documentao.

Com o termo de abertura definido, necessrio definir o Escopo do projeto,


contendo as caixinhas de tarefas, cada item, e qual ser a pessoa responsvel.
Nesse momento, tambm definimos premissas e restries.
Conforme PMBOK (PMI, 2004, p. 43), tendo o escopo inicialmente visto
como a delimitao de premissas, restries, a organizao de recursos
que as partes interessadas esto dispostas a investir, tal como no
refinamento adicional durante cada processo do projeto.

Sendo essa documentao descrita pelo PMI, o levantamento de requisitos


da engenharia de softwares, o projeto para o desenvolvimento de um sistema.
Dessa forma Sommerville define (2007, p. 79) os requisitos do software
como uma das caractersticas a qual capaz de tornar possvel atingir os
objetivos do sistema, sendo o processo demarcado pela anlise,
documentao e verificao dos servios necessrios e suas propriedades,
sendo uma definio de requisitos mais precisa servios os quais constaram
ou no no projeto.

Podendo os requisitos ser divididos em duas categorias essenciais:


Requisitos funcionais e no funcionais, dessa forma podendo identificar suas
necessidades na documentao do sistema.
Os quais define Sommerville, (2007, p. 80), como sendo: requisitos
funcionais como declaraes de servios que o sistema dever fornecer, a
forma como devera se comportar ou no, assim como os itens que deveram
fazer parte do mesmo, por outro lado, os requisitos no funcionais so
essenciais para seu funcionamento, so restries e exigncias detectadas
pelo analista.

20

Havendo acontecido o processo de levantamento dos requisitos tanto


funcionais, e no funcionais, para construo da EAP (Estrutura Analtica de
Projetos), sob a qual apenas itens constantes nelas iro compor o projeto.
Conforme nota apenas itens que compem as atividades previstas na EAP
fazem parte do projeto, pois toda e qualquer tarefa que no consta na EAP
est tambm fora do escopo, sendo o escopo as caixas de trabalho a ser
entregue no final do projeto (HELDMAN, 2005, p. 100).

Tendo em vista que a documentao um item vital utilizado durante o


processo de desenvolvimento de softwares, sendo iniciada no momento do
levantamento de requisitos, contemplando alteraes durante todo seu processo,
sendo ele a implementao e testes, sua implantao e revises, at o produto final.
Sendo utilizado para o desenvolvimento convencionalmente o Modelo
espiral, o qual segundo Pressman (2006) faz a combinao da prototipao
com aspectos, tal como utilizao de modelos sistemticos de cascatas,
gerando dessa forma a possibilidade de desenvolvimento e analise de
novas verses de forma mais rpida do sistema, sendo o mesmo dividido
em um conjunto de atividades as quais orientam sua confeco.

A partir desse modelo, podemos fazer cada fase do projeto de forma eficiente
e eficaz, com menores possibilidades de falhas nos processos, entretanto devemos
saber identificar os requisitos da forma correta, fazendo seu levantamento de forma
consciente. Assim como todo projeto de desenvolvimento de sistema possui uma
dependncia de identificao dos chamados casos de uso, sendo eles responsveis
por identificar de uma forma geral o comportamento dos itens por parte do usurio.
Segundo Sommerville (2007), Objetivo dos casos de uso orientar ao
programador as funcionalidades envolvidas no sistema, tal como os
usurios envolvidos e integraes com sistemas externos, sendo o maior
propsito do Caso de s fornecer uma descrio do comportamento pelo
ponto de vista do usurio, partindo-se de modelos de sistema orientados a
objetos gerando cenrios para obter requisitos do sistema e descrever seus
modelos.

Outro item altamente relevante no processo a identificao dos atores do


sistema, os quais sofrem ou no interaes de acordo com seu nvel de acesso ao
sistema e suas operaes, partindo do caso de uso que possibilita identificar de uma
forma mais clara a interao dos atores do sistema.
Segundo Sommerville (2003), Atores so papis de elementos externos ao
sistema e que interagem diretamente com o sistema. Um outro sistema que
interage com o sistema a ser desenvolvido tambm considerado um ator,
desde que este sistema no faa parte do desenvolvido.

21

Desta forma os atores so itens importantes para identificao dos nveis de


acesso, qual pessoa pode acessar qual tipo de informao, fazer suas alteraes,
quais os procedimentos para realizaes de operaes.
De acordo com Sommerville, (2003) os engenheiros de requisitos no
precisam se limitar aos modelos propostos em qualquer mtodo de uma
forma especifica, entretanto esses modelos so uteis em algumas vezes
como parte do processo de anlise dos objetos do sistema, pois refletem
em boa parte no entendimento do usurio final e como poder isso
contribuir de forma direta com identificao de objetos com seus fluxos
aplicados a operaes efetuadas no objeto. Modelos de sequncia mostram
a interao entre objetos ao longo do tempo.

No diagrama de sequncia, se encontram todos os fluxos de trocas de


mensagens atravs da primeira ao, desencadeia-se assim uma srie de elementos,
os quais de acordo com os acontecimentos, geram consequncias s quais podem
sofrer ou no alterao de acordo com a ao do ator. Com isso, gerando os
chamados caminhos alternativos, identificando os elementos que compem a
estrutura bsica de um software, sendo necessria a implementao de uma
linguagem a qual seja possvel modelar as informaes de tal forma que atinja a
proximidade com o projeto em questo, desta forma partindo-se do pr-suporto, sob
o qual a aplicao poder ser acessada de mltiplas plataformas e sistemas
operacionais diferentes, de uma forma dinmica na nuvem (Desenvolvimento WEB).
Segundo (NIXON, 2012) os benefcios do PHP, MYSQL, JavaScript e CSS,
permite uma migrao da web 1.0 para a web 1.1, possuindo
compatibilidade com a web 2.0 sendo sites dinmicos com resposta
cliente/servidor, podendo ter suas requisies baseadas em processos
AJAX, sendo essas requisies com resposta sem atualizar a pgina.

Dessa forma, o aplicativo poder ter total compatibilidade com dispositivos


atuais

(Multiplataforma),

compatibilidade

com

melhor

tecnologia

interao
cliente

com

servidor,

cliente,

alm

utilizando

PHP

da

total

junto

JAVASCRIPT.
Hoje existem inmeras tecnologias baseadas no JAVASCRIPT, uma das mais
utilizadas na atualidade, a JQUERY, linguagem a qual aperfeioa os itens
primitivos e sua interao com os objetos da pgina, utilizando a chamada
programao orientada a objetos, entre as vantagens da linguagem, encontram-se
vrias funcionalidades relacionadas disponibilidade de conectores, dos mais
diversos bancos de dados, tal como suporte para diversos protocolos.

22

Existem inmeras vantagens em utilizar o PHP, entre elas suporte para


inmeros bancos de dados, entre eles MYSQL, Postgre SQl, Oracle, DB2,
tal como suporte a variveis padro e protocolos, como DOM, XML, IMAP,
POP3, LDAP, HTML, entre outros (ARROYO; SANTOS, 2002, p.1).

Com a possibilidade de gerao de entrada em diversos bancos de dados


com pouca alterao na codificao, a linguagem PHP possibilita uma forma
eficiente e funcional para criao de tecnologias com suporte para rodar na nuvem,
pois todos os dispositivos atuais possuem compatibilidade em seus navegadores
(Browsers). Sendo assim, a utilizao da chamada programao orientada a objetos
fundamental, pois a mesma oferece uma maior flexibilidade, interao entre
objetos de diferentes tipos e formatos, assim como uma melhor viso e
aprimoramento de tcnicas atuais.
Arroyo e Santos, (2006, p.4) definem a chamada POO (Programao
Orientada a Objetos), como uma tcnica a qual modela processos de
programao efetuando tratamento de cada elemento, respeitando suas
caractersticas e tipos, aplicando suas funcionalidades, obtendo dessa
forma melhor desempenho, chegando a uma realidade aproximada.

Com a definio da linguagem desejada, o prximo passo ser identificar a


melhor forma de armazenamento da informao, sendo esse um dos principais
elementos que compem pginas dinmicas com fins especficos. Sendo a funo
do banco de dados, o armazenamento e gesto de consultas das informaes.
Define-se um banco de dados como um conjunto de informaes
"persistentes", com fim de utilizao em sistemas de aplicao gerando
armazenamento e consulta posterior de dados de uma empresa, tendo seus
relacionamentos de informao sempre gerenciados de forma precisa
(DATE, 2004, p. 10).

Podendo utilizar-se de linguagens de banco de dados mais comuns e


funcionais, como SQL, linguagem a qual suporta trigger, procedures, entre outras
funes alm de fazer o armazenamento da informao. Havendo compreendido
conceitos bsicos de gesto de projetos, de engenharia de software e de sistemas,
possvel desenvolver um software funcional.

23

3 SOFTWARE E SEU DESENVOLVIMENTO

Software um conjunto de arquivos executveis (Binrios), formados por


conjuntos de rotinas, os quais possuem uma base de dados (Bancos de Dados),
com a finalidade de agilizar a transformao de dados em informaes que podem
ser interpretadas e utilizadas em seus fins. Como por exemplo, fornecer meios de
gerar relatrios de controle, efetuar a gesto do mesmo por meio de dados
registrados e processados, e com a possibilidade de armazenar informaes com
mais segurana.
Embora existam milhares de softwares, com diferentes formatos e rotinas,
precisa-se visualizar qual a real necessidade de quem ir opera-lo, partindo ento da
necessidade de possuir um software que fornea dados com preciso nos registros,
para controlar e gerenciar o acesso ao acervo de livros, o ir nos permitir realizar
cadastros, consultas e gerar relatrios com base nos dados fornecidos pelo usurio,
para isso precisa-se compreender e utilizar todos os conceitos da engenharia de
software.

3.1 ENGENHARIA DE SOFTWARE

Engenharia de software a criao e a utilizao de slidos princpios de


engenharia, a fim de obter softwares econmicos que sejam confiveis e que
trabalhem de forma eficientemente em mquinas reais. (PRESSMAN, 2006, p.17).
Desta forma, possvel compreender que por meio do processo de
engenharia de requisitos, que determinada a melhor soluo, nos quais os itens
realmente relevantes e necessrios se encontram, evitando desperdcio de
processamento e de armazenamento.

3.2 DESENVOLVIMENTO DO SOFTWARE

O processo para alocao de um livro envolve toda uma dinmica composta


por etapas, desde o atendimento, reconhecimento do perfil do aluno, tal como todo o
histrico de alocaes e suas preferncias atuais, tudo atravs de um relatrio. E ao
processo de entrega de um livro, sendo necessrios ento registros dessas

24

informaes, de forma segura, para assim equilibrar e obter melhores resultados. E


por meio desses registros que fornecero de forma eficaz, o administrador do
sistema, tal como, os funcionrios, ir ter uma maior percepo de quais opes
podero apresentar ao aluno.

25

4 VISO GERAL DO SISTEMA

O sistema dever gerenciar, desde cadastro dos livros, alunos, funcionrios,


registros de alocaes, consulta dos livros, revistas, e tambm realizar em questo,
a consulta da entrega de uma alocao j feita atravs de outro aluno. O software
tambm constar com uma restrio de acessos por nveis hierrquicos, desde as
funes de cadastro, alterao e excluso. Isso levar a outro quesito a ser
ressaltado que o mdulo de segurana da informao, atravs de criptografia de
senhas, armazenamento de sua base de dados de forma criptografada, oferecendo
assim confiabilidade e a to almejada portabilidade, por ser um sistema feito com
linguagem WEB.
Segundo (Sommerville, 2003) os requisitos funcionais do sistema so
inerentes ao sistema em si, ou seja, por meio de suas funcionalidades um
programa, dever ter o processamento efetuado e uma sada deste mesmo
processamento. Sendo os requisitos no funcionais do sistema inerentes ao
sistema como um todo, tendo em vista uma interoperabilidade com
ferramentas e servios externos que so necessrios para o seu bom
funcionamento.

Partindo dos requisitos funcionais, os quais o usurio (operador) tem um


contato direto com o sistema, e possui seu conhecimento sobre o mesmo, podemos
identificar os requisitos funcionais como sendo cadastros, consultas, e relatrios. E
como os no funcionais as tecnologias que podem impedir invases, e alteraes
nos dados por usurio sem privilegio, como existncias de logs de acesso, e a
escolha do formato do banco de dados com maior tolerncia a falhas, sua
atribuio a portabilidade pela plataforma escolhida para desenvolvimento.

4.1 REQUISITOS FUNCIONAIS DO SISTEMA

4.1.1 Cadastro de materiais

O cadastro de materiais ter as seguintes funes:


a) Armazenar um cadastro dos materiais ativos da biblioteca atravs de uma
chave primaria que ser o nmero de cdigo do material (ID);
b) O nmero do cdigo do material dever agregar os seguintes atributos: nome,
ttulo, autor, editora, edio, ISBN, tombo, data da publicao, estado de

26

alocao, volume, data de alocao, data de devoluo, descrio, cdigo do


aluno que fez a locao, e chave do operador responsvel pela locao;
c) Atravs do registro da chave primria denominada nmero de cdigo do
material (ID), o sistema dever disponibilizar os seguintes mtodos: adicionar,
alterar, consultar e tornar ativo ou inativo, disponvel ou alocado.
d) O sistema estar apto a tornar indisponvel o material caso esteja alugado,
tornando-o inativo, e poder estar excluindo o cadastro do material caso
esteja sem efetuar sua devoluo a certo perodo de tempo denominado pelo
administrador do sistema, ou em caso de perda ou danos causados ao
material.
4.1.2 Cadastro de alunos

O cadastro de alunos ter as seguintes funes:


a) Armazenar um cadastro de alunos ativos da biblioteca atravs de uma chave
primaria que ser o nmero de cdigo do aluno (RA - Registro de Aluno);
b) O nmero do cdigo do aluno dever agregar os seguintes atributos: nome,
telefone fixo, telefone celular, data de nascimento, e-mail;
c) Atravs do registro da chave primria denominada nmero de cdigo do
aluno (RA), o sistema dever disponibilizar os seguintes mtodos: adicionar,
alterar, consultar e tornar ativo ou inativo. E sero visualizadas na tela as
informaes requeridas pelos mtodos chamados;
d) O sistema estar apto a fechar um cadastro, tornando-o inativo caso esteja
sem efetuar alocao a certo perodo de tempo denominado pelo
administrador do sistema, e poder ter a opo de excluso caso o aluno
esteja retido da FATEC Tatu.

4.1.3 Cadastro de operador

O cadastro de operador ter as seguintes funes:


a) Dever armazenar um cadastro de operadores ativos da biblioteca atravs de
uma chave primaria que ser o nmero da chave do operador, gerado quando
um novo operador for cadastrado no sistema;

27

b) Chave do operador dever agregar os seguintes atributos: nome, data de


cadastro, e a chave do operador (PIN);
c) Atravs do registro da chave primria denominada nmero da chave do
operador, o sistema dever disponibilizar os seguintes mtodos: adicionar,
alterar, consultar, excluir. E sero visualizadas na tela as informaes
requeridas pelos mtodos chamados pelo usurio do sistema;
d) O sistema estar apto a excluir um cadastro de operador, tornando-o
indisponvel caso no esteja mais em uso no sistema.
4.2 REQUISITOS NO FUNCIONAIS DO SISTEMA

4.2.1 Segurana e confiabilidade

A segurana engloba dois aspectos importantes:


a) O acesso ao sistema dever ser mediante a entrada de senha,
impossibilitando. Possveis pessoas curiosas efetuar o acesso ao aplicativo e
alterar dados, o mesmo dever ser acessado por meio de um PIN-KEY para
evitar cancelamento de reservas e apagar registro de alocao, em caso de
um operador no possuir permisso para esse acesso;
b) O sistema dever permitir uma cpia de segurana do banco de dados em
um sub-banco no qual ser feito por meio de um rob (Tarefa Crom).

4.2.2 Tolerncia a falhas

Existem duas importantes consideraes com respeito tolerncia de erros:


a) No caso do sistema cair, por ausncia da internet, ou a prpria conectividade
do servidor oscilar, possveis erros de gravao em sistemas convencionais
seria possvel, mas todas as transaes so controladas por transaes SQL
em nosso sistema;
b) Para evitar perda de dados por erro humano nosso sistema gerar logs
(Arquivos de registros com histrico de informao), nos quais todas as
aes do sistema sero armazenadas.

28

4.2.3 Portabilidade

Existem duas importantes consideraes com respeito portabilidade:


a) O Software desenvolvido em nuvem, plataforma a qual teve resultados de
desempenho

estabilidade

comprovados

em

inmeras

plataformas

existentes no mercado, possibilidade de conexo com banco de dados


estveis e seguros, os quais oferecem controles de transao, backup
simultneo (em tempo real), utilizando-se de tecnologias como PHP e
MYSQL;
b) Oferecera uma interface limpa e amigvel, reduzindo a necessidade de longas
horas de treinamentos.

4.2.4 Hardware

No que abrange os requisitos mnimos de hardware:


a) A base de desenvolvimento considerara como requisito mnimo do hardware
para a utilizao do software no back-end do sistema (Servidor WEB /
Servidor de Dados): processador com 2.3 Ghz, 2 GB de memria RAM, 500
GB de armazenamento em disco;
b) Os requisitos do usurio final so apenas um dispositivo, no existem
requisitos definidos, apenas precisa rodar Windows, Linux ou Android
(Preferencial Tablet).

4.2.5 Software

No que abrange os requisitos mnimos de software:


a) Servidor WEB Linux (Cents OS ou Debian), com Apache2, instanciado com
o PHP5 + MYSQL Server;
b) Os requisitos de software so um sistema operacional atualizado, sendo ele
WINDOWS (A partir de XP), Linux (Ubuntu, Debian, etc.), Android (2.3 ou
superior, preferencial em Tablet), instalado um navegador atualizado
(Preferencial Internet Explorer 10 ou Google Chrome verso (Compilao)
32 ou superior ou Firefox verso (Compilao) 23 ou superior) para um
melhor desempenho.

29

5 VISO DE CASO DE USO


5.1 CONCEITO DE CASO DE USO
Segundo (Sommerville, 2007), Objetivo dos casos de uso orientar ao
programador as funcionalidades envolvidas no sistema, tal como os usurios
envolvidos e integraes com sistemas externos, sendo o maior propsito do Caso
de s fornecer uma descrio do comportamento pelo ponto de vista do usurio,
partindo-se de modelos de sistema orientados a objetos gerando cenrios para obter
requisitos do sistema e descrever seus modelos.

5.2 OPERAO DO SISTEMA

O aluno que necessita da locao de um livro, o qual o livro lhe fornecera


conhecimento e/ou esclarecimento de dvidas. Este aluno ento procura o livro na
biblioteca FATEC Tatu, e caso consiga com eficincia encontrar o livro de seu
desejo, para que em seguida possa efetuar sua locao. E para efetuar a locao,
ser preenchido os dados do aluno, junto as informaes do livro, o qual ser
gerado um perfil de aluno, que por meios dele estar automaticamente cadastrando
todas as suas movimentaes de alocaes, desde os livros mais alocados, datas
em que foram alocados e seus status de pendncias com a biblioteca.

5.3 DEFINIO DE ATORES

Segundo (Sommerville, 2003), atores so papis de elementos externos ao


sistema e que interagem diretamente com o sistema. Outro sistema que interage
com o sistema a ser desenvolvido tambm considerado um ator, desde que este
sistema no faa parte do desenvolvido. Ator aquele presente no modelo de usos
de casos que de alguma forma interage como elemento no sistema, disparando
determinada ao. So pessoas ou outros subsistemas, que fazem parte do mesmo
ou no.
a) Ator operador: aquele que ir efetuar o cadastro dos livros, alunos, e as
operaes de alocaes e devolues.
b) Ator aluno: aquele que ir executar a locao e devoluo de um livro.

30

5.4 TABELA DE CASOS DE USO

As tabelas de caso de uso fornecem uma referncia e explicam as aes


representadas por cada terminologia verbal pelo ator como podemos ver na tabela
abaixo;
Tabela 1: Casos de uso Ator operador

Caso de Uso

Descrio

01

adicionarOpe

Mtodo que inclui as informaes na classe operador no BD.

02

alterarOpe

Mtodo que modifica as informaes na classe operador no

ord.

BD.
03

consultarOpe

Mtodo que consulta o registro na classe operador no BD.

04

inativarOpe

Mtodo que altera o status na classe operador no BD.

Fonte: Autoria prpria

Abaixo vemos a tabela de casos de usos do ator aluno, os quais nos mostram
as aes representadas;
Tabela 2: Casos de uso Ator aluno

Caso de Uso

Descrio

01

adicionarAlu

Mtodo que inclui as informaes na classe aluno no BD.

02

alterarAlu

Mtodo que modifica as informaes na classe aluno no BD.

03

consultarAlu

Mtodo que consulta o registro na classe aluno no BD.

04

InativarAlu

Mtodo que altera o status na classe aluno no BD.

ord.

Fonte: Autoria prpria

5.4.1 Modelos de casos de uso

Os modelos de Casos de Uso propem uma visualizao grfica das aes


que so executadas pelos atores envolvidos no processo. O gerenciamento das
aes apresentara os seguintes atores nas figuras abaixo;

31

Figura 4 - Modelo de casos de uso ator operador

Fonte: Autoria prpria

Abaixo vemos a figura do modelo de casos de uso do ator aluno que contar
com as seguintes aes de gerenciamento.
Figura 5 - Modelo de casos de uso ator aluno

Fonte: Autoria prpria

32

6 MODELOS DE SEQUNCIA

Segundo (Sommerville, 2003) os engenheiros de requisitos no precisam se


limitar aos modelos propostos em qualquer mtodo de uma forma especifica,
entretanto esses modelos podem ser uteis em algumas vezes como parte do
processo de anlise dos objetos do sistema, pois refletem em boa parte no
entendimento do usurio final e como poder isso contribuir de forma direta com
identificao de objetos com seus fluxos aplicados a operaes efetuadas no objeto.
Modelos de sequncia mostram a interao entre objetos ao longo do tempo.
No diagrama de sequncia se encontram todos os fluxos de trocas de
mensagens atravs da primeira ao, ento assim desencadeia-se uma srie de
elementos os quais de acordo com os acontecimentos, geram consequncias s
quais podem sofrer ou no alteraes de acordo com cada ao do ator, isso
gerando os chamados caminhos alternativos.
Denominando-se curso normal o primeiro tipo de rota que a ao gerada
pelos atores at o final do curso, assim como curso alternativo, caso o ator sofra
algum tipo de interferncia de uma condio imposta, podendo existir inmeros
caminhos alternativos nesse sistema.

6.1 DIAGRAMAS DE SEQUNCIA


a) O diagrama de sequncia de alocao pode ser visto na figura a seguir:

33

Figura 6 - Diagrama de sequncia de alocao

Fonte: Autoria prpria

Curso normal:
1) O aluno consulta livros disponveis;
2) O operador informa as melhores opes;
2.1) O aluno escolhe o livro;
2.2) O operador solicita os dados do aluno para realizar a locao;
2.3) O aluno informa os dados ao operador;
2.3.1) Efetua cadastro caso o aluno no seja cadastrado;
2.3.2) O sistema informa o cadastro efetuado com sucesso;
3) O operador efetua a entrega do livro e do perodo de locao;
Curso Alternativo
2.2) O operador solicita os dados do aluno para cadastro;
2.3) O aluno informa os dados ao operador para realizar o cadastro;
2.3.1) O vendedor verifica o cadastro do aluno, caso o aluno no seja
cadastrado;
2.3.2) O sistema informa o retorna que aluno j cadastrado;

34

7 VISO LGICA NVEL DE ANALISE

de suma importncia no processo de uma confeco de um software


construir uma viso lgica e com relacionamentos voltados para as regras de
negcios, estimulando assim de uma forma clara e objetiva, de encontrar falhas, e
poder realizar melhorias, assim aprimorando a modelagem da aplicao logo em seu
processo inicial, identificando seus processos no ambiente de utilizao do aplicativo
ou sistema.
Partindo por outro meio de modelagem, o diagrama de classes incluem
detalhes, com as devidas melhorias agregadas e relacionadas a cada objeto do
sistema, de uma forma em que a classe disposta no diagrama seja em formas de
retngulos,

divididas

em

trs

linhas,

sendo

seu

nome,

seus

atributos

(caractersticas), tal como seus mtodos aplicados (funes incluir, remover, alterar,
entre outros). Reafirmando sua funcionalidade no processo, o autor Sommerville
(2003), identifica os objetos dos sistemas, e suas relaes entre si como uma das
reas mais difcil de analisar no projeto e na sua orientao a objetos.

7.1 RELACIONAMENTOS PRINCIPAIS ENTRE AS CLASSES

Agregao Relacionamentos estruturados na viso de regras de negcios,


determinadas como cada classe pode afetar o fluxo em um sistema, sem
haver a necessidade de outro.

Herana Relacionamento dos objetos os quais possuem caractersticas


comuns de uns herdarem caractersticas de outros, (Ex.: classe filha herda da
classe pai).

Dependncia Relacionamento em que um objeto depende de outro para


sua existncia, quando o objeto principal alterado, seu dependente recebe
automaticamente a alterao. Em muitos casos ela deixa de ser utilizada,
utilizando-se um atributo ou mtodo de outra classe para a mesma funo.

Agregao - Relacionamento que define que uma classe dever ter um valor
somente se no interagir sozinha, mas unicamente junto a outra classe. Pois
quando uma classe no possui funo sozinha essa classe, portanto deve ser
agregada a outra.

35

Composio Relacionamento em que certas classes apenas existem com a


finalidade de verificar existncias de outras classes que compem o mesmo
objeto, ao de destruir uma classe, a classe composta ser destruda junto
outra classe.

7.2 DIAGRAMA DE CLASSES DO PROJETO

O Diagrama de Classes de Projeto o resultado de um refinamento do


Diagrama de Classes de Anlise. O qual e usado para:

Adicionar mtodos;

Criao de atributos;

Adio da direo das associaes;

Possvel detalhamento dos atributos e associaes;

Alterao na estrutura das classes e associaes;

Como pode ser vista na figura a seguir:

36

Figura 7 - Diagrama de classes de projeto

Fonte: Autoria prpria

37

7.3 SMBOLOS DOS RELACIONAMENTOS ENTRE AS CLASSES

Pode ser vista logo abaixo a figura sobre simbologia dos relacionamentos entre as
classes.
Figura 8 - Simbologia dos relacionamentos entre as classes

Fonte: MACORATTI, 2004.

38

8 DIAGRAMAS DE ENTIDADE E RELACIONAMENTO

Os diagramas de entidade e relacionamentos (denominados como DER)


possuem como finalidade poder visualizar as tabelas (Entidades), com seus
atributos (Campos) e suas possveis ligaes entre si (relacionamentos), j
predefinidos com suas funes dentro do sistema na estrutura do banco de dados.
Segundo Alves (2009), utilizamo-se as seguintes terminologias e representaes
para a construo de um diagrama de entidade e relacionamento, seguindo a
simbologia mostrada na figura a seguir:
Figura 9 - Simbologia e terminologia do DER

Fonte: Fred R. McFadden, 1999

8.1 RELACIONAMENTOS ENTRE ENTIDADES

Os relacionamentos entre as entidades, as quais todas possuem atributos


prprios sendo eles armazenados no banco de dados, podemos identificar alguns
tipos de entradas possveis. Partindo do princpio em que as entidades so
compostas por campos de chave candidata primaria, candidata secundaria, ou
campo comum, o qual no exige uma integridade. Sendo assim, podemos encontrar
diversos tipos de relacionamentos, entre eles 1 para 1, representado (1..1), por
meio do qual um item pode ser acessado por apenas um nico usurio, ex.: Uma
empresa pode ter apenas um diretor, relacionamento 1 para muitos, representado
(1..N), atravs do mesmo, uma empresa poder ter muitos operadores. Existindo
mais duas outras formas de representar esses relacionamentos, sendo 1 ou muitos

39

para 1 ou muitos, representado (1..N para 1...N), tendo em vista que um atendente
pode atender a muitos clientes, tal como muitos atendentes podem atender a um
cliente, da mesma forma, existindo o relacionamento muitos para muitos,
representado (N..M), o qual muitos itens, esto relacionados a outros itens, este
tipo de relacionamento no muito utilizado, um exemplo disto pode ser vista na
figura abaixo no diagrama entidade e relacionamento.

40

Figura 10 - Diagrama de entidade relacionamento (DER)

Fonte: Autoria prpria

41

9 VISO GERENCIAL: GERENCIAMENTO DE PROJETO

O Planejamento do programa essencial, embora em muitos casos seja


esquecido. Havendo inmeros casos em que programas com pouca programao,
estruturas de deciso, recebem custos altos ao serem revendidas as empresas, tais
como em muitos casos realizam os testes de suas aplicaes finais em seu cliente,
ao invs de faz-los no momento de seu desenvolvimento. Para que seja possivel
obter um bom aproveitamento do processo, atravs de um planejamento efetivo e
funcional, utiliza-se as chamadas mtricas de software, desta forma obtendo valor
justo, real viso da cobertura das funcionalidades do software, como uma real
dimenso da qualidade do projeto como um todo.
Assim como Pressman (1995), define essas mtricas, como sendo resultados
da contagem de linhas dos cdigos (LOC), velocidade de processamento do
programa, espao de armazenamento na memria, assim como os BUGs (falhas de
execuo / erros) em um determinado perodo durante seu desenvolvimento, nessas
mtricas obtemos ento, a qualidade, complexidade, eficincia, facilidade de uso,
confiabilidade

grau

de

manuteno

desse

software

ao

final

de

seu

desenvolvimento.
Segundo Sommerville (2003), mas medies de software resultam em atrasos
no desenvolvimento do software, por outro lado so necessrias para assim
assegurar um mnimo de qualidade, assim como reduzir o nmero de erro no
desenvolvimento de um projeto. Em suma as mtricas so responsveis por nos
fornece orientaes sobre como ser o projeto de uma forma mais precisa, como
uma maior profundidade.

9.1 MTRICAS DE SOFTWARE


Ao abordarmos aspectos de medio de software poderemos faz-los pela
medio de sua produtividade, utilizando linhas de cdigo (LOC), embora existam
projetos curtos e funcionais por outro lado outro grande e no to bem elaborados,
assim como com menor funcionalidade. Outra forma podendo ser tambm aplicada
o ponto de funo, atravs do qual segundo (ALBRETCHT, 1979) A medio
deveria avaliar atravs do PF (pontos por funo), a produtividade atravs de cinco
aspectos, sendo eles: nmero de entradas do usurio, nmeros de sadas do

42

usurio, nmeros de consultas do usurio, nmero de arquivos do usurio, nmero


de interface externas. Atravs da mtrica de pontos de funo, reduzimos custos
altos para aplicaes com cdigos grandes, porem pouco funcionais. Ao
observarmos essas mtricas de software obtemos uma melhor mensurao atravs
dos pontos de funo, em um modelo em que as melhorias so possveis e
comprovadas, sendo suas respectivas denominaes pelas siglas ALI, AIE, EE, CE
e SE.

9.2 PONTOS POR FUNO

9.2.1 Arquivos lgicos internos

Os Arquivos Lgicos Internos so dados que so fornecidos como controle,


presentes na aplicao e identificados pelo usurio. Sua funo de armazenar
dados obtidos na execuo de um processo em uma aplicao. Sendo assim os
Dados Elementares Referenciados (DER), consiste em um campo nico,
reconhecido pelo usurio, assim como o Registro Lgico Referenciado (RLR), como
um subgrupo de dados reconhecido pelo usurio dentro do ALI ou em um AIE.
Tanto a contagem de complexidade dos ALI, como dos AIE, sero definidas pela
seguinte tabela:
Tabela 3: Clculo de complexidade ALI e AIE

Fonte: FABRI, 2005, p. 48.

Como referncia do projeto de desenvolvimento de controle temos as


seguintes tabelas de ALI representadas. Vemos a tabela com o controle do aluno
com a seguinte tabela de ALI abaixo;

43

Tabela 4: Exemplo de arquivos lgicos interno aluno

cadastro_alunos
Campo

Tamanho

Formato

IdAlunos

11

Int

RAAluno

20

Alfanumrico

NomeAlunos

20

Alfanumrico

Status

Alfanumrico

RLR 3

Complexidade: SIMPLES

DER 4
Fonte: Autoria prpria

Agora vemos o controle do operador com a seguinte tabela de ALI abaixo;


Tabela 5: Exemplo de arquivos lgicos interno operador

Operador
Campo

Tamanho

Formato

Nome

255

Alfanumrico

DataCadastro

Data

ChaveOperadorPIN

11

Inteiro

DER 3

RLR 1

Complexidade: SIMPLES

Fonte: Autoria prpria

Em seguida tambm veremos o controle de operao da alocao com a


seguinte tabela de ALI abaixo:
Tabela 6: Exemplo de Arquivos lgicos interno alocao

aluguel_operacao
Campo

Tamanho

Formato

IdOperacao

11

Inteiro

RAaluno

20

Alfanumrico

DataOperacao

Data

ChaveoperadorPIN

11

Inteiro

ChaveSeguranaOperacao

Alfanumerico

DER 5
Fonte: Autoria prpria

RLR 4

Complexidade: SIMPLES

44

Em seguida tambm veremos o controle de alocao de itens com a seguinte


tabela de ALI abaixo:
Tabela 7: Exemplo de arquivos lgicos interno alocao

aluguel_operacao_itens
Campo

Tamanho

Formato

Id

11

Inteiro

IdOperacao

11

Inteiro

IdMaterial

11

Inteiro

n_tombo

255

Alfanumrico

StatusDevolucao

255

Alfanumrico

DataRetitrada

Data

DataDevolucaoPrev

Data

DataDevolocao

Data

MultaDevolucao

Double

RAAluno

20

Alfanumrico

AplicarMulta

Alfanumrico

ItemTipo

11

Inteiro

DER 12

RLR 3

Complexidade: SIMPLES

Fonte: Autoria prpria

Podemos ver a seguir o controle do livro com a seguinte tabela de ALI abaixo:
Tabela 8: Exemplo de arquivos lgicos interno material

Material
Campo

Tamanho

Formato

IdMaterial

11

Inteiro

NomeMaterial

255

Alfanumrico

Titulo

255

Alfanumrico

Autor

255

Alfanumrico

Editora

255

Alfanumrico

Ano

Data

45

Edicao

255

Alfanumrico

Volume

255

Alfanumrico

DescricaoMaterial

255

Alfanumrico

ISBN

255

Alfanumrico

ISSN

255

Alfanumrico

Classificacao

255

Alfanumrico

CodeMaterial

10

Alfanumrico

Disponivel

Alfanumrico

DataInclusao

Data

UsuarioAceite

11

Inteiro

DER 16

RLR 5

Complexidade: Mdio

Fonte: Autoria prpria

9.2.2 Arquivos interface externa (AIE)

Os chamados arquivos de interface externa so dados que so informados


logicamente relacionados e esto presentes fora da fronteira da aplicao, como
podemos visualizar um exemplo na tabela abaixo:
Tabela 9: Exemplo de Arquivos de interface externa de aluno atendido

aluno_atendido_operador
Campo

Tamanho

Formato

ChaveOperadorPIN

11

Inteiro

RAAluno

13

Alfanumrico

DataOperacao

Data

IdOperacao

11

Inteiro

ChaveSegurancaOperacao

255

Alfanumrico

DER 5
Fonte: Autoria prpria

RLR 1

Complexidade: SIMPLES

46

Tabela 10: Exemplo de AIE de materiais cadastrados

Material_cadastrado_por_operador
Campo

Tamanho

Formato

ChaveOperadorPIN

11

Inteiro

IdOperacao

11

Inteiro

NomeMaterial

225

Alfanumerico

Autor

225

Alfanumerico

Editora

225

Alfanumerico

Ano

Alfanumerico

Edio

225

Alfanumerico

Volume

45

Alfanumerico

DescricaoMaterial

225

Alfanumerico

ISBN

19

Alfanumerico

ISSN

13

Alfanumerico

Classificacao

25

Alfanumerico

DataInclusao

10

Data

DER 13

RLR 2

Complexidade: SIMPLES

Fonte: Autoria prpria

Tabela 11: Exemplo de Arquivos de interface externa de curso cadastrado

curso_cadastrado_por_operador
Campo

Tamanho

Formato

ChaveOperadorPIN

11

Inteiro

RAAluno

13

Alfanumrico

IdCurso

11

Inteiro

NomeCurso

225

Alfanumerico

DER 4
Fonte: Autoria prpria

RLR 2

Complexidade: SIMPLES

47

9.2.3 Entradas externas (EE)

As chamadas entradas externas se referem s telas de interface do


programa, nas quais o usurio iria efetuar entrada de dados, tal como efetuar suas
consultas sobre os dados armazenados no mesmo. Para obtermos os valores das
entradas externas, efetua-se o clculo de sua complexidade.
Tabela 12: Clculo de complexidade de ALR

Fonte: Adaptado de FABRI, 2005, p. 73

Abaixo veremos algumas figuras das telas que o software de gesto da


biblioteca ir receber, e a representao de cada ao que elas iro possuir, vemos
abaixo a figura da tela de cadastro de materiais que contar com o ID do Material,
sendo um campo no visvel ao usurio, assim como os dados referentes aos livros:
Figura 11 - Exemplo de tela de cadastro de Materiais

DER 17
Fonte: Autoria prpria

ALR 1

Complexidade: SIMPLES

48

A seguir veremos a figura da tela de cadastro de curso que contar com a


Chave IdCurso, a qual ser associado ser chave para relao entre disciplina e
material.
Figura 12 - Exemplo de tela de cadastro Cursos

DER 5

ALR 1

Complexidade: SIMPLES

Fonte: Autoria prpria

9.2.4 Consultas externas (CE)

As consultas externas so baseadas em qualquer operao de consulta do


sistema a fim de obter resultados sobre dados cadastrados pelo usurio do sistema.
Em um sistema dinmico baseado no padro CRUD (Incluso, Relao/Consulta,
Alterao e Excluso na mesma Tela), podemos contemplar de uma consulta na
mesma tela de cadastro, como em nosso prximo exemplo na figura a seguir a qual
nos permite fazer a relao de quais materiais esto associados s quais disciplinas.

49

Figura 13 - Exemplo de tela de associao de cursos, materiais e disciplinas

DER 7

ALR 1

Complexidade: SIMPLES

Fonte: Autoria prpria

No exemplo anterior utilizada uma consulta para localizar qual matria vai
ser o associado a qual disciplina e a qual curso.

9.2.5 Sadas externas (SE)

As sadas externas so as responsveis para gerao de relatrios do


sistema, emisses grficas geradas para impresso. Como se encontra abaixo a
figura do relatrio responsvel pela visualizao de alunos que esto com alugueis
pendentes, os quais tero suas carteirinhas suspensas, e/ou j foram suspensas.

50

Figura 14 - Exemplo de tela de relatrios de pendencias de livros

DER 3

ALR 1

Complexidade: SIMPLES

Fonte: Autoria prpria

Destaca-se que de suma importncia durante o desenvolvimento da


documentao fazer anlise de impacto para cada item colocado e retirado, tanto de
relatrios, para evitar erros ou duplicidade de informaes.

51

10 PLANEJAMENTO POR DECOMPOSIO

10.1 TABELA DE CONTAGEM

A seguinte tabela expressa a contagem da complexidade funcional dos itens


analisados apresentados no captulo anterior, baseando-se em um exemplo parcial
do sistema, sendo o intuito ilustrar os passos.
Tabela 13: Exemplo de tabela de clculo de pontos por funo

Componentes
Lgicos
ALI

AIE

EE

CE

SE

Complexidade
Funcionrios
4__ SIMPLES
1__ MDIA
_ __ COMPLEXA
__3_ SIMPLES
____ MDIA
____ COMPLEXA
__2_ SIMPLES
____ MDIA
____ COMPLEXA
__1_ SIMPLES
____ MDIA
____ COMPLEXA
__1_ SIMPLES
____ MDIA
____ COMPLEXA

Total
Complexidade
X7
28_
X10
10_
X15
___
X6
18_
X7
___
X10
___
X3
_6_
X4
___
X6
___
X4
4_
X5
___
X7
___
X3
3_
X4
___
X6
___
Total de Pontos

Total Tipo
Complexidade
38_

_18_

_6_

_4_

__3_
79

Fonte: Adaptado de FABRI, 2005, p. 94

10.2 QUESTES DE AVALIAO DE COMPLEXIDADE DE SOFTWARE


Ao analisar a complexidade de um software podemos utilizar uma mtrica de
software, que poder ser utilizada com qualquer tipo de medio, mas que esteja
ligado a um sistema de software, documentao ou at mesmo um processo
relacionado (Sommerville, 2003). Inclui-se ento um questionrio relativo a
complexidade da aplicao segundo as mtricas de software. Compostas por 14
questes analisando os principais requisitos a ter sua funcionalidade atingida, de
acordo com seu grau de complexidade, desde necessidades a adicionais oferecidos,
como pode ser vista na seguinte figura abaixo;

52

Figura 15 - Complexidade relativa s perguntas

Fonte: ALVES (2009, p.3 apud (ou citado por) BARROS, 2012, p. 46).

Abaixo vemos a tabela de perguntas compostas por 14 questes analisando


os principais requisitos a ter sua funcionalidade atingida;
Tabela 14: Exemplo de tabela de perguntas com os principais requisitos

N Questo
Pontos
1 - O sistema exige backup e recuperao de dados?
0
2 - requerida comunicao de dados?
0
3 - Existem funes de processamento distribudo?
0
4 - O desempenho crtico?
0
5 - O sistema funcionar num sistema operacional existente e
0
Intensamente utilizado?
6 - So requeridas entrada de dados on-line?
3
7 - As entradas on-line requerem que as transaes de entrada
1
sejam construdas com vrias telas e operaes?
8 - Os arquivos so atualizados on-line?
5
9 - Entradas, sadas, arquivos e consultas so complexos?
0
10 - O processamento interno complexo?
0
11 - O cdigo projetado para ser reusvel?
0
12 - A converso e a instalao esto includas no projeto?
0
13 - O sistema projetado para mltiplas instalaes em diferentes
0
organizaes?
14 - A aplicao projetada de forma a facilitar e o uso pelo usurio?
1
Total de pontos no questionrio:
10
Fonte: MOREIRA, 2010.

10.3 CLCULO DO FATOR DE AJUSTE

O clculo de fator de ajuste possui o objetivo de transformar os pontos de


funo bruto (PF) em pontos de funo lquido, pelo qual se obtm uma pontuao
com intuito de interagir com as prximas equaes as quais determinaram a
qualidade da documentao do software, tal como o seu custo final. Equao para
se obter os pontos lquidos como pode ser vista na figura abaixo:

53

Figura 16 - Figura da com o clculo de fator de ajuste

Fonte: FABRI, 2005, p. 99

Sendo:
PFL o que se pretende encontrar, os pontos por funo lquidos;
PFB so os pontos por funo brutos obtidos da tabela de contagem;
Fi a soma dos valores de ajustes da complexidade;
Partindo desses pontos, chega-se a seguinte resoluo:
PFL = 79 * [0,65 + 0,01 * (10)] = PFL = 59,25
O projeto apontou aproximadamente 59,25 pontos por funo liquido.

10.4 PRODUTIVIDADE, QUALIDADE, PREO E DOCUMENTAO

Aps encontrar os pontos de funes lquidos, atravs do ajuste dos pontos


de funo brutos, possumos quatro fatores principais a ser analisado no que
concerne ao aspecto do software, apesar dos nmeros apresentados possurem
certo teor subjetivo, atravs dos mesmos obtemos esses dados para os documentos
de requisitos vista na seguinte tabela:

54

Tabela 15: Exemplo de tabela de clculos das pontuaes finais

Produtividade

Produtividade
= PFL 85,5 /
2 pessoas
Produtividade

42,75

Qualidade

Qualidade
Erros 8 /
85,5 PFL
Qualidade

0,90

Custo

Custo
$ 4.200,00 /
85,5 PFL
Custo

49,12

Documentao

Documentao
45 Pginas /
85,5 PFL
Documentao

0,52
Fonte: Autoria prpria

55

11 VISO SOBRE DISTRIBUIO E IMPLEMENTAO (DEPLOYMENT)

A viso de distribuio e implementao precisa ser considerada, desde


avaliao do hardware e a relao dos dispositivos interligados para implantao do
sistema. Por se tratar de uma aplicao Clouding Computer (WEB), descreveremos
os dispositivos locais que estaro interligados a rede representada na seguinte
tabela abaixo;
Tabela 16: Exemplo de tabela de viso sobre distribuio do desktop

Viso Geral Desktop


Hardware
Desktop

CPU 2.3 GHz, 3 GB RAM, 320 GB de disco

Link Dados

2 Mbps ADSL

Modem

Modem Speed Touch Thomson St-510 V6 Adsl

Firewall

Firewall Asa 5505 Cisco

Impressora

Impressora Laser Samsung Mono Ml2165


Software

Sistema Operacional
Navegadores

Windows 8 Pro
IE 10 (MSIE) - Chrome / FireFox (WebKit)

Fonte: Autoria prpria

A seguir veremos a figura representada pela estrutura da tabela de viso


sobre a distribuio do desktop:
Figura 17 - Exemplo de viso de distribuio desktop

Fonte: Autoria prpria

Abaixo veremos a tabela da viso de aplicaes Web (SERVIDOR).

56

Tabela 17: Tabela de exemplo da viso aplicao Web (servidor)

Viso Geral Desktop


Hardware
Arquitetura
Modelo
Memria RAM
Armazenamento

Processador Intel Xeon Quad-Core E5606, 2.13 GHz


Servidor HP DL160 G6 (PN 641354-205)
4GB de memria RAM
HD de 500 GB SATA III, Controladora Smart Array
P410 (Raid 0 e 1), Rack 1U
Software

Sistema Operacional

Red Hat Enterprise

Gerenciador

Cpanel X

Servidor Web

Apache 2.2 (PHP 5 + MYSQL 3.2)

Fonte: Autoria prpria

Abaixo observa-se a figura da aplicao WEB (servidor);


Figura 18 - Exemplo de viso de aplicao Web (servidor)

Fonte: Autoria prpria

57

12 CRONOGRAMA

O cronograma estabelecido para estipular o rascunho do projeto at sua fase


de implantao final, utilizando do modelo de Gantt para representar os passos
concludos e ainda em andamento, assim como os prximos a serem executados, as
barras azuis informam as fases concludas, assim como as vermelhas as que ainda
sero executas ou esto sendo executadas. A seguir ilustraremos um modelo de
como deve ser desenvolvido o grfico do cronograma, sendo esse um item
fundamental no processo de desenvolvimento de sistemas.
Figura 19 - Exemplo de modelo de grfico (Gantt)

Fonte: Autoria prpria

58

13 BANCO DE DADOS DO SISTEMA


13.1 INTRODUO A BANCO DE DADOS E SUAS REGRAS
O primeiro item o qual necessrio desenvolver o banco de dados do
sistema, baseando-se na anlise dos dados, em conjunto a estrutura bsica a
aplicao, com adaptaes e melhorias, na confeco do processo. Para isso
iremos entender os princpios bsicos e a utilizao de sua linguagem.
A definio de um banco de dados consistente, de linguagem de fcil
manipulao, a qual fornea estabilidade, segurana e integridade da informao,
sendo de suma importncia no desenvolvimento de nosso sistema, tendo em vista
que o mesmo poderia seguir diversos tipos e formatos, os quais cada um possui
uma caracterstica particular o qual vislumbra para cada tipo de requisito em
determinado estabelecimento, sendo para empresas de baixa demanda, tal como de
alta.
Segundo (Centro de Computao Unicamp, 2001, p. 2), Banco de dados
uma coleo de dados inter-relacionados, representando informaes sobre
um domnio especfico [...] Sendo O Objetivo principal de um sistema de
banco de dados possibilitar um ambiente que seja adequado e eficiente
para uso na recuperao e armazenamento de informaes.

Sendo assim, o banco de dados seria um armazm de informaes


indexadas, com um fim nico, sendo ele armazenar, consultar, atualizar e remover
registros de dados baseados em ndices e padres de integridade da informao.
Segundo DATE (2003, p.6) define-se o banco de dados como sendo um
sistema automatizado cuja finalidade seria o armazenamento de
informaes com a possibilidade de o usurio buscar, atualizar as
informaes dentro de suas necessidades [...] Sendo esse processo
gerenciado pelo computador, nos chamados sistemas gerenciadores de
banco de dados, assim como gerados pelas linguagens de banco de dados,
como SQL.

Ou seja, esses dados coletados e catalogados possui um fim comum,


relacionados por ndices de metadados e dados, sendo esse processo realizado por
gerenciadores de banco de dados e suas aes por meio de linguagens de banco de
dados. Outro benefcio da utilizao de banco de dados seria a questo de no ter
perdas caso a estrutura do mesmo receba novos campos, com relao a
funcionalidade da aplicao j existente, at sua atualizao.
Segundo (MATTASO, 2007, p. 11) Os dados armazenados no banco de
dados so descritos pelos metadados, com finalidade de gerenciar as
informaes nos SGBD (Sistemas gerenciadores de banco de Dados),
Sendo as informaes a ele adicionadas, assim como novos campos,
independentes no afetando dessa forma a estrutura do sistema.

59

Assim sendo os bancos de dados atuais, diferentes dos antigos, chamados de


Arquivos de Dados, os quais apenas faziam alocao por separadores, sem ndices
e metadados, consegue aperfeioar o processo de consultas e adio, remoo de
registros, tal como garantir uma maior integridade da informao, dessa forma
eliminando duplicidade de informao ou dados inconsistentes durante a sua
execuo, graas a controles de transaes, tal como a existncias de gatilhos
(Triggers), responsveis por fazer aes durante execuo de algum tipo de
atividade em determinada tabela, fazendo assim alteraes, em eventos tais como
Inserir, Remover, Atualizar.
Sendo os principais elementos que constitui os SGBD as Tabelas (TABLES),
Vises (VIEWS) e os INDICES (INDEX), sendo eles Chaves, CHAVE CANDIDATA
PRIMARIA / PRIMARY (PRYMARY KEY), CHAVE CANDIDATA SECUNDARIA
(FOREIGN KEY) e CHAVE NICA (UNIQUE KEY), sendo que a CANDIDATA
SECUNDARIA gera a chamada Integridade de referenciais.
Segundo (SANCHES, 2005) O valor armazenado em um atributo ou mais
atributos de um registro deve ser nico em relao a todos os registros da
tabela. Este o conceito de chave primria. Devemos portanto definir quais
registros iro compor a chave primria, sendo que cada tabela possui uma
nica chave primria. Quando se define um atributo como chave primaria,
fica implcito as clusulas UNIQUE e NOT NULL para este atributo, no
sendo necessrio a especificao destas.

Por meio das chaves primarias possumos modelos (ndices) nos quais
devem ser baseadas a entradas em tabelas primrias, como em um cadastro de
livros, deve possuir uma Chave Candidata Primaria para os Gneros de Livros, e
uma Chave Candidata Secundaria na tabela dos livros relacionando a elas. Dessa
forma apenas valores que constam na tabela de Gneros podero constar no
cadastro de livros, assim garantindo integridade e prevenindo erros de entradas
invalidas no cadastro e podendo at mesmo ocasionar erros no sistema.
Segundo (SANCHES, 2005) Sendo o DOMINIO (Tipo do dado) o formato o
qual vai ser definido para as entradas, podendo ser de nmeros inteiros,
decimais, money (para moedas), podendo ser atribudos como decimal, float
ou numeric, Data, DATATIME, Binary (para armazenamento de arquivos ou
elementos especiais), podendo esse domnio ter restries durante seu
preenchimento com um CHECK (Confirmao), para que o valor de um
atributo fique atrelado a um conjunto de valores a ele atribudo, assim como
a definio de um valor padro, caso o mesmo no seja preenchido, para
campos que no aceitam valor vazio.

Havendo sido definido os domnios a integridade da informao garantida,


evitando falhas de cadastro, dados em duplicidade, assim como erros por campos
necessrios no preenchidos.

60

Existem diversos tipos de SGBD no mercado, os quais se utilizam de diversas


linguagens e padres, alguns mais robustos, com suporte a mais registros com
garantida de integridade, outros com bases com menos espao de alocao, tudo
depende da necessidade, vale destacar que entre eles esto:

Microsoft SQL Utiliza-se da linguagem SQL da Microsoft;


MYSQL Utiliza-se da linguagem SQL da Comunidade MYSQL;
SQLite Utiliza-se da linguagem SQL da Comunidade MYSQL;

13.2 DESENVOLVIMENTO DE TABELAS DO SISTEMA E VIEWS


O primeiro item que desenvolveremos so as tabelas e associam-se aos seus
ndices, sendo eles responsveis por garantir a integridade da informao dos dados
cadastrados. Na Figura a seguir encontra-se um exemplo de tabela utilizado em
nosso sistema:
Figura 20 - Modelo de tabela em SQLite com chave candidata primaria

Cadastro de Alunos em SQLite


CREATE TABLE Cadastro_Alunos (
IdAlunos
INTEGER PRIMARY KEY AUTOINCREMENT,
RAAluno
INTEGER UNIQUE,
NomeAlunos
VARCHAR,
Status
CHAR
);

Fonte: Autoria prpria

Com a CHAVE CANDIDATA PRIMARIA IdAlunos, o sistema faz a associao


do registro do aluno, com os itens alocados, tal como possveis pendncias
existentes. As quais sero realizadas suas repetitivas aes de baixas, tanto para
devoluo, como para perdidos no caso de no devoluo do mesmo, como durante
o processo de alocao do mesmo. Cada linguagem de banco possui suas
particularidades, o exemplo acima foi desenvolvido em SQLite, j a Figura abaixo
desenvolvida em MySQL, alguns tipos de funes e atributos so semelhas, outros
podem sofrer alteraes como o exemplo de DOMINIO, no qual o INTEGER do
SQLite, no MySQL se torna INT, os DOMINIOS VARCHAR, assim como CHAR
necessitam que sejam delimitados os seus tamanhos, o atributo que faz a

61

numerao automtica no SQLite AUTOINCREMENT, j a sintaxe no Mysql


Auto_Increment, esses so alguns exemplos da diferena.
Figura 21 - Modelo de tabela em MySQL com chave candidata primaria

Cadastro de Alunos em MySQL


CREATE TABLE Cadastro_Alunos (
IdAlunos
INT PRIMARY KEY Auto_Increment,
RAAluno
INT UNIQUE KEY,
NomeAlunos
VARCHAR(255),
Status
CHAR(1)
);

Fonte: Autoria prpria

Importante salientar que esse, assim como outros itens so necessrios para
o desenvolvimento consciente ou atualizao do sistema e suas dependncias.
Para que se possa ter integridade nas tabelas necessita-se tambm ter
CHAVES SECUNDARIAS CANDIDATAS, as quais vo determinar que o campo
deva conter um contedo igual ao de outra tabela para ser aceito, ou seja, um
contedo que preenchera um list (Lista) na tela de sistema dando opes validas.
Na figura abaixo teremos um exemplo da associao da tabela de Cadastro de
Disciplinas, com a ID do Material e suas definies, sendo esse um vnculo efetuado
por trs tabelas:

62

Figura 22 - Modelo de tabela em SQLite com chave candidata secundaria

Cadastro de cada Material Relacionados a Disciplinas


CREATE TABLE ItemDisciplina (
IdDisciplina INTEGER REFERENCES Disciplinas (IdDisciplina ),
IdMaterial
INTEGER REFERENCES Material ( IdMaterial )
);
CREATE TABLE Disciplinas (
IdDisciplinas
INTEGER PRIMARY KEY AUTOINCREMENT,
NomeDisciplina
VARCHAR
);

CREATE TABLE Material (


IdMaterial
INTEGER PRIMARY KEY AUTOINCREMENT,
NomeMaterial
VARCHAR,
DescricaoMaterial VARCHAR,
ISBN
INTEGER,
CodeMaterial
VARCHAR,
Disponivel
CHAR,
DataInclusao
DATE,
UsuarioAceite
INTEGER
);
Fonte: Autoria prpria

Na tabela encima so relacionadas as disciplinas e os materiais associados a


cada uma delas, por meio dessa tabela possvel fazer a consulta de materiais
relacionados de uma forma mais efetiva e agilizada, sendo gerada a Viso (VIEW)
da mesma, podemos ter um acesso rpido, como se todas as tabelas relacionadas
fossem uma nica tabela. A forma na qual so referenciados os ndices em cada
linguagem de banco de dados possui suas diferenas como se identifica na Figura a
seguir:

63

Figura 23 - Exemplo de tabela em MySQL com chave candidata secundaria

Cadastro de cada Material Relacionados a Disciplinas


CREATE TABLE itemdisciplina (
IdDisciplina
INT,
IdMaterial
INT,
FOREIGN KEY (IdDisciplina) REFERENCES disciplinas (IdDisciplinas),
FOREIGN KEY (IdMaterial) REFERENCES material (IdMaterial));
CREATE TABLE disciplinas (
IdDisciplinas
INT PRIMARY KEY AUTO_INCREMENT,
NomeDisciplina
VARCHAR(255)
);
CREATE TABLE material (
IdMaterial
INT PRIMARY KEY AUTO_INCREMENT,
NomeMaterial
VARCHAR(225),
DescricaoMaterial VARCHAR(255),
ISBN
INT,
CodeMaterial
VARCHAR(10),
Disponivel
CHAR(1),
DataInclusao
DATE,
UsuarioAceite
INT
);
Fonte: Autoria prpria

Por meio da VIEW Consulta Materiais poderemos localizar materiais


disponveis na biblioteca os quais esto listados, associados a cursos, caso no
estejam disponveis so mostrados como indisponveis e o motivo, assim como ao
selecionar o item no sistema ira informar se esto todos alocados ou no. No
desenvolvimento da VIEW observa-se que mesmo em linguagens de banco de
dados diferentes, a estrutura praticamente a mesma, em nosso exemplo
exatamente a mesma estrutura, conforme na figura abaixo:
Figura 24 - Exemplo de modelo de VIEW SQlite e MySQL

Consulta de itens cadastrados como existentes ou perdidos


CREATE VIEW Consulta_Materiais AS
select NomeMaterial, DescricaoMaterial, ISBN, CodeMaterial, IdMaterial as
Material, (select IdDisciplina from itemdisciplina where IdMaterial = Material)
as IdDisciplinaMaterial, (select NomeDisciplina from disciplinas where
IdDisciplinas = IdDisciplinaMaterial) as Disciplina from material;

Fonte: Autoria prpria

64

No exemplo anterior, temos como verificar qual Material ou foi um item


catalogado no acervo da biblioteca, constando tanto a descrio, nome, numerao,
tal como seu estado, como disponvel, ou perdido, sendo essa a consulta inicial em
nosso banco de dados.
Para obter um resultado mais preciso de livros alocados, precisam-se fazer
um controle de disponibilidade, o mesmo gerado a partir do momento no qual
gerada a entrada ou a sada de um item, tal como quando determinado o mesmo
como Perda, no caso de alocao e no devoluo do mesmo. Para isso
geraremos uma tabela de controle de Operaes, uma relacional como cada item da
operao, assim como uma entrada na tabela entrada e devolues, para obter um
controle se os itens esto disponveis ou no para serem alocados. A tabela de
controle apenas possura os itens enquanto estiverem alocados, aps esse perodo
os mesmos sero removidos, ou passaram para a tabela perdidos caso os mesmos
no sejam devolvidos.
Figura 25 - Exemplo de modelo de tabela de operaes e Itens de operaes

Operaes e Itens de Operaes


CREATE TABLE IF NOT EXISTS `aluguel_operacao` (
`IdOperacao` int(11) NOT NULL AUTO_INCREMENT,
` RAAluno` int(11) DEFAULT NULL,
`TotalItens` int(11) DEFAULT NULL,
`DataOperacao` date DEFAULT NULL,
`ChaveOperadorPIN` text,
`ChaveSegurancaOperacao` text,
PRIMARY KEY (`IdOperacao`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `aluguel_operacao_itens` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`IdOperacao` int(11) DEFAULT NULL,
`IdMaterial` int(11) DEFAULT NULL,
`StatusDevolucao` text,
`DataRetirada` date DEFAULT NULL,
`DataDevolucaoPrev` date DEFAULT NULL,
`DataDevolucao` date DEFAULT NULL,
`MultaDevolucao` double DEFAULT NULL,
`RAAluno` int,
`AplicarMulta` char(1) DEFAULT NULL,
PRIMARY KEY (`Id`),
FOREIGN KEY (IdMaterial) REFERENCES Material (IdMaterial)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Fonte: Autoria prpria

65

Aps desenvolvermos as tabelas referentes as transaes (operaes), criase a view para exibir o resultado da operao, nesta view exibe-se a operao foi
finalizada ou no e os itens agregados a ela, disponvel, ou perdido, sendo essa a
consulta inicial em nosso banco de dados.
Figura 26 - Exemplo de modelo de VIEW de operaes em MySQL

Consulta de itens alocados por aluno


CREATE VIEW Consulta_Aluno_Alocacao AS
select IdOperacao as OP, RAAluno as ID_ALUNO, (select NomeAlunos from
cadastro_alunos where RAAluno = ID_ALUNO) as NomeAluno, (select
IdMaterial from aluguel_operacao_itens where OP) as ID_MATERIAL, (select
NomeMaterial from material where IdMaterial = ID_MATERIAL) as
NomeMaterial, (select DataRetirada from aluguel_operacao_itens where
IdOperacao = OP) as DataRetirada, (select DataDevolucaoPrev from
aluguel_operacao_itens where IdOperacao = OP) as DataDevolucaoPrev,
(select DataDevolucao from aluguel_operacao_itens where IdOperacao = OP)
as DataDevolucao, (select StatusDevolucao from aluguel_operacao_itens
where IdOperacao = OP) as StatusDevolucao from aluguel_operacao;

Fonte: Autoria prpria

Tanto na VIEW (Viso), como em SELECT (Consulta) utiliza-se o AS para


relacionar itens que passaram para parmetros utilizados em outras consultas
dentro do mesmo comando.

13.3 DESENVOLVIMENTO DE TRIGGERS (GATILHOS)

Para obtermos um melhor funcionamento de aes aplicadas no banco de


dados, evitando erros de execuo, os mesmos os quais poderiam resultar em
registros incorretos, utiliza-se os chamados (Gatilhos), sendo esse um recurso
oferecido pelas linguagens e sistemas gerenciadores de banco de dados com o
objetivo de executar aes no banco de dados baseadas em entradas por
parmetros os quais sofrem aes tanto em insero, tais como em alterao e
remoo de entradas no banco de dados, sendo esse um dos recursos utilizados
para otimizao no processo de gerao de logs de operaes em sistemas.
Segundo (W3RESOURCE, 2013) Um gatilho um conjunto de aes que
so executados automaticamente quando uma operao de mudana
especfico (SQL INSERT, UPDATE ou DELETE) executada em uma

66

tabela especificada. Triggers so teis para tarefas como a aplicao das


regras de negcio, validao de dados de entrada, e manter uma trilha de
auditoria.

Por meio dos gatilhos conseguimos fazer as alteraes necessrias dentro do


banco de dados de forma automatizada seguindo as devidas regras de negcios. Na
Figura abaixo encontram-se algumas regras que sero aplicadas no banco de dados
da Biblioteca da instituio.
Figura 27 - Exemplo de Trigger para atualizar registros de status

Gerao de Status durante insero de nova operao


DELIMITER $$
CREATE TRIGGER incluir_status_alocacao
AFTER INSERT ON aluguel_operacao_itens
FOR EACH ROW BEGIN
update entrada_itens set StatusAlocacao = NEW.StatusDevolucao
where n_tombo = NEW.n_tombo;
END $$
DELIMITER ;
Gerao de Status durante devoluo de itens da operao
DELIMITER $$
CREATE TRIGGER atualizar_status_alocacao
AFTER update ON aluguel_operacao_itens
FOR EACH ROW BEGIN
update entrada_itens set StatusAlocacao = NEW.StatusDevolucao
where n_tombo = NEW.n_tombo;
END $$
DELIMITER ;

Fonte: Autoria prpria

13.4 REPRESENTAO DO MODELO LGICO RELACIONAL DO BANCO DE


DADOS
Aps fazer os levantamentos de requisitos obtivemos o banco de dados final,
o qual vislumbra o seguinte padro modelado, Na Figura abaixo o Modelo Relacional
EER foi gerado pelo MYSQL WorkBench, com todos relacionamentos de tabelas,
ndices de Chaves Candidatas Primarias e Secundarias, necessrias para garantir a
integridade da informao cadastrada e facilitar o processo de consulta.

67

Figura 28 - Modelo de modelagem EER do banco de dados

Fonte: Autoria prpria

68

14 SISTEMA EM MVC E CRUD COM PHP E MYSQL


14.1 INTRODUO A CONCEITOS DE CRUD EM SISTEMA MVC
Na busca por uma soluo vivel para o processo de desenvolvimento, tendo
em vista novas tendncias do mercado, aplicadas a novas tecnologias (formas de
desenvolvimento e linguagens atuais), foi identificado necessidade de criar um
sistema o qual obtivesse um melhor desempenho e oferece-se de uma forma segura
e estvel a melhor soluo, sendo essa desenvolvida em plataforma WEB
(computao em Nuvem / Clouding Computer), podendo ser a mesma tanto em um
servidor local, como na Internet, em um servidor de banco de dados o mesmo
armazenado, ou todo sistema em Nuvem. A linguagem escolhida foi o PHP, por
questo de estabilidade, tima performance e resultados satisfatrios ao interagir
com outras linguagens, as tecnologias aplicadas as linguagens foram um sistema
que pode-se fazer todas operaes de forma dinmica, sem complicaes, com
possibilidade de incluso e edio, sem precisar alterar entre telas sendo itens de
mesma categoria de metadados.
Segundo (AREND, 2011, p.9-10) Em sistema de informaes com a
necessidade da gerao e coleta de dados, so efetuadas aes a partir de
informaes de metadados, sendo essas a criao, obteno, atualizao e
excluso dos dados (CRUD, do ingls create, retrieve, update e delete),
com a possibilidade de criao de pginas dinmica com templates
(Modelos) gerados a partir de metadados."

Esse sistema, por sua vez, segue um padro em sua evoluo o qual se
deriva o MVC, esse padro permite separar as telas, da lgica de negcios, assim
como fazer o controle de transaes das aes por elas geradas e a elas
associadas. Sendo por meio deste processo possvel reduzir tempo em processo de
manuteno do sistema, pois o mesmo possui cdigo, de telas e de lgica de
negcios separados.
Segundo (Gamma et al., 1994, p. 20), o MVC composto por trs
divises, denominadas como camadas do sistema, sendo elas: Modelo
Sendo a responsvel por representar as lgicas de negcios aplicadas e a
funes a elas associadas vinculadas com os dados, Viso Representada
como as telas do sistema, e a camada de Controle, a qual controla as
interaes entre as outras camadas e acompanha a execuo de aes na
aplicao [...] o que definimos como sendo BACKEND e FRONTEND.

Por meio dessa diviso de camadas podemos identificar quais partes do


sistema interagem com as outras, reduzindo tempo de programao caso seja
precisa alterar parte do sistema, pois se a alterao for na tela, basicamente o que

69

encontrar ser contedo de telas e chamadas (INCLUDES) de outros arquivos, os


quais guardaram as regras de negcios a eles associados, assim evitando
retrabalho para localizar o contedo desejado, sem precisar passar por contedo o
qual no seja semelhante.
Para o desenvolvimento da Interface do CRUD, utiliza-se o jQuery EasyUI
1.3.6, pois ele utiliza-se de HTML5, e uma das mais recentes bibliotecas de
jQuery, desta forma possibilitando maiores interaes com os objetos, entre eles os
objetos utilizados Datagrid (Views / Vises), ComboGrid (Combobox com DataGrid
Integrado), DateTimeBox (Calendario associado ao campo de data), Dialog /
Window (Janelas), Messager (Alertas), itens denominados como plug-ins.

70

15 CONSIDERAES FINAIS

Com o propsito de desenvolver um sistema de gesto de biblioteca para a


instituio Faculdade de Tecnologia de Tatu, o qual a proposta solucionar as
lacunas encontradas por meios de pesquisas e entrevistas, feitas de forma direta
com os alunos e funcionrios da biblioteca. Com as geraes de relatrios mais
precisos, automatizao no processo de baixa de perdidos, de alunos com
pendncia de possibilidade de comunicao dessa informao com a secretaria
acadmica da instituio em questo, ns podemos por meio do uso das tcnicas de
engenharia de software, desta forma podendo oferecer uma melhor soluo, sendo
por meio do software desenvolvido possvel:

Efetuar gerao de relatrios detalhados sobre pendncias de matrias e de


alunos;

Efetuar baixa de forma automatizada das pendncias de forma automatizada,


respeitando as regras de sistema configuradas;

Flexibilidade para definir as regras de negcios aplicadas penalizao por


devoluo com tempo superior ao permitido, tal como suspenso do direito de
uso da carteirinha pelo bloqueio do RA do aluno no sistema;

Por meio da utilizao de um sistema CRUD foi possvel produzir uma interface
mais limpa e mais fcil de acessar, graas tecnologia MVC possvel separar as
funcionalidades em camadas, dessa forma facilitando alteraes futuras, assim
como correes de regras de negcios necessrias, sendo possvel uma evoluo
em trabalhos futuros do sistema, sem dificuldades extremas para seu entendimento
do funcionamento. Tendo sido desenvolvido o CRUD com uma tecnologia de licena
GPL, o EASY JQUERY UI, assim como a prpria linguagem de programao da
lgica de negcios PHP, tal como seu banco de dados MYSQL. Sendo utilizado o
sistema em nuvem visualizando a possibilidade de ser acessado de diferentes
dispositivos, a partir de diferentes sistemas operacionais.
Os resultados obtidos ao concluir esse projeto mostram a forma correta de
desenvolver um projeto de sistema, respeitando os processos de engenharia de
sistemas, tal como demonstram a facilidade do processo, por meio de um passo a
passo, com exemplos de cada fase do projeto, deixando em aberto possibilidade de
melhorias futuras.

71

REFERNCIAS
A Guide to Project Management Body of Knowledge - PMBOK Guide 2004
Edition Project Management Institute - PMI.
A Guide to Project Management Body of Knowledge - PMBOK Guide 2007
Edition Project Management Institute - PMI.
ALBRETCHT, A.J., Measuring application developlement productivity, in
Proceedings IBM Aplications Development Symposium, Monterey, California,
October 14-17 1979.
ALVES, W. P. Banco de Dados: Teoria e Desenvolvimento. 1 Edio, So Paulo:
Editora rica, 2009.
AREND, Felipe Gabriel - gerao de operaes crud a partir de metadados.
Retirado de: <http
-app.inf.ufsm.br bdtg arquivo.php id 153 do nload 1>
em 5 mai. 2014.
ARROYO, Alexander, SANTOS, Fabio. Programao para Web utilizando - PHP
Bsico
Unicamp,
2002.
Retirado
de:
<http://ci.ufpel.edu.br/treinamento/apostilas/programacao/php/phpbasico_unicamp.p
df> em 19 set. 2013
ARROYO, Alexander, SANTOS, Fabio. Programao para Web utilizando - PHP
Avanado
Unicamp,
2006.
Retirado
de:
<ftp.unicamp.br/pub/apoio/treinamentos/desenweb/apostila_php_avancado.pdf>
em 19 set. 2013
BARROS, D.J., Documento De Requisitos Para Desenvolvimento De Software
Para Controle Em Consultrio De Ortodontia: Gerenciamento De Pacientes.
Engenharia de Software Fatec Tatu. 2012.
CENTRO DE COMPUTACAO UNICAMP, Banco de Dados Bsico, 2001. Retirado
de:
<http://ftp.unicamp.br/pub/apoio/treinamentos/bancodados/cursodb.pdf>
em 18 de abril de 2014.
DATE, C. J. INTRODUO A SISTEMAS DE BANCOS DE DADOS. 8. ed. Rio de
Janeiro: Elsevier, 2003.
FABBRI, Sandra. Gerencia e Planejamento de Software - Mtricas - Curso de
Ps-graduao Lato-Sensu Desenvolvimento de Software para Web, UFSCar,
So Carlos, Janeiro 2005. Il.
Fred R. McFadden, Jeffrey A. Hoffer e Mary B. Prescott, Modern Database
Management, Fifth Edition, Addison-Wesley. 1999. Il.

72

GAMMA et al., Design Patterns: Elements of Reusable Object-Oriented


Software, 1994. Editora Addison-Wesley Professional, 1 Edio. (November 10,
1994).
GIL, A.C. Mtodos e Tcnicas de Pesquisa Social. 5. Ed. So Paulo:Atlas, 1999.
DATE, C.J. Introduo a Banco de Dados, 8 Edio: ELSEVIER, 2004.
HELDMAN, Ki, Gerencia de Projetos Fundamentos - 5 Edio: Elsevier, 2005.
MACORATTI, J. C, UML - Diagrama de Classes e objetos, 2004. Retirado de:
<http://www.macoratti.net/net_uml1.htm> em 15 de abril de 2004. Il.
MATTASO, M. L. Q., INTRODUO A BANCO DE DADOS RELACIONAL - O
modelo
relacional,
2007.
Retirado
de:
<www.cos.ufrj.br/~marta/BdRel.pdf> em 18 de abril de 2014.
MOREIRA, Jussara. MTRICAS ORIENTADAS FUNO, 2010. Retirado de:
<http://nti.facape.br/jussaramoreira/mps/material/METRICAS_ORIENTADAS_AO_T
AMANHO_E_TECNICAS.doc> em 16 abril 2014. Il.
NIXON, Robin. Learn PHP, MYSQL, JavaScript SECOND EDITION, 2 Ed.:
O'REILLY, 2012. p.5
PRESSMAN, Roger S. Engenharia de Software - 6 Edio: Pearson, 2006.
SANCHES, A. R., AULA: Modelo fsico - BANCO DE DADOS, 2005. Retirado de:
<http://www.ime.usp.br/~andrers/aulas/bd2005-1/aula12.html>
em 18 de abril de 2014.
SELLTIZ, C. at al. Mtodos de Pesquisa nas Relaes Sociais. So Paulo:
EPU/EDUSP, 1947.
SOMMERVILLE, I., Engenharia de Software. 6 Edio, So Paulo: Addison
Wesley, 2003.
SOMMERVILLE, I., Engenharia de Software. 8 Edio: Pearson, 2007.
W3RESOURCE,
MySQL
Triggers,
2013.
Retirado
http://www.w3resource.com/mysql/mysql-triggers.php> em 23 abr. 2014.

de:

73

APNDICES

74

Apndice A Glossrio de Termos Tcnicos


Glossrio um dicionrio com vrios termos, que contem palavras tcnicas, ou
que possa ter palavras em outro idioma, como pode ser visto o exemplo de um
glossrio do sistema na tabela abaixo.
Glossrio do sistema

Termo
Base de Dados

Significado
possvel dizer de uma forma genrica que qualquer
conjunto de dados uma Base de Dados (BD): uma
agenda com as moradas de pessoas conhecidas, uma
lista de CDs, um livro, apontamentos tirados nas aulas,
os dados guardados nos computadores das Finanas.
Sobre os contribuintes e a World Wide Web.
Banco de Dados
uma coleo de dados relacionados e armazenados
em algum dispositivo. Inicialmente definidos como base
de dados. Mais conhecidos ORACLE, SQL, MYSQL.
PHP
Codes
/ Arquivos de programao online executveis em
MYSQL Server
servidor, com armazenamento em banco de dados
MYSQL, assim como aplicando regras da linguagem de
banco de dados SQL.
Computao
em Tecnologia de computao nas nuvens, armazenamento
Nuvem / Clouding e processamento em servidores remotos, com
Computer
espelhamentos simultneos e com configuraes
instantneas de acordo com a necessidade.
Criptografia
Consiste em cifrar um arquivo ou mensagem usando um
conjunto de clculos. O arquivo cifrado (ou
criptografado) torna-se incompreensvel at que seja
descriptografado. Os clculos usados para criptografar
ou descriptografar o arquivo so chamados de chaves.
Apenas algum que tenha a chave poder ler o arquivo
criptografado.
Customizao
empregada no sentido de personalizao, adaptao.
Desta forma, customizar adaptar algo de acordo com
o gosto ou necessidade de algum; Alterar algo para
fazer com que sirva melhor aos requisitos de algum.
Customizao pode ser entendida como sendo
adequao ao gosto do cliente.
Interface
Meio de comunicao entre duas coisas distintas, assim
como a interface entre o computador e usurio o
sistema operacional e seus aplicativos.
Query
o meio de efetuar consultas em banco de dados
Hardware
A parte fsica do computador e/ou outros dispositivos.
Software
A parte logica, sistema operacional, os programas.
Sqlite
Banco de dados que utiliza a linguagem SQL com
menos espao.
Fonte: Autoria prpria

75

Apndice B Entrevista com o cliente sobre satisfao e melhorias


Esta pesquisa teve por meio de levantamento de dados a funo de
demonstrar a situao atual da biblioteca acadmica da Faculdade de Tecnologia de
Tatu.

Qual o nvel de satisfao de uso do sistema atual?


Administrao e funcionrios da biblioteca apontaram como sendo, seu ndice de
satisfao, apontando melhorias, algumas falhas do sistema, sendo o resultado
baseado em todos que responderam verbalmente sua opinio como sendo 20%
acham o sistema bom, mas que pode ser melhorado, e 80% dizem que o sistema
regular, por meio da amostragem, baseando-se em suas reclamaes de itens ainda
no atendidos pelo sistema em questo.
Qual o ndice de inadimplncia de devoluo de cada curso?
Administrao da biblioteca Hoje 50% das alocaes de automao industrial,
30% do curso de gesto empresarial, 15% de gesto em tecnologia da informao e
5% para os demais cursos, isso para cada curso no qual no h devoluo no prazo.
Qual curso possui maior utilizao de livros?
Administrao da biblioteca Curso de automao industrial.
Alunos GTI Qual o tempo mdio para gerao de relatrios de pendncias?
Administrao da biblioteca Aproximadamente 5 (cinco) minutos.
Qual o prazo de suspenso? O RA seria suspenso permanentemente?
Administrao da biblioteca a cada 1 (um) dia de atraso, corresponde a 3 (trs) de
bloqueio, caso o mesmo ultrapasse 10 (dez) dias, ou seja, equivalente a 30 de
suspenso o RA do aluno bloqueado de fazer alocao.
Existe algum tipo de comunicao entre a secretaria e a biblioteca?
Administrao da biblioteca No h comunicao secretaria biblioteca, tal como
no h entre biblioteca e aluno.
H algum tipo de controle de pendncia quando o aluno se forma?
Administrao da biblioteca Hoje no h esse controle para nenhum aluno que sai
da instituio.
Os alunos tentam fazer alocaes por meio de carteirinhas de outros alunos?
H hoje alguma trava que evitaria isso?
Administrao da biblioteca No, hoje alguns alunos fazem alocaes com
carteirinhas de outros alunos, no h um controle que valida se o aluno que porta a
carteirinha o aluno que esta realmente levando o livro em questo.

76

Apndice C Dicionrio de Dados do Banco de Dados


Importante: Para efetuar a leitura das tabelas abaixo, destaca-se que os itens com # e sublinhados
so chaves primrias, itens apenas sublinhados so chaves secundarias, itens em itlico so chaves
nicas, conforme nomenclatura de engenharia de software.
Tabela 18: Tabela operador

Tabela: operador
Campo

Domnio

Tamanho

Descrio

NomeOperador

Alfanumrico

255

Nome do Operador

DataCadastro

Data/Hora

Data de Cadastro

#ChaveOperadorPIN

Inteiro

11

Identificao do Operador

Fonte: Autoria prpria


Tabela 19: Tabela regra de sistema

Tabela: regrassistema
Campo

Domnio

Tamanho

Descrio

PeriodoAlocacao

Alfanumrico

Tempo de permanncia

ValorMulta

Numrico

Perodo de Bloqueio

Frequencia

alfanumrico

Clico do perodo (bloqueio)

#ItemTipo

Inteiro

11

A quem atribui a regra

Fonte: Autoria prpria


Tabela 20: Tabela aluguel operao

Tabela: aluguel_operacao
Campo

Domnio

Tamanho

Descrio

#IdOperacao

Inteiro

11

Id da Operao

RAAluno

alfanumrico

20

Identifica aluno

DataOperacao

Data/Hora

Data da solicitao

ChaveOperadorPIN

Inteiro

11

Identificador de Operador

ChaveSegurancaOperacao

alfanumrico

45

Valida entrada no sistema

Fonte: Autoria prpria

77

Tabela 21: Tabela Cadastro de alunos

Tabela: cadastro_alunos
Campo

Domnio

Tamanho

Descrio

#IdAlunos

Inteiro

11

Id no sistema

RAAluno

Alfanumerico

20

Identifica o aluno

NomeAluno

Alfanumerico

255

Nome do Aluno

Status

Caractere

Estatus do aluno

Fonte: Autoria prpria


Tabela 22: Tabela aluguel operao itens

Tabela: aluguel_operacao_itens
Campo

Domnio

Tamanho

Descrio

#Id

Inteiro

11

Identificao das entradas

idOperacao

Inteiro

11

Identifica a operao

IdMaterial

Inteiro

11

Qual material foi retirado

N_Tombo

alfanumrico

11

Numero do Tombo

StatusDevolucao

Caractere

(D) Disponvel - (A) Alocado

DataRetirada

Data/Hora

Data que foi retirado o material

DataDevolucaoPrev

Data/Hora

Data Prevista para devoluo

DataDevolucao

Data/Hora

Data em que foi devolvido

MultaDevoucao

Caractere

(S) atribui (N) no atribui

RAAluno

Alfanumerico

20

Identifica o aluno

AplicaMulta

Caractere

(S) mantem (N) remove

ItemTipo

Inteiro

11

Valida regra de sistema

Fonte: Autoria prpria


Tabela 23: Tabela entrada de itens

Tabela: entrada_itens
Campo

Domnio

Tamanho

Descrio

#IdEntradaEstoque

Inteiro

11

Id de entrada do item novo

IdMaterial

Inteiro

11

Id material referente a entrada

N_Tombo

alfanumrico

11

Numero entrada do material

78

Motivo

Texto

45

Material - Novo / Devolvido

DataEntrada

Data/Hora

Data de Tombo do material

Fonte: Autoria prpria


Tabela 24: Tabela itens perdidos

Tabela: itens_perdidos
Campo

Domnio

Tamanho

Descrio

IdOperacao

Inteiro

11

Id operao (no devoluo)

IdMaterial

Inteiro

11

Id material referente a entrada

N_Tombo

Alfanumrico

11

Numero identificao da entrada

StatusDevolucao

Caractere

(P) Perdido (D) Devolvido

DataRetirada

Data/Hora

Data que foi retirado material

RAAluno

alfanumrico

20

RA do aluno inadimplente

Fonte: Autoria prpria


Tabela 25: Tabela sada de itens

Tabela: saida_itens
Campo

Domnio

Tamanho

Descrio

#IdEntradaEstoque

Inteiro

11

Id de saida do item

IdMaterial

Inteiro

11

Id material referente a saida

N_Tombo

Alfanumrico

11

Numero saida do material

Motivo

Texto

45

Material - Transferido / Perdido

DataSaida

Data/Hora

Data de saida do material

Fonte: Autoria prpria


Tabela 26: Tabela material

Tabela: material
Campo

Domnio

Tamanho

Descrio

#IdMaterial

Inteiro

11

Identificao do item novo

NomeMaterial

Alfanumrico

225

Nome do material

Autor

Alfanumrico

225

Nome do autor do material

Editora

Alfanumrico

225

Nome da editora

Ano

Alfanumrico

Ano de publicao

Edicao

Alfanumrico

14

Edio da publicao

79

DescricaoMaterial

Alfanumrico

255

Descrio do material

ISBN

Alfanumrico

18

Cdigo ISBN do material

ISSN

Alfanumrico

13

Cdigo ISSN do material

Classificacao

Alfanumrico

25

Classificao Autor

DataInclusacao

Data/Hora

Data de incluso

UsuarioAceite

Inteiro

11

Cdigo do operador

Fonte: Autoria prpria


Tabela 27: Tabela cursos

Tabela: cursos
Campo

Domnio

Tamanho

Descrio

#IdCurso

Inteiro

11

Identificao do curso

NomeCurso

Inteiro

11

Nome do curso

Fonte: Autoria prpria


Tabela 28: Tabela disciplinas

Tabela: disciplinas
Campo

Domnio

Tamanho

Descrio

#IdDisciplina

Inteiro

11

Identificao de disciplina

NomeDisciplina

Inteiro

11

Nome da disciplina

Fonte: Autoria prpria

80

Apndice D Telas do sistema


Figura 29 - Tela de login do sistema

Fonte: Autoria prpria

Figura 30 - Tela Inicial do sistema

Fonte: Autoria prpria

81

Figura 31 - Tela de cadastro de alunos

Fonte: Autoria prpria


Figura 32 - Tela de cadastro de materiais

Fonte: Autoria prpria

82

Figura 33 - Tela de cadastro de Cursos

Fonte: Autoria prpria


Figura 34 - Tela de cadastro de Disciplinas

Fonte: Autoria prpria

83

Figura 35 - Tela de Gerenciamento de Associao Materiais

Fonte: Autoria prpria


Figura 36 - Tela de Gerenciamento de alocaes

Fonte: Autoria prpria

84

Figura 37 - Tela de Gerao de alocao

Fonte: Autoria prpria


Figura 38 - Tela de gerao de relatrio geral pendncias para conferncias

Fonte: Autoria prpria

Vous aimerez peut-être aussi