28
Sistema de Comunicação entre Sistema de Comunicação entre Ônibus, Pontos de Parada e Ônibus, Pontos de Parada e Terminais de Ônibus, Terminais de Ônibus, Utilizando Tecnologias Java™ Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Amir Neves Ferreira Velho Cristiane Fernandes Cristiane Fernandes Hugo Henrique Cassettari Hugo Henrique Cassettari Vivian Rodrigues Fiales Vivian Rodrigues Fiales

Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

Embed Size (px)

Citation preview

Page 1: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

Sistema de Comunicação entre Sistema de Comunicação entre Ônibus, Pontos de Parada e Ônibus, Pontos de Parada e

Terminais de Ônibus,Terminais de Ônibus,Utilizando Tecnologias Java™Utilizando Tecnologias Java™

Amir Neves Ferreira VelhoAmir Neves Ferreira Velho

Cristiane FernandesCristiane Fernandes

Hugo Henrique CassettariHugo Henrique Cassettari

Vivian Rodrigues FialesVivian Rodrigues Fiales

Page 2: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Introdução - MetodologiaIntrodução - Metodologia

PesquisaAnálise do Sistema

Metodologia Orientada a Objetos Diagramas UML (Unified Modeling

Language)

Definição da Arquitetura do SistemaImplementação

Simulador

Análise dos Resultados Obtidos

Page 3: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Comunicação Ônibus - Ponto de Parada;

Ônibus: log temporário de informações do ponto;

1255 - Jabaquara

Ônibus 1255 com destino ao Jabaquara chegando.

O ônibus possui ar-condicionado

Comunicação entre ônibus e ponto de parada

Introdução - CenáriosIntrodução - Cenários

Page 4: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Introdução - CenáriosIntrodução - Cenários

Comunicação Ponto de Parada - Ônibus;

3333 - Lapa

Próximo Ponto: Av. Paulista, altura do no

5677, próximo ao Trianon

Comunicação entre ponto de ônibus e ônibus

Page 5: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Introdução - CenáriosIntrodução - Cenários

Comunicação Ônibus - Terminal de Ônibus;

Conexão com a Central Operacional;

Terminal: log de erros dos ônibus e pontos; 3333 - Lapa1255 - Jabaquara

Terminal Parque Dom Pedro

Comunicação entre ônibus e terminal de ônibus

Page 6: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Introdução - ComponentesIntrodução - Componentes

Componentes do Sistema

CentralOperacionalApp

OnibusApp TerminalApp

PontoApp

CadastroApp

Diagrama inicial de componentes

Page 7: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Tecnologias UtilizadasTecnologias Utilizadas

Tecnologia Base para o Projeto: Java™Por quê?

Portabilidade; Escalabilidade; Extensibilidade; Grande Envolvimento da Sociedade no

Desenvolvimento de APIs para Tecnologias Novas (exemplo: Bluetooth)

Padrão para Rede Wireless: Bluetooth™

Page 8: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Java™Java™

Linguagem Orientada a Objetos;Provê Independência de

Plataforma;Tem uma Evolução Rápida

APIs são construídas a partir do JCP (Java Community Process)

Page 9: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Java™ ServletsJava™ Servlets

API Java™ para Construção de Aplicações que Funcionam no Âmbito da Web;

Utilizada na Central Operacional;Por quê Servlets?

Mais Eficientes e Escaláveis que Programas CGI (Common Gateway Interface);

Possibilidade de Interação com o Servidor; Portabilidade.

Page 10: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

RMI (RMI (Remote Method InvocationRemote Method Invocation))

Arquitetura Java™ para Sistemas Distribuídos;

Utilizado na Central Operacional;Por quê RMI?

Mais Simples que CORBA (Common Object Request Broker Architecture);

Necessidade da Construção de uma Servlet com Acesso Remoto.

Page 11: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

JDBC (JDBC (Java™ Database Java™ Database ConnectivityConnectivity))

API Java™ para Acesso a Bancos de Dados Relacionais;

Utilizada na Central Operacional;Por quê JDBC?

Necessidade de Armazenamento e Recuperação dos Dados Relacionados à Aplicação dados do ponto de parada (Exemplo: localização)dados das linhas (Exemplo: ônibus)

É o Meio de Acesso a Bases de Dados Através da Linguagem Java™.

Page 12: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

JCE (JCE (JavaJava™™ Criptography Criptography ExtensionExtension))

API Java™ que Fornece Esquemas de Segurança;

Utilizada em Todas as Aplicações do Sistema (Central Operacional, Ônibus, Ponto de Parada e Terminal de Ônibus);

Por quê JCE? Necessidade da Utilização de Criptografia

RSA - Rivest Shamir Adleman

Page 13: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

JCE (JCE (JavaJava™™ Criptography Criptography ExtensionExtension))

Outros Níveis de Segurança Central Operacional

Autenticação no Acesso Via Browser;Armazenamento de Dados dos Acessos

Autorizados e Não-Autorizados;

vivian; Mon Nov 12 17:19:11 GMT-02:00 2001-11-12amir; Mon Nov 12 17:30:01 GMT-02:00 2001-11-12cristiane; Mon Nov 12 17:30:05 GMT-02:00 2001-11-12marcos; Mon Nov 12 17:31:00 GMT-02:00 2001-11-12hugo; Mon Nov 12 17:32:00 GMT-02:00 2001-11-12amir; Tue Nov 13 11:00:00 GMT-02:00 2001-11-13vivian; Tue Nov 13 12:00:00 GMT-02:00 2001-11-13luciano; Tue Nov 13 12:20:00 GMT-02:00 2001-11-13

Exemplo do Log de Monitoração

HttpServlet(from http)

LoginHandler

allowUser(user : String, passwrd : String)

Classe ibus.LoginHandler

Page 14: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

J2ME (J2ME (Java™ 2 Micro EditionJava™ 2 Micro Edition))

Versão do Java™ para Dispositivos Pequenos;

Utilizado no Ônibus, Ponto de Parada;

Por quê J2ME? Funcionamento da Aplicação em

Dispositivos Pequenos; APIs Java™ para Bluetooth™ Serão

Construídas com Base no J2ME.

Page 15: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

APIs JavaAPIs Java™™ para Bluetooth para Bluetooth™™

JSR (Java™ Specification Request) 82; http://www.jcp.org/jsr/detail/82.jsp

Baseadas no J2ME;Data para Revisão Pública:

29/Dez/2001;

Page 16: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Projeto - ArquiteturaProjeto - Arquitetura

Ponto App(Aplicação Java)

J2ME

J2ME / RMI

JCE

Terminal App(Aplicação Java)

JDBC

PontoApp

J2ME

Onibus App(Aplicação Java)

J2ME

Arquitetura em 3 camadas do ônibus, ponto e terminal

Servlet / RMI

JCE

Central Operacional App(Aplicação Java)

Protocolo HTTPProtocolo HTTP

OnibusApp

OnibusApp

Rede BluetoothRede Bluetooth

Rede BluetoothRede Bluetooth

PontoApp

Page 17: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Projeto - ArquiteturaProjeto - Arquitetura

Banco de Dados Relacional(Microsoft™ Access)

Protocolo Proprietário do Banco de Dados

Servlet / RMI

JCE

Central Operacional App(Aplicação Java)

JDBC

Protocolo HTTPProtocolo HTTP

Cadastro App(Browser HTML)

TerminalApp

TerminalApp

CadastroApp

CadastroApp

Terminal App(Aplicação Java)

JCE

Arquitetura em 3 camadas da central operacional

Page 18: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Central OperacionalCentral Operacional

Esquema do Banco de Dados

onibus

idbus: Stringip: String

parada

nome_referencia: Stringruaavenida: String

numero: Stringcomplemento: String

bairro: Stringestado: String

cep: Stringip: String

caracteristica

idcar: Stringnome: Stringvalor: String

terminal

idponto: String

ponto

idter: String

tem[1,n] [1,n]

temtem

[0,n]

[0,n] [0,n]

[0,n]

linha

idlin:Stringdestino1:Stringdestino2:String

tem[1,1]

[0,n]

sentido: String

Diagrama entidade-relacionamento estendido

Page 19: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Central OperacionalCentral Operacional

Diagrama de Classes Mostra que a Aplicação é uma Servlet

Herda de javax.servlet.http.HttpServlet

Mostra que a Aplicação tem Acesso Via RMIImplementa java.rmi.Remote

Mostra os Serviços Fornecidos pela Aplicação

Diagrama de classes da central operacional

Chave

Chav e(nome : String, v alor : Object)

DatabaseManager

$ dbManager : DatabaseManager

getInstance()getConnection()

(from util)

Bus4AllServ er

(from ibus)

AdminBD

executar(sql : String) : booleanconsultar(cars : Caracteristica[], exata : boolean, nomeTabela : String) : Registro[]inserir(cars : Caracteristica[], nomeTabela : String) : booleanalterar(chav e : Chav e[], cars : Caracteristica[], nomeTabela : String) : booleanexcluir(chav e : Chav e[], nomeTabela : String) : booleanv alidaCaracteristica(car : Caracteristica, nomeTabela : String) : String[]

Registro

Caracteristica

nome : Stringv alor : Object

Caracteristica(nome : String, v alor : Object)getNome() : StringsetNome(nome : String) : v oidgetValor() : ObjectsetValor(v alor : Object) : v oid

Remote

(from rmi)

Util ities

Utilities()getTextFromNode(no : NodeList) : StringgetTextFromNode(no : Node) : Stringf ind(xpathString : String, source : Element) : Node[]parseXML(XMLFile : String)

(from util)

usa usa

HttpServ let

(from http)

usa

Serializable

(from io)

implementa

implementa

RemoteHttpServlet

(from util)

implementa

implementa

Bus4AllInterf ace

consultar(cars : Caracteristica[], tab : String) : Registro[]atualiza(ender : String) : v oid

dadosAlterados(ender : String) : booleannov osDados(ender : String) : String[]

(from util)

implementa

Page 20: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

Central OperacionalCentral Operacional

Acesso ao Banco de Dados

Connection

(from sql)

DatabaseManager

$ dbManager : DatabaseManager

getInstance() : DatabaseManagergetConnection(con : Connection)

Classe ibus.util.DabataseManager

Page 21: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

ÔnibusÔnibus, , PontoPonto e e TerminalTerminal

Diagrama de Classes Especifica os Serviços Ônibus, Ponto e

Terminal Verifica-se a Existência do Log O Terminal possui um conexão (via RMI)

com a Central

Conexao

conex : Socket

env ia(msg : String) : v oidrecebe() : Stringf inaliza() : v oid

Log

ipOrigem : StringipErro : Stringdescricao : Stringinstante : String

insere(ip1 : String, ip2 : String, descr : String, inst : String) : v oid

Servico

id : Stringip : String

anuncia(inf : String) : v oidenv iaLog(c : Conexao) : v oidrecebeLog(c : Conexao) : v oid

usa

Parada

descricao : String

conecta(conex : Conexao) : v oid

Onibus

descricao : String[]paradas : String[][]numparadas : int[]sentido : intlocalizador : int

roda() : v oidconectaPonto(ender : String) : v oidconectaTerminal(ender : String) : v oidinv erte() : v oidrecebeDados(conex : Conexao) : v oid

Ponto

roda() : v oidconecta(conex : Socket) : v oid

Terminal

roda() : v oidconecta(conex : Socket) : v oidenv iaDados(conex : Conexao) : v oidv erDados(ender : String) : intbuscaDados(ender : String) : String[][]

Bus4AllServ er

(from ibus)

usa

Thread(from lang)

Diagrama de classes do ônibus, ponto e terminal

Page 22: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

ÔnibusÔnibus, , PontoPonto e e TerminalTerminal

Log de Erros

Mon Nov 19 17:19:11 GMT-02:00 2001-11-19; 10.0.3.19; 10.0.3.29; Erro durante Recebimento de MensagemMon Nov 19 17:30:01 GMT-02:00 2001-11-19; 10.0.1.180; 10.0.3.27; Dispositivo não encontradoMon Nov 19 17:30:05 GMT-02:00 2001-11-19; 10.0.1.180; 10.0.3.29; Erro durante Envio de MensagemMon Nov 19 17:31:00 GMT-02:00 2001-11-19; 10.0.3.19; 10.0.3.28; Dado esperado não RecebidoMon Nov 19 17:32:00 GMT-02:00 2001-11-19; 10.0.3.29; Indeterminado; Erro no Estabelecimento da ConexãoTue Nov 20 11:00:00 GMT-02:00 2001-11-20; 10.0.2.221; 10.0.3.28; Erro durante Recebimento de MensagemTue Nov 20 12:00:00 GMT-02:00 2001-11-20; 10.0.2.221; Indeterminado; Erro no Estabelecimento da ConexãoTue Nov 20 12:20:00 GMT-02:00 2001-11-20; 10.0.3.28; 10.0.3.19; Erro durante Envio de Mensagem

Exemplo do Log de Erros

Page 23: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

InteraçõesInterações

Diagrama de Seqüência Ônibus - Ponto Especificam a interação entre o ônibus e

o ponto

: Onibus : Ponto

: Usuario

endereco do ponto(ip)

anuncia(String)

informações do ponto (descrição)

anuncia(String)

informações do ônibus (descrição)

anuncia(String)

anuncia(String)

enviaLog(Conexao)

Se houver erros, envia-os, senão envia apenas sinal

informações do ônibus (descrição)

informações do ponto (descrição)

Diagrama de seqüência – ônibus e ponto de parada

Page 24: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

InteraçõesInterações

Diagrama de Seqüência Ônibus - Terminal Especificam a interação entre o ônibus e

o terminal

: Onibus : Terminal : Usuario

: Bus4AllServer

endereco do onibus (ip)

anuncia(String)

informações do terminal (descrição)

anuncia(String)

informações do ônibus (descrição)

anuncia(String)

informações do ônibus (descrição)

anuncia(String)

informações do terminal (descrição)

verifica alteracoes no onibus (ip)

alteracoes (novos dados)

se houver, senao apenas envia sinal

enviaLog(Conexao)

Se houver erros, envia-os, senão envia apenas sinal

alteracoes (novos dados)

Se houver, senão envia apenas sinal

Diagrama de seqüência – ônibus e terminal

Central Operacional

Page 25: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

SimuladorSimulador

Desenvolvido sobre J2SE;Rede Convencional;Aplicações Completas;Janela de Visualização.

Versão em J2ME;Código Equivalente.

Page 26: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

1 - Introdução 1.1 - Metodologia 1.2 - Cenários 1.3 - Componentes

2 - Tecnologias 2.1 - Java 2.1.1 - Servlet 2.1.2 - RMI 2.1.3 - JDBC 2.1.4 - JCE 2.1.5 - J2ME 2.1.6 - Bluetooth

3 - Projeto 3.1 - Arquitetura 3.2 - Central 3.3 - Onibus, Ponto e Terminal 3.4 - Interações 3.4 - Simulador

4 - Conclusões

Ciência da Computação - 8º G - Dez/2001Ciência da Computação - 8º G - Dez/2001

ConclusõesConclusões

Objetivos Alcançados;Protótipo;Tecnologias Utilizadas;Trabalhos Futuros;Contribuição Oferecida.

Page 27: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

Perguntas ?Perguntas ?

Page 28: Sistema de Comunicação entre Ônibus, Pontos de Parada e Terminais de Ônibus, Utilizando Tecnologias Java™ Amir Neves Ferreira Velho Cristiane Fernandes

Igreja Nossa Senhora da Pena - Porto Seguro

Taperapuan - Porto SeguroMarco do Descobrimento - Porto Seguro

Praia de Malibu - Porto Seguro

Recife de Fora - Porto Seguro

Marco do Descobrimento - Porto Seguro

Porto Seguro

Cidade Histórica - Porto Seguro

Abrolhos