O sistema proposto por este trabalho ainda pode possuir muitas funcionalidades, que podem ser incorporadas em trabalhos futuros. Tais funcionalidades podem ser de grande valor para o seu usuário final, aperfeiçoando as já existentes ou criando novos serviços para auxiliar às buscas de pontos de táxis. Algumas delas são baseadas nos feedbacks recebidos durante o período de desenvolvimento e de avaliação. Elas são descritas a seguir:
possibilitar que um usuário avalie e faça comentários sobre o serviço prestado por um ponto de táxi, criando um ranking de pontos de táxis mais bem avaliados;
para a funcionalidade de cálculo de rota, aperfeiçoar o algoritmo que sugere o ponto de táxi ao usuário para considerar, além da sua distância ao usuário, aquele ponto de táxi que:
o oferecer o menor valor da bandeira utilizada no horário vigente; o possuir a melhor avaliação dos usuários;
o atendeu uma chamada do usuário anteriormente; o estiver presente na lista de favoritos do usuário; o possuir táxis disponíveis para realizar uma corrida.
permitir que os próprios usuários sugiram incluir informações de pontos de táxis que não estão cadastrados no sistema, ou fazer correções das informações já existentes; visualizar informações dos últimos pontos de táxis sem a necessidade de possuir uma
conexão com a Internet ativa (modo offline); mostrar, ao usuário, informações como:
o capacidade do porta malas, quando disponível; o capacidade de passageiros;
busca de pontos de táxis que possuírem determinadas características de interesse ao usuário (possui telefone ou celular, aceita determinadas formas de pagamentos, possui ar-condicionado, há disponibilidade para transportar malas, etc.);
aumentar o alcance do aplicativo proposto, desenvolvendo versões para outras tecnologias voltadas à dispositivos móveis, como, por exemplo, iPhone, iPad, HTML 5, Blackberry, Windows Phone, entre outros;
estudo de técnicas para proteger os serviços RESTful oferecidos pelo servidor do sistema, de forma a disponibilizar determinados recursos somente a usuários devidamente autenticados e autorizados no sistema;
estudo de usabilidade e ergonomia voltado à aplicativos para dispositivos móveis; utilizar os mesmos conceitos e tecnologias para a criação de um aplicativo para busca
ALECRIM, Emerson. O kernel do Linux. Disponível em:
<http://www.infowester.com/linuxkernel.php>. Acesso em: 25 jun. 2011.
ALOUINI, Mohamed-Slim. GPS: An Overview. Tunisian Scientific Magazine, 1996. ANDRADE, Maria Margarida de. Introdução à metodologia do trabalho científico: elaboração de trabalhos na graduação. 3. ed. São Paulo: Atlas, 1998.
APACHE. Apache License: Version 2.0. Disponível em:
<http://www.apache.org/licenses/LICENSE-2.0>. Acesso em: 1 mai. 2011a.
______. Apache Tomcat. Disponível em: <http://tomcat.apache.org/>. Acesso em: 16 jul. 2011b.
______. Subversion. Disponível em: <http://subversion.apache.org/>. Acesso em: 16 jul. 2011c.
______. Apache Maven. Disponível em: <http://maven.apache.org/>. Acesso em: 16 jul. 2011d.
BEZERRA, Eduardo. Princípios de análise de sistemas com UML. Rio de Janeiro: Campus, 2002.
BLAHA, Michael; RUMBAUGH, James. Modelagem e Projetos Baseados em Objetos
com UML 2. 2. ed. rev. e atual. Rio de Janeira: Campus, 2006.
BOOCH, Graddy; RUMBAUGH, James; JACOBSON, Ivar. UML: guia do usuário. Rio de Janeiro: Campus, 2000.
BORNSTEIN, D. Dalvik Virtual Machine. Disponível em: <http://www.dalvikvm.com/>. Acesso em: 2 mai. 2011.
BRANCO, Anselmo L. Latitude, Longitude e GPS. Disponível em:
CÂMARA, Gilberto; DAVIS, Clodoveu. Introdução. In: CÂMARA, Gilberto et al.
Introdução à Ciência da Geoinformação. Disponível em:
<http://www.dpi.inpe.br/gilberto/livro/introd/>. Acesso em: 21 abr. 2011.
CERVO, Amado Luiz; BERVIAN, Pedro A. Metodologia Científica. 5. ed. São Paulo: Pretince Hall, 2002.
DAVIS, Bruce Ellsworth. GIS: a visual approach. Cengage Learning, 2001.
DANA, Nourie. Getting Started With an Integrated Development Enviromment (IDE). Disponível em: <http://java.sun.com/developer/technicalArticles/tools/intro.html>. Acesso em: 22 mai. 2011.
DIAS, Kelvin Lopes; SADOK, Djamel Fauzi Hadj. Internet Móvel: Tecnologias, Aplicações e QoS. 19º Simpósio Brasileiro de Redes de Computadores: 2001.
DOCFORGE. Framework. Disponível em: <http://docforge.com/wiki/Framework>. Acesso em: 8 mai. 2011.
EL-RABBANY, Ahmed. Introduction to GPS: the Global Positioning System. Artech House Publishers, 2002.
FELKER, Donn; DOBBS, Joshua. Android Application Development for Dummies. Wiley Publishing, 2011.
FIELDING, Roy Thomas. Architectural Styles and the Design of Network-based Software
Architectures. Disponível em: <http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm>.
Acesso em: 16 jul. 2011.
FLITZ, Paulo Roberto. Cartografia básica. 2 ed., rev. e ampl. Canoas: Centro Universitário La Salle, 2005.
FRANCH, Gregory T. Understanding the GPS: an introduction to the Global Positioning System. GeoResearch: 1996.
GARTNER. Gartner Says Worldwide Mobile Phone Sales Grew 35 Percent in Third
Quarter 2010; Smartphone Sales Increased 96 Percent. Disponível em:
<http://www.gartner.com/it/page.jsp?id=1466313>. Acesso em: 30 mai. 2011.
______. Gartner Says Sales of Mobile Devices in Second Quarter of 2011 Grew 16.5
Percent Year-on-Year; Smartphone Sales Grew 74 Percent. Disponível em:
<http://www.gartner.com/it/page.jsp?id=1764714>. Acesso em: 3 set. 2011.
GeoTools. About GeoTools. Disponível em: <http://geotools.org/about.html>. Acesso em: 19 out. 2011.
GIL, Antônio Carlos. Como elaborar projetos de pesquisa. 3. ed. São Paulo: Atlas, 1996. GOOGLE. Android. Disponível em: <http://www.android.com>. Acesso em: 26 mar. 2011a. ______. Ajuda do Mapas: Sobre o Google Maps. Disponível em:
<http://maps.google.com/support/bin/answer.py?hlrm=en&answer=7060>. Acesso em: 10 abr. 2011b.
______. Serviços da web da Google Maps API: The Google Directions API. Disponível em: <http://code.google.com/intl/pt-BR/apis/maps/documentation/directions/#Introduction>. Acesso em: 12 abr. 2011c.
______. Serviços da web da Google Maps API: Google Geocoding API. Disponível em: <http://code.google.com/intl/pt-BR/apis/maps/documentation/geocoding/#Geocoding>. Acesso em: 12 abr. 2011d.
______. What is Android?. Disponível em:
<http://developer.android.com/guide/basics/what-is-android.html>. Acesso em: 1 mai. 2011e. ______. Licenses. Disponível em: <http://source.android.com/source/licenses.html>. Acesso em: 1 mai 2011f.
______. Application Fundamentals. Disponível em:
<http://developer.android.com/guide/topics/fundamentals.html>. Acesso em: 2 mai. 2011h. ______. Activities. Disponível em:
<http://developer.android.com/guide/topics/fundamentals/activities.html>. Acesso em: 7 mai. 2011i.
______. Intents and Intent Filters. Disponível em:
<http://developer.android.com/guide/topics/intents/intents-filters.html>. Acesso em: 7 mai. 2011j.
______. Press/media. Disponível em: <http://www.android.com/media/>. Acesso em: 7 mai. 2011k.
GSM ASSOSIATION. Location Based Services. Disponível em:
<http://www.gsmworld.com/documents/se23.pdf>. Acesso em: 23 abr. 2011.
HANSON, Jarice. 24/7: how cell phones and the Internet change the way we live, work, and play. Greenwood Publishing Group: 2007
IBGE. Dados do Censo 2010 publicados no Diário Oficial da União do dia 04/11/2010. Disponível em: <http://www.ibge.gov.br/censo2010/dados_divulgados/index.php>. Acesso em: 26 mar. 2011a.
______. Noções Básicas de Cartografia. Disponível em:
<http://www.ibge.gov.br/home/geociencias/cartografia/manual_nocoes/representacao.html>. Acesso em: 22 abr. 2011b.
______. Mapas Estaduais. Disponível em:
<http://www.ibge.gov.br/mapas_ibge/atlas_juv_estaduais.php>. Acesso em: 3 set. 2011c. IBM. RESTful Web Services: The basics. Acessado em:
<https://www.ibm.com/developerworks/webservices/library/ws-restful/>. Acesso em: 19 jun. 2011.
IT WEB. Plataforma Android vira líder de mercado. Disponível em:
<http://www.itweb.com.br/noticias/index.asp?cod=76469>. Acessado em: 26 mar. 2011. JIANXIN, Yu et al. Design and Implementation of Taxi Calling and Dispatching System
based on GPS Mobile Phone: A Research for LBS Application Teaching Case. In:
INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE & EDUCATION, 4., 2009, China. Anais… p. 1163-1169.
JSON. Introdução ao JSON. Disponível em: <http://www.json.org/json-pt.html>. Acesso em: 19 jun. 2011.
KOOLHAAS, Michael. Elementos del sistema de posicionamiento global (GPS).
Disponível em: <http://www.fagro.edu.uy/~topografia/docs/Elem.del_GPS1.3.pdf>. Acesso em: 22 abr. 2011.
LAKATOS, E. M.; MARCONI, M. A. Fundamentos de metodologia científica. 3. ed. rev. e ampl. São Paulo : Atlas, 1991.
LARMAN, Craig. Utilizando UML e padrões: uma introdução à análise e ao projeto orientado a objetos. Porto Alegre: Bookman, 2000.
MARIMOTO, Carlos Eduardo. Smartphones: Guia Prático. Disponível em:
<http://www.hardware.com.br/livros/smartphones/google-maps.html>. Acesso em: 10 abr. 2011.
MATTAR NETO, João Augusto. Metodologia Científica na Era da Informática. São Paulo: Saraiva, 2002.
MEZZAROBA, O; MONTEIRO, C. Manual de Metodologia da Pesquisa no Direito. 2. ed. rev. São Paulo: Saraiva, 2004.
MONGODB. MongoDB. Disponível em: <http://www.mongodb.org/>. Acesso em: 16 jul. 2011a.
MONICO, J. F. G. Posicionamento pelo NAVSTAR-GPS: Descrição, fundamentos e aplicações. 1 ed. Presidente Prudente: Editora UNESP, 2000.
MONQUEIRO, Julio Cesar Bessa. 40% do uso do Google Maps é através de dispositivos
portáteis. Disponível em: <http://www.hardware.com.br/noticias/2011-03/google-
mobile.html>. Acesso em: 17 mar. 2011.
MYTAXI. myTaxi. Disponível em: <http://www.mytaxi.net>. Acesso em: 23 out. 2011. NIELSEN. Android Most Popular Operating System in U.S. Among Recent Smartphone
Buyers. Disponível em: <http://blog.nielsen.com/nielsenwire/online_mobile/android-most-
popular-operating-system-in-u-s-among-recent-smartphone-buyers/>. Acesso em: 1 mai. 2011.
PC MAGAZINE. Definition of: API. Disponível em:
<http://www.pcmag.com/encyclopedia_term/0,2542,t=API&i=37856,00.asp>. Acesso em: 24 abr. 2011a.
______. Definition of: DBMS. Disponível em:
<http://www.pcmag.com/encyclopedia_term/0,2542,t=DBMS&i=40952,00.asp>. Acesso em: 29 mai. 2011b.
______. Definition of: Scalable. Disponível em: <
http://www.pcmag.com/encyclopedia_term/0,2542,t=scalable&i=50835,00.asp>. Acesso em: 10 out. 2011c.
PEREIRA, Lúcio Camilo; SILVA, Lourenço. Android para Desenvolvedores. Brasport, 2009.
PESTANA, António. Sistema de Posicionamento Global. Disponível em: <http://navstar.idt.ipp.pt/Acetatos/navstar_2002.pdf>. Acesso em: 24 jun. 2011.
PETERSON, Michael P. A Critical Assessment of Maps and the Internet. Disponível em: <http://www.rbc.ufrj.br/_pdf_60_2008/60_03_7.pdf>. Acesso em: 25 jun. 2011.
PR NEWSWIRE. World Mobile Applications Market Worth US$25 Billion by 2015. Disponível em: <http://www.prnewswire.com/news-releases/marketsandmarkets-world- mobile-applications-market-worth-us25-billion-by-2015-114087839.html>. Acesso em: 30 mai. 2011.
RAMESH, A.; MISRA, R. P. Fundamentals of Cartography: Revised and Enlarged. Concept Publishing, 1969.
RECKZIEGEL, Maurício. Google Directions e Elevation API: Aperfeiçoando o cálculo de autonomia de veículos. Disponível em:
<http://imasters.com.br/artigo/17349/tendencias/google_directions_e_elevation_api_aperfeico ando_o_calculo_de_autonomia_de_veiculos/>. Acesso em: 12 abr. 2011.
REDE NACIONAL DE PESQUISA. O que é middleware. Disponível em: <http://www.rnp.br/noticias/2006/not-060926.html>. Acesso em: 9 mai. 2011.
REZENDE, Denis Alcide. Engenharia de software e sistemas de informação. Brasport: 2006.
ROGERS, Rick et al. Android Application Development: Programming with the Google SDK. O'Reilly, 2009
ROOS, Dave. HowStuffWorks: Como aproveitar melhor uma API para conferências online. Disponível em: <http://informatica.hsw.uol.com.br/conferencia-api4.htm>. Acesso em: 18 de mar. 2011.
RUIZ, João Álvaro. Metodologia Científica: guia para eficiência nos estudos. São Paulo: Atlas, 1996.
SILVA, Aloizio; MATEUS, Geraldo. A Mobile Location-Based Vehicle Fleet
Management Service Application. In: IEEE INTELLIGENT VEHICLES SYMPOSIUM, 4.,
2003, Columbus. Anais... p. 25-30.
SOUSA, Giselle; LIMA, Zélia. Geoprocessamento a aplicação do GPS na navegação
SPRING SOURCE. About Spring. Disponível em: <http://www.springsource.org/about>. Acesso em: 16 jul. 2011.
STRICKLAND, Jonathan. HowStuffWorks: Como funciona o Android (Google Phone). Disponível em: < http://informatica.hsw.uol.com.br/google-phone2.htm>. Acesso em: 9 de mai. 2011.
TANENBAUM, Andrew S; WOODHULL, Albert S. Sistemas operacionais: projeto e implementação. 2a edição. Porto Alegre: Bookmn, 2000.
TARIFA DE TÁXI. Tarifa de Táxi. Disponível em: <http://www.tarifadetaxi.com/>. Acesso em: 23 out. 2011.
TAURION, Cezar. Internet Móvel: Tecnologias, aplicações e modelos. Rio de Janeiro: Campus, 2002.
TAXI MAGIC. Taxi Magic. Disponível em: <http://taximagic.com/>. Acesso em: 23 out. 2011.
TELECO. Estatísticas de Celulares no Brasil. Disponível em: <http://www.teleco.com.br/ncel.asp>. Acesso em: 26 mar. 2011. VIVA O LINUX. O que é GNU/Linux. Disponível em:
<http://www.vivaolinux.com.br/linux/>. Acesso em: 25 jun. 2011.
W3C. XML. Disponível em: <http://www.w3.org/XML/>. Acesso em: 7 Ago. 2011. W3SCHOOLS. AJAX Introduction. Disponível em:
APÊNDICE B – DESCRIÇÃO DOS CASOS DE USO
Visualizar posição atual no mapa
Identificador CSU02
Descrição Neste caso de uso, estão descritos os procedimentos para o Usuáriolocalizar-se geograficamente no mapa. Ator primário Usuário
Ator secundário GPS Pré-condições --
Fluxo de tarefas
1 – Realizar CSU01.
2 – É iniciado serviço de localização por GPS.
3 – A cada 1 (um) minuto, o sistema atualiza a posição do Usuário no mapa.
Fluxos alternativos --
Fluxos de exceção 2.a - Não sendo possível acessar o serviço de GPS.2.a.1 – É mostrada uma mensagem de erro.
Pós-condições - Um ícone é plotado no mapa, indicando ao Usuário a sua posiçãogeográfica. Quadro 12 - Caso de uso CSU02 - Visualizar posição atual no mapa.
Visualizar pontos de táxis através do mapa
Identificador CSU03
Descrição Permite que o Usuário visualize as posições geográficas dos pontos detáxis utilizando o mapa. Ator primário Usuário
Ator secundário GPS, Google Maps Pré-condições --
Fluxo de tarefas 1 – Realizar CSU01.2 – A aplicação requisitará as informações geográficas dos pontos de táxis do local que seta sendo mostrado ao Usuário.
Fluxos alternativos --
Fluxos de exceção
2.a - Não sendo possível comunicar-se com o servidor da aplicação. 4.a.1 - Uma mensagem de erro é mostrada ao Usuário.
2.b - No caso de encontrar pontos de táxis sem informações geográficas.
4.b.1 - Não é mostrado no mapa.
Pós-condições - Para cada ponto de táxi que foi encontrado, é plotado no mapa umícone indicando a sua posição. Quadro 13 - Caso de uso CSU03 - Visualizar pontos de táxis através do mapa.
Visualizar lista de pontos de táxis próximos
Identificador CSU04
Descrição Com o objetivo de facilitar a busca de pontos de táxis, o sistema écapaz de listar os pontos de táxis próximos à localização do Usuário. Ator primário Usuário
Ator secundário GPS
Pré-condições - A posição do Usuário deve ser conhecida.
Fluxo de tarefas
1 – Usuário abre o menu. 2 – Seleciona a opção “Lista”.
3 – A posição geográfica do Usuário é calculada pelo GPS. 4 – Uma nova janela é aberta.
Fluxos alternativos --
Fluxos de exceção 3.a – Não sendo possível acessar o serviço do GPS. 3.a.1 – Uma mensagem de erro é mostrada. 3.a.2 – O sistema retornará à janela principal (mapa).
Pós-condições - Lista com os pontos mais próximos à um raio de 10 km, ordenadospor proximidade, em relação ao Usuário. Quadro 14 - Caso de uso CSU04 - Visualizar lista de pontos de táxis próximos.
Fonte: Elaboração dos autores, 2011.
Visualizar informações de pontos de táxis
Identificador CSU05
Descrição Permite que o Usuário visualize informações e características de umponto de táxi desejado. Ator primário Usuário
Ator secundário --
Pré-condições --
Fluxo de tarefas
1 – O Usuário abre o mapa ou listagem de pontos de táxis. 2 – O mesmo clica em um ícone de um ponto de táxi.
3 – É feita uma requisição ao servidor para buscar as informações do táxi escolhido.
Fluxos alternativos --
Fluxos de exceção 3.a - Não sendo possível comunicar-se com o servidor da aplicação. 3.a.1 - Uma mensagem de erro é mostrada ao Usuário. 3.a.2 - O sistema retornará à janela principal (mapa).
Pós-condições - É apresentada uma tela contendo todas as informações do ponto detáxi escolhido. Quadro 15 - Caso de uso CSU05 - Visualizar informações de pontos de táxis.
Visualizar histórico de chamadas
Identificador CSU06
Descrição O Usuário pode recuperar informações de pontos de táxis que foramchamados anteriormente. Ator primário Usuário
Ator secundário --
Pré-condições --
Fluxo de tarefas 1 – Usuário abre o menu.2 – O mesmo clica no item “Histórico”.
3 – É feita uma busca das últimas chamadas realizadas pelo Usuário.
Fluxos alternativos --
Fluxos de exceção 3.a - No caso de não encontrar nenhuma chamada. 3.a.1 - É apresentada uma lista vazia.
Pós-condições - É apresentada uma lista contendo as últimas 10 chamadas parapontos de táxi diferentes realizadas pelo Usuário. Quadro 16 - Caso de uso CSU06 - Visualizar histórico de chamadas.
Fonte: Elaboração dos autores, 2011.
Gerenciar favoritos
Identificador CSU07
Descrição Neste caso de uso, estão descritos as ações que o Usuário poderealizar para adicionar ou remover um ponto de táxi da sua lista de favoritos.
Ator primário Usuário
Ator secundário --
Pré-condições --
Fluxo de tarefas
1 – Usuário abre o menu.
2 – O mesmo clica no item “Favoritos”.
3 – É feita uma busca por pontos de táxis cadastrados como favorito pelo Usuário.
Fluxos alternativos --
Fluxos de exceção 3.a - No caso de não existir nenhum ponto de táxi como favorito. 3.a.1 - É apresentada uma lista vazia. Pós-condições - É aberta uma janela no qual o Usuário é capaz de ver todos ospontos de táxis que foram marcados como favoritos. Quadro 17 - Caso de uso CSU07 - Gerenciar favoritos.
Calcular estimativa de preço de corrida
Identificador CSU08
Descrição Permite que o Usuário realize um cálculo da estimativa do valor dacorrida, partindo da sua posição atual até um destino de sua escolha. Ator primário Usuário
Ator secundário GPS, Google Maps
Pré-condições - A posição do Usuário deve ser conhecida.
Fluxo de tarefas
1 – Usuário abre o menu.
2 – O mesmo clica no item “Cálculo corrida”. 3 – O Usuário seleciona o seu destino.
4 – As informações são enviadas ao servidor.
5 – O sistema encontra o ponto de táxi mais próximo. 6 – O sistema calcula a estimativa da corrida.
Fluxos alternativos --
Fluxos de exceção
4.a - Não sendo possível comunicar-se com o servidor da aplicação. 4.a.1 - Uma mensagem de erro é mostrada ao Usuário.
5.a – Não sendo possível encontrar um ponto de táxi próximo. 5.a.1 – Uma mensagem de erro é mostrada ao Usuário. 6.a - Não sendo possível acessar serviço de mapas do Google. 6.a.1 - Uma mensagem de erro é mostrada ao Usuário.
Pós-condições - É apresentado a distância e o custo estimado desta corrida.- É apresentado o ponto de táxi utilizado como referência para o cálculo da rota.
Quadro 18 - Caso de uso CSU08 - Calcular estimativa de preço de corrida. Fonte: Elaboração dos autores, 2011.
Realizar chamada
Identificador CSU09
Descrição Permite que o Usuário visualize as opções de chamadas para umponto de táxi escolhido. Ator primário Usuário
Ator secundário --
Pré-condições --
Fluxo de tarefas 1 – O Usuário seleciona um ponto de táxi de seu interesse.2 – O mesmo abre o menu. 3 – Clica no item “Chamar”.
Fluxos alternativos -- Fluxos de exceção --
Pós-condições
- Caso o ponto de táxi tenha pelo menos um número de telefone, é mostrada a opção “Telefone”.
- Caso o ponto de táxi tenha pelo menos um número de celular, é mostrada a opção “SMS”.
Quadro 19 - Caso de uso CSU09 - Realizar chamada. Fonte: Elaboração dos autores, 2011.
Realizar chamada por telefone
Identificador CSU10
Descrição O Usuário é capaz de realizar uma chamada telefônica para umdeterminado ponto de táxi.