UNIVERSIDADE DO VALE DO ITAJAÍ
CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR
CURSO DE CIÊNCIA DA COMPUTAÇÃO
SISTEMA DE DIVULGAÇÃO DE DADOS METEOROLÓGICOS
Área de Sistemas de Informação
por
Fernando Silveira de Quadro
Adriana Gomes Alves, M. Eng.
Orientador
Sergey Alex de Araújo, M. Sc.
Co-orientador
Itajaí (SC), junho de 2005
UNIVERSIDADE DO VALE DO ITAJAÍ
CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR
CURSO DE CIÊNCIA DA COMPUTAÇÃO
SISTEMA DE DIVULGAÇÃO DE DADOS METEOROLÓGICOS
Área de Sistemas de Informação
por
Fernando Silveira de Quadro
Relatório apresentado à Banca Examinadora do
Trabalho de Conclusão do Curso de Ciência da
Computação para análise e aprovação.
Orientador: Adriana Gomes Alves, M. Eng.
Itajaí (SC), junho de 2005
i
EQUIPE TÉCNICA
Acadêmico
Fernando Silveira de Quadro
Professor Orientador
Adriana Gomes Alves, M.Eng
Professor Co-Orientador
Sergey Alex de Araújo, M.Sc
Coordenadora dos Trabalhos de Conclusão de Curso
Anita Maria da Rocha Fernandes, Dr ª. Eng.
Cesar Albenes Zeferino, Dr.
Coordenador do Curso
Luis Carlos Martins, Esp.
ii
DEDICATÓRIA
Dedico este trabalho a meus pais
Antonio Taurino de Quadro, Laci Silveira de Quadro
e a minha namorada Danielle Azevedo pelo apoio e
por acreditarem em mim desde o início.
iii
AGRADECIMENTOS
A Deus, que posso confiar sempre.
Aos meus pais, pela dedicação, amor, confiança, e por sempre me incentivarem e me apoiarem
em todas as decisões no decorrer da minha vida.
A minha namorada Danielle, que nos momentos mais difíceis esteve comigo me dando força e
em nenhum momento me deixou desanimar.
A todos os professores pelos ensinamentos ao longo destes anos. Em especial, a Professora
Adriana, minha orientadora que acreditou no meu potencial e sempre me incentivou.
Ao professor Sergey meu co-orientador pelo auxílio no desenvolvimento deste trabalho.
Ao Professor Carlos Henrique Bughi, pela paciência e pelo interesse com o qual me ajudou neste
trabalho.
A todos os meus amigos que me ajudaram, me incentivaram e me apoiaram nos momentos
difíceis, em especial a Felipe Farias, Rafael Mueller, Danilo Nunes. E também, aqueles que de
alguma forma contribuíram para a realização deste trabalho.
Aos colegas, tanto aqueles que ficaram no decorrer do curso, como aos que conseguiram junto
comigo chegar ao fim de mais uma etapa de nossas vidas.
Muito Obrigado!
iv
SUMÁRIO
LISTA DE ABREVIATURAS.................................................................vii
LISTA DE FIGURAS................................................................................ix
LISTA DE TABELAS ................................................................................ x
RESUMO...................................................................................................xii
ABSTRACT..............................................................................................xiii
1. INTRODUÇÃO ...................................................................................... 1
1.1. OBJETIVOS ..................................................................................................... 2
1.1.1. Objetivo Geral................................................................................................ 2
1.1.2. Objetivos Específicos...................................................................................... 2
1.2. METODOLOGIA............................................................................................. 3
1.3. ESTRUTURA DO TRABALHO ..................................................................... 4
2. FUNDAMENTAÇÃO TEÓRICA ........................................................ 5
2.1. CLIMATOLOGIA ........................................................................................... 5
2.2. LABORATÓRIO DE CLIMATOLOGIA ...................................................... 6
2.3. PORTAIS ........................................................................................................ 12
2.3.1. Classificação dos Portais.............................................................................. 14
2.4. WEB SERVICES............................................................................................ 16
2.4.1. XML.............................................................................................................. 18
2.4.2. SOAP ............................................................................................................ 21
2.4.3. WSDL ........................................................................................................... 24
2.4.4. UDDI ............................................................................................................. 29
2.5. FERRAMENTAS PARA O PROJETO ........................................................ 30
2.5.1. PHP ............................................................................................................... 30
2.5.2. PostgreSQL................................................................................................... 31
2.6. CONSIDERAÇÕES ....................................................................................... 32
3. DESENVOLVIMENTO ...................................................................... 33
3.1. REQUISITOS DO SISTEMA........................................................................ 33
3.1.1. Requisitos Funcionais .................................................................................. 33
3.1.2. Requisitos Não Funcionais........................................................................... 34
3.1.3. Regras de Negócio ........................................................................................ 34
3.2. DIAGRAMA DE ATIVIDADES ................................................................... 35
3.3. FUNCIONALIDADES DO SISTEMA.......................................................... 41
3.4. DIAGRAMA DE CASOS DE USO ............................................................... 43
3.5. DIAGRAMA DE CLASSES .......................................................................... 46
3.6. MODELAGEM DE DADOS.......................................................................... 48
3.7. IMPLEMENTAÇÃO ..................................................................................... 48
3.7.1. Área Restrita ................................................................................................ 48
3.7.2. Área Pública ................................................................................................. 51
3.7.3. Web Service .................................................................................................. 53
3.7.4. Importação de dados das estações............................................................... 56
4. CONSIDERAÇÕES FINAIS .............................................................. 57
REFERÊNCIAS BIBLIOGRÁFICAS ................................................... 58
GLOSSÁRIO............................................................................................. 61
APÊNDICE A – PCT01 ARMAZENAMENTO DE DADOS.............. 65
APÊNDICE B – PCT02 ADMINISTRAÇÃO DO SISTEMA............. 67
APÊNDICE C – PCT03 ÁREA PÚBLICA............................................ 79
APÊNDICE D – PCT04 WEB SERVICES............................................ 82
APÊNDICE E – MODELAGEM DOS DADOS ................................... 83
APÊNDICE F – ARQUIVO WSDL........................................................ 90
ANEXO I – ARTIGO ............................................................................... 91
vi
LISTA DE ABREVIATURAS
AOL
API
CGI
CTTMAR
DTD
EAI
FI
FTP
GOES
HTML
HTTP
IMAP
INMET
INPE
IP
J2EE
JAXB
JAXP
JSP
MIME
MVCC
NOAA
ODBC
OSI
PHP
POP3
POSIX
SGBD
SI
SMTP
SNMP
SOAP
SQL
SSL
TCC
TCP
TI
UDDI
UDDI4J
UML
UNIVALI
UOL
URI
URL
UTC
W3C
América On Line
Application Programming Interface
Common Gateway Interface
Centro de Ciências Tecnológicas da Terra e do Mar
Document Type Definition
Enterprise Application Integration
Form Interpreter
File Transfer Protocol
Geostationary Operational Environmental Satellites
Hipertext Markup Language
Hipertext Transfer Protocol
Internet Message Access Protocol
Instituto Nacional de Meteorologia
Instituto Nacional de Pesquisas Espaciais
Internet Protocol
Java to Plataform Enterprise Edition
Java API for XML Binding
Java API for XML Processing
Java Server Pages
Multipurpose Internet Mail Extensions
Multi Version Competition Control
National Oceanic and Atmospheric Administration
Open Database Conectivity
Open Systems Interconnection
Hypertext Preprocessor
Post Office Protocol version 3
Portable Operation System Interface
Sistema Gerenciador de Banco de Dados
Sistemas de Informação
Simple Mail Transfer Protocol
Simple Network Management Protocol
Simple Object Access Protocol
Structured Query Language
Secure Socket Layer
Trabalho de Conclusão de Curso
Transmission Control Protocol
Tecnologia de Informação
Universal Description, Discovery and Integration
Universal Description, Discovery and Integration for Java
Unified Modeling Language
Universidade do Vale do Itajaí
Universo On Line
Uniform Resource Identifier
Uniform Resource Locator
Universal Time Coordenate
World Wide Web Consortium
WSDL
WSDP
WWW
XML
XSL
Web Services Description Language
Web Services Developer Pack
World Wide Web
Extensible Markup Language
Extensible Stylesheet Language
viii
LISTA DE FIGURAS
Figura 1. Arquivo gerado pela estação meteorológica ......................................................................8
Figura 2. Imagem do satélite............................................................................................................9
Figura 3. Planilha com os dados da previsão marítima ..................................................................10
Figura 4. Website com os dados meteorológicos............................................................................11
Figura 5. Portal do UOL ................................................................................................................12
Figura 6. Funcionamento simplifcado de um Web service .............................................................18
Figura 7. Exemplo de um documento XML ...................................................................................20
Figura 8. Formato da mensagem SOAP .........................................................................................22
Figura 9. Operações básicas que usam a WSDL.............................................................................25
Figura 10. Exemplo de declaração de um definitions de um documento WSDL.............................26
Figura 11. Exemplo de definição de um types................................................................................26
Figura 12. Exemplo de definição de um message...........................................................................27
Figura 13. Sintaxe do operation e portType ...................................................................................28
Figura 14. Sintaxe do elemento binding.........................................................................................28
Figura 15. Sintaxe dos elementos service e port.............................................................................29
Figura 16. Diagrama de Atividades da estação antes do sistema proposto ......................................36
Figura 17. Diagrama de Atividades das estações após o sistema proposto......................................37
Figura 18. Diagrama de Atividades das previsões antes do sistema proposto .................................38
Figura 19. Diagrama de atividades das previsões após o sistema proposto .....................................39
Figura 20. Diagrama de Pacotes dos casos de uso do sistema.........................................................42
Figura 21. Pacote Armazenamento de Dados .................................................................................43
Figura 22. Pacote da Administração do Sistema.............................................................................44
Figura 23. Pacote Área Pública......................................................................................................45
Figura 24. Pacote Webservice ........................................................................................................46
Figura 25. Diagrama de classes do Framework ..............................................................................47
Figura 26. Tela de listagem dos dados ...........................................................................................49
Figura 27. Tela de detalhes de itens ...............................................................................................50
Figura 28. Tela de cadastro de dados .............................................................................................51
Figura 29. Home page do Laboratório de Climatologia..................................................................52
Figura 30. Layout da previsão do tempo ........................................................................................53
Figura 31. Tela de login para acessar o Web Service .....................................................................54
Figura 32. Tela de resultados do Web Service................................................................................55
Figura 33. Tela do código fonte de uma solicitação cliente ao Web Service ...................................55
LISTA DE TABELAS
Tabela 1. Limites do banco de dados PostgreSQL..........................................................................32
Tabela 2. Funcionalidades do pacote Armazenamento de Dados....................................................44
Tabela 3. Funcionalidades do pacote Administração do Sistema....................................................44
Tabela 4. Funcionalidades do pacote Área pública.........................................................................45
Tabela 5. Funcionalidades do pacote Web service..........................................................................46
Tabela 6. Classes do Framework ...................................................................................................46
Tabela 7. Descrição da tabelas utilizadas no sistema......................................................................48
Tabela 8. Descrição do Caso de Uso Armazena Imagens do Globo................................................65
Tabela 9. Descrição do Caso de Uso Armazena Dados Meteorológicos .........................................65
Tabela 10. Descrição do Caso de Uso Manutenção de Usuários.....................................................67
Tabela 11. Descrição do Caso de Uso Fazer Previsão do Tempo....................................................68
Tabela 12. Descrição do Caso de Uso Fazer Previsão Marítima .....................................................69
Tabela 13. Descrição do Caso de Uso Geração de Relatórios.........................................................70
Tabela 14. Descrição do Caso de Uso Login..................................................................................70
Tabela 15. Descrição do Caso de Uso Recados ..............................................................................71
Tabela 16. Descrição do Caso de Uso Armazena Fases da Lua ......................................................72
Tabela 17. Descrição do Caso de Uso Visualiza Criticas e Sugestões.............................................73
Tabela 18. Descrição do Caso de Uso Tábuas da Maré ..................................................................74
Tabela 19. Descrição do Caso de Uso Região ................................................................................74
Tabela 20. Descrição do Caso de Uso Áreas ..................................................................................75
Tabela 21. Descrição do Caso de Uso Por do Sol...........................................................................76
Tabela 22 Descrição do Caso de Uso Satélite ................................................................................77
Tabela 23 Descrição do Caso de Uso Estação ................................................................................78
Tabela 24. Descrição do Caso de Uso Visualiza Previsão do Tempo..............................................79
Tabela 25. Descrição do Caso de Uso Visualiza Previsão Marítima ...............................................79
Tabela 26. Descrição do Caso de Uso Consulta Dados Meteorológicos .........................................79
Tabela 27. Descrição do Caso de Uso Consulta Imagens do Satélite ..............................................80
Tabela 28. Descrição do Caso de Uso Consulta Pôr do Sol ............................................................80
Tabela 29. Descrição do Caso de Uso Fases da Lua .......................................................................80
Tabela 30. Descrição do Caso de Uso Envia Criticas e Sugestões ..................................................81
Tabela 31. Descrição do Caso de Uso Visualiza Recados...............................................................81
Tabela 32. Descrição do Caso Solicita dados meteorológicos ........................................................82
Tabela 33. Dicionário de dados da tabela tb_dados_meteorologicos ..............................................83
Tabela 34. Dicionário de dados da tabela tb_fases_da_lua .............................................................85
Tabela 35. Dicionário de dados da tabela tb_imagens_satelite .......................................................85
Tabela 36. Dicionário de dados da tabela tb_tipo_imagem.............................................................85
Tabela 37. Dicionário de dados da tabela tb_log ............................................................................85
Tabela 38. Dicionário de dados da tabela tb_por_do_sol................................................................86
Tabela 39. Dicionário de dados da tabela tb_previsao_maritima ....................................................86
Tabela 40. Dicionário de dados da tabela tb_dados_maritima ........................................................86
Tabela 41. Dicionário de dados da tabela tb_previsao_tempo ........................................................87
Tabela 42. Dicionário de dados da tabela tb_recados .....................................................................87
Tabela 43. Dicionário de dados da tabela tb_area...........................................................................87
Tabela 44. Dicionário de dados da tabela tb_regiao .......................................................................87
Tabela 45. Dicionário de dados da tabela tb_tabua_mare ...............................................................87
Tabela 46. Dicionário de dados da tabela arquivo ..........................................................................87
Tabela 47. Dicionário de dados da tabela modulos.........................................................................88
Tabela 48. Dicionário de dados da tabela arq_mod ........................................................................88
Tabela 49. Dicionário de dados da tabela conexoes........................................................................88
Tabela 50. Dicionário de dados da tabela operadores .....................................................................88
Tabela 51. Dicionário de dados da tabela permissoes.....................................................................89
Tabela 52. Dicionário de dados da tabela tb_contato......................................................................89
xi
RESUMO
QUADRO, Fernando Silveira de. Sistema de divulgação de dados meteorológicos. Itajaí, 2004.
105 f. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação)–Centro de
Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí, 2004.
A meteorologia nos dias de hoje atingiu um grau de maturidade nas sociedades mais desenvolvidas,
como conseqüência do avanço tecnológico e metodologias mais condizentes. Desta forma,
possibilitou um nível de acerto maior nos seus prognósticos, levando a uma maior confiabilidade. O
Centro de Ciências Tecnológicas da Terra e do Mar (CTTMar) que já dispõe de infra-estrutura à
Climatologia e Meteorologia, inicialmente centrada ao ensino e posteriormente à pesquisa e
extensão, assumiu uma postura moderna de contribuir para o aperfeiçoamento e divulgação destas
tecnologias em prol da sociedade catarinense. Este trabalho tem como objetivo apresentar o projeto
de um sistema de informações para o Laboratório de Climatologia da UNIVALI, Itajaí – Santa
Catarina. O Laboratório não possuia um sistema de informações, e sim alguns software que
auxiliam no cumprimento das suas necessidades, demonstrando pouca flexibilidade. O sistema de
informações proposto e implementado neste trabalho organizou todas as informações do laboratório
em um banco de dados, reformulou a interface do sistema introduzindo a possiilidade de usar a web
e ainda e ainda disponibilizou informações através de um Web service.
Palavras-chave: Sistemas de Informações. Web Services. Dados Meteorológicos.
ABSTRACT
Nowadays the meteorology reached a degree of maturity in the societies more developed, as
consequence of the technological progress and more suitable methodologies. In a way, it turned
possible a level of bigger success in its prognostics, taking to a larger reliability. The Center called
CTTMar that has already disposed of infrastructure to the Climatology and Meteorology, initially
centered to the teaching and later to the research and extension, it assumed a modern posture of
contributing for the improvement and popularization of these technologies on behalf of the society
of “Santa Catarina” state. This work has as objective presents the project of an information system
to the Climatology Laboratory of UNIVALI, Itajaí–Santa Catarina, in the intention of supplying
needs of informatization of collection procedures and popularization of climatological data,
including weather forecast and tides. The system proposes the systematization of the data collection
of the meteorological station and of the satellite images and data, feeding a meteorology and
climatology database. The information of the database will be available in a dynamic web page,
and also through a webservice for supplying of meteorological and climatological data.
Keywords: Information System. Web Services. Meteorology Data.
1. INTRODUÇÃO
A meteorologia nos dias de hoje atingiu um grau de maturidade nas sociedades mais
desenvolvidas, como conseqüência do avanço tecnológico e metodologias mais condizentes. Desta
forma, possibilitou um nível de acerto maior nos seus prognósticos, levando a uma maior
confiabilidade. Como conseqüência, a sociedade passou a consumir seus produtos para as mais
diversas aplicações, como a verificação da previsão do tempo para um simples passeio até a
influenciar atividades mais complexas do campo econômico.
O Centro de Ciências Tecnológicas da Terra e do Mar (CTTMar) dispõe de infra-estrutura
para estudos de Climatologia e Meteorologia, inicialmente centrada ao ensino e posteriormente à
pesquisa e extensão. Ela assumiu uma postura moderna de contribuir para o aperfeiçoamento e
divulgação destas tecnologias em prol da sociedade catarinense, buscando parcerias com órgãos
importantes no desenvolvimento da meteorologia no Brasil, como o Instituto Nacional de
Meteorologia (INMET), Instituto Nacional de Pesquisas Espaciais (INPE) e empresas do setor
privado com experiência reconhecida na área, como a CLIMATERRA (empresa de
agrometeorologia).
O Laboratório de Climatologia da UNIVALI trata os dados da previsão do tempo, previsão
marítima e ainda trabalha com a captação de imagens de satélite. Como esses dados meteorológicos
são usados não só para divulgação via Web, mas também para a pesquisa, é necessário que eles
sejam armazenados de forma organizada, para ser possível acompanhar os eventos que acontecem e
possibilitar prognósticos no que tange as áreas climatológica e meteorológica.
O modelo proposto nesse projeto visou a organização dos dados meteorológicos e
climatológicos em uma base de dados, que proporcionou um melhor aproveitamento, dado o fato de
que os dados eram armazenados em formato texto. As informações organizadas estão auxiliando o
Laboratório de Climatologia na avaliação homogênea dos fatores climáticos e meteorológicos da
região.
A criação de um banco de dados permitiu a criação de um acervo histórico dos dados
meteorológicos, o que já existia, mas a sistematização adotada dificultava o acesso, consulta e uso.
Adicionalmente foi implementado um Web Service para disponibilizar os dados
armazenados e processados. Esta tecnologia foi escolhida pois apresenta vantagens como a
interoperabilidade, integração, eficiência de implementação, reciclagem de código e modularidade.
1.1. OBJETIVOS
1.1.1. Objetivo Geral
O objetivo deste trabalho é desenvolver um sistema de informações para o Laboratório de
Climatologia para organizar e divulgar os dados meteorológicos através de um portal Web e de
Web services.
1.1.2. Objetivos Específicos
Os objetivos específicos deste projeto de pesquisa são:
Pesquisar referências bibliográficas na área de divulgação de dados meteorológicos,
linguagens existentes para implementação e os conceitos do desenvolvimento e
aplicação dos Web Services;
Desenvolver a análise de requisitos e o modelo do sistema;
Desenvolver um banco de dados para armazenar os dados;
Criar um mecanismo para importar os dados atuais; e
Desenvolver o Web Service para a interoperabilidade de sistemas.
2
1.2. METODOLOGIA
As etapas para o cumprimento dos objetivos propostos são descritas em seguida.
Redação Pré-Proposta: exposto panorama geral do projeto de conclusão do Curso de
Ciências da Computação, objetivos, justificativas, importância, definição de critérios;
Levantamento Bibliográfico: O trabalho iniciou com a pesquisa de material bibliográfico:
livros, artigos, periódicos, teses, internet, com o propósito de fundamentar teoricamente as
tecnologias que deveriam ser abordadas no trabalho, e entrevistas com o co-orientador, que
é o responsável pelo Laboratório de Climatologia.
Revisão Bibliográfica: Confecção da monografia, utilizando o levantamento bibliográfico
realizado na etapa anterior, as fundamentações e conceituações sobre as tecnologias que
foram selecionadas para o desenvolvimento do trabalho, bem como o conhecimento
adquirido durante a pesquisa. Nesta etapa, houve então a fundamentação teórica do trabalho.
Este período foi acompanhado por reuniões semanais com o orientador, co-orientador e por
relatórios quinzenais entregues à coordenação do TCC.
Pré-modelagem da aplicação: Esboço geral do projeto, juntamente com os principais
serviços a serem disponibilizados.
Análise do Projeto: Análise do sistema bem como a modelagem do banco. Foi utilizada a
linguagem de modelagem UML (Unified Modeling Language), sendo que, o banco de dados
teve a aplicação de regras de mapeamento do modelo orientado a objetos, utilizado pela
UML, para o modelo relacional/objeto-relacional dos Bancos de Dados tradicionais. O
banco de dados foi modelado com base nas informações colhidas no Laboratório de
Climatologia. Esses dados foram definidos em reuniões com o professor responsável a fim
de atender as funcionalidades propostas; e
Preparação para Apresentação Banca TCC1: refinar conteúdo e estudar apresentação do
trabalho.
Implementação: Usar a análise para o desenvolvimento do sistema, seguindo os requisitos e
as regras de negócios estabelecidas.
3
Validação: Realizado o processo de validação do sistema com o auxílio do professor
responsável pelo Laboratório de Climatologia.
Preparação para Apresentação Banca TCC2: refinar conteúdo e estudar apresentação do
trabalho.
1.3. ESTRUTURA DO TRABALHO
Este trabalho trata de um sistema de informações que pretende ajudar o processamento e a
manutenção dos serviços providos pelo Laboratório de Climatologia.
Para isto, a primeira etapa do trabalho compreende um levantamento bibliográfico sobre
Climatologia, mais voltado para o Sul do Brasil, que é onde está localizado o Laboratório.
No tópico Laboratório de Climatologia é apresentada uma descrição do laboratório,
descrevendo suas atividades e dando uma visão da estrutura e procedimentos do referido
laboratório.
No tópico Portais, são apresentados os conceitos, classificação e comparações.
No tópico Web Services é feita uma análise do que é um Web service, seu funcionamento,
bem como são detalhadas os padrões XML, WSDL e SOAP que são utilizadas pelos Web Services.
Em seguida são descritas as ferramentas que foram utilizadas para a implementação do
sistema e do Web service.
Finalmente é então apresentado o sistema, mostrando os diagramas de classe, casos de uso,
dicionário dos dados e as telas.
4
2. FUNDAMENTAÇÃO TEÓRICA
2.1. CLIMATOLOGIA
Os modelos voltados para climatologia e meteorologia vêm avançando de forma sistemática
desde a década de 60, principalmente devido aos desenvolvimentos nos conhecimentos de física,
química e matemática ligados aos processos climáticos, bem como na capacidade de computação
instalada, tanto ao nível de hardware como de software.
Segundo Christofoletti (1998) “os modelos de processos climáticos envolvem desde
modelos para a circulação geral da atmosfera até os modelos para balanço hídrico e energético
locais, passando pelos modelos de dinâmica regional das massas de ar e caracterização e previsão
dos tipos de tempo”.
De acordo com Sadourny (1994), o estudo dos mecanismos da mudança climática baseia-se
em modelos de clima numéricos muito complexos. Tais modelos simulam a evolução conjunta do
oceano (correntes, pressão, temperatura, umidade, salinidade, gelos) e da atmosfera (ventos,
pressão, temperatura, umidade, nebulosidade, chuva e neve) na totalidade do globo terrestre.
Conforme Foucault (1993), as inúmeras variações do clima de local para local, determinadas
pelas diferentes combinações dos processos atmosféricos produzem, correspondentemente, um
grande número de tipos climáticos.
Segundo Vianello e Alves (1991), os fatores que atuam sobre os climas explicam duas
diversificações. A circulação geral sobre a América do Sul desempenha papel de destaque tanto no
sentido zonal quanto meridional. Associados aos anticiclones do Atlântico e do Pacífico, à alta da
Bolívia e à baixa do Chaco, às baixas pressões equatoriais e às altas pressões polares, inúmeros
mecanismos ocorrem durante o ano sobre o Brasil, tais como: as invasões de massa de ar frias e
secas, provenientes do Sul, em contraste com massas quentes e úmidas, que caracterizam sistemas
frontais periódicos, e o encontro dos alísios na faixa equatorial, que dá origem à zona de
convergência intertropical, predominante no norte do país. Mecanismos convectivos intensos são
responsáveis por elevados índices pluviométricos, ao mesmo tempo em que atuam como fontes de
energia para atmosfera.
Ao longo do litoral, o aquecimento diferenciado oceano-continente dá origem as brisas, que
combinam com outros fenômenos na formação de chuvas. A Cordilheira dos Andes forma uma
imensa barreira na direção norte-sul e exerce influência sobre o tempo e clima no Brasil. Até o
aquecimento das águas do Pacífico e do Atlântico é capaz de provocar efeitos climáticos apreciáveis
sobre as áreas continentais, especialmente no regime pluvial. Movimentos e descendentes de massa
de ar, nos sentidos zonal e meridional, associa-se ao deslocamento mais rápido ou ao bloqueio dos
sistemas frontais, promovendo chuvas ou secas prolongadas. Ao lado dos fatores de grande escala,
atuam combinadamente, os fatores locais e regionais (VIANELLO e ALVES, 1991).
Na região Sul, além do relevo e da posição geográfica, os sistemas de circulação atmosférica
influenciam bastante na caracterização climática da região Sul que apresenta duas características
próprias: a primeira é a homogeneidade quanto às chuvas e seu regime, e a outra é a umidade
climática (ibidem).
O clima na região Sul é subtropical, conforme a classificação de Strahler, abrange o Brasil
Meridional, porção localizada ao sul do Trópico de Capricórnio, com predominância da massa de ar
tropical atlântica, que provoca chuvas fortes. No inverno, tem freqüência de penetração de frente
polar, dando origem às chuvas frontais com precipitações devidas ao encontro da massa quente com
a fria, ocorre a condensação do vapor de água atmosférico. É a região climaticamente mais regular,
apresentando chuvas bem distribuídas durante todo o ano, e as quatro estações do ano são nítidas, o
calor do verão contrasta-se com as geadas do inverno. É a única região brasileira onde a queda de
neve ocorre, embora seja um fenômeno esporádico (ibidem).
2.2. LABORATÓRIO DE CLIMATOLOGIA
Em 1996, a Universidade do Vale do Itajaí (UNIVALI) adquiriu uma estação de recepção de
imagens de satélites, a qual receberia os sinais dos satélites da série NOAA (National Oceanic and
Atmospheric Administration) e METEOR (órbita polar) e do satélite meteorológico da série GOES
(Geostationary Operational Environmental Satellites), e também uma estação meteorológica
automática com a finalidade de complementar as aulas de Climatologia e Meteorologia.
Em 1998, a estação meteorológica e o satélite de imagens de baixa resolução foram
instalados no Laboratório de Climatologia, quando também foram adquiridos detectores de raios e
termômetros/higrômetros digitais. A implantação deste sistema, principalmente da estação
6
meteorológica, vem propiciando um ganho de qualidade no controle dos prognósticos
meteorológicos.
Estes equipamentos fizeram da UNIVALI, a pioneira no sul do Brasil entre as instituições de
ensino e de outras entidades ligadas à previsão do tempo, pois estações de recepção de imagens de
satélite existem somente na Faculdade de Meteorologia de Pelotas (RS) e na sede do Oitavo Distrito
de Meteorologia (INMET), em Porto Alegre (RS).
A estação meteorológica possui anemômetro (direção e velocidade do vento), coletor de
chuva,
sensor
digital
para
temperatura/umidade/pressão
atmosférica
e
console
de
coleta/visualização/transmissão de dados para microcomputador. Ela dispõe também de um
software que permite fazer a visualização/gravação/exportação dos dados, bem como a geração de
relatórios e gráficos. A estação está configurada para fazer a leitura dos dados de 15 em 15 minutos
e salvá-los a cada 45 minutos. Os dados que constam neste arquivo são: data, horário, índice de
desconforto térmico, temperatura interna/externa (máxima/mínima), índice de resfriamento pelo
vento, umidade, ponto de orvalho, velocidade do vento (máxima do dia), direção do vento, pressão
atmosférica e chuva diária.
A estação de recepção de imagens é composta de duas antenas de recepção: uma para
satélites geo-estacionários de órbita equatorial e outra para satélites de órbita polar, além de um
receptador e decodificador (geo-estacionário) e placa de recepção dos sinais das antenas para
visualização através de software. Este software permite acompanhar a órbita dos satélites, capturar,
gravar, visualizar, exportar e utilizar ferramentas para um refinamento das imagens, sendo que as
imagens recebidas estão num modo de baixa resolução. A estação está configurada para capturar
imagens da América do Sul, e da parte Leste do Globo, nos horários UTC (Universal Time
Coordenate) das 0, 3, 6, 9, 12, 15, 18 e 21 horas.
O antigo sistema operava com vários softwares que trabalham com arquivos formato texto e
arquivos do Microsoft Excel. A estação meteorológica, por exemplo, a cada 15 minutos fazia uma
coleta de dados e armazenava estes em arquivo texto (tipo “txt”). O software desenvolvido por
colaboradores do laboratório, acessava este arquivo e o transformava para um modelo HTML
(Hyper Text Markup Language). Feito isso outro software acessava este arquivo HTML e através de
uma conexão FTP (File Transfer Protocol) disponibiliza-o na Internet. Relatórios mensais e anuais
são gerados a partir da estação meteorológica em formato texto, conforme ilustra a Figura 1.
7
Figura 1. Arquivo gerado pela estação meteorológica
Fonte: Estação Meteorológica - UNIVALI - CTTMar - Itajaí - SC
A previsão do tempo era realizada através de um software desenvolvido em Delphi, que
construía um arquivo HTML a partir de um modelo pré-existente. Essa previsão é feita através da
análise de modelos matemáticos meteorológicos existentes na internet e a mesma não possuía um
acervo histórico, só existindo o arquivo diário que estava publicado no site do Serviço de Previsão
do Tempo On-Line – Litoral de SC (http://www.cttmar.univali.br/~tempo/), e toda vez que se
publicava um novo boletim o anterior era perdido.
O mesmo processo acontecia com as imagens de satélite captadas pela estação de recepção
de imagens de satélite da série GOES e NOAA, conforme mostra a Figura 2.
8
Figura 2. Imagem do satélite
Fonte: Estação Receptora de Imagens de Satélite - UNIVALI - CTTMar - Itajaí - SC
A Previsão Meteorológica Marítima é gerada pelos profissionais do Laboratório com
consulta também a modelos matemáticos meteorológicos e de ondas. Depois desta etapa era
confeccionado um boletim em arquivo do Microsoft Excel (Figura 3), e então salvo em arquivo de
formato HTML e colocado no site do Serviço de Previsão do Tempo. Os boletins eram arquivados
de forma manual para posterior consulta.
9
Figura 3. Planilha com os dados da previsão marítima
Fonte: http://www.cttmar.univali.br/~tempo/
As informações providas dos satélites atendem a acadêmicos, pessoas físicas, jurídicas,
provedores
de
mídia
e
a
(http://www.cttmar.univali.br/~tempo –
comunidade
em
geral
através
da
internet
Figura 4), onde os dados meteorológicos e imagens de
satélites ficam disponíveis. É importante ressaltar que a Previsão do Tempo e a Previsão Marítima
atendem a mais de 700 embarcações pesqueiras que operam no trecho do Rio Grande do Sul ao
Espírito Santo.
Como esses dados, imagens e boletins são usados não só para a divulgação na Web, mas
também para a pesquisa, era necessário que eles fossem armazenados de forma organizada, para
possível recuperação eficiente com o intuito de acompanhar os eventos meteorológicos e condições
de mar.
10
Figura 4. Website com os dados meteorológicos
Fonte: http://www.cttmar.univali.br/~tempo/
Foi identificado que o Laboratório de Climatologia não possuia seus softwares integrados, e
sim vários programas que serviam para dar apoio na geração das páginas da web e FTP (File
Transfer Protocol).
Devido ao fato de que o laboratório não possuía um banco de dados para armazenar as suas
informações, ocasionava o problema de não se ter um histórico de grande parte dos dados
meteorológicos previstos anteriormente.
Como os dados não são tratados de uma forma automatizada, o esforço despendido pela
equipe do Laboratório de Climatologia era muito grande, causando perda de tempo. Desta forma,
acredita-se que a automação desses serviços proporcionou mais tempo para a pesquisa e reduziu o
trabalho operacional.
Desta forma, este trabalho de conclusão de curso criou um sistema de informações para
organizar os dados e procedimentos do Laboratório de Climatologia, automatizando os seus
11
processos, e possibilitando um melhor aproveitamento das informações. Depois da organização
buscou-se a criação de um web service para disponibilizar os dados gerados pela estação
meteorológica, e reformular todo o layout do web site que estva em operação.
2.3. PORTAIS
Esta seção irá apresentar os portais web, conceituado-os, classificando os diferentes tipos
existentes e comparando as diferentes classificações.
São várias as definições para portais, mas a definição que será considerada neste texto é a
seguinte: "Espaço de articulação e comunicação que aglutina oportunidades de acesso a acervo
técnico, administrativo e/ou cultural relacionado à instituição, tema ou setor econômico" (CEM,
2003). A Figura 5, mostra um exemplo de um portal que emprega este conceito.
Figura 5. Portal do UOL
Fonte: http://www.uol.com.br
12
A idéia de portal surgiu nos Estados Unidos da América no ano de 1994. A princípio, a
única e exclusiva função dos portais era guiar os usuários da Internet em sua viagem pela rede. Por
conseqüência, eles reuniam sites e os apresentavam ao usuário, ajudando-o a localizar o conteúdo
desejado. A idéia inicial por trás do portal era ser o lugar por onde começava a ação do internauta,
que, a partir dele poderia construir os roteiros de leitura que desejasse ou o seu próprio hipertexto.
Ou seja, a página de partida para a experiência na Internet é o portal: pesquisa, comunicação,
entretenimento, comunicação (PÓVOA, 2000 apud BARBOSA, 2003).
Os primeiros portais tornaram-se na sua maioria, provedores da Internet buscando atrair o
maior número possível de internautas. Para isso passaram a agrupar os documentos e sites
disponibilizados por eles, e incorporar em seus conteúdos ferramentas que acrescentavam a
individualidade do usuário. Deste modo, surgiram os portais que põem a disposição diversos
assuntos, cabendo ao usuário decidir qual quer visitar. Segundo Barbosa (2003), a etapa seguinte,
foi a junção de outras funções, como comunidades virtuais e suas listas de discussão, chats em
tempo real, possibilidade de personalização dos sites de busca, assim como acesso a conteúdos
especializados.
O aumento dos usuários da Internet aumenta também o conteúdo da rede, visto que a
disponibilização de conteúdo é facilitada pelos portais, que permitem que os usuários coloquem
páginas pessoais em seus servidores gratuitamente. As organizações perceberam que os portais,
com toda a sua audiência podiam ser um ótimo ambiente de marketing e propaganda, tanto quanto
outras mídias como a televisão e o rádio, com a vantagem de a propaganda poder, além de ser vista
e ouvida, interagir com o usuário/consumidor. Parcerias com empresas foram feitas e as
propagandas espalharam-se pela Web. Além disso, os portais fizeram parcerias também com redes
de televisão, rádio, revistas e livrarias, numa tentativa de aumentar os usuários da rede e,
conseqüentemente, de consumidores para as empresas parceiras, que muitas vezes eram as próprias
empresas de mídia.
No Brasil, a trajetória dos portais começa pelo mesmo caminho verificado nos EUA: com os
mecanismos de busca. O Cadê, estreou na Web em outubro de 1995, expandiu-se baseado no
conceito original de portal (página inicial para a experiência das pessoas na Web), mas logo
precisou agregar serviços diferenciados para competir com os grandes portais que estavam se
consolidando, como UOL e ZAZ, além do norte americanos que estavam chegando, como
13
Altavista, MSN, Yahoo!, todos com versões em português dos seus sites ou em vias de lançá-las
como estratégia de expansão, entre os anos 1998 e 1999 (BARBOSA, 2003).
Segundo Dias (2001), as rápidas transformações no modelo de portal levaram a identificação
de quatro fases do progresso do portal Web: pesquisa booleana (baseada na associação de termos
"E", "OU" para restringir ou ampliar o universo pesquisado), navegação por categorias,
personalização e funções expandidas para outras áreas. É assim que surgem os diferentes tipos de
portais para conformar aplicações variadas.
2.3.1. Classificação dos Portais
Para Dias (2001), "há duas formas para classificar os portais: uma em relação ao contexto de
sua utilização (público ou corporativo) e outra em relação às suas funções (suporte à decisão e/ou
processamento corporativo)". O portal público, segundo a mesma autora:
"é aquele denominado portal Internet, portal Web ou portal de consumidores - a exemplo do
UOL (Universo Online), AOL (América Online), Yahoo!, Terra, pois provê ao consumidor
uma única interface à imensa rede de servidores que compõem a Internet. Tem como
função atrair o público geral que navega na rede para o seu site. Quanto maior o número de
visitantes, maior a probabilidade do estabelecimento de comunidades virtuais que
potencialmente comprarão o que os anunciantes daquele site têm para vender. Assim como
a televisão, o rádio e a mídia impressa, o portal público estabelece um relacionamento
unidirecional com seus visitantes e constitui-se em uma mídia adicional para o marketing
de produtos."
Segundo Dias (2001), o portal corporativo "tem o propósito de expor e fornecer informações
específicas de negócio, dentro de determinado contexto, auxiliando os usuários de sistemas
informatizados corporativos a encontrar as informações de que precisam para fazer frente aos
concorrentes".
Segundo Correa (2001 apud BARBOSA 2003), são descritos quatro tipos de portal:
Portal básico ou Primary portals: aqueles que resultaram da evolução dos mecanismos de
busca;
Micro Portais, Microportals ou Weblogs: portais construídos pelo usuário, com nível total
de personalização. Segundo Barbosa (2003), Weblogs, "são simplesmente diários, onde o
autor registra suas ações, inquietações, reflexões e descobertas, ou pode tratar de qualquer
assunto considerado relevante pelo seu autor". Esses diários são disponibilizados a todos
internautas na Web por portais/servidores gratuitamente.
14
Portal corporativo ou Enterprise Information Portals (EIP): "Espaço de integração dos
sistemas corporativos, com segurança e privacidade dos dados corporativos. Além de uma
plataforma mais confortável, o portal pode constituir-se em um verdadeiro ambiente de
trabalho e repositório de conhecimento para a organização e seus colaboradores" (CEM,
2003). O portal corporativo é considerado segundo Dias (2001), como uma evolução do uso
das Intranets, incorporando, a essa tecnologia, novas ferramentas que possibilitam
identificação, captura, armazenamento, recuperação e distribuição de grandes quantidades de
informações de múltiplas fontes, internas e externas, para os indivíduos e equipes de uma
instituição.
Portal vertical ou Vortal: Para Lima (2004), o portal vertical:
"é um website que fornece informações e recursos para uma audiência específica, com o
serviço focado nas preferências dos consumidores. Os portais, tipicamente, fornecem
notícias, pesquisas e estatísticas, instrumentos para debates, newsletter, ferramentas online
e muitos outros serviços que educam os usuários de um determinado segmento. Os portais
verticais são naturais construtores de comunidades".
Vortal foi um conceito inicialmente desenvolvido nos Estados Unidos, com o objetivo de se
criar comunidades de usuários de Internet com interesses comuns (CEM, 2003).
Comparando os conceitos das autoras Dias (2001) e Correa (2001), verifica-se o conceito de
Portal Corporativo que é compartilhado por ambas as autoras. Verifica-se também que o chamado
Portal Público por Dias é o mesmo Portal Básico citado por Saad Correa. Essa categoria de portal é
amplamente conhecida pelo público, porém, por serem genéricos, a localização das informações
buscadas pode requerer um tempo e conhecimento que muitos usuários não dispõe. Para solucionar
esse problema, surgiram os Vortais. Nesta categoria, Barbosa (2003) diz que pode encaixar, como
variante, o Portal Regional ou Portal Local, pela relação direta entre comunidade e conteúdo, já que
foca a sua atuação no atendimento da demanda de informações e serviços direcionados a uma
determinada região, focando, portanto, na segmentação. "Entre conteúdo, notícias e serviços, como
classificados, guia de compras e fórum de debates, o portal deve apresentar espaço para tirar
dúvidas, e-commerce, turismo, lazer e cultura, desde que não fuja do segmento proposto" (A
NOTICÍA, 2004).
O fato dos portais verticais reunirem, num único endereço, serviços e informações sobre
determinada área ou dirigem-se a um público específico, os diferenciam dos outros portais de
conteúdo chamado horizontal, que possuem como característica principal focar o seu modelo de
15
negócio em grandes audiências oferecendo a maior gama possível de serviços e informações, como
os portais públicos (LIMA, 2004).
2.4. WEB SERVICES
Um Web Service é uma aplicação de software que pode ser acessada remotamente usando
diferentes linguagens baseadas em XML. Normalmente um Web service é identificado por uma
URL (Uniform Resource Locator), exatamente como qualquer site Web (POTTS e KOPACK,
2003).
“Os Web Services são na essência interoperabilidade conectando programas e aplicações a
outros programas e aplicações, especialmente quando estes são desenvolvidos usando
diferentes linguagens, ferramentas ou plataformas. A tecnologia chave para esse fim, o
XML (Extensible Markup Language), tem todo um potencial de implementação e
integração com a tecnologia J2EE” (OLIVEIRA, 2004).
A tecnologia de Web Services permite que aplicações também se comuniquem. Ou seja, o
conteúdo pode ser transmitido através da Internet, por um Web Service, e recebido por uma
aplicação remota, pela qual os dados podem ser utilizados de variadas maneiras: processados e
exibidos em uma página da Internet, em uma aplicação desktop, ou em um dispositivo móvel. Neste
sentido, pode-se fazer uma analogia à orientação a objeto tradicional, sendo que os Web Services
são utilizados da mesma maneira que classes, no cliente, com a diferença que, em se tratando de
Web Services, os métodos podem ser acessados remotamente (AMUNDSEN, 2002 apud MORELLI
NETO, 2003).
“Um Web Service é um sistema de software projetado para suportar interação máquina-amáquina sobre uma rede. Ele tem uma interface descrita em um formato processável por
máquina (especificamente WSDL). Outros sistemas interagem com o Web Service em uma
maneira aconselhada por esta descrição usando mensagens SOAP, tipicamente
transportadas usando HTTP (Hipertext Transfer Protocol) com uma serialização XML em
conjunção com outros padrões relacionados à Web” (OLIVEIRA, 2004).
Segundo Oliveira (2004), alguns conceitos importantes dos Web services são:
SOAP (Simple Object Access Protocol): É o protocolo que faz a comunicação dos Web
Services. É um padrão de comunicação que trabalha com os dados no formato XML,
utilizando o protocolo HTTP para transportar dados.
WSDL (Web Services Description Language): Fornece a descrição das relações dos Web
Services detalhadamente no formato XML.
16
UDDI (Universal Description, Discovery and Integration): são as "listas dos classificados"
dos Web Services e possibilita uma forma padrão, rápida e fácil de encontrar Web Services
que sejam de acordo com seus interesses.
Devido ao fato de XML e Java trabalharem de maneira tão coesa juntas, ambas tecnologias
aos poucos se tornaram um ponto central para os Web services. Em Java, já na versão J2EE 1.3,
eram encontrados todos os recursos necessários para infra-estrutura de Web Services. A versão atual
(1.4, de 2004), apresenta integração nativa com Web Services (OLIVEIRA, 2004).
Destacam-se APIs como: JAXP (Java API for XML Processing), para leitura, criação,
manipulação, transformação de XML, e JAXB (Java API for XML Binding), que mapeia classes
Java a documentos XML. As APIs para XML e por conseqüência para Web Services,
complementam as APIs da plataforma J2EE APIs. O Java Web Services Developer Pack (Java
WSDP) disponibiliza todas essas APIs em um único pacote, facilitando assim a implementação na
plataforma da interoperabilidade (ibidem).
Conforme Tood e Szolkowski (2003) com o surgimento da tecnologia de portal, os Web
services se tornarão cada vez mais essenciais para as aplicações web. Exemplo disso são os portais
que oferecem front-ends ricos em recursos Web, permitindo que os usuários interajam com preços
de ações, previsões meteorológicas, grupos de discussões, horários de vôo ou o que for, tudo a partir
de um home page principal.
A Figura 6, mostra de uma forma simplificada o funcionamento de um Web service.
17
Figura 6. Funcionamento simplificado de um Web service
Fonte: Ayala et al., (2002 apud MORELLI NETO, 2003).
O objetivo dos Web Services é a comunicação aplicação para aplicação através da internet.
Mais especificamente, essa comunicação é realizada com a idéia de facilitar a integração de
aplicação empresarial (EAI - Enterprise Application Integration) e o comércio eletrônico,
particularmente de empresa para empresa (POTTS e KOPACK, 2003).
Segundo Ayala et al. (2002 apud MORELLI NETO 2003), são inúmeras as vantagens do
uso de Web Services, sendo as mais importantes: interoperabilidade, eficiência de implementação,
reciclagem de código e modularidade.
Os Web Services levam vantagens em relação as outras soluções devido ao fato de
trabalharem com os dados no formato XML, o que lhe dá uma alta flexibilidade, sendo o XML
texto puro. Com isso podendo-se trabalhar em qualquer plataforma e com qualquer linguagem de
programação que suporte XML (POTTS e KOPACK, 2003).
2.4.1. XML
A XML é um padrão do W3C para representação de dados. Possui um formato simples e
muito útil para o intercâmbio de dados, o que é conseguido através da característica de marcação da
linguagem. Uma característica marcante na XML é a possibilidade de definição de novas
18
linguagens de marcação. Isto é possível pelo fato de as tags de marcação poderem ser definidas pelo
usuário. Por isto, pode-se dizer que dados semi-estruturados são bem representados pela XML
(XML, 2004).
A XML fornece uma maneira padrão de codificar o conteúdo e, mais especificamente, uma
maneira de criar estruturas de dados flexivelmente. A XML usa a metáfora das marcas de elementos
para marcar conteúdo tomando como base um conjunto de regras que o autor do documento criou
(PITS-MOULTIS e KIRK, 2000).
Os documentos XML são formados por unidades de armazenamento chamados entidades,
que contêm dados analisados sintaticamente ou não. Os dados analisados sintaticamente são
constituídos por caracteres, alguns dos quais formam dados de caracteres e parte dos quais formam
a marcação. A marcação codifica uma descrição do armazenamento e da estrutura lógica do
documento. A XML fornece um mecanismo para impor restrições no layout de armazenamento e da
estrutura lógica (TESCH JÚNIOR, 2002).
A diferença entre o HTML (HyperText Markup Language) e a XML é que as tags do HTML
servem para a apresentação de dados, enquanto as tags do XML têm por finalidade descrever os
dados. Por exemplo, um documento XML descreve o dado como o nome do empregado, o sexo e a
idade. O dado é descrito pela criação de tags compreensíveis facilmente, sendo que essas tags
auxiliam na criação de documentos bem formatados. A XML é eficaz na troca de dados
estruturados entre aplicações desde que os documentos XML possuam uma estrutura definida que a
qualifique como um documento bem formatado (AYALA et al., 2002 apud MORELLI NETO,
2003).
A XML em si, é simples. O que a torna poderosa são as tecnologias que são utilizadas junto
à linguagem. Uma vez que se tem um documento estruturado em XML, como mostra a
Figura 7, é
possível utilizar ferramentas específicas, conhecidas como padrões companheiros, para manipulá-lo
da forma que se deseja (TESCH JÚNIOR, 2002).
19
Figura 7. Exemplo de um documento XML
2.4.1.1. Namespaces
Namespaces (espaços identificadores de nomes), tem como objetivo determinar o escopo
para os elementos declarados no documento e disponibilizar contêiners para os nomes usados
dentro de um documento (TESCH JÚNIOR, 2002).
Os namespaces são URI’s (Uniform Resource Identifiers), e determinam o contexto para os
tipos de elementos e nomes de atributos usados nos documentos XML. A grande parte dos
namespaces são escritos usando o formato de um URL (ibidem).
Os namespaces são case sensitive e são declarados através da xmlns, que significa que ele é
o namespace default. Utiliza-se prefixos após o nome xmlns para se poder obter novos namespaces
(ibidem).
2.4.1.2. XML Schemas
Um XML Schema define como um conjunto de dados pode-se parecer, eles contêm
informações sobre como os documentos XML que se ligam a ele devem ser estruturados (TESCH
JÚNIOR, 2002).
Segundo Tesch Júnior (2002), os documentos XML não precisam estar associados a um
schema. Quando isso acontece e o documento está escrito conforme os padrões XML diz-se que ele
é um documento bem-formado. Se o XML bem-formado possuir um schema associado então ele é
um documento XML válido.
20
2.4.2. SOAP
O protocolo SOAP é um padrão aberto que foi concebido em 1999, como uma
recomendação do W3C, originado da proposta conjunta da Microsoft, IBM e Userland.com, entre
outras empresas, sendo baseado nas especificações da XML-RPC, criada por David Winer, da
Userland.com, em 1998 (AMUNDSEN, 2002 apud MORELLI NETO, 2003).
O SOAP não é um produto que foi criado e vendido por um fornecedor, mas sim um
documento que descreve as características de um software. Ele é definido em um alto nível de
abstração para que quaisquer combinações de sistema operacional e linguagem de programação
possam criar suas especificações com o SOAP (POTTS e KOPACK, 2003).
A problemática a ser solucionada pelo SOAP baseia-se no fato de que, em se tratando de
aplicações Web convencionais, os dados transportados que eram padronizados, com o uso do
protocolo HTTP, eram apenas a URL, o HTTP (GET ou POST) e o cabeçalho HTTP. As demais
informações dependiam das estruturações específicas de cada servidor Web. Tratando-se de
comunicações entre aplicações de diferentes plataformas, existe a necessidade de um “idioma”
comum, para que seja possível a comunicação entre os servidores. Assim, o SOAP funciona como
este “idioma” comum, já que seu objetivo básico é utilizar a XML como forma de descrever
informações de bibliotecas de tipos, possibilitando a comunicação entre duas extremidades, dois
servidores, sem a dependência de sistemas operacionais específicos (AMUNDSEN, 2002 apud
MORELLI NETO, 2003).
O objetivo do SOAP é descrever um formato de mensagem que não esteja vinculado a
qualquer arquitetura de hardware ou software, mas que transmita uma mensagem de qualquer
plataforma para qualquer outra plataforma de uma maneira inequívoca (POTTS e KOPACK, 2003).
A arquitetura dos Web services se baseia no envio de mensagens XML em um formato
SOAP específico. O SOAP é uma especificação que define uma gramática XML para o envio e a
resposta de mensagens que são recebidas em outras partes (ibidem).
O SOAP permite passar dados sem informações de tipos de dados. Sendo que o padrão
usado é string, caso não seja especificado nenhum tipo (ibidem).
21
2.4.2.1. Mensagem SOAP
O que tem chamado a atenção para o SOAP é sua simplicidade. Uma mensagem SOAP,
conforme mostra a Figura 8, é composta por 2 partes obrigatórias, o envelope SOAP e o corpo
SOAP, e ainda uma parte opcional, o cabeçalho SOAP (POTTS E KOPACK, 2003).
Figura 8. Formato da mensagem SOAP
Fonte: Potts e Kopack (2003)
2.4.2.1.1. Envelope
Um envelope é o elemento base do documento XML representando a mensagem. O
envelope pode conter declarações de namespaces e também de atributos adicionais (BOX et al.,
2000 apud MORELLI NETO, 2003). A string xmlns é o namespace utilizado para identificar todas
as
tags
a
fim
de
evitar
conflitos
de
nomes
de
tags.
A
string
“http://schemas.xmlsoap.org/soap/envelope/” parece uma URL de um site normal. Porém, ela é uma
string que indica a versão do SOAP que se está utilizando. O Web service que recebe essa
requisição pode olhar essa string e verificar se ele é capaz de se comunicar utilizando essa versão do
SOAP (POTTS e KOPACK, 2003).
2.4.2.1.2. Corpo (Body)
O elemento corpo disponibiliza um mecanismo simples para a troca de informações
obrigatórias, também chamado de payload, destinado ao receptor da mensagem. Normalmente, o
payload é uma chamada de método a um computador remoto, ou simplesmente um documento
XML que está sendo transferido (ibidem). O elemento corpo deve ser o primeiro elemento após o
cabeçalho. Caso não tenha sido definido um cabeçalho, então o elemento corpo deve ser o primeiro
22
elemento da mensagem. Todos os elementos filhos do elemento corpo são chamados de body
entries (entradas). Cada entrada é codificada independentemente dentro do elemento corpo (BOX et
al., 2000 apud MORELLI NETO, 2003).
O formato do corpo é controlado por quem estiver criando um novo web service. Um
documento XML especial é criado para descrever como seria uma mensagem válida a um serviço e
de que forma uma resposta válida assumiria (POTTS e KOPACK, 2003).
2.4.2.1.3. Cabeçalho (Header)
O elemento cabeçalho é opcional em uma mensagem SOAP, mas se for definido deve ser o
primeiro elemento filho a aparecer no envelope SOAP (ibidem). O Cabeçalho é um mecanismo
genérico que adiciona características à mensagem SOAP. O uso típico do envelope seria para
autenticação, gerenciamento de transações, entre outros (BOX et al., 2000 apud MORELLI NETO,
2003).
Dois elementos são associados ao elemento cabeçalho: mustUnderstand e Actor.
O atributo actor define o final dos elementos no cabeçalho e especifica a URI do
intermediário no qual a informação do cabeçalho SOAP é o alvo (AYALA et al., 2002 apud
MORELLI NETO, 2003).
O atributo mustUnderstand é utilizado para indicar se a entrada do cabeçalho deve ser
processada. Este atributo assume um valor binário, e caso não seja definido, o atributo assume o
valor (1) (BOX et al., 2003 apud MORELLI NETO, 2003).
2.4.2.1.4. Falhas
O SOAP define um elemento para o corpo que é o fault (falha), utilizado para transmitir
erros e/ou informações dentro da mensagem SOAP, ou seja, comunicar que um problema ocorreu
na tentativa do processamento da requisição enviada ao Web Service (POTTS e KOPACK, 2003).
Se presente, o elemento falha deve aparecer no corpo da mensagem não mais que uma vez
(AYALA et al., 2002 apud MORELLI NETO, 2003).
Segundo Potts e Kopack (2003) e BOX et al. (2000 apud MORELLI NETO (2003), o
elemento falha define os quatro elementos descritos a seguir:
23
•
faultcode: Esse elemento é exigido pela especificação. Ele contém a informação que
indica o tipo do erro, que é destinada a aplicação, não podendo ser vista pelo usuário
final. Quatro tipos de faultcode genéricos são definidos pela especificação: server,
client, versionMistach e mustUnderstand;
•
faultstring: Este elemento é a informação contida no faultcode, de uma forma legível
para o usuário final.
•
faultactor: Este elemento é opcional e informa quem gerou a falha dentro do caminho
da mensagem;
•
detail: Esse elemento é destinado a conter o máximo de informações possíveis sobre
o estado do servidor no momento da falha. Ele normalmente contém os valores das
variáveis no momento da falha.
2.4.3. WSDL
Segundo Potts e Kopack (2003), um documento WSDL (Web Services Description
Language) é um documento XML que fornece todas as informações para se conectar a um Web
service. Ele também possui algumas informações de que se precisa para avaliar se o Web service
pode satisfazer as necessidades do cliente. Um arquivo WSDL é como um contrato entre o cliente e
o serviço, pois efetiva a comunicação entre as duas partes (AYALA et al., 2002 apud MORELLI
NETO, 2003). Na
Figura 9, é mostrada as operações básicas do WSDL.
Qualquer programa que queira usar um Web service utiliza o WSDL para descobrir como
invocá-lo. Para isso o autor do Web service cria o documento WSDL manualmente ou usando
alguma ferramenta que o gere. Ele publica enviando-o (ou seu URL) a um serviço de diretório,
também chamado de registro, UDDI (Universal Discovery Description and Integration) (POTTS e
KOPACK, 2003). O cliente requisitará o serviço através de uma solicitação SOAP (AYALA et al.,
2002 apud MORELLI NETO, 2003).
24
Figura 9. Operações básicas que usam a WSDL
Fonte: Potts e Kopack (2003)
Um documento WSDL é sudividido em duas partes, as descrições concretas e abstratas, que
também são chamadas de descrições funcionais e não-funcionais respectivamente. A descrição
concreta é composta dos elementos que fazem o vínculo entre o cliente e o serviço, e já a descrição
abstrata é composta dos elementos que fazem a descrição das capacidades do Web service (POTTS
e KOPACK, 2003).
Segundo Potts e Kopack (2003), os quatro elementos abstratos que podem ser definidos em
um documento WSDL são: types, message, operation, portType. E os três elementos concretos são:
service, port, binding.
2.4.3.1. Elemento definitions
Definitions é o elemento raiz em um documento WSDL, pois ele que define o nome do Web
service e contém os elementos para especificar o targetNamespace, bem como diversos namespaces
(POTTS e KOPACK, 2003). O targetNamespace é uma convenção XML Schemas que permite ao
documento WSDL referenciar a si próprio (CERAMI, 2002 apud MORELLI NETO, 2003).
Na Figura 10, existe um namespace padrão, o xmlns="http://stevepotts.com/customer.xsd”,
que significa que todos os elementos sem prefixo namespace, como message e portType, serão
assumidos como parte do namespace WSDL (ibidem).
25
Figura 10. Exemplo de declaração de um definitions de um documento WSDL
Fonte: Potts e Kopack (2003)
2.4.3.2. Elemento Types
O elemento types é utilizado para descrever todos os tipos de dados utilizados no WSDL.
Caso o serviço utilize apenas tipos simples, a definição do elemento types passa a não ser
obrigatória (POTTS e KOPACK, 2003). A Figura 11 traz um exemplo da definição de um elemento
types.
Figura 11. Exemplo de definição de um types
Fonte: Potts e Kopack (2003)
Na Figura 11, tem-se a declaração do elemento customer, um complexType, que foi
definido. A seqüência dos elementos, <xsd:sequence>, indica que todos os elementos definidos
devem ser fornecidos exatamente nessa seqüência, caso não fosse preciso teria que ser usado a tag
<xsd:all>, e o namespace “xsd:string”, indica que todos os campos são do tipo string.
26
2.4.3.3. Elemento message
As mensagens (message) são um elemento importante no WSDL, pois são elas que fazem a
comunicação em um único sentido de um computador para outro. É considerado um elemento
abstrato, pois descreve a mensagem logicamente ao invés de fisicamente (POTTS e KOPACK,
2003). A
Figura 12, mostra a declaração de um elemento message.
Figura 12. Exemplo de definição de um message
Fonte: Potts e Kopack (2003)
2.4.3.4. Elemento operation e portType
O elemento operation (operação) é análogo a chamada de um método do Java, a única
diferença é que ele permite três mensagens em uma operação: entrada, que define os dados que o
Web service espera receber; saída, define os dados que o Web service espera enviar; e falha, que
define as mensagens de erro que podem se retornadas pelo Web service (ibidem).
Segundo Potts e Kopack (2003) e Cerami (2002) apud Morelli Neto (2003), o WSDL
suporta quatro tipos de operações: Requisição/resposta, um cliente faz uma requisição e o Web
service responde; Solicitação/resposta, o Web service envia uma mensagem ao cliente e ele
responde; Sentido único, O cliente envia uma mensagem e não espera uma resposta do Web service;
e Notificação, quando um Web service envia uma mensagem ao cliente e não espera uma resposta.
O elemento portType é o conjunto de operações que um Web service pode aceitar. Ele
fornece informações sobre todas as operações que o cliente pode obter de um Web service (POTTS
e KOPACK, 2003).
A
Figura 13, mostra como é a sintaxe de um operation do tipo requisição/resposta e do
portType. Se a mensagem fosse do tipo solicitação/resposta o elemento output apareceria antes do
input, e se não houvesse nenhum output seria uma mensagem de sentido único.
27
Figura 13. Sintaxe do operation e portType
Fonte: Potts e Kopack (2003)
2.4.3.5. Elemento binding
Este elemento possui duas finalidades. Serve como vínculo entre os elementos abstratos e
concretos no documento WSDL, e fornece um contêiner para informações como o protocolo e o
endereço do Web service (POTTS e KOPACK, 2003).
Figura 14. Sintaxe do elemento binding
Fonte: Potts e Kopack (2003)
A Figura 14 mostra alguns atributos do elemento binding como o transport que indica que o
transporte será feito por SOAP HTTP. O atributo style indica o estilo completo do formato da
mensagem SOAP, que pode ser rpc ou document. Se for rpc o documento será enviado em formato
XML e se for document será enviado sem nenhuma modificação.
2.4.3.6. Elementos service e port
O elemento service é um contêiner para todas as portas que são representadas por um
documento WSDL. As portas de um serviço não podem ser encadeadas, pois a porta de saída é a
28
entrada para outra. O elemento port é um elemento filho do service que indica qual a porta e o ip do
Web service. A Figura 15, mostra como é a sintaxe dos elementos service e port.
Figura 15. Sintaxe dos elementos service e port
Fonte: Potts e Kopack (2003)
2.4.4. UDDI
Os Web services podem ser eficazes para reduzir o custo de fazer negócios facilitandoa
transmissão de dados de um computador para o outro. A possibilidade de conquistar novos clientes
ou desenvolver novos produtos requer mais do que o SOAP e a WSDL; ela requer um registro
(POTTS e KOPACK, 2003).
Um registro, é um banco de dados de serviços, e é simplesmente um passo revolucionário
pois a idéia de que um cliente potencial usaria os recursos de um registro de maneira semelhante à
de como usamos mecanismos de busca na internet. Digita-se alguma coisa do que se está
procurando e aparece uma lista dos possíveis serviços. Refinariar-se-ia a pesquisa até chegar o mais
próximo possível do que se está procurando (ibidem).
O UDDI (Universal Discovery, Description, and Integration) é um padrão de registro que
emergiu assumindo um papel importante nessa área. Ele é fruto do consórcio de centenas de
empresas, entre elas Intel, Microsoft, Fujitsu, Sun, entre outras (ibidem).
O UDDI é um mecanismo padronizado e transparente para descrever serviços, ele descreve
métodos simples para solicitar serviços, e especifica um registro central acessível dos outros. Outro
recurso é que os registros são baseados em um modelo confederado pelo qual copiam um dos
outros. Ou seja, quando acontece um registro de um Web service, os outros registros receberão
informações desse Web service que foi registrado na próxima vez que fizerem a sincronização
(ibidem).
29
O motivo pelo qual o UDDI é aceitável por todos os consorciados é que ele é construído
sobre os mesmos padrões do SOAP (POTTS e KOPACK, 2003).
Todas as APIs do UDDI são definidas em XML, inseridas em envelopes SOAP e enviadas
por HTTP. Programar com a API do UDDI é o mesmo que programar qualquer Web service, só
precisa-se saber codificar as mensagens no formato SOAP. No mundo Java, existe a UDDI4J que é
uma biblioteca comum para acessar os registro UDDI.
2.5. FERRAMENTAS PARA O PROJETO
A Web vem sendo um ambiente muito visado pelas empresas para fazer negócios, tendo em
vista a agilidade no processamento das informações (FEDOROV et al, 1998).
Segundo Castagnello et al. (2000), um site moderno não é formado só por um servidor Web,
ele também possibilita o armazenamento e consulta de dados, processamento de pedidos, geração
de documentos com informações apropriadas. Muitas são as opções para o desenvolvedor, não se
deve apenas considerar a tarefa de criar um site dinâmico, mas sim ter certeza de que poderá
continuar a fornecer o conteúdo independentemente das mudanças nas tecnologias tanto de
hardware como de software.
O objetivo deste capítulo é apresentar as características das ferramentas utilizadas para a
implementação do projeto.
2.5.1. PHP
No ano de 1994, um consultor de empresas, chamado Ramus Ledorf, enviava o endereço
eletrônico que continha o seu currículo, para os mais diversos empregadores. Devido a necessidade
que ele tinha de saber quem eram esses empregadores que estavam acessando sua página, ele
desenvolveu um script que colhia as informações sobre os seus visitantes, e media o número médio
de acessos. Para impressionar os empregadores, ele resolveu mostrar esses dados, e chamou todo
esse código de Personal Home Page Tools, e nascia então o PHP Tools (ANSELMO, 2002).
PHP, um acrônimo de PHP Hypertext Preprocessor (Pré-processador de hipertexto PHP), é
uma linguagem de script Open Source de uso geral, muito utilizada e especialmente guarnecida para
o desenvolvimento de aplicações Web embutida dentro do HTML (CASTAGNELLO, 2001).
30
O desenvolvimento do PHP é focado nos scripts do lado servidor. A melhor coisa em usar o
PHP está na facilidade e na quantidade de recursos oferecidos. Basicamente, qualquer coisa pode
ser programada com PHP, como coletar dados de um formulário, gerar páginas dinamicamente ou
enviar e receber cookies (ANSELMO, 2002).
De acordo com Martini (2003 apud BERNARDO JÚNIOR 2004), o PHP possui as
seguintes vantagens:
Linguagem de script de fácil utilização e com grande poder de interatividade;
Excelente velocidade de execução;
Ligação com diversos bancos de dados, como: MySQL, mSQL, SyBase, SQLServer, Oracle,
Informix e qualquer outro banco de dados via ODBC (Open Database Conectivity);
Suporta por meio de APIs e interfaces, um vasto conjunto de ferramentas e plataformas; e
Algumas ferramentas e protocolos comuns suportadas pelo sistema PHP são: IMAP, SMTP,
SNMP, POP3, HTTP, XML.
2.5.2. PostgreSQL
O PostgreSQL teve seu início na Universidade de Berkeley, em 1986. É um banco de dados
relacional e orientado a objetos, versátil, seguro, de grande porte e gratuito (POSTGRESQL, 2004).
É possível utilizá-lo em vários sistemas operacionais, inclusive o Windows, basta somente
este sistema operacional ser compatível com as especificações POSIX (Portable Operation System
Interface) (POSTGRESQL, 2004).
O uso deste banco é muito amplo, pois várias empresas perceberam que podem criar
soluções de alta confiabilidade sem a necessidade de altos custos na aquisição de licenças (ibidem).
Ele conta com conexões SSL, MVCC (Multi Version Competition Control), triggers,
integridade referencial, além de ser compatível com várias linguagens como PHP, Java, Python,
Perl, entre outras. (ibidem)
O PostgreSQL é um banco que suporta um grande volume de dados, isso é verificado pela
Tabela 1, que mostra os limites deste banco.
31
Tabela 1. Limites do banco de dados PostgreSQL
Tamanho Máximo
Dados em uma base
Uma tabela
Uma linha
Um campo
Uma linha por tabela
Uma coluna por tabela
Um índice por tabela
Limite
Ilimitado
16 Tb em todos os sistemas operacionais
1,6 Tb
1 Gb
Ilimitado
250 a 600
Ilimitado
Fonte: PostgreSQL (2004)
Como foi criado para ter vários recursos e suportar tarefas complexas, é mais indicado em
aplicações com grandes volumes de dados ou que possuam informações críticas, onde o banco é
grande e possui um grande número de tabelas.
2.6. CONSIDERAÇÕES
O Capítulo 2, foi parte importante neste trabalho, pois foi através desse capítulo que pode-se
buscar e analisar tanto o problema quanto as ferramentas para a solução dos problemas encontrados.
As necessidades do Laboratório de Climatologia, foram descritas e a partir disso a solução
adotada foi a criação de um sistema de informação que será um Portal, utilizando a ferramenta PHP,
e o banco de dados PostgreSQL. O Portal sobre os dados meteorológicos conta com as informações
meteorológicas fornecidas pelo laboratório.
Além de disponibilizar os dados através do portal, o laboratório agora conta também com
um Web service, que disponibiliza os dados providos pela estação meteorológica, no formato XML.
O estudo sobre a XML foi de fundamental importância, pois a XML é a base dos Web
services, e é através dela que os protocolos SOAP, WSDL e o UDDI são descritos.
Para a construção do Web service foi utilizado o NuSOAP é um pacote de classes para
desenvolvedores criarem e consumirem Web Services; Para sua utilização não é necessário
nenhuma biblioteca especial do PHP, o que possibilita o que todos os desenvolvedores possam
utiliza-la independente de plataforma.
O NuSOAP dá suporte aos arquivos WSDL. Podendo-se conectar a um servidor e criar uma
instancia local ou remota do WSDL.
32
3. DESENVOLVIMENTO
O desenvolvimento deste projeto teve como objetivo, organizar e gerenciar os dados do
Laboratório de Climatologia, de modo que suas atividades pudessem ser feitas de maneira
automatizada. O Sistema de Divulgação de Dados Meteorológicos primeiramente organizou todos
os dados do laboratório em um banco de dados, acabando então com o problema da ausência de um
acervo histórico para a previsão do tempo, previsão marítima e fases da lua. Depois isso, se
reformulou todo o site do laboratório tornando-o dinâmico, e assim eliminando os modelos usados
anteriormente ao sistema proposto. O sistema conta com uma área administrativa onde os
responsáveis pelo laboratório podem fazer a manutenção do site, e uma área pública onde os
internautas podem ver as informações disponibilizadas pelo Laboratório.
Após terem sido executados os passos descritos acima, foi implementado um Web service
para disponibilizar os dados que são coletados pela estação meteorológica. Através desse Web
service, o solicitante do serviço apenas entrará com o parâmetro do dado pretendido, o período que
o interessa, sua identificação, e então receberá os dados em formato XML, que possibilitará a ele
usar os dados da maneira que melhor o convier.
As seções seguintes apresentam o Sistema de Divulgação de Dados Meteorológicos, seu
projeto e implementação.
3.1. REQUISITOS DO SISTEMA
3.1.1. Requisitos Funcionais
Os requisitos funcionais que o sistema contempla são:
•
O sistema deve permitir a inserção, alteração e exclusão dos dados da previsão do
tempo;
•
O sistema deve produzir relatórios dos dados meteorológicos;
•
O sistema deve permitir que os visitantes possam visualizar os dados meteorológicos e
imagens de satélite;
•
O sistema deve permitir que os clientes possam obter os dados meteorológicos através
do Web service;
33
•
O sistema deve fazer a importação das imagens vindas de satélites;
•
O sistema deve disponibilizar um espaço para críticas e sugestões;
•
O sistema deve permitir inserção, alteração e exclusão de usuários;
•
O sistema deve permitir inserção, alteração e exclusão de recados;
•
O sistema deve permitir inserção, alteração e exclusão dos dados da previsão marítima;
•
O sistema deve ter um mecanismo de importação para as informações do pôr do sol; e
•
O sistema deve possui um mecanismo de importação dos dados da estação
meteorológica.
3.1.2. Requisitos Não Funcionais
Os requisitos não funcionais que o sistema contempla são:
•
O sistema deve ser compatível com browser Explorer 5.0;
•
As páginas web não devem levar mais de 15 seg. para serem carregadas no
navegador durante o uso normal do sistema;
•
O Web Service deve ser implementado com PHP;
•
O sistema deve utilizar banco de dados PostgreSQL;
•
Para a implantação do sistema deve ser disponibilizado um servidor;
•
O web site deve ser implementado usando a linguagem PHP; e
•
O Sistema deve possuir um mecanismo de segurança, para que os visitantes não
tenham acesso à administração do sistema.
3.1.3. Regras de Negócio
As principais regras de negócio que o sistema contempla são:
•
O período em que a estação meteorológica grava os dados no arquivo texto é de 45 minutos;
•
A previsão do tempo é para até 3 dias, sendo o primeiro dia o corrente;
34
•
Ao cadastrar a previsão para um dia, a previsão anterior deve ser mantida no banco de
dados; e
•
A estação está configurada para capturar imagens da América do Sul, e da parte Leste do
Globo, nos horários UTC das 0, 3, 6, 9, 12, 15, 18 e 21 horas.
3.2. DIAGRAMA DE ATIVIDADES
Os diagramas apresentados nas figuras 16 a 19 representam o funcionamento anterior ao
desenvolvimento do sistema proposto no presente trabalho bem como a situação encontrada após
sua implementação.
Na Figura 16, o diagrama de atividades mostra como os dados vindos da estação
meteorológica e da estação receptora de imagens de satélite eram tratados antes da implementação
do sistema proposto. Observa-se que a geração HTML era feita através de alguns programas
desenvolvidos por colaboradores do laboratório, que pegavam os dados e inseriam num modelo
HTML e depois faziam o FTP dos mesmos. Após a implementação, Figura 17, os dados são
armazenados em um banco de dados, ficando disponíveis para o site do sistema e para o
webservice.
De forma semelhante a Figura 18, apresenta o fluxo de atividades realizadas para as
previsões do tempo e marítima, antes da implantação do sistema. Observe que as previsões eram
feitas também usando modelos HTML, e que não eram armazenadas, sendo assim só se tinha as
previsões atuais que estavam online. Após a implementação do sistema proposto, o fluxo de
atividades para as previsões passa a ser conforme apresentado na Figura 19, o qual permite o
armazenamento do histórico das previsões de tempo e marítima.
35
Figura 16. Diagrama de Atividades da estação antes do sistema proposto
O diagrama apresentado na Figura 16 permite observar que alguns dados possuiam
histórico, porém nenhum deles é armazenado em um banco de dados e sim em arquivos do tipo
36
TXT. Também observa-se que o sistema trabalhava com modelos HTML e não com um site web
dinâmico.
Figura 17. Diagrama de Atividades das estações após o sistema proposto
37
Após a implementação do sistema, as informações que são geradas pela estação
meteorológica, não são mais armazenadas em arquivos texto, e sim em um banco de dados,
possibilitando um melhor aproveitamento das mesmas.
Figura 18. Diagrama de Atividades das previsões antes do sistema proposto
38
Como pode-se constatar as previsões eram realizadas de uma forma que seu histórico era
armazenado apenas no site, porém eram sempre substituídas pelo boletim mais atual, não se
obtendo assim um histórico dessas informações.
Figura 19. Diagrama de atividades das previsões após o sistema proposto
39
Seguindo o modelo adotado pelo Laboratório de Climatologia de fazer a previsões para os 3
próximos dias, após a implementação do sistema proposto os boletins das previsões são todos
armazenados no banco de dados, obtendo-se então um acervo histórico dos mesmos.
As Figuras 20 e 21 ilustram como era o processo realizado pelo Laboratório de Climatologia
para disponibilizar as informações e como ficou após a implementação do projeto.
Figura 20. Cenário anterior a implementação do sistema
A partir da Figura 20 pode-se perceber que o Laboratório funcionava da seguinte forma: a
estações geravam seus dados que através de softwares escritos nas linguagens C e Delphi e
planilhas do Excel eram tratados e a partir daí gerados modelos HTML que eram enviados via FTP
para o servidor e disponibilizados através do site da previsão do tempo.
Em paralelo o responsável pelo Laboratório de Climatologia realizava os boletins da
previsão do tempo, marítima, gráficos de temperatura, fases da lua, entre outros utilizando também
os softwares C, Delphi e planilhas do Excel que também era transformados em modelos HTML e
enviados via FTP para o site da previsão do tempo.
Através da figura percebe-se que não era utilizado um banco de dados, ou seja, muitas
informações eram perdidas, devido a sobreposição de arquivos que existia diariamente.
40
Figura 21. Cenário atual com a implementação do sistema
A Figura 21 retrata o funcionamento do Laboratório após a implementação do sistema que
ficou da seguinte forma. As estações geram seus dados que são enviados via FTP para o sistema de
informação. No sistema de informação esses dados são tratados pelo mecanismo de importação e
inseridos no banco de dados. O responsável pelo Laboratório paralelamente pode acessar á área
restrita (SiDMET) e fazer a manutenção dos dados que agora estão organizados em um banco de
dados realizando cadastros, alterações e exclusões. A partir das informações do banco de dados, os
dados são disponibilizados através do portal da previsão do tempo e também de web services (dados
meteorológicos e previsão do tempo).
3.3. FUNCIONALIDADES DO SISTEMA
O sistema proposto foi subdividido em quatro módulos: Armazenamento dos Dados,
Administração do sistema, Área pública e Web service, como mostra a Figura 22.
41
cd 3.1 Diagrama de pacotes
PCT01 - Armazenamento de dados
+ Estação meteorológica
PCT02 - Administração do sistema
+ Satélite
+ UC01.01 Armazena Imagens do Globo
+ Colaborador
+ UC01.02 Armazena Dados Meteorológicos
+ Professor
+ Por do Sol
+ UC02.01 Manutenção de Usuários
(from 3.2 Diagrama de casos de uso)
+ UC02.02 Faz Previsão do T empo
+ UC02.03 Faz Previsão Maritima
PCT04 - Webserv ice
+ UC02.04 Geração de Relatórios
+ Cliente
+ UC02.05 Login
+ UC04.01 - Solicita dados meteorológicos
+ UC02.06 Recados
+ UC02.07 Armazena Fases da Lua
+ UC02.08 Visualiza Criticas e Sugestões
(from 3.2 Diagrama de casos de uso)
+ UC02.09 T abuas da Maré
+ UC02.10 Região
PCT03 - Área pública
+ UC02.11 Áreas
+ Visitante
+ UC02.12 Estação
+ UC03.01 Visualiza Previsão do Tempo
+ UC02.13 Satélite
+ UC03.02 Consulta Previsão Maritima
(from 3.2 Diagrama de casos de uso)
+ UC03.03 Consulta Dados Meteorológicos
+ UC03.04 Consulta Imagens do Satélite
+ UC03.05 Consulta Por do Sol
+ UC03.06 Consulta Fases da Lua
+ UC03.07 Envia Criticas e Sugestões
+ UC03.08 Visualiza Recados
(from 3.2 Diagrama de casos de uso)
Figura 22. Diagrama de Pacotes dos casos de uso do sistema
No módulo armazenamento de dados, os dados da estação meteorológica através de
mecanismos desenvolvidos, são importados para o banco de dados, assim como as imagens de
satélite.
Na administração do sistema, os responsáveis pelo laboratório fazem a manutenção de todos
os dados desde o cadastramento de novos usuários até a leitura de sugestões e críticas enviadas por
visitantes do site. É neste módulo que são realizados
os boletins das previsões do tempo e
marítimas, gerados os relatórios do sistema, e também acessado o acervo históricos das previsões e
dos dados meteorológicos vindo do satélite e da estação meteorológica.
O módulo da área pública é onde os visitantes poderão usufruir dos serviços de previsões,
dados meteorológicos, imagens do satélite e também poderão enviar suas críticas e sugestões para
os profissionais do laboratório.
42
O quarto módulo trata do Web service, que disponibiliza os dados meteorológicos de um
certo período de tempo de interesse do solicitante em formato XML.
A seção seguinte detalha as funcionalidades de cada módulo do sistema, através dos casos
de uso.
3.4. DIAGRAMA DE CASOS DE USO
Os Casos de Uso facilitam o entendimento de um sistema pois eles são utilizados para
modelar o contexto de um sistema, subsistema ou classe. É uma das maneiras mais comuns de
documentar os requisitos do sistema, de delimitar o sistema, e de definir a sua funcionalidade
(FOWLER, 2000).
De acordo com as funcionalidades propostas, obteve-se os seguintes diagramas de caso de
uso, representados pelas figuras de 23 a 26 e nas tabelas de 2 a 5.
ud 01 - Armazenamento de Dados
UC01.01
Armazena
Imagens do Globo
Satélite
UC01.02
Armazena Dados
Meteorológicos
Estação meteorológica
Figura 23. Pacote Armazenamento de Dados
43
Tabela 2. Funcionalidades do pacote Armazenamento de Dados
Caso de Uso
Descrição
Armazena imagens do globo
Armazena uma imagem do globo a partir do satélite
Armazena dados meteorológicos Armazena os dados meteorológicos a partir da estação
meteorológica
ud PCT02 - Administração do Sistema
Por do Sol
UC02.07
Armazena Fases
da Lua
UC02.01
Manutenção de
Usuários
Colaborador
UC02.03 Faz
Prev isão Maritima
UC02.05 Login
Professor
UC02.12 Estação
UC02.08 Visualiza
Criticas e
Sugestões
UC02.11 Áreas
UC02.02 Faz
Prev isão do Tempo
UC02.13 Satélite
UC02.09 Tabuas
da Maré
UC02.06 Recados
UC02.10 Região
UC02.04 Geração
de Relatórios
Figura 24. Pacote da Administração do Sistema
Tabela 3. Funcionalidades do pacote Administração do Sistema
Caso de Uso
Manutenção de Usuários
Fazer previsão do tempo
Fazer previsão marítima
Geração de relatórios
Login
Recados
Armazena fases da lua
Visualiza críticas e sugestões
Tábuas da Maré
Região
Descrição
Permissão para manutenção de usuários do sistema
Permite a manutenção da Previsão do Tempo
Permite a manutenção da Previsão Marítima
Geração de Relatórios dos dados do sistema
Possibilita a entrada na parte administrativa do sistema
Manutenção de recados do sistema
Mecanismo de importação para as fases da lua
Possibilita a visualização e exclusão das críticas e sugestões
postadas no web site
Possibilita visualizar, editar e excluir as informações das Tábuas
da Maré
Possibilita visualizar, editar e excluir as informações das regiões
da previsão do tempo
44
Área
Possibilita visualizar, editar e excluir as informações das Áreas da
previsão marítima
Possibilita inserir, alterar e excluir dados para o por do sol
Manutenção das imagens do satélite
Manutenção dos dados da estação
Pôr do Sol
Satélite
Estação
ud PCT04 - Área pública
Visitante
UC03.03 Consulta
Dados
Meteorológicos
UC03.04 Consulta
Imagens do
Satélite
UC03.08 Visualiza
Recados
UC03.05 Consulta
Por do Sol
UC03.07 Env ia
Criticas e
Sugestões
UC03.02 Consulta
Prev isão Maritima
UC03.01 Visualiza
Prev isão do Tempo
UC03.06 Consulta
Fases da Lua
Figura 25. Pacote Área Pública
Tabela 4. Funcionalidades do pacote Área pública
Casos de Uso
Visualiza previsão do tempo
Consulta previsão marítima
Consulta dados meteorológicos
Consulta imagens do satélite
Consulta pôr do sol
Consulta fases da lua
Envia críticas e sugestões
Visualiza recados
Descrição
Possibilita o visitante obter a previsão do tempo para os 3
próximos dias
Possibilita o visitante obter a previsão marítima para os 3
próximos dias
Possibilita ao visitante consultar os dados meteorológicos
Possibilita ao visitante visualizar imagens de satélite do leste do
globo e da América do Sul
Possibilita ao visitante obter os horários do nascer e do pôr do sol
Possibilita ao visitante obter as informações das fases da lua
Possibilita ao visitante enviar criticas e sugestões para os
administradores do site
Possibilita ao visitante ter acesso a informações importantes
45
cd PCT04 - Webserv ice
UC04.01 - Solicita
dados
meteorológicos
Cliente
Figura 26. Pacote Webservice
Tabela 5. Funcionalidades do pacote Web service
Casos de Uso
Solicita dados meteorológicos
Descrição
Cliente obtém dados meteorológicos através do web service
A descrição completa dos casos de uso está nos Apêndices A,B,C e D.
3.5. DIAGRAMA DE CLASSES
O diagrama de classes é um diagrama que mostra um conjunto de classes, interfaces,
colaborações e seus relacionamentos, com o objetivo de permitir a visualização, especificação e
documentação de um modelo de sistema (FOWLER, 2000).
As classes utilizadas na implementação deste sistema fazem parte de um framework de
desenvolvimento utilizado pelo LCA (Laboratório de Computação Aplicada). A partir desse
framework foi desenvolvido todo o Sistema de Divulgação de Dados Meteorológicos
Tabela 6. Classes do Framework
Nome da Classe
htmlBase
htmlErro
htmlTempo
DBSQL
Db_Tempo
formBase
formDetalhe
formCadastro
formLista
Descrição
Classe abstrata para criar uma página web
Classe para mostrar as mensagens de erro na tela
Classe especializada de htmlBase para o sistema implementado
Classe abstrata para conexão a um banco de dados Postgres
Classe especializada para conexão a base de dados do sistema
Classe para criação de formulários em html
Classe especializada para detalhe dos dados
Classe especializada para cadastro dos dados
Classe especializada para listagem dos dados
46
A Figura 27, mostra o diagrama de classes do framework para este sistema. As classes
específicas do sistema implementado foram implementadas a partir da herança destas classes
básicas do framework.
Figura 27. Diagrama de classes do Framework
47
3.6. MODELAGEM DE DADOS
A modelagem de dados apresenta o modelo ER (Entidade Relacionamento) e a descrição das
tabelas utilizadas no banco de dados. A Tabela 7 fornece uma visão geral das tabelas do sistema. O
dicionário de dados está detalhado no Apêndice E.
Tabela 7. Descrição da tabelas utilizadas no sistema
Nome da tabela
ARQ_MOD
ARQUIVO
CONEXAO
MODULOS
OPERADORES
PERMISSOES
TB_AREA
TB_DADOS_MARITIMOS
TB_CONTATO
TB_DADOS_METEOROLOGICOS
TB_FASES DA LUA
TB_IMAGENS_SATELITE
TB_LOG
TB_POR_DO_SOL
TB_PREVISAO_MARITIMA
TB_PREVISAO_TEMPO
TB_RECADO
TB_REGIAO
TB_TABUA_MARE
TB_TIPO_IMAGEM
Descrição
Tabela que faz a relação entre os arquivos e os módulos
Tabela dos arquivos existentes no projeto
Tabela que contém o registro das conexões na área restrita
Tabela com os módulos do sistema
Tabela de usuários
Tabela com as permissões do sistema
Tabela com as áreas da previsão marítima
Tabela com os dados das áreas da previsão marítima
Tabela com as criticas e sugestões enviadas na área pública
Tabela que armazena os dados meteorológicos vindos da
estação meteorológica
Tabela que armazena as informações das fases da lua
Armazena as imagens recebidas pelo satélite
Faz a auditoria do sistema
Tabela que armazena as informações com os horários do pôr
do sol
Tabela que contem as informações das previsões marítimas
Tabela que contem as informações das previsões do tempo
Tabela que contém recados importantes que precisam ser
sabidos pelos usuários
Tabela com as regiões da previsão do tempo
Tabela com o nome e códigos dos portos
Tabela com os tipos das imagens vindas do satélite
3.7. IMPLEMENTAÇÃO
Esta seção aborda o funcionamento do sistema através da apresentação de suas telas, bem
como, as funções desenvolvidas a fim de atender as necessidades propostas à aplicação.
3.7.1. Área Restrita
A área restrita é o local, onde apenas os responsáveis pelo Laboratório de Climatologia e
pessoas autorizadas pelos mesmos acessam para fazer a manutenção dos serviços do sistema.
48
Na tela inicial, o usuário seleciona sua entrada digitando seu nome e sua senha, sendo assim
direcionado para o a tela principal onde pode escolher através do menu a ação desejada.
O sistema foi implementando seguindo um padrão para a visualização dos dados. Quando se
seleciona qualquer opção do menu é apresentada uma tela com a listagem de suas ocorrências, com
a opção de filtros de busca para selecionar dados específicos, conforme mostra a Figura 28.
Ainda na tela com a listagem das ocorrências existe a possibilidade da geração de relatórios
com um simples clique na opção “Gera PDF”.
Figura 28. Tela de listagem dos dados
Os detalhes das informações referentes aos itens listados podem ser visualizados através da
opção INFO, quando o sistema apresenta uma outra tela (Figura 29).
49
Caso seja escolhida opção Editar, é possível além de visualizar os detalhes do dado, excluir
o item selecionado.
Figura 29. Tela de detalhes de itens
Através deste padrão, todos os casos de uso foram implementados permitindo a consulta e
manutenção dos dados na área restrita do sistema.
Para fazer o cadastramento de novos dados, é preciso selecionar a opção Novo, que
apresenta uma tela com os campos necessários a serem preenchidos para a inserção do novo dado
no sistema. A Figura 30 ilustra como é feita a inserção dos dados para a previsão do tempo.
50
Figura 30. Tela de cadastro de dados
3.7.2. Área Pública
A área pública é o local onde os dados meteorológicos são disponibilizados para qualquer
pessoa que tenha interesse, sem restrições. A figura 31, mostra a tela inicial do sistema.
51
Figura 31. Home page do Laboratório de Climatologia
A área pública apresenta dados que são organizados dinamicamente, através de buscas no
banco de dados do sistema, apresentando-se, assim, as informações mais recentes.
A figura 32 mostra a tela da previsão do tempo, cujos dados foram cadastrados através da
área restrita do sistema, como demonstrado no item anterior.
52
Figura 32. Layout da previsão do tempo
3.7.3. Web Service
Esta seção aborda o funcionamento do Web Service o qual é composto nos módulos servidor
e cliente. O módulo servidor é o que interage com o banco de dados, através das solicitações SOAP
do cliente, respondendo conforme os métodos descritos no WSDL. O Apêndice F apresenta o
código fonte do WSDL.
Como o Web Service realiza suas função a partir do métodos descritos no WSDL, isto
implica que para se obter os dados do Web service precisa-se ter o conhecido do WSDL, não
importando então qual a linguagem será utilizada para fazer a conexão com o Web Service, apenas
que essa linguagem de programação suporte XML.
53
Dado o fato de que o módulo servidor foi implementado em PHP, a seguir será dado um
exemplo de como pode ser um módulo cliente, para acessar o Web service. O módulo cliente citado
a seguir também foi desenvolvido em PHP, mas nada impede que seja desenvolvido em outra
linguagem de programação.
O módulo cliente é composto de duas telas, conforme descrito a seguir.A Figura 33, mostra
a primeira tela do Web Service que é onde o cliente digita seu login, senha, período (data de início e
data de término) e seleciona o dado meteorológico desejado.
Figura 33. Tela de login para acessar o Web Service
Após a validação do usuário, é feita a solicitação para o módulo servidor através de
mensagens SOAP com os parâmetros digitados pelo cliente. O módulo servidor então faz a
solicitação ao banco de dados e retorna os dados solicitados na tela, como mostra a figura 34.
54
Figura 34. Tela de resultados do Web Service
A Figura 35, ilustra um exemplo de código fonte na linguagem de programação PHP para
uma solicitação do cliente ao Web Service.
Figura 35. Tela do código fonte de uma solicitação cliente ao Web Service
55
3.7.4. Importação de dados das estações
Dado o fato que a estação meteorológica armazena seus dados em arquivos texto, e tendo-se
um volume muito grande desses dados, torna-se inviável tratá-los neste formato. Sendo assim, foi
necessária a criação de um software Delphi para transmiti-los via FTP e de scripts em PHP, para
fazer a importação desses dados para o banco de dados.
Figura 36. Tela do software que faz FTP dos dados da estação
O software desenvolvido na linguagem de programação Delphi funciona da seguinte forma:
monitora o diretório onde são descarregados os dados da estação meteorológica e da estação de
captura de imagens verificado a existência de novos registros gerados pelas estações e a cada vinte
minutos esses dados são enviados para o sistema de informações e são tratados pelos scripts PHP.
Os scripts foram desenvolvidos para a importação dos dados meteorológicos, do pôr do sol e
para as imagens recebidas pelo satélite. Através desse mecanismo de importação foi possível tratar
os dados que se obteve um grande ganho em termos de qualidade e agilidade na obtenção de dados
meteorológicos.
56
4. CONSIDERAÇÕES FINAIS
Este projeto apresentou o Sistema de Informações para o Laboratório de Climatologia do
CTTMar, Univali. O desenvolvimento deste sistema contornou os principais problemas enfrentados
pela equipe do Laboratório no que diz respeito à organização, manutenção e divulgação de dados
meteorológicos da região litoral de Santa Catarina. Através da importação automática de dados da
estação meteorológica e de satélite, criação de um banco de dados e facilidades de manutenção de
dados e previsão meteorológica e marítima, o sistema possibilita o armazenamento de acervo
histórico que pode ser utilizado para futuros trabalhos de pesquisa na área.
O web service e as páginas de informações dinâmicas na web para divulgação de dados e
previsão do tempo e marítima, fornecem aos clientes do laboratório um grande ganho em termos de
qualidade e agilidade na obtenção de dados meteorológicos, ao mesmo tempo em que são
mecanismos facilitadores para os próprios técnicos do laboratório.
O sistema de informações de dados meteorológicos constitui-se em uma ferramenta de apoio
à equipe do Laboratório de Climatologia, facilitando suas operações e conferindo um alto grau de
segurança dos dados armazenados. Acredita-se que a automação desses serviços reduzirá o trabalho
operacional, proporcionando, assim, mais tempo para a pesquisa.
Encontrou-se dificuldades na busca de material sobre Web Services, principalmente no que
diz respeito a implementação na linguagem PHP. Existem poucos exemplos na Internet, e livros
também são de difícil acesso tanto na língua inglesa quanto na portuguesa.
Sugerem-se como trabalhos futuros a integração dos dados do Sistema de Divulgação de
Dados Meteorológicos a outros sistemas para obtenção de estatísticas e geração de análises de
dados. Uma proposta é a integração com o SGMA – Sistema de Gerenciamento de Mergulho
Autônomo, que está sendo desenvolvido para o Laboratório de Mergulho do CTTMar.
Este trabalho foi aprovado e apresentado no XIX CRICTE (Congresso Regional de Iniciação
Científica e Tecnológica em Engenharia).
57
REFERÊNCIAS BIBLIOGRÁFICAS
A NOTÍCIA, Jornal. Portais investem em público específico. Disponível em <http://www.an.com.br>.
Acesso em 08 de setembro de 2004.
ANSELMO, Fernando. PHP 4 e Mysql. Florianópolis, Visual Books, 2002, 241p.
BARBOSA, Suzana. Jornalismo Digital e a Informação de Proximidade. Tese de Mestrado. BOCC Biblioteca On-Line de Ciências da Comunicação. Disponível em <http://www.bocc.ubi.pt/pag/barbosasuzana-portais-mestrado.pdf>. Acesso em 19 de setembro de 2004.
BERNARDO JUNIOR, Álvaro. C. Portal de Serviços M-commerce para Corretora Seguros
ALMAPA. Monografia (Graduação em Ciência da Computação). Centro de Ciências Tecnológicas,
da Terra e do Mar, Universidade do Vale do Itajaí.
BOOTH, David et al. Web Services Architecture. Desenvolvido por Web Services Architecture
Working Group. Disponível em: http://www.w3.org/TR/2004/NOTE-ws-arch-20040211/. Acesso
em:15 ago. 2004.
CASTAGNELLO, J et al. Professional PHP Programando. São Paulo, Makron Books, 2000.
800p.
CEM. Cem palavras para gestão do conhecimento, Brasília: Ministério da Saúde, 2003.28 p. (Série F. Comunicação e Educação em Saúde)
CHINNICI, Roberto. Web Services Description Language (WSDL) Version 2.0 Part 1: Core
Language. Desenvolvido por Web Services Description Working Group. Disponível em
http://www.w3.org/TR/wsdl20/. Acesso em:15 ago. 2004.
CHRISTOFOLETTI, A. Modelos descrevendo processos climáticos. In: Modelagem de sistemas
ambientais. São Paulo: Edgard Blücher, 1998.
CONVERSE, Tim. PHP A Bíblia. Rio de Janeiro, Campus, 2003. 904p.
CORREA, Elizabeth Saad. As estratégias da desconstrução Sobre o uso de estratégias diferenciadas
por empresas informativas na internet. Tese de livre docência. ECA/USP, São Paulo, 2001.
COUGO, Paulo Sergio. Modelagem conceitual e projeto de bancos de dados. Rio de Janeiro,
Campus, 1997. 254p.
DEITEL, H.M; DEITEL, P J. Java Como Programar. São Paulo, Bookman, 2002. 1205p.
DIAS, Cláudia Augusto. Portal Corporativo: Conceitos e Características - Ci. Inf., Brasília, v30,
n.1,p. 50-60, jan./abr. 2001. Disponível em <http://www.ibict.br/cionline/300101/30010107.pdf>.
Acesso em 09 de setembro de 2004.
FEDOROV et al. ASP 2.0 Professional. Wrox, 1998.
FIELDS, F; KOLB, M. Web Development with Java Server Pages. Greenwich, Manning, 2000,
584p.
FOUCAULT, Alain. O Clima História e Dever do Meio Terreste. Fayard, 1993.
FOWLER, Martin. UML Essencial. São Paulo, Bookman, 2000. 169p.
GUDGIN, Martin; LEWIS, Amy; SCHLIMMER, Jeffrey. Web Services Description Language
(WSDL) Version 2.0 Part 2: Message Patterns. Desenvolvido por Web Services Description
Working Group. Disponível em http://www.w3.org/TR/wsdl20-patterns/. Acesso em:15 ago. 2004.
HE ,Hão et al. Web Services Architecture Usage Scenarios. Desenvolvido por Web Services
Architecture Working Group. Disponível em: http://www.w3.org/TR/2004/NOTE-ws-archscenarios-20040211/. Acesso em:15 ago. 2004.
JORGENSEN, David. Developing .Net Web Services with XML. Rockland: Syngress Publishing, Inc.,
2002.
JSP. JSP Tutorial. Disponível em <http://www.visualbuilder.com>. Acesso em 19/09/2004.
KURNIAWAN, Budi. Java para Web com Servlets, JSP e EJB. Rio de Janeiro, Ciência
Moderna, 2002, 702p.
LARMAN, Craig. Utilizando UML e padrões. Porto Alegre, Bookman, 2000, 465p.
LIMA, Walter. Mídia digital: o vigor das práticas jornalísticas em um novo espaço. Tese de
Doutorado ECA/USP. Disponível em <http://www.walterlima.jor.br>. Acesso em 19 de setembro de
2004.
MITRA, Nilo. SOAP Version 1.2 Part 0: Primer. Desenvolvido por XML Protocol Working
Group. Disponível em http://www.w3.org/TR/soap12-part0/. Acesso em:15 ago. 2004.
MORELLI NETO, José. Proposta de um padrão para comunicação de dados em um sistema de
telemetria baseado em Web services. Monografia (Graduação em Ciência da Computação).
Centro de Ciências Tecnológicas, da Terra e do Mar, Universidade do Vale do Itajaí.
OLIVEIRA, Eric. Web Services: Java e XML juntos pela interoperabilidade. Disponível em
<http://www.linhadecodigo.com.br>. Acesso em 18/10/2004.
PITS-MOULTIS, Natanya, KIRK, Cheryl. XML Black Book. São Paulo, Makron Books, 2000.
630p.
POOTS, Stephen; KOPACK, Mike. Aprenda em 24 horas Web Services. São Paulo, Campus,
2003. 367p.
POSTGRESQL. PostgreSQL Official Site. Disponível em <http://www.postgresql.org/>. Acesso em
10/09/2004.
PÓVOA, Marcello. Anatomia da internet, investigações estratégicas sobre o universo digital. Rio de
Janeiro, Casa da Palavra, 2000.
SADORNY, R. Clima Terra. Biblioteca Básica de Ciência e Cultura, Lisboa, 1994.
TESCH Jr, José Roberto. XML Schema. Florianópolis: Visual Books, 2002.
59
TOOD, Nick, SZOLKOWSKI, Mark. Java Server Pages. O Guia do Desenvolvedor. Rio de
Janeiro: Elsevier, 2003. 621p.
VIANELLO, R; ALVES, R. Meteorologia Básica e Aplicações. Viçosa: Universidade Federal
deViçosa (Imprensa Universitária), 1991, p.138.
XML. Extensible Markup Language (XML). World Wide Web Consortium. Disponível em
<http://www.w3.org/XML/>. Acesso em 10/09/2004.
60
GLOSSÁRIO
Anemômetro
Instrumento que mede a velocidade e força do vento.
Anticiclone
Pressão máxima relativa. Área de pressão que diverge os ventos numa
rotação oposta à rotação da Terra. Move-se no sentido horário no
Hemisfério Norte e no sentido anti-horário no Hemisfério Sul. Também
conhecida como área de alta pressão; é o oposto de uma área de baixa
pressão, ou ciclone.
Anticiclone
subtropical
Séries de células de alta pressão alinhadas aproximadamente ao longo de
uma linha de latitude em ambos os hemisférios. O eixo do cinturão se
localiza nos níveis baixos a cerca de 35° de latitude em média e tem um
pequeno deslocamento meridional anual.
Calmaria
Condições atmosféricas destituídas de vento ou de qualquer outro
movimento do ar. Em termos oceânicos, é a ausência aparente de
movimento da superfície de água, quando não há nenhum vento ou
ondulação.
Céu claro
O estado do céu sem nenhuma nuvem ou cobertura total menos de um
octa (1/8 de nuvens). vistos ou detectados do ponto de observação.
Chuva
É o resultado da condensação na atmosfera que caem em direção ao solo,
quando as gotas superam as correntes verticais de ar. Normalmente é
medida a altura da precipitação em milímetros.
Chuva artificial
Há casos de nuvens em que, embora a temperatura do ar esteja abaixo de
0ºC, a quantidade de núcleos de condensação existentes no ar é
insuficiente para produzir gotas em quantidade capaz de originar chuva.
Isso sugere suprir a nuvem com quantidades suficientes de núcleos para
produzir chuva. A introdução de núcleos na chuva é conhecida como
"semeadura". As partículas que irão atuar como núcleos são comumente o
iodeto de prata e o gelo seco (gás carbônico congelado). Elas são lançadas
de avião na base ou no topo das nuvens consideradas capazes de originar
precipitação. Maiores sucessos tem sido observados quando a semeadura é
feita com iodeto de prata no topo de nuvens cuja temperatura é menor que
- 13ºC. A semeadura das nuvens pode ser feita do solo pela produção de
fumaça de iodeto de prata. A fumaça é conduzida para cima, e as correntes
convectivas ascendentes podem fazer com que os núcleos de iodeto
atinjam a base das nuvens. Entretanto não se sabe qual a esperança
matemática do êxito. Além disso ficou comprovado que o iodeto de prata
perde sua capacidade de agir como núcleo higroscópio na presença de luz
solar (se dissocia produzindo prata metálica) e essa perda é tão mais
rápida quanto menor a umidade relativa do ar. As experiências
demonstram que é possível provocar precipitação embora seja discutível a
sua viabilidade econômica. O emprego de iodeto a partir do solo é mais
incerto porém, qualquer sistema necessita ser estudado com maiores
cuidados.
Chuvisco
Precipitação bastante uniforme, composta exclusivamentede gotas d'
água
muito pequenas (diâmetro menor que 0,5 mm), muito próximas umas das
outras e parecendo quase flutuar no ar.
Convecção
Movimentos internos organizados dentro de uma camada de ar,
produzindo o transporte vertical de calor. A convecção é essencial para a
formação de muitas nuvens, especialmente do tipo cumulus
Coordenadas
Universais
Tempo
Um dos vários nomes para as 24 horas do dia, usado pelas comunidades
do científicas e militares. Outros nomes para esta medida de tempo são Zulu
(Z), ou Tempo Médio de Greenwich (GMT).
Higrômetro
Higrômetro para determinar a umidade do ar utilizando a absorção do
vapor de água por uma substância química higroscópica.
Imagens de satélite
É uma representação espacial das interações entre a energia e a matéria,
detectada por um sistema sensor à bordo de um satélite.
Imagens de satélite
É uma representação espacial das interações entre a energia e a matéria,
detectada por um sistema sensor à bordo de um satélite.
Índice
vento
de frio do Cálculo de temperatura que considera os efeitos do vento e da temperatura
no corpo humano. Descreve a média da perda de calor num corpo humano
e a maneira como a temperatura é sentida. Não é a temperatura atual do ar.
Para um exemplo, veja o mapa de frio do vento.
Massa de ar
Em meteorologia é uma região da atmosfera em que a temperatura e a
umidade, no plano horizontal apresentam características uniformes
Massa de ar ártica
Massa de ar que se desenvolve ao redor do Ártico, caracterizada pelo frio
da superfície nas grandes altitudes. O limite desta massa de ar é
frequentemente definido como frente Ártica, uma característica semipermanente, semi-contínua. Quando esta massa de ar se move de sua
região de origem, pode ficar mais rasa em altura, na medida em que se
movimenta para o sul.
Meteorologia
Ciência que estuda a atmosfera e os fenômenos atmosféricos. Algumas
áreas da meteorologia abrangem estudos sobre agricultura aplicada,
astrometeorologia, aviação, dinâmica, hidrometeorologia operacional e
sinóptica, entre outros. Cientistas que estudam a atmosfera e os fenômenos
atmosféricos.
62
NOAA
Seção do Departamento de Comércio dos Estados Unidos. É a principal
organização do National Weather Service (Serviço Nacional de
Meteorologia dos Estados Unidos). Promove e qualifica medidas de
interesse do meio-ambiente mundial, enfatizando os recursos atmosféricos
e marinhos. Para informação adicional, contate o NOAA, situado em
Silver Spring, Maryland.
Pressão
É a força por unidade de área causada pelo peso da atmosfera sobre um
ponto, ou sobre a superfície da Terra. Também conhecida como pressão
atmosférica ou pressão barométrica.
Pressão atmosférica
Pressão exercida pela atmosfera sobre qualquer superfície, em virtude de
seu peso. Equivale ao peso de uma coluna de ar de corte transversal
unitário, que se estende desde um nível dado até o limite superior da
atmosfera. Sua medida pode ser expressa em milibares, em polegadas ou
em milímetros de mercúrio (Hg). É também conhecida como pressão
barométrica. A pressão atmosférica varia de lugar para lugar. Essa
variação é causada pela altitude e principalmente pela temperatura.
Previsão
Descrição detalhada de ocorrências futuras esperadas. A previsão do
tempo inclui o uso de modelos objetivos baseados em certos parâmetros
atmosféricos, mais a habilidade e experiência de um meteorologista.
Também chamada de prognóstico.
Satélite
Qualquer objeto que esteja na órbita de um corpo celeste, como a Lua, por
exemplo. O termo, porém, é frequentemente usado para definir objetos
fabricados pelo homem e que estejam na órbita da Terra de forma geoestacionária ou polar. Algumas das informações colhidas por satélites
meteorológicos, como o da série GOES, incluem temperatura nas camadas
superiores da atmosfera, umidade do ar e registro da temperatura do topo
das nuvens, da Terra e do oceano. Os satélites também acompanham o
movimento das nuvens para determinar a velocidade dos ventos altos,
rastreiam o movimento do vapor de água, acompanham o movimento e a
atividade solar, e transmitem dados para instrumentos meteorológicos ao
redor do mundo.
Satélite
polar
de
órbita Satélite cuja órbita inclui passagens próximas a ou sobre ambos os Pólos
da Terra.
Satélite
geoestacionário
Satélite que mantém a mesma posição relativa ao Equador, quando da
rotação da Terra.
Satélite
meteorológico
É um satélite destinado exclusivamente para recepção e transmissão de
informações meteorológicas. Existem duas classes, os geoestacionários e
os de órbita polar.
63
Sistema
pressão
Sistema
pressão
de
alta Área de máxima pressão atmosférica relativa, com ventos divergentes que
se deslocam numa rotação oposta à rotação da Terra. Movem-se no
sentido horário no Hemisfério Norte e no sentido anti-horário no
Hemisfério Sul. Também conhecida como anticiclone, é o oposto de uma
área de baixa pressão atmosférica, ou ciclone.
de
baixa Área de mínima pressão relativa do ar e de ventos convergentes, que
circulam na mesma direção da rotação da Terra no sentido anti-horário no
Hemisfério Norte e no sentido horário no Hemisfério Sul. Também
conhecido como ciclone, é o oposto de uma área de alta pressão, ou
anticiclone. Veja baixa fechada, baixa fria e baixa de corte para exemplos
adicionais.
Temperatura
É a quantidade de calor que existe no ar. Ela é medida pelo termômetro
meteorológico, que é diferente do termômetro clínico. A diferença entre a
maior e a menor temperatura chama-se amplitude térmica.
Temperatura máxima A mais alta das temperaturas máximas mensais observadas em um mês
absoluta
dado, durante um número determinado de anos.
Temperatura média
Média da leitura de temperaturas verificada num período específico de
tempo. Frequentemente a média entre temperaturas máxima e mínima.
Temperatura mínima A mais baixa das temperaturas mínimas mensais observadas em um mês
absoluta
dado, durante um número determinado de anos.
Umidade do ar
É a quantidade de vapor de água contida na atmosfera. Ao subirem para a
atmosfera, as gotículas de água se concentram, formando nuvens, ao se
resfriar, a água se precipita, em forma de chuva, por isso, a chuva é um
tipo de precipitação de água chamado de precipitação pluvial, o
instrumento que mede a umidade do ar é o higrotermômetro e o que
registra é o higrotermógrafo.
UTC
Coordenada de Tempo Universal, com referência ao Meridiano de
Greenwich (Inglaterra), equivalente ao horário de Londres, que
corresponde a 3 horas a mais em relação ao horário de Brasília.
Velocidade do Vento
Quantificação do movimento do ar numa unidade de tempo. Pode ser
medida de vários modos. Quando está em observação, é medida em nós,
ou milhas náuticas por hora. A unidade mais freqüentemente adotada nos
Estados Unidos é a de milhas por hora.
ZULU
Um dos vários nomes para as 24 horas do dia, usado pelas comunidades
científicas internacional e militares. Outros nomes para esta medida de
tempo são Coordenada Universal do Tempo (UTC) e Tempo Médio de
Greenwich (GMT).
64
APÊNDICE A – PCT01 ARMAZENAMENTO DE DADOS
Tabela 8. Descrição do Caso de Uso Armazena Imagens do Globo
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Armazenamento das imagens do
satélite
Fluxos alternativos
Fluxos de exceção
Problemas ao salvar a imagem
Problemas na geração da imagem
Descrição
UC01.01 Armazena Imagens do Globo
Armazena uma imagem do globo a partir do satélite
Satélite
O satélite deve enviar dados para o sistema
Imagens do satélite catalogadas no banco de dados.
Passo 1. Sistema recebe imagem do globo gerada pelo Satélite
Passo 2. Verifica horário para saber qual imagem está sendo
gerada
Passo 3. Imagem é salva no banco
Passo 4. Sistema registra log de cadastro efetivado
Não possui
No passo 3, caso imagem não seja salva no banco:
Passo 3.1 Sistema mostra uma mensagem avisando que a
operação não foi concluída
No passo 1, caso imagem não seja recebida:
Passo 1.1 Sistema mostra uma mensagem avisando que a
operação não foi concluída
Tabela 9. Descrição do Caso de Uso Armazena Dados Meteorológicos
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Armazenamento dos dados
meteorológicos
Descrição
UC01.02 Armazena Dados Meteorológicos
Armazena os dados meteorológicos a partir da estação
meteorológica
Estação meteorológica
A estação meteorológica deve enviar dados para o sistema.
Dados meteorológicos estão armazenados no banco de dados.
Passo 1. Sistema recebe dados meteorológicos da Estação em
arquivo txt
Passo 2. Mecanismo de importação coloca os dados no banco
Passo 3. Sistema registra no log que importação foi efetivada
Fluxos alternativos
Fluxos de exceção
Não possui
Problemas na importação do
No passo 2, caso arquivo não seja importado:
arquivo
Passo 2. Sistema mostra uma mensagem avisando que a
operação não foi concluída
Problemas com o arquivo
No passo 1, caso arquivo não seja recebido:
Passo 1.1 Sistema mostra uma mensagem avisando que a
operação não foi concluída
66
APÊNDICE B – PCT02 ADMINISTRAÇÃO DO SISTEMA
Tabela 10. Descrição do Caso de Uso Manutenção de Usuários
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Cadastra Usuário
Fluxos alternativos
Altera usuário
Exclui usuário
Cancela operação
Fluxos de exceção
Senha não confere
Usuário já existente
Descrição
UC02.01 Manutenção de Usuários
Permite a manutenção de usuários do sistema.
Professor, Colaborador
Um Professor precisa estar logado no sistema.
Uma usuário foi criado, alterado ou eliminado do sistema.
Passo 1. O sistema apresenta lista de usuários já cadastrados.
Passo 2. O professor opta por criar novo usuário.
Passo 3. O sistema apresenta uma tela para a inserção de
usuários
Passo 4. O professor preenche as informações.
Passo 5. O Professor confirma a operação
Passo 6. O sistema valida os dados.
Passo 7. Sistema efetua a gravação do usuário.
Passo 8. O sistema registra a ocorrência no histórico de uso.
Passo 9. O sistema volta ao passo 1.
No passo 2, o professor pode optar por alterar um usuário
Passo 2.1. O sistema apresenta a tela para edição de um usuário
preenchido com as informações do usuário selecionado.
Passo 2.2. O professor preenche as informações
Passo 2.3 O Professor confirma.
Passo 2.4 Retorna ao passo 5
No passo 2, o professor pode optar por excluir um usuário
Passo 2.1. O sistema apresenta uma tela de confirmação da
exclusão do usuário selecionado.
Passo 2.2. O professor confirma exclusão
Passo 2.3. Sistema exclui usuário selecionado.
Passo 2.4. Retorna ao passo 7.
Se no passo 5 do fluxo principal, 2.2 do fluxo Exclui Usuário
ou 2.3 do fluxo Altera Usuário o professor optar por cancelar a
exclusão, retorna ao passo 1 do fluxo principal.
No passo 6, caso os campos senha e confere senha não
apresentem informações identicas, apresenta mensagem "As
senhas digitadas não são iguais. Por favor, informar senha
novamente." E volta para o passo 4.
No passo 6, caso o login informado já exista, uma apresenta
mensagem e volta para o passo 4.
67
Inconsistência na validação dos
dados
No passo 6, caso os campos obrigatórios não tenham sido
preenchidos ou o formato não é válido, apresenta uma
mensagem.
Sistema retorna ao passo 4 ou 2.2.
Tabela 11. Descrição do Caso de Uso Fazer Previsão do Tempo
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Cadastrar previsão
Fluxos alternativos
Altera previsão
Exclui previsão
Descrição
UC02.02 Fazer Previsão do Tempo
Permite a manutenção da Previsão do Tempo
Professor, Colaborador
Estar logado no sistema.
Previsão do tempo para os próximos 3 dias.
Passo 1. Seleciona opção para "previsão do tempo"
Passo 2. Seleciona fazer uma nova previsão
Passo 3. Sistema apresenta ultima previsão realizada e contida
no banco como sugestão
Passo 4. Seleciona a região
Passo 5. Professor faz a previsão
Passo 6. Confirma as informações
Passo 7. O sistema valida as informações
Passo 8. O sistema insere as informações no banco
Passo 9. Vai para a tela “Detalhes’
No passo 2, o Professor seleciona “Detalhes” da previsão que
deseja alterar
2.1 Abre a tela para com os detalhes do dado selecionado
2.2 Professor seleciona “Editar”
2.2 Sistema apresenta a previsão realizadas no dia informado
2.3 Abre tela com informações da previsão
2.4 Professor faz as alterações
2.5 Professor confirma as informaçõs alteradas
2.6 Sistema processa os dados
2.7 Volta ao passo 2
No passo 2, o Professor seleciona “Detalhes” da previsão que
deseja alterar
2.1 Abre a tela para com os detalhes do dado selecionado
2.2 Professor seleciona “Excluir”
2.3 Sistema apresenta tela de confirmação da exclusão
2.4 Professor confirma as informações alteradas
2.5 Sistema processa os dados
2.6 Volta ao passo 2
Fluxos de exceção
68
Inconsistência na validação dos
dados
No passo 7, caso os campos obrigatórios não tenham sido
preenchidos ou o formato não é válido, apresenta uma
mensagem.
Não confirma as informações
Se no passo 6 do fluxo principal, 3.4 do fluxo Exclui Previsão
ou 3.5 do fluxo Altera Previsão, o professor optar por cancelar
a operação, retorna ao passo 1 do fluxo principal.
Não existe previsão no banco
No passo 3, caso não seja encontrada nenhuma previsão para o
ultimo dia, o sistema deixará os campos em branco, para que o
Professor possa então fazer a previsão.
Tabela 12. Descrição do Caso de Uso Fazer Previsão Marítima
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Cadastrar previsão
Fluxos alternativos
Altera previsão
Exclui previsão
Descrição
UC02.03 Fazer Previsão Marítima
Permite a manutenção da Previsão Marítima
Professor, Colaborador
Estar logado no sistema.
Previsão para os próximos 3 dias.
Passo 1. Seleciona opção para "previsão marítima"
Passo 2. Seleciona fazer uma nova previsão
Passo 3. Sistema apresenta ultima previsão realizada e contida
no banco como sugestão
Passo 4. Professor faz a previsão
Passo 5. Confirma as informações
Passo 6. O sistema valida as informações
Passo 7. O sistema insere as informações no banco
Passo 8. Vai para a tela “Detalhes’
No passo 2, o Professor seleciona “Detalhes” da previsão que
deseja alterar
2.1 Abre a tela para com os detalhes do dado selecionado
2.2 Professor seleciona “Editar”
2.2 Sistema apresenta a previsão realizada no dia informado
2.3 Abre tela com informações da previsão
2.4 Professor faz as alterações
2.5 Professor confirma as informaçõs alteradas
2.6 Sistema processa os dados
2.7 Volta a tela “Detalhes”
No passo 2, o Professor seleciona “Detalhes” da previsão que
deseja alterar
2.1 Abre a tela para com os detalhes do dado selecionado
69
2.2 Professor seleciona “Excluir”
2.3 Sistema apresenta tela de confirmação da exclusão
2.4 Professor confirma as informações alteradas
2.5 Sistema processa os dados
2.6 Volta a tela “Detalhes”
Fluxos de exceção
Inconsistência na validação dos
dados
No passo 6, caso os campos obrigatórios não tenham sido
preenchidos ou o formato não é válido, apresenta uma
mensagem.
Não confirma as informações
Se no passo 5 do fluxo principal, 3.4 do fluxo Exclui Previsão
ou 3.5 do fluxo Altera Previsão, o professor optar por cancelar
a operação, retorna ao passo 1 do fluxo principal.
Não existe previsão no banco
No passo 3, caso não seja encontrada nenhuma previsão para o
ultimo dia, o sistema deixará os campos em branco, para que o
Professor possa então fazer a previsão.
Tabela 13. Descrição do Caso de Uso Geração de Relatórios
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Geração de relatórios
Fluxos alternativos
Fluxos de exceção
Descrição
UC02.04 Geração de Relatórios
Geração de Relatórios dos dados meteorológicos vindos da
estação meteorológica
Professor, Colaborador
Estar logado no sistema.
Visualizar relatório com as informações desejadas
Depois de selecionar qualquer opção do sistema, o professor
tem a opção de gerar relatórios
1. Professor seleciona opção para gerar relatórios [Gera PDF]
2. Sistema processa informações
3. Tela de relatórios é mostrada com informações processadas
4. Professor escolhe se deseja imprimir ou salvar
5. Volta a opção 1
Não possui
Não possui
Tabela 14. Descrição do Caso de Uso Login
Funcionalidades
Nome do Caso de Uso
Descrição
Descrição
UC02.05 Login
Possibilita entrada na parte administrativa do sistema
70
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Fazer login
Fluxos alternativos
Fluxos de exceção
Falha no login
Professor, Colaborador
Possuir um login e uma senha para entrar no sistema.
Dispor dos recursos do sistema.
1. Abre tela de login
2. Usuario entra com seu login e senha
3. Sistema valida os dados
4. Abre tela principal do sistema
Não possui
No passo 3:
3.1 O sistema verifica que login ou senha são inválidos
3.2 O sistema mostra tela de aviso <<Login e/ou senha
invalidos>>
Tabela 15. Descrição do Caso de Uso Recados
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Insere Recado
Fluxos alternativos
Altera recado
Exclui recado
Descrição
UC02.06 Recados
Criação, alteração e exclusão de recados do sistema
Professor, Colaborador
Estar logado no sistema.
Recado inserido no banco de dados
1. Professor clica em "Recados"
2. Abre tela mostrando os últimos recados e campos para novo
recado
3. Professor preenche os campos do novo recado
4. Professor confirma
5. Sistema valida as informações
6. Sistema insere no banco de dados
7. Volta ao passo 2
No passo 2, o Professor seleciona “Detalhes” do recado que
deseja alterar
2.1 Abre a tela para com os detalhes do dado selecionado
2.2 Professor seleciona “Editar”
2.2 Sistema apresenta o recado selecionado
2.3 Abre tela com informações do recado
2.4 Professor faz as alterações
2.5 Professor confirma as informações alteradas
2.6 Sistema processa os dados
2.7 Volta ao passo 2
No passo 2, o Professor seleciona “Detalhes” do recado que
deseja alterar
2.1 Abre a tela para com os detalhes do dado selecionado
71
2.2 Professor seleciona “Excluir”
2.3 Sistema apresenta tela de confirmação da exclusão
2.4 Professor confirma as informações alteradas
2.5 Sistema processa os dados
2.6 Volta ao passo 2
Fluxos de exceção
Inconsistência na validação dos
dados
No passo 5, caso os campos obrigatórios não tenham sido
preenchidos ou o formato não é válido, apresenta mensagem
"Verifique os seguintes campos: <<listar campos>>."
Problemas no banco de dados
No passo 6, caso os dados não sejam inseridos no banco o
sistema mostra uma tela dizendo "Os dados não foram inseridos
no banco" e retorno para o passo 3
Cancela operação
Se no passo 4 do fluxo principal, 2.4 do fluxo Exclui Recado ou
do 2.5 do fluxo Altera Recado o professor optar por cancelar a
operação, retorna ao passo 1 do fluxo principal.
Tabela 16. Descrição do Caso de Uso Armazena Fases da Lua
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Armazena dados
Fluxos alternativos
Altera dados
Descrição
UC02.07 Armazena Fases da Lua
Mecanismo de importação para as fases da lua
Professor, Colaborador
Possui o arquivo com as informações das fases da lua
Informações inseridas no banco de dados
1. Professor clica em "Recados"
2. Abre tela mostrando os últimos recados e campos para novo
recado
3. Professor preenche os campos do novo recado
4. Professor confirma
5. Sistema valida as informações
6. Sistema insere no banco de dados
7. Volta ao passo 2
No passo 2, o Professor seleciona “Detalhes” do recado que
deseja alterar
2.1 Abre a tela para com os detalhes do dado selecionado
2.2 Professor seleciona “Editar”
2.2 Sistema apresenta o recado selecionado
2.3 Abre tela com informações do recado
2.4 Professor faz as alterações
2.5 Professor confirma as informações alteradas
2.6 Sistema processa os dados
72
2.7 Volta a tela “Detalhes”
Exclui dados
Fluxos de exceção
Problemas na importação do
arquivo
No passo 2, o Professor seleciona “Detalhes” do recado que
deseja alterar
2.1 Abre a tela para com os detalhes do dado selecionado
2.2 Professor seleciona “Excluir”
2.3 Sistema apresenta tela de confirmação da exclusão
2.4 Professor confirma as informações alteradas
2.5 Sistema processa os dados
2.6 Volta a tela “Detalhes”
No passo 6, caso arquivo não seja importado:
6.1 Sistema registra log que a importação não foi efetivada e
encerra o caso de uso
Tabela 17. Descrição do Caso de Uso Visualiza Criticas e Sugestões
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Visualiza sugestões
Fluxos alternativos
Exclui sugestões
Fluxos de exceção
Descrição
UC02.08 Visualiza Criticas e Sugestões
Possibilita visualizar e excluir as criticas e sugestões postadas
no web site.
Professor, Colaborador
Estar logado no sistema.
Mensagens lidas
1. Ao logar no sistema aparece listadas na tela as mensagem
que anda não foram lidas pelo professor
2. Professor clica no titulo da mensagem
3. Abre mensagem na tela
4. Professor lê a mensagem
5. Professor seleciona voltar
6. Volta ao passo 1
No passo 2 do fluxo principal, ao invés do professor selecionar
o titulo da mensagem ele seleciona a opção "Excluir".
2.1 Abre a tela de confirmação
2.2 Professor confirma
2.3 Mensagem é excluída
Não possui
73
Tabela 18. Descrição do Caso de Uso Tábuas da Maré
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Cadastra Tábua
Fluxos alternativos
Altera Tábua
Exclui Tábua
Fluxos de exceção
Descrição
UC02.09 Tábua da Maré
Possibilita visualizar, editar e excluir as informações das
Tábuas da Maré
Professor, Colaborador
Estar logado no sistema.
Possuir os portos cadastrados nos sistema
1. Professor clica em "Tábuas da Maré"
2. Abre tela mostrando dados existentes
3. Professor seleciona a opção "Novo"
4. Professor preenche os campos
5. Professor confirma
6. Sistema valida as informações
7. Sistema insere no banco de dados
8. Vai para tela de "Detalhes"
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Editar"
2.3. Professor altera os campos
2.4. Professor confirma
2.5. Sistema valida as informações
2.6. Sistema insere no banco de dados
2.7. Volta ao passo 2
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Excluir"
2.3. Professor altera os campos
2.4. Professor envia
2.5 Abre tela de confirmação
2.6 Professor confirma
2.7. Sistema valida as informações
2.8. Sistema insere no banco de dados
2.9. Volta ao passo 2
Não possui
Tabela 19. Descrição do Caso de Uso Região
Funcionalidades
Nome do Caso de Uso
Descrição
Descrição
UC02.10 Região
Possibilita visualizar, editar e excluir as regiões da previsão do
tempo
74
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Cadastra Região
Fluxos alternativos
Editar Região
Exclui Região
Fluxos de exceção
Professor, Colaborador
Estar logado no sistema.
Mensagens lidas
1. Professor clica em "Regiões"
2. Abre tela mostrando dados existentes
3. Professor seleciona a opção "Novo"
4. Professor preenche os campos
5. Professor confirma
6. Sistema valida as informações
7. Sistema insere no banco de dados
8. Vai para tela de "Detalhes"
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Editar"
2.3. Professor altera os campos
2.4. Professor confirma
2.5. Sistema valida as informações
2.6. Sistema insere no banco de dados
2.7. Volta ao passo 2
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Excluir"
2.3. Professor altera os campos
2.4. Professor envia
2.5 Abre tela de confirmação
2.6 Professor confirma
2.7. Sistema valida as informações
2.8. Sistema insere no banco de dados
2.9. Volta ao passo 2
Não possui
Tabela 20. Descrição do Caso de Uso Áreas
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Visualiza sugestões
Descrição
UC02.11 Áreas
Possibilita visualizar, editar e excluir as áreas da previsão
marítima
Professor, Colaborador
Estar logado no sistema.
Mensagens lidas
1. Professor clica em "Áreas"
2. Abre tela mostrando dados existentes
3. Professor seleciona a opção "Novo"
4. Professor preenche os campos
75
Fluxos alternativos
Editar Área
Exclui Área
Fluxos de exceção
5. Professor confirma
6. Sistema valida as informações
7. Sistema insere no banco de dados
8. Vai para tela de "Detalhes"
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Editar"
2.3. Professor altera os campos
2.4. Professor confirma
2.5. Sistema valida as informações
2.6. Sistema insere no banco de dados
2.7. Volta ao passo 2
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Excluir"
2.3. Professor altera os campos
2.4. Professor envia
2.5 Abre tela de confirmação
2.6 Professor confirma
2.7. Sistema valida as informações
2.8. Sistema insere no banco de dados
2.9. Volta ao passo 2
Não possui
Tabela 21. Descrição do Caso de Uso Por do Sol
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Cadastra por do sol
Fluxos alternativos
Altera dados
Descrição
UC02.12 Pôr do Sol
Possibilita inserir, alterar e excluir dados para o por do sol
Professor, Colaborador
Ter selecionado a opção “Pôr do Sol”
Informações inseridas no banco de dados
1. Professor clica em "Por do Sol"
2. Abre tela mostrando dados existentes
3. Professor seleciona a opção "Novo"
4. Professor preenche os campos
5. Professor confirma
6. Sistema valida as informações
7. Sistema insere no banco de dados
8. Vai para tela de "Detalhes
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Editar"
2.3. Professor altera os campos
2.4. Professor confirma
76
Exclui dados
Fluxos de exceção
2.5. Sistema valida as informações
2.6. Sistema insere no banco de dados
2.7. Volta ao passo 2
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Excluir"
2.3. Professor altera os campos
2.4. Professor envia
2.5 Abre tela de confirmação
2.6 Professor confirma
2.7. Sistema valida as informações
2.8. Sistema insere no banco de dados
2.9. Volta ao passo 2
Tabela 22 Descrição do Caso de Uso Satélite
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Cadastra por do sol
Fluxos alternativos
Altera dados
Exclui dados
Descrição
UC02.13 Satélite
Possibilita inserir, alterar e excluir as imagens do satélite
Professor, Colaborador
Ter selecionado a opção “Satélite”
Informações inseridas no banco de dados
1. Professor clica em "Satélite"
2. Abre tela mostrando dados existentes
3. Professor seleciona a opção "Novo"
4. Seleciona a imagem
5. Professor confirma
6. Sistema valida as informações
7. Sistema insere no banco de dados
8. Vai para tela de "Detalhes
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Editar"
2.3. Professor altera os campos
2.4. Professor confirma
2.5. Sistema valida as informações
2.6. Sistema insere no banco de dados
2.7. Volta ao passo 2
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Excluir"
2.3. Professor altera os campos
2.4. Professor envia
2.5 Abre tela de confirmação
2.6 Professor confirma
77
Fluxos de exceção
2.7. Sistema valida as informações
2.8. Sistema insere no banco de dados
2.9. Volta ao passo 2
Tabela 23 Descrição do Caso de Uso Estação
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Cadastra por do sol
Fluxos alternativos
Altera dados
Exclui dados
Fluxos de exceção
Descrição
UC02.14 Estação
Possibilita inserir, alterar e excluir dados para os dados
meteorológicos vindos da estação
Professor, Colaborador
Ter selecionado a opção “Estação”
Informações inseridas no banco de dados
1. Professor clica em "Estação"
2. Abre tela mostrando dados existentes
3. Professor seleciona a opção "Novo"
4. Professor preenche os campos
5. Professor confirma
6. Sistema valida as informações
7. Sistema insere no banco de dados
8. Vai para tela de "Detalhes
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Editar"
2.3. Professor altera os campos
2.4. Professor confirma
2.5. Sistema valida as informações
2.6. Sistema insere no banco de dados
2.7. Volta ao passo 2
No passo 2:
2.1 Professor seleciona "Detalhes"
2.2 O Professor seleciona "Excluir"
2.3. Professor altera os campos
2.4. Professor envia
2.5 Abre tela de confirmação
2.6 Professor confirma
2.7. Sistema valida as informações
2.8. Sistema insere no banco de dados
2.9. Volta ao passo 2
78
APÊNDICE C – PCT03 ÁREA PÚBLICA
Tabela 24. Descrição do Caso de Uso Visualiza Previsão do Tempo
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Consulta previsão
Fluxos alternativos
Fluxos de exceção
Descrição
UC03.01 Visualiza Previsão do Tempo
Possibilita o visitante obter a previsão do tempo para os 3
próximos dias
Visitante
Ter clicado na opção "Previsão do Tempo".
Visualização da previsão do tempo
1. Visitante seleciona opção "Previsão do tempo"
2. O sistema processa as informações
3. Abre a tela com os dados da Previsão do tempo
Não possui
Não possui
Tabela 25. Descrição do Caso de Uso Visualiza Previsão Marítima
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Consulta previsão
Fluxos alternativos
Fluxos de exceção
Descrição
UC03.02 Visualiza Previsão Marítima
Possibilita o visitante obter a previsão marítima para os 3
próximos dias
Visitante
Ter clicado na opção "Previsão Marítima".
Visualização da previsão marítima
1. Visitante seleciona opção "Previsão Marítima"
2. O sistema processa as informações
3. Abre a tela com os dados da Previsão Marítima
Não possui
Não possui
Tabela 26. Descrição do Caso de Uso Consulta Dados Meteorológicos
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Descrição
UC03.03 Consulta Dados Meteorológicos
Possibilita o visitante a informações dos dados meteorológicos
Visitante
Ter clicado na opção " Dados Meteorológicos ".
Visualização dos dados meteorológicos
79
Consulta previsão
Fluxos alternativos
Fluxos de exceção
1. Visitante seleciona opção " Dados Meteorológicos "
2. O sistema processa as informações
3. Abre a tela com os dados meteorológicos
Não possui
Não possui
Tabela 27. Descrição do Caso de Uso Consulta Imagens do Satélite
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Consulta previsão
Fluxos alternativos
Fluxos de exceção
Descrição
UC03.04 Consulta Imagens do Satélite
Possibilita o visitante visualizar imagens de satélite do leste do
globo e da América do Sul
Visitante
Ter clicado na opção “Imagens de Satélite“.
Visualização das imagens de satélite
1. Visitante seleciona opção " Imagens de Satélite "
2. O sistema processa as informações
3. Abre a tela com as imagens
Não possui
Não possui
Tabela 28. Descrição do Caso de Uso Consulta Pôr do Sol
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Consulta previsão
Fluxos alternativos
Fluxos de exceção
Descrição
UC03.05 Consulta Pôr do Sol
Possibilita o visitante obter os horários do pôr do sol
Visitante
Ter clicado na opção “Pôr do Sol“.
Visualização dos horários do pôr do sol
1. Visitante seleciona opção " Pôr do Sol "
2. O sistema processa as informações
3. Abre a tela com as informações
Não possui
Não possui
Tabela 29. Descrição do Caso de Uso Fases da Lua
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Descrição
UC03.06 Consulta Fases da Lua
Possibilita o visitante obter as informações das fases da lua
Visitante
Ter clicado na opção “Fases da Lua“.
Visualização das informações das fases da lua
80
Fluxo Principal
Consulta previsão
Fluxos alternativos
Fluxos de exceção
1. Visitante seleciona opção "Fases da Lua"
2. O sistema processa as informações
3. Abre a tela com as informações
Não possui
Não possui
Tabela 30. Descrição do Caso de Uso Envia Criticas e Sugestões
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Envia sugestão
Fluxos alternativos
Fluxos de exceção
Campo em branco
Erro no banco de dados
Descrição
UC03.07 Envia Criticas e Sugestões
Possibilita o visitante enviar criticas e sugestões para os
administradores do site
Visitante
Ter clicado na opção “Enviar Criticas e Sugestões “.
Sugestão enviada
1. Sistema apresenta Formulário.
2. Visitante preenche o formulário.
3. Sistema valida preenchimento.
4. Sistema coloca informações no banco de dados
5. Sistema apresenta mensagem "Obrigado por colaborar para a
melhora do nosso site!"
Não possui
No passo 3, caso alguma questão não tenha sido assinalada,
apresenta mensagem "Por favor, responda a todas as questões."
No passo 4, caso tenha dado algum problema ao inserir as
informações do formulário o sistema mostra uma tela dizendo
"Não foi possível inserir seus dados no nosso banco! Tente
novamente"
Tabela 31. Descrição do Caso de Uso Visualiza Recados
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Consulta previsão
Fluxos alternativos
Fluxos de exceção
Descrição
UC03.08 Visualiza Recados
Possibilita o visitante ter acesso a informações importantes
Visitante
Ter entrado no site
Visualização do recado
1. Visitante entra no site
2. Visitante visualiza recado
Não possui
Não possui
81
APÊNDICE D – PCT04 WEB SERVICES
Tabela 32. Descrição do Caso Solicita dados meteorológicos
Funcionalidades
Nome do Caso de Uso
Descrição
Ator(es)
Pré Condições
Pós Condições
Fluxo Principal
Consulta previsão
Fluxos alternativos
Fluxos de exceção
Inconsistência na validação dos
dados
Descrição
UC04.01 Solicita dados meteorológicos
Cliente obtém dados meteorológicos através do web service
Cliente
Ter acesso ao web service.
Dados meteorológicos em formato XML
1. Cliente passa os parâmetros através do link de quais dados
meteorológicos ele necessita e em qual período de tempo
2. Sistema processa as informações
3. Cliente recebe dados em formato XML
Não possui
No passo 1, caso os campos obrigatórios não tenham sido
preenchidos ou o formato não é válido, apresenta mensagem
"Verifique os seguintes campos: <<listar campos>>.
82
APÊNDICE E – MODELAGEM DOS DADOS
cd 4.1 Modelo de Dados
tb_recados
*PK «column» id_recado: integer
*
«column» titulo_recado: text
*
«column» recado: text
+
+
«PK» PK_Recados(integer)
«unique» UQ_id_recado()
tb_regiao
*PK «column» id_regiao: integer
*
«column» nome_regiao: varchar(40)
+
+
«PK» PK_tb_regiao(integer)
«unique» UQ_id_regiao()
tb_prev isao_tempo
*PK
*
*
*
*
*
*
*
*
*
tb_fases_da_lua
*
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
id_prev_tempo: integer = 0
data: timestamp
data_previsao: timestamp
hora: timestamp
temperatura_min: real
temperatura_max: real
vento: text
estado_mar: text
imagem_tempo: varchar(50)
regiao: varchar(50)
previsao: text
id_regiao: integer
+
+
+
«PK» PK_previsao_tempo(integer)
«unique» UQ_id_prev_tempo(integer)
«FK» id_regiao()
+
+
«PK» PK_tb_tipo_imagem(integer)
«unique» UQ_id_tipo_imagem(integer)
*PK
*
*
*
*
«column»
«column»
«column»
«column»
«column»
+
+
+
«PK» PK_Imagens_satelite(integer)
«unique» UQ_id_imagem(integer)
«FK» id_tipo_imagem()
tb_imagens_satelite
id_imagem: integer
data: varchar(50)
hora: varchar(50)
path_imagem: varchar(100)
id_tipo_imagem: varchar(50)
tb_tabua_mare
*PK «column» id_tabua: integer
*
«column» cod_porto: integer
*
«column» nome_porto: varchar(100)
+
+
«PK» PK_tb_tabua_mare(integer)
«unique» UQ_id_tabua()
arquiv o
*PK «column» arq_id: integer
«column» arq_nome: varchar(250)
*
«column» arq_status: boolean
+
+
tb_dados_meteorologicos
*PK
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
+
+
«PK» PK_dados_meteorologicos(integer)
«unique» UQ_id_dados_meteor(integer)
*PK «column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
*
+
+
oper_id: integer
oper_nome: varchar(150)
oper_login: varchar(30)
oper_senha: varchar(32)
oper_ativo: boolean
oper_defs: boolean
oper_anon: boolean
oper_email: varchar(255)
«PK» PK_operadores(integer)
«unique» UQ_oper_id(integer)
+
+
«PK» PK_fases_da_lua(integer)
«unique» UQ_id_fases(integer)
*PK
*
*
*
*
*
*
*
*
*
*
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
+
+
«PK» PK_Por_do_sol(integer)
«unique» UQ_id_por_do_sol(integer)
id_por_do_sol: integer
data: varchar(50)
astro_am: varchar(50)
naut_am: varchar(50)
civil_am: varchar(50)
nascer: varchar(50)
por_sol: varchar(50)
astro_pm: varchar(50)
naut_pm: integer
civil_pm: varchar(50)
horas_luz: varchar(50)
tb_prev isao_maritma
*PK «column» id_area:
*
«column» nome_area: varchar(40)
+
+
+
*PK
*
*
*
«column»
«column»
«column»
«column»
+
+
«PK» PK_previsao_maritma(integer)
«unique» UQ_id_prev_maritima(integer)
id_prev_maritima: integer
data: varchar(50)
data_previsao: varchar(50)
horario_previsao: varchar(50)
*
*
*
«column»
«column»
«column»
«column»
«column»
«column»
«column»
+
+
«FK» id_prev_mar()
«FK» id_area()
«PK» PK_tb_area()
«unique» UQ_id_area()
«unique» UQ_id_regiao()
arq_mod
*
*
*
+
+
*PK «column» id_auditoria: integer
*
«column» ip: varchar(20)
«column» mensagem: text
*
«column» id_oper: integer
operadores
id_fases: integer
fase: varchar(50)
lunacao: integer
hora: integer
data: timestamp
tb_dados_maritimos
tb_log
«PK» PK_Auditoria(integer)
«unique» UQ_id_auditoria()
«FK» id_oper()
id_dados_meteor: integer
date: varchar(12)
time: varchar(10)
th_index: real
temp_out: real
wind_chill: real
hi_temp: real
low_temp: real
hum_out: real
dew_pt: real
wind_speed: real
hi: real
dir: varchar(5)
rain: real
bar: real
temp_in: real
hum_in: real
arc_per: real
tb_area
«PK» PK_arquivo(integer)
«unique» UQ_arq_id(integer)
+
+
+
«column»
«column»
«column»
«column»
«column»
tb_por_do_sol
tb_tipo_imagem
*PK «column» id_tipo_imagem: integer
*
«column» nome: varchar(50)
*PK
*
*
*
«column» mod_id: integer
«column» arq_id: integer
«column» principal: boolean
«FK» arq_id()
«FK» mod_id()
permissoes
*
*
«column» perm_oper_id: integer
«column» perm_mod_id: integer
«column» perm_defs: boolean
+
+
«FK» perm_oper_id()
«FK» perm_mod_id()
modulos
*PK «column»
«column»
«column»
«column»
«column»
«column»
«column»
+
+
mod_id: integer
mod_abrv: varchar(20)
mod_nome: varchar(150)
mod_desc: varchar(250)
mod_sup_id: integer
mod_pos_menu: integer
mod_ord_menu: integer
«PK» PK_modulos(integer)
«unique» UQ_mod_id(integer)
conexoes
tb_contato
*PK «column» id_contato: integer
*
«column» nome: varchar(100)
«column» mensagem: text
«column» ip: varchar(16)
+
+
id_prev_mar: integer
id_area: integer
distancia_costa: integer
vento: varchar(12)
velocidade_vento: real
ondas_direcao: varchar(10)
ondas_altura: real
«PK» PK_tb_contato(integer)
«unique» UQ_id_contato(integer)
83
*PK «column»
«column»
«column»
«column»
«column»
«column»
«column»
«column»
+
+
+
cnx_id: integer
cnx_oper_id: integer
cnx_semente: varchar(10)
cnx_hash: varchar(32)
cnx_ativa: integer
cnx_saida: timestamp
cnx_entrada: timestamp
cnx_expira: timestamp
«PK» PK_conexoes(integer)
«unique» UQ_cnx_id(integer)
«FK» cnx_oper_id()
Tabela 33. Dicionário de dados da tabela tb_dados_meteorologicos
Nome do atributo
id_dados_meteor
Tipo
integer
Date
varchar(12)
Descrição
Código do dado meteorológico –
Chave primária
Data da coleta dos dados do satélite
Time
varchar(10)
Hora da coleta dos dados do satélite
th_index
real
Índice de desconforto térmico
(temperatura + umidade)
temp_out
real
Temperatura Ambiente
wind_chill
real
Índice de resfriamento pelo vento
(temperatura + vento)
hi_temp
real
Temperatura Máxima
low_temp
real
Temperatura mínima
hum_out
real
Umidade
dew_pt
wind_speed
Hi
Dir
Rain
Bar
Ponto de Orvalho
real
Velocidade do Vento
real
velocidade máxima do vento
real
Direção do Vento
varchar(5)
Quantidade de chuva
real
Pressão Atmosférica
temp_in
real
real
hum_in
real
Umidade interna do laboratório
arc_per
real
Medida interna do laboratório
Temperatura interna do laboratório
84
Tabela 34. Dicionário de dados da tabela tb_fases_da_lua
Nome do atributo
id_fases
Tipo
integer
fase
varchar(50)
Descrição
Código para controle do banco –
Chave primária
Fase da Lua
lunacao
integer
Código de Lunação
data
integer
Data
hora
integer
hora da previsão
Tabela 35. Dicionário de dados da tabela tb_imagens_satelite
Nome do atributo
id_imagem
Tipo
integer
data
varchar(50)
hora
varchar(50)
path_imagem
varchar(100)
tipo_imagem
varchar(50)
Descrição
Índice para controle do banco
Primary Key; Not Null; Unique;
Data que a imagem do satelite foi
gerada
Hora em que a imagem do satelite foi
gerada
Nome da imagem e caminho onde a
imagem estará localizada
Tipo da imagem
Tabela 36. Dicionário de dados da tabela tb_tipo_imagem
Nome do atributo
id_tipo_imagem
Nome
Tipo
integer
varchar(50)
Descrição
Código para controle do banco – Chave primária
Nome do local de origem da imagem
Tabela 37. Dicionário de dados da tabela tb_log
Nome do atributo
id_auditoria
id_usuario
Tipo
integer
integer
ip
varchar(20)
mensagem
text
Descrição
Código para controle do banco – Chave primária
Chave estrangeira que faz referencia a tabela
operadores
ip do usuario
Mensagem gerada pelo sistema com a ação
ocorrida
85
Tabela 38. Dicionário de dados da tabela tb_por_do_sol
Nome do atributo
id_por_do_sol
Tipo
integer
Descrição
Código para controle do banco –
Chave primária
Data
Data
Date
astro_am
Hour
Hora do nascer do sol, isto para quem
está voando.
naut_am
Hour
Hora do nascer do sol, só para quem
está no mar.
civil_am
Hour
Nascer do sol, para quem está a nivel
terrestre
Nascer
por_sol
astro_pm
Hour
Hour
Hour
naut_pm
Hour
civil_pm
Hour
horas_luz
Hour
horario do nascer do sol
horario do por do sol
Hora do por do sol, isto para quem
está voando.
Hora do Por do sol, só para quem está
no mar.
Por do Sol, para quem está a nivel
terrestre
Quantidade de luz neste dia
Tabela 39. Dicionário de dados da tabela tb_previsao_maritima
Nome do atributo
id_prev_maritima
data
data_previsao
hora
analise_sinotica
Tipo
integer
Date
Date
time
Hour
Descrição
Chave Primaria.
Data em que foi feita a previsão
Data para qual foi feita a previsão
Horário que foi feita a previsão
Analise sinótica
Tabela 40. Dicionário de dados da tabela tb_dados_maritima
Nome do atributo
id_prev_mar
Tipo
integer
id_area
integer
distancia_costa
vento
velocidade_vento
ondas_direcao
ondas_altura
integer
varchar(12)
integer
varchar(10)
real
Descrição
Chave Estrangeira que faz referencia
a tabela tb_previsao_maritima.
Chave Estrangeira que faz referencia
a tabela tb_area.
Inteiro que diz a distancia da costa
Direção do vento
Velocidade do vento
Direção das ondas
Altura das ondas
86
Tabela 41. Dicionário de dados da tabela tb_previsao_tempo
Nome do atributo
id_prev_tempo
data
data_previsao
hora
temperatura_min
temperatura_max
vento
estado_mar
imagem_tempo
regiao
Tipo
integer
Date
Date
Hour
real
real
text
text
varchar(50)
varchar(50)
Descrição
Índice para controle do banco
Data em que foi feita a previsão
Data para a qual foi feita a previsão
Horário da previsão
Temperatura mínima do dia
Temperatura Máxima do Dia
Condições do Vento
Condições do Mar
Imagem do tempo (picture)
Região da Previsão
Tabela 42. Dicionário de dados da tabela tb_recados
Nome do atributo
id_recado
titulo_recado
Recado
Tipo
integer
text
text
Descrição
Índice para controle do banco
Titulo do recado
Recado
Tabela 43. Dicionário de dados da tabela tb_area
Nome do atributo
Tipo
id_area
integer
descricao_area
varchar(120)
Descrição
Índice para controle do banco
Descrição da área
Tabela 44. Dicionário de dados da tabela tb_regiao
Nome do atributo
Tipo
id_regiao
integer
nome_regiao
varchar(40)
estado
varchar(2)
Descrição
Índice para controle do banco
Nome da região
Estado ao qual pertence a região
Tabela 45. Dicionário de dados da tabela tb_tabua_mare
Nome do atributo
Tipo
id_tb_mare
integer
cod_porto
integer
nome_porto
varchar(100)
Descrição
Índice para controle do banco
Código do Porto
Nome do Porto
Tabela 46. Dicionário de dados da tabela arquivo
Nome do atributo
Tipo
arq_id
integer
arq_nome
varchar(250)
status
boolean
87
Descrição
Chave primária
Nome do arquivo
Campo para verificar se o arquivo
está sendo usado
Tabela 47. Dicionário de dados da tabela modulos
Nome do atributo
Tipo
mod_id
integer
mod_abrv
varchar(20)
mod_nome
varchar(150)
mod_desc
varchar(250)
mod_sup_id
smallint
mod_pos_menu
varchar(1)
mod_ord_menu
smallint
Tabela 48. Dicionário de dados da tabela arq_mod
Nome do atributo
Tipo
mod_id
integer
arq_id
integer
principal
boolean
Descrição
Chave Primária
Abreviatura do nome do módulo
Nome do módulo
Descrição do módulo
Código do módulo pai
Código para ver se o módulo é
horizontal ou vertical
Código do posicionamento do menu
Descrição
Chave estrangeira que faz referencia
a tabela modulos
Chave estrangeira que faz referencia
a tabela arquivos
Campo para verificação se é principal
Tabela 49. Dicionário de dados da tabela conexoes
Nome do atributo
Tipo
cnx_id
integer
cnx_oper_id
integer
cnx_semente
varchar (10)
cnx_hash
varchar (32)
cnx_ativa
smallint
cnx_saida
timestamp
cnx_entrada
timestamp
cnx_expira
timestamp
Descrição
Chave Primária
Conexão do Operador
Código da semente
Hash
Status de ativado/desativado
Data e horário de saída da sessão
Data e horário de entrada na sessão
Data e horário expiração da sessão
Tabela 50. Dicionário de dados da tabela operadores
Nome do atributo
Tipo
oper_id
integer
oper_nome
varchar(150)
oper_login
varchar (30)
oper_senha
varchar (32)
oper_ativo
boolean
oper_defs
boolean[]
oper_anon
boolean
oper_email
varchar (255)
Descrição
Chave Primária
Nome do operador
Usuário para login
Senha do operador
Status de ativado/desativado
Permissões do operador
Opção para usuário anônimo
E-mail do usuário
88
Tabela 51. Dicionário de dados da tabela permissoes
Nome do atributo
Tipo
perm_oper_id
integer
perm_mod_id
integer
perm_defs
boolean
Descrição
Chave estrangeira que faz referencia
a tabela operadores
Chave estrangeira que faz referencia
a tabela modulos
Campo para verificação das
permissões
Tabela 52. Dicionário de dados da tabela tb_contato
Nome do atributo
id_contato
nome
ip
Tipo
integer
Varchar(100)
varchar(20)
Descrição
Código para controle do banco – Chave primária
Nome
ip do usuario
mensagem
text
Mensagem deixada de critica ou sugestão
89
APÊNDICE F – ARQUIVO WSDL
ANEXO I – ARTIGO
91
Download

universidade do vale do itajaí centro de ciências