Você está na página 1de 30
–TROCAS
–TROCAS

Introdução

Introdução Ultrapassada a fase de (re)definição do conceito, e de pesquisa do estado da arte, e

Ultrapassada a fase de (re)definição do conceito, e de pesquisa do estado da arte, e em consonância com o estipulado na cronologia do projeto, procedemos a uma análise aos requisitos funcionais, bem como ao estudo da viabilidade técnica do sharing.OurTravels.

2
2

Procurámos identificar os requisitos funcionais, e os não funcionais, necessários e inerentes aos vários perfis de utilizador, bem como as prioridades de implementação das diversas funcionalidades constituintes desta aplicação, tendo em consideração as restrições técnicas, temporais e financeiras.

Numa segunda fase seguiu-se um estudo de viabilidade técnica onde tentámos identificar as soluções e ferramentas disponíveis que melhor se adequam à especificidade técnica desta aplicação.

Ficou desde logo estabelecido como objetivo principal e mínimo, o desenvolvimento de uma aplicação Web que permita, e estimule, a partilha de percursos previamente realizados e registados pelos utilizadores.

aplicação Web que permita, e estimule, a partilha de percursos previamente realizados e registados pelos utilizadores.

Os objetivos do projeto:

Principais

Os objetivos do projeto:  Principais o Desenvolvimento de uma aplicação Web que permita, e estimule,

o

Desenvolvimento de uma aplicação Web que permita, e estimule, a partilha de percursos previamente realizados e registados pelos utilizadores;

o

Criação de uma rede social que permita o enriquecimento de cada roteiro/viagem através da partilha de novos pontos de interessa entre outras informações associadas.

o

Oferecer aos utilizadores a possibilidade de usufruírem de uma navegação agradável;

o

Dotar a plataforma de uma solução técnica de integração de sistemas entre diferentes aplicações.

Secundários:

3
3

o

Permitir a criação, a pesquisa e a adesão de eventos;

o

Possibilitar a troca de mensagens entre a comunidade;

o

Desenvolver uma ferramenta para plataformas móveis, que permita a interação com a aplicação Web.

Constrangimentos

De forma a viabilizar os objetivos a que nos propusemos, devemos prestar a máxima atenção aos seguintes constrangimentos:

O curto período de tempo disponível para a realização do projeto;

O pouco domínio da tecnologia da API a implementar;

A questão da compatibilidade entre browsers;

O pouco domínio na tecnologia base das plataformas de dispositivos móveis.

O “sonho” de integração de uma aplicação para plataformas móveis que permita a interação com a aplicação Web, poderá obrigar-nos a abordar soluções que não dominamos, como sejam web service.

interação com a aplicação Web, poderá obrigar-nos a abordar soluções que não dominamos, como sejam web

Perfis

Perfis O público-alvo deste site , será composto por pessoas com gosto pelo turismo de aventura

O público-alvo deste site, será composto por pessoas com gosto pelo turismo de aventura e com capacidade de partilha de percursos anteriormente construídos e testados, bem como fotografias e outros conteúdos que podemos definir como pontos de interesse associados a um percurso, acessos e informações sobre serviços no local.

4
4

Foram definidos diferentes tipos de perfil de acesso à aplicação web (website), a

saber:

Administrador, que terá total controlo sobre a plataforma;

Utilizador registado, que poderá interagir com todas as funcionalidades da

aplicação;

Utilizador não registado ou visitante, que apenas poderá pesquisar e

visualizar a informação disponibilizada.

Segue-se um esquema onde se demonstra as formas de interação do utilizador

registado com a aplicação web. Note-se a inserção no esquema de um dispositivo

móvel, dada a possibilidade de desenvolvimento de uma aplicação para plataformas

móveis para interação com a aplicação web.

uma aplicação para plataformas móveis para interação com a aplicação web. Esq. de interação utilizador registado

Esq. de interação utilizador registado

uma aplicação para plataformas móveis para interação com a aplicação web. Esq. de interação utilizador registado
5 Interação ADMINISTRADOR
5
5

Interação ADMINISTRADOR

5 Interação ADMINISTRADOR
6 Interação UTILIZADOR REGISTADO
6
6

Interação UTILIZADOR REGISTADO

6 Interação UTILIZADOR REGISTADO
7 Interação VISITANTE
7
7

Interação VISITANTE

7 Interação VISITANTE

Requisitos

1. Listagem dos requisitos funcionais

Requisitos 1. Listagem dos requisitos funcionais 8
8
8
Requisitos 1. Listagem dos requisitos funcionais 8

Listagem dos requisitos não funcionais

a. Mapas de suporte

Listagem dos requisitos não funcionais a. Mapas de suporte i. API 1. Procurámos uma API que

i.

API

1. Procurámos uma API que fosse de:

a. fácil aprendizagem;

b. fácil utilização, mesmo sem documentação,

c. difícil utilização incorreta;

d. fácil leitura e manutenção;

e. suficientemente poderosa;

f. fácil expansão 1 ;

2. e permitisse uma boa iteração com Web services, garantindo um bom canal de acesso e de processamento

de informação;

3. e nos disponibilizasse um bom e fiável suporte.

ii.

Formato

9
9

1. Foi indispensável a definição de um formato cuja sintaxe

fosse 100% compatível com a suportada pela API.

b. Tecnologia que permita a integração de outros formatos

i. Preconizando, desde já, uma possível integração de uma aplicação que permita que dispositivos interajam com esta aplicação, propusemo-nos a desenvolver uma “camada” de suporte ao “diálogo” entre elas.

c. Dispositivos móveis

i. Ficámos cientes da mais-valia de conseguirmos associar ao

projecto um dispositivo móvel (i.e. smartphone) com capacidade de gravação de percursos georreferenciados.

d. Equipamento GPS

i. Gravação de traçados

1. Como é sabido nem todos os equipamentos GPS são dotados da capacidade de gravação automática de traçados, o que quer dizer que para que um utilizador possa registar um determinado percurso deverá garantir,

1 Bloch, Joshua - Principal Software Engineer - How to Design a Good API and Why it Matters

percurso deverá garantir, 1 Bloch, Joshua - Principal Software Engineer - How to Design a Good
a priori , que o seu equipamento permite essa funcionalidade. ii. Formatos específicos 1. Os

a priori, que o seu equipamento permite essa funcionalidade.

ii.

Formatos específicos

1.

Os aparelhos GPS que dispõem da capacidade de gravação automática de traçados, normalmente registam os mesmos num formato específico que varia consoante o fabricante. Neste caso, é normalmente disponibilizado com o aparelho um software de suporte e navegação para PC, a partir do qual é possível a conversão do ficheiro criado no dispositivo para um formato compatível

 

com o formato da API eleita para esta plataforma.

iii.

Datum

10
10

1. Dada a vasta variedade de Datums disponíveis nos equipamentos de GPS, é fundamental que estes dispositivos suportem o mesmo Datum da API. Só assim se poderá garantir que o traçado registado pelo aparelho será fielmente reproduzido no mapa da aplicação sharing.OurTravels.

garantir que o traçado registado pelo aparelho será fielmente reproduzido no mapa da aplicação sharing.OurTravels .

Viabilidade Técnica

Introdução

Viabilidade Técnica Introdução Após se ter aprofundado os requisitos funcionais, e os não funcionais, do

Após se ter aprofundado os requisitos funcionais, e os não funcionais, do

sharing.OurTravels, foi chegada a altura de se investigar quais as soluções técnicas

disponíveis no mercado, que melhor se adeqúem às necessidades técnicas, com vista

ao desenvolvimento da plataforma proposta (Web site e aplicação móvel).

11
11

Um dos critérios nesta seleção foi o da procura de soluções open source pelas

vantagens que passamos a enumerar:

Segurança;

Qualidade;

Garantia de continuidade;

Suporte;

Baixo custo de implementação. 2

Alojamento

Para alojamento do nosso site, verificamos que a oferta de mercado encontra-se essencialmente dividida em três tipos de ofertas, alojamento partilhado, alojamento dedicado e alojamento de servidores.

Alojamento Partilhado (Shared Hosting)

Este tipo de alojamento caracteriza-se pela partilha do servidor e dos seus recursos pelos seus diferentes clientes. Destaca-se o fato de ser a opção de menor custo financeiro.

Alojamento Dedicado (Dedicated Hosting)

Um alojamento dedicado refere-se ao facto do próprio cliente alugar o servidor todo para seu consumo. Todo o servidor estará sob o nosso controlo e poderemos fazer o que bem entender com o seu software e o seu funcionamento em geral. Teremos os recursos todos disponíveis e não teremos que partilhar o mesmo com nenhum outro cliente. Implica um custo financeiro substancial.

cliente. Implica um custo financeiro substancial. 2 http://www.codix.com.br/quais_as_vantagens_do_open_source.html
Alojamento de Servidores ( Colocation/Housing ) Este tipo de serviço é praticamente idêntico ao Alojamento

Alojamento de Servidores (Colocation/Housing)

Este tipo de serviço é praticamente idêntico ao Alojamento Dedicado. A única diferença é que em vez de alugar o servidor, neste serviço o servidor é nosso e é “colocado” na infraestrutura da empresa de alojamento web. Aqui a empresa aluga o espaço e trata de lhe fornecer a energia e conectividade às redes de internet, entre outros suportes. Neste regime o cliente é responsável não só pelo software do servidor como também de todo o hardware. Custo financeiro elevado.

12
12

Perante esta oferta, aquela que melhor se enquadra no nosso projeto, tendo em contas as necessidades e os custos é o alojamento partilhado.

Depois disto, procuramos saber qual as necessidades que sentiremos quanto ao tipo de servidor e o espaço de disco necessário.

Verificamos que as ofertas de mercado para alojamentos partilhados, variam normalmente entre 1GB e 50GB

Fontes:

http://www.webhost.pt/ (visitado a 02/03/2012)

http://hostingportugal.pt/ (visitado a 02/03/2012)

http://promotions.amen.pt/ (visitado a 02/03/2012)

http://www.weblx.pt/ (visitado a 02/03/2012)

Tendo em conta que prevemos uma quantidade substancial de informação para partilhar, algumas delas com algum “peso”, nomeadamente fotos, decidimos a procura de um espaço de disco de 20GB.

Após esta análise, era importante decidirmos qual o sistema operativo escolhido para o servidor, aqui a oferta de mercado divide-se essencialmente entre Linux e Windows.

Analisamos os seguintes pontos:

Estabilidade: Existem inúmeros fatores a ter em conta, iremos realçar alguns:

geralmente os servidores Linux gerem melhor a carga que o Windows. Os servidores Linux raramente necessitam de reiniciar ao contrário do Windows. Os servidores Linux disponibilizam uma maior taxa de uptime disponibilidade/fiabilidade face ao Windows. Ou seja, o sistema Linux neste item é claramente superior.

Performance: Não existem praticamente diferenças de performance entre o Linux e o Windows quando os servidores funcionam em pleno.

Escalabilidade: Os conteúdos dos sites estão sempre em constante mudança. Ambas as plataformas podem adaptar-se às suas necessidades de

conteúdos dos sites estão sempre em constante mudança. Ambas as plataformas podem adaptar-se às suas necessidades
crescimento, o Windows parece-nos mais versátil do que Linux. Ao contrário, o Linux não é

crescimento, o Windows parece-nos mais versátil do que Linux. Ao contrário, o Linux não é compatível com as tecnologias da Microsoft tais como ASP.NET e VB.

Base de Dados: A nossa escolha recai sobre o MySQL e ambas as plataformas o suportam.

Após a análise a estes pontos a nossa escolha foi a plataforma Linux.

Fontes:

13
13

http://www.michaelhorowitz.com/Linux.vs.Windows.html (visitado a

02/03/2012)

http://forum.clubedohardware.com.br/windows-server-linux/105958

(visitado a 02/03/2012)

http://www.infoworld.com/d/networking/windows-versus-linux-server-face- 262 (visitado a 02/03/2012)

Para servidor web, elegemos o Apache WebServer. Estima-se que 112 milhões de sites estão neste momento alojados em servidores que correm Apache.

Este software é gratuito e opensource, podendo ser alterado livremente. É aplicado e utilizado em várias situações desde missões militares e espaciais a plataformas financeiras como a bolsa.

O Apache http Server está disponível para várias sistemas operativos incluindo Unix, Linux, GNU, Netware, Windows, Solares, MacOSx,…

Fontes:

http://pt.wikipedia.org/wiki/Servidor_Apache (visitado a 02/03/2012)

http://www.infowester.com/servapach.php (visitado a 02/03/2012)

http://www.lemon.com.br/comentarios.cfm?action=view&id=1015 (visitado a 02/03/2012)

(visitado a 02/03/2012)  http://www.lemon.com.br/comentarios.cfm?action=view&id=1015 (visitado a 02/03/2012)

1. Linguagem Server-side:

1. Linguagem Server-side: No que toca à linguagem de programação server-side foi necessário encontrar uma linguagem

No que toca à linguagem de programação server-side foi necessário encontrar uma linguagem versátil, mas robusta, que permitisse o máximo de agilidade na iteração entre o código client-side e o SGBD.

14
14

Tabela comparativa PHP/ASP/JSP

Com base na recolha de algumas opiniões 3 e 4 , e o facto de uma das linguagens analisadas ser open source, aliado ao facto de ser razoavelmente dominada pelo grupo, não suscitou grandes dúvidas no momento da sua eleição.

Como tal, a nossa escolha recaiu sobre a linguagem PHP.

4 http://www.baguete.com.br/colunistas/colunas/51/paulo-krieser/14/05/2009/escolhendo-a-linguagem- java-vs-php

2.

SGBD:

2. SGBD: Quando pretendemos fazer uma análise a um Sistema de Gestão de Base de Dados,

Quando pretendemos fazer uma análise a um Sistema de Gestão de Base de Dados, comparando as várias ofertas no mercado, é inevitável considerarmos de imediato sistemas como Oracle DBMS, SQL Server (Microsoft) e MySQL mas, não valerá a pena analisar primeiro a relação preço/qualidade/aplicação?

analisar primeiro a relação preço/qualidade/aplicação? Tabela comparativa Oracle/SQLServer/MySQL 15 Nas várias

Tabela comparativa Oracle/SQLServer/MySQL

15
15

Nas várias opiniões que recolhemos (das quais destacamos as duas referenciadas abaixo 5 e 6 ) pudemos verificar que estamos longe de existir um consenso, no seio da comunidade especialista na área, quanto à melhor SGBD a utilizar até porque cada caso é um caso. Do exposto, rapidamente podemos concluir que o grande constrangimento associado ao MySQL (complexidade e tamanho) não se prevê vir a constituir um problema, uma vez que a base de dados a ser desenvolvida para este projeto não necessitará de grandes complexidades de modelação e, devido à sua natureza, a quantidade de dados a ser registado não deverá ultrapassar alguns milhares, é open source, satisfazer plenamente os requisitos necessários a este projeto e é dominada pelo grupo. Assim, a opção para o SGBD foi MySQL.

6 http://answers.yahoo.com/question/index?qid=20080409231411AA3ngyq

3. Linguagem client-side

3. Linguagem client-side Para uma eficaz e agradável estruturação e formatação do site , visto este

Para uma eficaz e agradável estruturação e formatação do site, visto este projeto se

tratar de uma plataforma Web 2.0, houve a necessidade de análise às soluções e

compatibilidades existentes.

Optou-se por HTML5 e CSS3. Esta escolha é baseada depois de analisadas algumas

das inúmeras opiniões e pareceres, devidamente fundamentados que se encontram

disponíveis para consulta.

16
16

É praticamente unanime que o HTML5 traz muitas vantagens em relação às versões

anterior, principalmente pelo fato de se tratar de uma versão muito melhorada do

HTML. Para a utilização de recursos multimédia (ex. vídeo, áudio…), deixa de ser

necessário a instalação de plugins para a execução desses recursos.

Esta será por ventura a grande vantagem do HTML5, não precisar de recursos

terceiros para que as aplicações funcionem, pois tudo está embutido no próprio

browser.

Já o CSS3 traz algumas novas características que se podem fazer sentir convenientes

e uteis, como por exemplo as múltiplas imagens de fundo, bordas arredondadas,

sombras suaves… entre outras. Das novas propriedades do CSS3 destacamos as

seguintes:

Bordas

border-color

border-image

border-radius

box-shadow

Fundos

background-origin

background-clip

background-size

fazer camadas com múltiplas imagens de fundo

Cor

cores HSL

cores HSLA

background-clip  background-size  fazer camadas com múltiplas imagens de fundo Cor  cores HSL 

cores RGBA

opacidade

Texto

text-shadow

text-overflow

Ruptura de palavras longas

Interface

box-sizing

resize

outline

nav-top, nav-right, nav-bottom, nav-left

Seletores

seletores por atributos

Modelo de caixa básico

overflow-x, overflow-y

Outros

17
17

media queries

criação de múltiplas colunas de texto

propriedades orientadas a discurso ou leitura automática de páginas web

Web Fonts

Apesar de serem linguagens para as quais ainda não possuímos total domínio,

acreditamos que as suas novas funcionalidades e integrações, nomeadamente na

integração da 3ª versão Google Maps API (esta escolha será fundamentada mais à

frente), são “trunfos” que nos podem ser muito úteis no desenvolvimento deste projeto.

será fundamentada mais à frente), são “trunfos” que nos podem ser muito úteis no desenvolvimento deste
Seguem-se algumas tabelas de comportamentos entre browsers e sistemas operativos: 18

Seguem-se

algumas

tabelas

de

comportamentos

entre

browsers

e

sistemas

operativos:

18
18

Comparativo entre browsers propriedades CSS3

e sistemas operativos: 18 Comparativo entre browsers propriedades CSS3 Comparativo entre browsers seletores CSS3

Comparativo entre browsers seletores CSS3

e sistemas operativos: 18 Comparativo entre browsers propriedades CSS3 Comparativo entre browsers seletores CSS3
19 Comparativo entre browsers aplicações web HTML5 Comparativo entre browsers inserção de formulários HTML5
19
19

Comparativo entre browsers aplicações web HTML5

19 Comparativo entre browsers aplicações web HTML5 Comparativo entre browsers inserção de formulários HTML5

Comparativo entre browsers inserção de formulários HTML5

19 Comparativo entre browsers aplicações web HTML5 Comparativo entre browsers inserção de formulários HTML5
20 Comparativo entre browsers atributos formulários HTML5 Comparativo entre browsers codecs áudio HTML5 Comparativo
20
20

Comparativo entre browsers atributos formulários HTML5

20 Comparativo entre browsers atributos formulários HTML5 Comparativo entre browsers codecs áudio HTML5 Comparativo

Comparativo entre browsers codecs áudio HTML5

HTML5 Comparativo entre browsers codecs áudio HTML5 Comparativo entre browsers codecs vídeo HTML5 Comparativo

Comparativo entre browsers codecs vídeo HTML5

áudio HTML5 Comparativo entre browsers codecs vídeo HTML5 Comparativo entre browsers embeber gráficos e comentários

Comparativo entre browsers embeber gráficos e comentários HTML5

HTML5 Comparativo entre browsers codecs vídeo HTML5 Comparativo entre browsers embeber gráficos e comentários HTML5
Após a análise das tabelas, conclui-se que excluindo o Internet Explorer, a compatibilidade é já

Após a análise das tabelas, conclui-se que excluindo o Internet Explorer, a compatibilidade é já elevada o que nos fez reforçar a vontade de implementação das referidas linguagens na nossa plataforma.

Apesar da quase nula compatibilidade do Internet Explorar a nossa opção manteve-se após a análise ao quadro que se apresenta de seguida onde é visível que a quota de mercado do Internet Explorer começa a ser substancialmente reduzida onde se apresenta em clara queda ao contrário de todos os outros browsers.

21
21
apresenta em clara queda ao contrário de todos os outros browsers. 21 Comparativo evolução quota de

Comparativo evolução quota de mercado de browsers

apresenta em clara queda ao contrário de todos os outros browsers. 21 Comparativo evolução quota de
Para o desenvolvimento da programação client-side procurámos uma linguagem que dominássemos bem, preferencialmente

Para o desenvolvimento da programação client-side procurámos uma linguagem que

dominássemos bem, preferencialmente uma das que constam no programa curricular

de Novas Tecnologias da Comunicação.

22
22

Tabela comparativa JavaScript/ActionScript

Quer uma, quer outra linguagem não representam, em termos de domínio na matéria,

um problema para o grupo, no entanto existem dois fatores de elevado peso que nos

orientam num sentido, a saber: a enorme variedade de contributos on-line, e o facto de

ser uma linguagem open source.

Sem grandes surpresas, a eleita foi o JavaScript

Fontes:

http://www.findmebyip.com/litmus/ (visitado a 29/02/2012)

http://html5demos.com/ (visitado a 29/02/2012)

http://redebiz.net/blog/software/html-5-possibilidades-universo-mobile/

(visitado a 29/02/2012)

http://www.tecmundo.com.br/flash/4587-quais-as-vantagens-do-html5-para-o-

usuario-comum-.htm (visitado a 29/02/2012)

http://www.criarweb.com/artigos/o-que-e-html-5.html (visitado a 29/02/2012)

http://www.slideshare.net/diegoeis/css3-o-que-realmente-mudou (visitado a

29/02/2012)

http://www.infowester.com/css3sombras.php (visitado a 29/02/2012)

http://www.css3.info/preview/ (visitado a 29/02/2012)

http://www.w3schools.com/browsers/browsers_stats.asp

(visitado

29/02/2012)

a

(visitado a 29/02/2012)  http://www.w3schools.com/browsers/browsers_stats.asp (visitado 29/02/2012) a

4. Ferramentas Web 7 :

4. Ferramentas Web 7 : Para o desenvolvimento de toda a parte de programação (server e

Para o desenvolvimento de toda a parte de programação (server e client-side) existe uma enorme variedade de ferramentas, qualquer uma pode ser considerada como potencial candidata, mas

23
23

Tabela comparativa Inkscape/Webstorm/Dreamweaver/Coda

Uma vez mais, o número de unidades curriculares em que tivemos que utilizar as ferramentas Adobe, permitiu-nos obter algum domínio, sobre as mesmas levando-nos a poupar algum tempo na sua utilização.

Uma vez mais o vencedor foi a Adobe com o Dreamweaver CS5.5.

Uma vez mais o vencedor foi a Adobe com o Dreamweaver CS5.5 . 7 inkscape.org /

5. Imagem gráfica 8 :

5. Imagem gráfica 8 : A fim de possibilitar a criação de um conceito gráfico adequado

A fim de possibilitar a criação de um conceito gráfico adequado aos propósitos pretendidos, surgiu a necessidade de se optar por uma ferramenta de desenho. Das várias disponíveis no mercado, o critério de seleção centrou-se numa que possuísse, de forma integrada, as valências necessárias, conducentes a um desenho de uma imagem gráfica de qualidade e que proporcionasse a mínima taxa de ocupação na sua utilização.

24
24
a mínima taxa de ocupação na sua utilização. 24 Tabela comparativa Ilustrator/Gimp/Corel De facto, graças

Tabela comparativa Ilustrator/Gimp/Corel

De facto, graças ao número de unidades curriculares em que tivemos que utilizar as ferramentas Adobe, foi-nos possível desenvolver algumas valências no seu domínio, traduzindo-se agora num crédito do tempo, tão importante nesta fase da licenciatura.

Desta feita, o grande vencedor foi o Adobe Ilustrator CS5.5.

Desta feita, o grande vencedor foi o Adobe Ilustrator CS5.5 . 8 www.adobe.com / www.gimp.org /

6.

API 9 :

6. API 9 : Um elemento muito importante no desenvolvimento dum Web site desta natureza, prende-se

Um elemento muito importante no desenvolvimento dum Web site desta natureza, prende-se com a API (Application Programmable Interface) que, tal como o nome indica, é um interface que pode ser utilizado por outras aplicações que lhes permite comunicar entre si (i.e. a consulta a uma base de dados), serve ainda de suporte ao desenvolvimento de aplicações. Neste ponto, é importante lembrar que as API’s estão, normalmente, em constante evolução. Por definição, consistem em serviços Web e scripts específicos, que permitem aos web developers um caminho mais ágil de acesso e processamento de informação na Web.

25
25

Quanto ao formato suportado para efeitos de upload de traçados, optámos pelo GPX (GPS Exchange Format) que é um formato nativo de dados (XML) para a troca de dados de GPS (pontos, rotas e trilhos) entre aplicações e serviços da Web na Internet.

entre aplicações e serviços da Web na Internet. Tabela comparativa Google/Yahoo Não obstante os vários

Tabela comparativa Google/Yahoo

Não obstante os vários argumentos favoráveis à API Yahoo, como a existência de SDK para C# e VB.net, entre outros, é incontestável o facto da API da Google ser aquela de que mais utilizadores e developers dispõe, tornando este facto numa enorme mais-valia que saberemos traduzir em nosso benefício.

API do sharing.OurTravels: Google API.

http://www.klauskomenda.com/archives/2007/07/22/google-maps-api-vs-yahoo-maps-api

http://www.klauskomenda.com/archives/2007/07/22/google-maps-api-vs-yahoo-maps-api

7. Equipamento GPS:

7. Equipamento GPS: Várias são as especificidades técnicas a ter em consideração relativamente aos equipamentos GPS,

Várias são as especificidades técnicas a ter em consideração relativamente aos equipamentos GPS, a saber:

a. Nem todos os equipamentos GPS são dotados da capacidade de gravação automática de traçados, o que quer dizer que para que um utilizador possa registar um determinado percurso deverá garantir, a priori, que o seu equipamento permite essa funcionalidade.

b. Os que o permitem normalmente registam os mesmos num formato específico que varia consoante o fabricante. Neste caso, é normalmente disponibilizado com o aparelho um software de suporte e navegação para PC, a partir do qual é possível a conversão do ficheiro criado no dispositivo para um formato compatível com o formato da API eleita para esta plataforma (.gpx).

c. Dada a vasta variedade de Datums disponíveis nos equipamentos de GPS, e de forma a garantir total compatibilidade com a API da Google, é fundamental que estes dispositivos estejam configurados para o formato WGS84. Só assim se poderá afirmar que o traçado registado pelo aparelho será fielmente reproduzido no mapa da aplicação.

26
26
traçado registado pelo aparelho será fielmente reproduzido no mapa da aplicação. 26 Tabela comparativa Garmin/Magellan

Tabela comparativa Garmin/Magellan

traçado registado pelo aparelho será fielmente reproduzido no mapa da aplicação. 26 Tabela comparativa Garmin/Magellan
Neste caso apenas apresentámos uma pequena lista dos equipamentos GPS que podem ser considerados “aptos”

Neste caso apenas apresentámos uma pequena lista dos equipamentos GPS que podem ser considerados “aptos” para fins de registo de traçados, e posterior upload do respetivo ficheiro .gpx para a aplicação sharing.OurTravels.

Outras considerações

27
27

a. Tecnologia que permita a integração de outros formatos

iv. Web Services é uma tecnologia que permite converter um

determinado aplicativo num outro web compatible, cujo formato

é XML + HTTP. O XML fornece uma linguagem que pode ser

usada entre diferentes plataformas e linguagens de

programação e ainda expressar mensagens complexas e

funções. O HTTP é o protocolo de Internet mais utilizado.

Elementos da plataforma Web services:

1. SOAP (Simple Object Access Protocol)

2. UDDI (Universal Description, Discovery and Integration)

3. WSDL (Web Services Description Language)

Preconizando, desde já, uma possível integração de outras

plataformas com esta aplicação, propomo-nos a desenvolver

uma “camada” de suporte ao “diálogo” entre elas.

b. Dispositivos móveis

v. Algumas das potenciais plataformas que poderão vir a interagir

com a nossa aplicação são as dos dispositivos móveis (Android,

Aplle, JavaJ2, Blackberry), como tal, pretendemos investir algum

tempo no estudo da possibilidade de integrar, no âmbito deste

projecto, uma amostra das potencialidades associadas a este

tipo de plataformas, tendo como “gateway” a tecnologia referida

no ponto anterior.

potencialidades associadas a este tipo de plataformas, tendo como “gateway” a tecnologia referida no ponto anterior.

Conclusão

Conclusão Durante o apuramento dos requisitos funcionais e não funcionais, bem como na viabilidade técnica, fomos

Durante o apuramento dos requisitos funcionais e não funcionais, bem como na viabilidade técnica, fomos compreendendo melhor a suas especificidades, o que nos ajudou bastante na definição das soluções técnicas que melhor se adequavam ao que desejamos implementar.

Definimos prioridades essenciais para as quais assumimos o compromisso de as cumprir.

28
28

Resumindo:

Para a estruturação e formatação da plataforma, optamos pela linguagem HTML5 e CSS3, acreditando tratar-se de uma linguagem de futuro.

Quanto ao sistema de gestão de base de dados a nossa escolha recaiu sobre o MySQL.

Relativamente à imagem gráfica, o Adobe Creative Suite CS5.5 foi o grande vencedor.

Para a linguagem server-side, optou-se pelo PHP.

Já na linguagem cliente-side, o JavaScript foi a opção.

Atendendo à inexperiência em algumas soluções, achamos importante referir a possibilidade do surgimento de pequenas alterações, no entanto, acreditamos que tal não será em demasia, principalmente devido ao aprofundado estudo efetuado nesta fase à viabilidade técnica.

que tal não será em demasia, principalmente devido ao aprofundado estudo efetuado nesta fase à viabilidade

Fontes de consulta

Fontes de consulta  http://code.google.com/intl/pt-PT/apis/maps/documentation/javascript/ [29/02/2012] 

http://code.google.com/intl/pt-PT/apis/maps/documentation/javascript/

[29/02/2012]

http://code.google.com/intl/pt- PT/apis/maps/documentation/javascript/tutorial.html [29/02/2012]

https://code.google.com/apis/console [29/02/2012]

http://code.google.com/intl/pt- PT/apis/maps/documentation/javascript/libraries.html [29/02/2012]

http://code.google.com/intl/pt- BR/apis/maps/documentation/javascript/reference.html#Geocoder [29/02/2012]

http://balaiotecnologico.blogspot.com/2010/08/tracando-rotas-com-versao-3-da-

api-do.html [29/02/2012]

29
29

http://www.w3schools.com/js/default.asp [29/02/2012]

http://www.avellareduarte.com.br/projeto/recursos/recursos4/recursos4e.htm

[29/02/2012]

http://help.adobe.com/pt_BR/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516

d4fbf351e63e3d118a9b90204-7ff8.html [29/02/2012]

http://www.w3schools.com/php/default.asp [29/02/2012]

http://lightwebdesigner.wordpress.com/2008/02/02/vantagens-do-php/

[29/02/2012]

http://www.w3schools.com/asp/default.asp [29/02/2012]

http://apostilas.fok.com.br/manual-do- php/faq.languages.php#faq.languages.asp [29/02/2012]

http://www.tecnocafe.com.br/porque-existem-empresas-que-usam-asp-e-nao- php/ [29/02/2012]

http://www.cio.com/article/113110/Five_Compelling_Reasons_to_Use_MySQL

[29/02/2012]

http://www.oracle.com/index.html [29/02/2012]

http://www.cin.ufpe.br/~rac2/vantagens.txt [29/02/2012]

http://jquery.com/ [29/02/2012]

http://www.criarweb.com/artigos/introducao-jquery.html [29/02/2012]

http://mootools.net/ [29/02/2012]

http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks [29/02/201

2]

http://mootools.net/ [29/02/2012]  http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks [29/02/201 2]
 http://html-editor.pikimal.com/dreamweaver/vs/webstorm-ide [29/02/2012] 

http://html-editor.pikimal.com/dreamweaver/vs/webstorm-ide [29/02/2012]

http://www.itwriting.com/blog/3967-jetbrains-webstorm-2-0-and-phpstorm-2-0-

first-look.html/comment-page-1 [29/02/2012]

http://www.williammalone.com/articles/flash-vs-html5-canvas-drawing/

[29/02/2012]

http://iq12.com/blog/as3-benchmark/ [29/02/2012]

*Redigido segundo o novo acordo ortográfico

30
30
[29/02/2012]  http://iq12.com/blog/as3-benchmark/ [29/02/2012] *Redigido segundo o novo acordo ortográfico 30