Universidade do Contestado - UnC
FLIP – Sistema de Controle de Acesso Informatizado
Alunos: Ademir Good Jr. e Leandro Lourenço Leite
Professor Orientador Msc. Richardson Ribeiro
Disciplina: Trabalho de Conclusão de Curso II
Sistemas de Informação 2
Agenda
Introdução;
Problema;
Justificativa;
Motivação;
Objetivos (geral e específico);
Referencial Teórico;
Modelo de Negócio;
Metodologia;
Análise;
Conclusão e Considerações Finais.
Sistemas de Informação 3
Introdução
Controlar o acesso:– Através de um cartão com código de barras;
Controlar e organizar dados;
Gerar relatórios e gráficos;
Consultar determinados períodos.
Sistemas de Informação 4
Problema
Falta de um controle informatizado;– Na Biblioteca Conselheiro Mafra.
Operando de forma mecânica;
Apresentando problemas, pois sempre está liberada.
Sistemas de Informação 5
Justificativa
Inovação motivou o desenvolvimento;
A biblioteca precisa de um controle informatizado;
Com os dados obtidos, gerar relatórios:– Ajudar nas tomadas de decisões;
– Auxílio na compra de livros e outras mídias;
– Campanhas para a utilização;
– Servir como ferramenta de pesquisa.
Gerar gráficos e estatísticas de acesso.
Sistemas de Informação 6
Objetivos
Geral:– Desenvolver um sistema informatizado para controle
de acesso.
Específico:– IDENTIFICAR através de código de barras;
– IDENTIFICAR matrícula de usuários;
– GERAR dados estatísticos de acessos;
– PROCESSAR dados referentes aos acessos.
Sistemas de Informação 7
Referencial Teórico
Fluxo de pessoas;
Controle de acesso em outras bibliotecas;
Catraca informatizada:– Definição;
– Características;
– Especificações.
Coleta de dados;
Outros tipos:– Biometria, braço articulado e cartão de
proximidade.
Sistemas de Informação 8
Referencial Teórico
Características do “gerenciador de Inners”;
Análise de sistemas:– Análise orientada a objetos.
Linguagem de programação:– Enbarcadero Rad Studio 2009.
Banco de dados:– SQL Server 2005.
Sistemas de Informação
Modelo do Cartão
9
Sistemas de Informação 10
Modelo de Negócio
Desenvolvido para Universidade do Contestado;
Implementação;
Forma de acessar;
Segurança dos dados pessoais.
Sistemas de Informação 11
Sistemas de Informação
Metodologia
12
Comunicação com o Banco de Dados da Universidade;
Validação de Dados;
Comunicação com a Catraca;
Inner e os Modos de Operação;
Sistemas de Informação
Exemplo do código para conexão
O pseudo código abaixo demonstra uma máquina de estados do Inner://Váriável para armazenar o estado atual de cada Inner, vamos supor que o vetor já está
inicializado com o valor 1 em cada índice
Inteiro VetorInners[32];
//Variável que diz qual é o Inner que estamos tratando
Inteiro InnerAtual = 1;
//Define o tipo de comunicação que será utilizada(neste caso TCP/IP)
DefinirTipoConexao(1);
//Fecha a porta de comunicação previamente aberta, apenas por garantia
FecharPortaComunicacao();
//Inicializa a porta comunicação TCP/IP, neste caso o parâmetro é ignorado
if(AbrirPortaComunicacao(3570) = 0){
while(TRUE){
//Verifica qual é o estado do Inner atual
Case VetorInner[InnerAtual] {
1: //Executa o estado 1 para o Inner atual, efetua a conexão com o Inner
if( Ping(InnerAtual) = 0 ){
//Seta o Inner atual para o próximo estado
VetorInners[InnerAtual] = 2;
13
Sistemas de Informação
}
2: //Executa o estado 2 para o Inner atual, configura o Inner primeiramente
//para OffLine para coletar as marcações que tenha feito enquanto não estava
//conectadoConfigurarInnerOffLine();
DefinirQuantidadeDigitosCartao( 14 );
HabilitarTeclado( 1, 0 );
ConfigurarTipoLeitor( 0 );
ConfigurarLeitor1( 3 );
if( EnviarConfiguracoes( InnerAtual ) = 0) {
//Seta o Inner atual para o próximo estado
VetorInners[InnerAtual] = 3;
}
3: //Executa o estado 3 para o Inner atual, coleta bilhetes Off Line
if(ColetarBilhete(.Numero, Bilhete.Tipo, Bilhete.Dia, Bilhete.Mes,
Bilhete.Ano, Bilhete.Hora, Bilhete.Minuto, Bilhete.Cartao)) {
//Salva Bilhete na base de dados e continua no mesmo
//estado até coletar todos os bilhetes
} Else{
14
Sistemas de Informação
//Se não há mais bilhetes para coletar segue para o próximo estado
VetorInners[InnerAtual] = 4;
}
Descrição das funções
Manual de Desenvolvimento EasyInner SDK - 01-14 PG - 17-
4: //Executa o estado 4 para o Inner atual, configura a mudança automática de
//OnLine para OffLine, para definir a configuração que será assumida caso a
//conexão caia
// Habilita mudança automática 2, para TCP/IP (usar 1 para Serial)
// com o tempo de 10 segundos
HabilitarMudancaAutomaticaOnLineOffLine(2,10);
// Define que entradas devem ficar habilitadas caso o Inner caia para
//OffLine
DefinirEntradasMudançaOffLineComBiometria(Teclado, Leitor1,Leitor2,
Verificação, Identificação);
// Define que mensagem padrão deve ser exibida caso o Inner caia para
//OffLine
DefinirMensagemPadraoMudancaOffLine(ExibirData, Mensagem);
// Define a mensagem a ser exibida quando o Inner retornar para OnLine
DefinirMensagemPadraoMudancaOnLine(ExibirData, Mensagem);
// Define as entradas a serem habilitadas quando o Inner voltar para
//OnLine
DefinirEntradasMudançaOnLine(Entrada);
// Define comportamento do teclado quando o Inner voltar para OnLine
DefinirConfiguracaoTecladoOnLine(Dígitos, EcoDisplay, Tempo,
PosicaoCursor);
if( EnviarConfiguracoesMudancaAutomaticaOnLineOffLine( InnerAtual ) =
0) {
//Seta o Inner atual para o próximo estado
VetorInners[InnerAtual] = 5;
}
5: //Executa o estado 5 para o Inner atual, configura o Inner para OnLine
ConfigurarInnerOnLine();
DefinirQuantidadeDigitosCartao( 14 );
HabilitarTeclado( 1, 0 );
ConfigurarTipoLeitor( 0 );
ConfigurarLeitor1( 3 );
ReceberDataHoraDadosOnLine( 1 );
if( EnviarConfiguracoes( InnerAtual ) = 0) {
//Seta o Inner atual para o próximo estado
VetorInners[InnerAtual] = 6;
15
Sistemas de Informação
}
6: //Executa o estado 6 para o Inner atual, envia a mensagem padrão
if( EnviarMensagemPadraoOnLine(InnerAtual, 1, " ON LINE ") = 0){
//Seta o Inner atual para o próximo estado
VetorInners[InnerAtual] = 7;
}
7: //Executa o estado 7 para o Inner atual, configura as formas de entradas
if( EnviarFormasEntradasOnLine(InnerAtual, 6, 1, 7, 15, 17) = 0){
//Seta o Inner atual para o próximo estado
Descrição das funções
Manual de Desenvolvimento EasyInner SDK - 01-14 PG - 18-
VetorInners[InnerAtual] = 8;
}
8: //Executa o passo 8 para o Inner Atual, fica fazendo o polling
if(ReceberDadosOnLine(InnerAtual, Origem, Complemento, Cartao, Dia,
Mes, Ano, Hora, Minuto, Segundo) = 0){
//Executa as tarefas necessárias, como gravar no banco de
dados, enviar um bip, etc
//Seta o Inner atual para o próximo estado
VetorInners[InnerAtual] = 7;
}
Else {
//A cada 3 segundos faz um PingOnLine para testar a conexão
If(TimerAtual – TimerLastPingOnLine > 3){
TimerLastPingOnLine = TimerAtual;
If PingOnLine(InnerAtual) VetorInners[InnerAtual] = 6;
//Tenta PingOnline por 6 vezes, se não obtiver resposta.
// Se houve problema na conexão vai para o estado 1 aguardar
// a reconexão
Else VetorInners[InnerAtual] = 1;
}
OutroPasso:
//Insira outros passos aqui, tantos quanto você achar necessário
}
//Pula para o próximo Inner
InnerAtual = InnerAtual + 1;
If(InnerAtual > InnersCadastrados){
InnerAtual = 1;
}
}
//Terminou o programa, fecha a porta de comunicação
FecharPortaComunicacao();
}
16
Sistemas de Informação
1 Abrir a porta de comunicação.
2 Efetuar a conexão com o Inner.
3 Configurar o Inner para OffLine
4 Coletar os Bilhetes OffLine
5 Configurar mudança automática OnLine/OffLine
6 Configurar o Inner para OnLine.
7 Enviar a mensagem padrão OnLine do Inner.
8 Configurar as formas de entradas de dados OnLine.
9Ficar em loop com a função ReceberDadosOnLine, fazendo o polling no
Inner.
10Ao receber algum dado, você poderá fazer algumas validações, enviar
uma mensagem, acionar bip do Inner, etc. Volta para o passo 7.
11 A cada 3 segundos testa a conexão utilizando o comando PingOnLine.
17
Fluxograma de Operações do Inner no modo Online
Sistemas de Informação 18
Metodologia
Máquina de Estados
Sistemas de Informação 19
Metodologia
Saídas do Sistema
Sistemas de Informação 20
Análise
DER – Diagrama Entidade Relacionamento;
Diagrama de Classe;
Diagrama de Caso de Uso;
Diagrama de Sequência.
Sistemas de Informação
Diagrama de Classe
21
Sistemas de Informação 22
Considerações Finais
Objetivos do Projeto;
Viabilidade;
Acordos;
Desenvolvimento.
Sistemas de Informação 23
Referências Bibliográficas
TopData – Sistemas de Automação, Características da Catraca Top. Disponível em <www.topdata.com.br>. Acesso em 10 de out de 2008;
DATE, C. J. Introdução a Sistemas de Banco de Dados. Rio de Janeiro, Campus, 2000;
CANTÙ, Marco. Dominando o Dephi 6: A Bíblia. São Paulo: MAKRON Books, 2002;
SOMMERVILLE, Ian. Engenharia de Software. São Paulo: Pearson Addison Wesley, 2003;
CORTÊS, Pedro Luiz. Trabalhando com banco de dados utilizando o Delphi 2005: My SQL 4, SQL Server 2000, Oracle 9i e Microsoft Office Access 2003. 1. ed São Paulo: Érica, 2005.
Universidade do Contestado - UnC
FLIP – Sistema de Controle de Acesso Informatizado
Alunos: Ademir Good Jr. e Leandro Lourenço Leite
Professor Orientador Msc. Richardson Ribeiro
Disciplina: Trabalho de Conclusão de Curso II