128
UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO TECNOLÓGICO DEPARTAMENTO DE INFORMÁTICA BEATRIZ FRANCO MARTINS SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL PARA COMUNICAÇÃO COM DEFICIENTES AUDITIVOS VITÓRIA OUTUBRO DE 2012

SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

  • Upload
    vanhanh

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO

CENTRO TECNOLÓGICO

DEPARTAMENTO DE INFORMÁTICA

BEATRIZ FRANCO MARTINS

SOTAC MOBILE – UMA FERRAMENTA DE

TELEFONIA MÓVEL PARA COMUNICAÇÃO

COM DEFICIENTES AUDITIVOS

VITÓRIA OUTUBRO DE 2012

Page 2: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

BEATRIZ FRANCO MARTINS

SOTAC MOBILE – UMA FERRAMENTA DE

TELEFONIA MÓVEL PARA COMUNICAÇÃO

COM DEFICIENTES AUDITIVOS

Monografia apresentada à Universidade

Federal do Espírito Santo como requisito

parcial para obtenção do título de Bacharel em

Ciência da Computação, na área de

Inteligência Artificial, sob orientação do Prof.

Dr. Orivaldo de Lira Tavares.

VITÓRIA NOVEMBRO DE 2012

Page 3: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

BEATRIZ FRANCO MARTINS

SOTAC MOBILE – UMA FERRAMENTA DE

TELEFONIA MÓVEL PARA COMUNICAÇÃO

COM DEFICIENTES AUDITIVOS

COMISSÃO EXAMINADORA

Prof. Orivaldo de Lira Tavares D.Sc.

Universidade Federal do Espírito Santo

Orientador

Prof. Jadir Eduardo Souza Lucas M.Sc.

Universidade Federal do Espírito Santo

Prof. Luis Cláudius Coradine D.Sc.

Universidade Federal de Alagoas

Prof. Wesley Lucas Breda M.Sc.

Faculdade Católica Salesiana do Espírito Santo

Vitória 12 de novembro de 2012

Page 4: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

Agradeço a Deus.

Postumamente a minha querida madrinha

Belinha.

A meus pais pelo incentivo de uma vida toda.

A meu esposo Paulo Sérgio pela compreensão,

apoio e ajuda.

E a meus mestres da UFES.

Page 5: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

Declaração dos Universal dos Direitos Humanos

Artigo 1º

Todos os seres humanos nascem livres e iguais em dignidade e em direitos. Dotados de razão e de consciência, devem agir para uns com os outros em espírito de fraternidade.

Artigo 2º

Todos os seres humanos podem invocar os direitos e as liberdades proclamados na presente Declaração, sem distinção alguma, nomeadamente de raça, de cor, de sexo, de língua, de religião, de opinião política, de origem nacional ou social, de fortuna, de nascimento ou de qualquer outra situação.

Page 6: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

RESUMO

As novas tecnologias de telefonia celular, que a partir da mudança de

paradigma iniciada pela Apple na criação do iPhone, deram início a criação de

uma infinidade de smartphones e outros recursos, tais quais estão disponíveis

à população em geral a um custo bastante acessível de tal forma que hoje, no

Brasil, há mais celulares que pessoas, de acordo com dados do IBGE. Porém,

para os deficientes auditivos (DA), a realidade do celular limita-se a

comunicação por meio dos popularmente conhecidos torpedos ou por e-mail

para aqueles que possuem internet móvel, já que sua condição especial não os

permite usar todo o potencial das novas tecnologias da telefonia móvel atual.

Este trabalho visa abrir uma nova porta para a comunicação dos DA na

sociedade, permitindo-lhes usar um dispositivo móvel para fazer traduções

automáticas de português para LIBRAS como sendo uma evolução, baseada

no Sistema SOTAC, criado na Universidade Federal do Espírito Santo por

Wesley Lucas Breda e pelo Prof. Dr. Orivaldo Lira Tavares, que teve sua

origem em uma evolução do sistema FALIBRAS-MT.

Page 7: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

SUMÁRIO

CAPÍTULO 1 ............................................................................................................................................ 14

INTRODUÇÃO ......................................................................................................................................... 14

1.1 Objetivos .................................................................................................................................. 15 1.1.1 Objetivos gerais ......................................................................................................................................... 15 1.1.2 Objetivos específicos ................................................................................................................................. 15

1.2 Justificativa .............................................................................................................................. 16

1.3 Metodologia ............................................................................................................................. 17

1.4 Estrutura da monografia .......................................................................................................... 17

1.5 Observações a respeito do texto dissertativo ............................................................................ 18

CAPÍTULO 2 ............................................................................................................................................ 19

TECNOLOGIA APLICADA E TRABALHOS CORRELATOS ......................................................................................... 19

2.1 Tradução Automática ............................................................................................................... 19

2.2 FALIBRAS (CORADINE et al., 2002) ............................................................................................ 20

2.3 FALIBRAS-MT(TAVARES; CORADINE; BREDA, 2005) .................................................................. 21

2.4 FALIBRAS-TS (CORADINE, 2006) ................................................................................................ 22

2.5 SOTAC (TAVARES; BREDA, 2008) ............................................................................................... 23

2.6 FALIBRAS-WEB (FRANCO; SILVA; BRITO, 2010) ......................................................................... 24

2.7 Player Rybená .......................................................................................................................... 25

2.8 Torpedo Rybená ....................................................................................................................... 25

2.9 Rybená TV ................................................................................................................................ 26

CAPÍTULO 3 ............................................................................................................................................ 28

TECNOLOGIA MÓVEL ................................................................................................................................ 28

3.1 Breve Histórico ......................................................................................................................... 28

3.2 Conceitos da telefonia móvel celular ........................................................................................ 31

3.3 Telefonia móvel analógica ........................................................................................................ 32 3.3.1 Primeira geração (1G) ............................................................................................................................... 32

3.4 Telefonia móvel digital ............................................................................................................. 33 3.4.1 Segunda geração (2G) ............................................................................................................................... 34 3.4.2 Segunda geração e meio (2,5G) ................................................................................................................ 35 3.4.3 Terceira geração (3G) ................................................................................................................................ 36 3.4.4 Quarta geração (4G) .................................................................................................................................. 37

3.5 Sistemas operacionais para DM ............................................................................................... 38 3.5.1 EPOC OS ..................................................................................................................................................... 42 3.5.2 Palm OS ...................................................................................................................................................... 43 3.5.3 Windows Mobile ....................................................................................................................................... 43 3.5.4 Symbian...................................................................................................................................................... 44 3.5.5 Android ...................................................................................................................................................... 45 3.5.6 iOS .............................................................................................................................................................. 46 3.5.7 BlackBarry OS............................................................................................................................................. 47 3.5.8 Bada ........................................................................................................................................................... 48 3.5.9 Meego ........................................................................................................................................................ 48

3.6 Desenvolvimento de Software para DM .................................................................................... 49 3.6.1 Limitações .................................................................................................................................................. 49 3.6.2 Linguagens de programação ..................................................................................................................... 52 3.6.3 Bancos de dados ........................................................................................................................................ 54 3.6.4 Internet ...................................................................................................................................................... 55

3.7 O futuro da telefonia móvel ...................................................................................................... 57

Page 8: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

CAPÍTULO 4 ............................................................................................................................................ 59

O SISTEMA SOTAC-MOBILE ..................................................................................................................... 59

4.1 Requisitos ................................................................................................................................. 59 4.1.1 Requisitos funcionais ................................................................................................................................. 59 4.1.2 Requisitos técnicos .................................................................................................................................... 60

4.2 Tecnologias avaliadas .............................................................................................................. 60 4.2.1 Plataforma Java ......................................................................................................................................... 60 4.2.2 J2EE ............................................................................................................................................................ 63 4.2.3 J2ME ........................................................................................................................................................... 64 4.2.4 Dispositivos série S60 com Symbian ......................................................................................................... 66 4.2.5 Apache Tomcat .......................................................................................................................................... 67 4.2.6 Computação distribuída – RMI ................................................................................................................. 67 4.2.7 Arcademis / RME ....................................................................................................................................... 69 4.2.8 Streaming ................................................................................................................................................... 70 4.2.9 IDE NetBeans ............................................................................................................................................. 71 4.2.10 Astah ........................................................................................................................................................ 71

4.3 Modelagem .............................................................................................................................. 72 4.3.1 Arquitetura do SOTAC–Mobile ................................................................................................................. 72 4.3.2 Casos de Uso .............................................................................................................................................. 74 4.3.3 Configurações ............................................................................................................................................ 80 4.3.4 UML ............................................................................................................................................................ 82 4.3.5 Recursos ..................................................................................................................................................... 84

4.4 Implementação ........................................................................................................................ 86 4.4.1 Versões das ferramentas .......................................................................................................................... 86 4.4.2 Plataformas de desenvolvimento ............................................................................................................. 86 4.4.3 Definição das camadas do sistema ........................................................................................................... 88 4.4.4 Streaming e formato dos arquivos de vídeo ............................................................................................ 89 4.4.5 Portabilidade ............................................................................................................................................. 90 4.4.6 Interface ..................................................................................................................................................... 91 4.4.7 Fluxo de desenvolvimento ........................................................................................................................ 95 4.4.8 Codificação................................................................................................................................................. 96 4.4.9 Resultados alcançados ............................................................................................................................ 105

CAPÍTULO 5 .......................................................................................................................................... 106

CONSIDERAÇÕES FINAIS .......................................................................................................................... 106

5.1 Análise de portabilidade ......................................................................................................... 106 5.1.1 Portablidade para dispositivos móveis compativeis com plataforma J2ME ......................................... 106 5.1.2 Portabilidade para dispositivos móveis com Android............................................................................ 107 5.1.3 Portabilidade para dispositivos móveis com Windows Mobile ou Windows Phone ........................... 109 5.1.4 Portablidade para dispositivos móveis BlackBerry ................................................................................ 109 5.1.5 Portabilidade para dispositivos Apple .................................................................................................... 110 5.1.6 Portabilidade para dispositivos de outras plataformas ......................................................................... 110

5.2 Análise de escalabilidade ........................................................................................................ 111 5.2.1 Expansão do SOTAC de forma completa para a web ............................................................................. 111 5.2.2 Melhoramento do SOTAC-Mobile no processo de seleção das Memórias de Tradução ..................... 112 5.2.3 Futura utilização de SOA. ........................................................................................................................ 113 5.2.4 Integração do SOTAC-Mobile com soluções de animação 2D ou 3D .................................................... 114 5.2.5 Futura migração do sistema para HTML5 e WAP .................................................................................. 115

5.3 Conclusão ............................................................................................................................... 116

REFERÊNCIAS ....................................................................................................................................... 117

ANEXO A .............................................................................................................................................. 123

LEI LIBRAS ......................................................................................................................................... 123

Page 9: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

LEI Nº 10.436, DE 24 DE ABRIL DE 2002. ................................................................................... 123

ANEXO B .............................................................................................................................................. 125

SISTEMA MÓVEL CELULAR NO BRASIL ........................................................................................................ 125

ANEXO C .............................................................................................................................................. 128

ACESSO AO PROTÓTIPO .......................................................................................................................... 128

Page 10: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

ÍNDICE DE FIGURAS

FIGURA 2.1 – PROPOSTA INICIAL DO PROJETO FALIBRAS .................................................................................... 21

FIGURA 2.2 - MÓDULO DE TRADUÇÃO DO FALIBRAS-MT (BREDA, 2005, PÁG. 25) ............................................... 22

FIGURA 2.3 – MÓDULO DE AUTORIA DE TRADUTORES DO FALIBRAS-MT (BREDA, 2005, PÁG. 26) ........................... 22

FIGURA 2.4 – ARQUITETURA DO FALIBRAS-TS................................................................................................. 22

FIGURA 2.5 – TRADUTOR DE TEXTOS PARA USUÁRIO PADRÃO SOTAC (BREDA, 2008 PÁG. 75) .................................. 23

FIGURA 2.6 - MÓDULO DE INFERÊNCIA GRAMATICAL DO SOTAC (BREDA, 2008, PÁG. 64) ....................................... 23

FIGURA 2.7 – ARQUITETURA DO FALIBRAS-WEB. ............................................................................................ 24

FIGURA 2.8 – TELA PRINCIPAL DO PLAYER RYBENÁ.............................................................................................. 25

FIGURA 2.9 – TELA DE LOGIN DO TORPEDO RYBENÁ. ........................................................................................... 25

FIGURA 2.10 – TELA DA CAIXA DE ENTRADA DO TORPEDO RYBENÁ. ........................................................................ 26

FIGURA 2.11 – TELAS DE MENSAGEM DO TORPEDO RYBENÁ. ................................................................................ 26

FIGURA 2.12 – TELA DA PRINCIPAL DO RYBENÁ TV. ............................................................................................ 27

FIGURA 2.13 – TELA DE EXECUÇÃO DO RYBENÁ TV. ............................................................................................ 27

FIGURA 3.1 – DYNATAC 8000X DA MOTOROLA EM 1983. ................................................................................. 28

FIGURA 3.2 – EVOLUÇÃO DA TECNOLOGIA DE TELEFONIA MÓVEL NO BRASIL. ............................................................ 30

FIGURA 3.3 – REPRESENTAÇÃO DE UMA REDE AMPS DE TELEFONIA CELULAR. .......................................................... 31

FIGURA 3.4 – DISPOSITIVOS 1G (NOKIA MOBIRA CYTYMAN 900 DE 1987, MOTOROLA MICROTAC DE 1989 E STARTAC DE

1996). ............................................................................................................................................ 33

FIGURA 3.5 – DISPOSITIVOS 2G (MOTOROLA STARTAC DE 1996 E NOKIA 3320 DE 2000). ....................................... 35

FIGURA 3.6 – DISPOSITIVOS 2,5G (LG CHAMP BX4170 E MOTOROLA RAZR V3 – AMBOS DE 2004). ......................... 35

FIGURA 3.7 – DISPOSITIVOS 3G (NOKIA 6120C DE 2007 E NOKIA SMARTPHONE E63 DE 2008, MODEM CELULAR DLINK,

APPLE IPHONE WWDC 2009 E IPAD 1 DE 2010). ................................................................................... 37

FIGURA 3.8 – DISPOSITIVOS 4G (VODAFONE CONNECT PEN K5005, MOTOROLA TRIUNPH 4G AMBOS LANÇADOS EM JUNHO

E O IPHONE 4G AINDA NÃO LANÇADO NO BRASIL). ..................................................................................... 38

FIGURA 3.9 – CAMADAS DO WAP. ................................................................................................................. 56

FIGURA 3.10 – DISPOSITIVOS DO FUTURO IDEALIZADOS PELOS DESIGNERS DE DIVERSOS FABRICANTES. ............................ 58

FIGURA 4.1 – CODIFICAÇÃO EM PLATAFORMA JAVA. ......................................................................................... 61

FIGURA 4.2 – ARQUITETURA DA PLATAFORMA JAVA (ORACLE, 2012). ................................................................ 62

FIGURA 4.3 – ARQUITETURA DA PLATAFORMA J2EE (ORACLE, 2012). ................................................................. 63

FIGURA 4.4 – ARQUITETURA DA PLATAFORMA J2ME (ORACLE, 2012). ................................................................ 65

FIGURA 4.5 – CODIFICAÇÃO EM PLATAFORMA J2ME (ORACLE, 2012). ................................................................ 65

FIGURA 4.6 – CICLO PADRÃO DE EXECUÇÃO DE UM MIDLET. ................................................................................ 66

FIGURA 4.7 – CONTÊINER WEB. ..................................................................................................................... 67

FIGURA 4.8 – ARQUITETURA RMI. ................................................................................................................. 68

FIGURA 4.9 – ARQUITETURA DO SISTEMA SOTAC – MOBILE. ............................................................................... 72

FIGURA 4.10 – INTERFACE ENTRE AS APLICAÇÕES DO SOTAC-MOBILE. ................................................................... 73

FIGURA 4.11 – CASOS DE USO DO MIDLET SOTAC – MOBILE. ............................................................................. 74

FIGURA 4.12 – CASOS DE USO DO SERVLET SOTAC – EMOBILE. ......................................................................... 78

FIGURA 4.13 – PERFIL PARA O SOTAC – MOBILE. NO SOTAC. ............................................................................ 81

FIGURA 4.14 – DIAGRAMA DE CLASSES DO MIDLET SOTAC – MOBILE. ................................................................. 82

FIGURA 4.15 – DIAGRAMA DE CLASSES DO SERVLET SOTAC – EMOBILE. .............................................................. 83

FIGURA 4.16 – DIAGRAMA DE CLASSES DA TRADUÇÃO DO SOTAC. ........................................................................ 83

FIGURA 4.17 – CAMADAS DO SISTEMA SOTAC-MOBILE...................................................................................... 88

FIGURA 4.18 – TELAS DE ABERTURA E PRINCIPAL DO SOTAC–MOBILE OBTIDAS VIA EMULADOR. .................................. 91

FIGURA 4.19 – MENU PRINCIPAL E TRADUÇÃO NO SOTAC–MOBILE OBTIDAS VIA EMULADOR. ..................................... 92

FIGURA 4.20 – TELA DE ESPERA E EXIBIÇÃO DE VÍDEOS NO SOTAC–MOBILE OBTIDAS VIA EMULADOR. ........................... 92

FIGURA 4.21 – SERVIÇO REMOTO SERVLET SOTAC –EMOBILE EM EXECUÇÃO NO SERVIDOR ...................................... 93

Page 11: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

FIGURA 4.22 – TELA DE ACESSO AO SERVLET SOTAC –WMOBILE OBTIDA VIA BROWSER IE. ...................................... 94

FIGURA 4.23 – TELA DE TRADUÇÕES DO SERVLET SOTAC –WMOBILE OBTIDA VIA BROWSER IE. ................................. 94

FIGURA 4.24 – TELA DE RESULTADO NO SERVLET SOTAC –WMOBILE OBTIDA VIA BROWSER IE. ................................. 95

FIGURA 4.25 – FLUXO DE DESENVOLVIMENTO DO SOTAC – MOBILE. .................................................................... 95

FIGURA 5.1 – NOKIA S40 ASHA 311 E LG C205 PODEM EXECUTAR O MIDLET SOTAC – MOBILE. ............................ 107

FIGURA 5.2 – EXEMPLO DE NOVAS POSSÍVEIS CAMADAS PARA O SOTAC-MOBILE. ................................................... 108

FIGURA B.1 – PRESENÇA DAS PRESTADORAS DE TELEFONIA MÓVEL (ANATEL, 23/06/2009). .................................. 126

Page 12: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

ÍNDICE DE TABELAS

TABELA 2.1 – PLATAFORMAS ACEITAS PELO TORPEDO RYBENÁ. ............................................................................. 26

TABELA 3.1 – EVOLUÇÃO DOS PRINCIPAIS SISTEMAS OPERACIONAIS PARA DISPOSITIVOS MÓVEIS. ................................... 41

TABELA B.1 – EVOLUÇÃO DA TELEFONIA MÓVEL NO BRASIL. ............................................................................... 125

TABELA B.2 – TECNOLOGIAS NÃO USADAS NO BRASIL. ....................................................................................... 125

TABELA B.3 – O FUTURO DA TELEFONIA MÓVEL NO BRASIL. ................................................................................ 125

TABELA B.4 – EVOLUÇÃO DO NÚMERO DE TERMINAIS HABILITADOS NO SMC NO BRASIL (ANATEL, 2011). ................. 127

Page 13: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

ÍNDICE DE GRÁFICOS

GRÁFICO 3.1 – DIVISÃO DO MERCADO DE SMARTPHONES NO BRASIL (GARTNER, 2010). ............................................ 41

GRÁFICO B.1 - EVOLUÇÃO DO NÚMERO DE TERMINAIS HABILITADOS NO SMC NO BRASIL (ANATEL, 2011). ................ 127

Page 14: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 14

Capítulo 1

Introdução

De acordo com Breda (2005), os deficientes auditivos (DA) não são contemplados com muitos recursos de acesso às informações, principalmente nos que se referem ao aprendizado. Alguns aparatos legais foram criados para suprir algumas necessidades básicas dessas pessoas, mas pouco foi feito para levar esses aparatos a elas. Uma criança DA que estuda em uma escola de alfabetização tem o direito a um intérprete para acompanhamento, mas as escolas relutam em aceitar esse tipo de aluno devido ao custo e a dificuldade de manter intérpretes.

A Lei LIBRAS nº 10.436 de 22 de abril de 2002 veio oficializar a Linguagem

Brasileira de Sinais como a língua oficial dos DA no país. De fato no contexto

DA nacional, esta lei é muito importante, quando consideramos as dimensões

territoriais do nosso país, no sentido de mantermos um único idioma materno,

tanto no nível do Português quanto no nível de LIBRAS. Assim se abriram

inúmeras possibilidades para a inclusão social dos DA, tanto por meio de

cursos de LIBRAS, que estão disponíveis tanto para DA quanto para ouvintes

que querem estar abertos a essa língua, como por meio de ferramentas

multimídia que foram e estão sendo implementadas e aprimoradas para fins de

inclusão digital.

Vários são os projetos e ferramentas disponíveis, e mais recentemente foi

desenvolvido o Projeto SOTAC baseado no Sistema FALIBRAS-MT, cujo

principal objetivo é fazer a tradução automática de textos de uma linguagem

fonte (LF) para uma linguagem alvo (LA), sendo como estudo de caso o uso de

Português como LF e LIBRAS como LA. Destes projetos surgiu a evolução

FALIBRAS-WEB desenvolvido na Universidade Federal de Alagoas, que traz

para o ambiente da internet o projeto FALIBRAS-MT e SOTAC.

Este trabalho apresenta-se como uma solução móvel para o FALIBRAS-WEB,

SOTAC e FALIBRAS-MT, que deve estar disponível nos dispositivos de

telefonia móvel de mercado para em um primeiro momento fazer tradução de

Page 15: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 15

Português no formato texto (LA) para LIBRAS (LF) em formato de sinais

(vídeos). Da mesma maneira que o SOTAC este trabalho não está

especificamente direcionado a estas linguagens, podendo ser direcionados

para quaisquer linguagens fonte e alvo. Chamaremos este sistema de SOTAC–

Mobile.

1.1 Objetivos

O objetivo deste trabalho é apresentar uma proposta de um sistema para

ambiente de telefonia móvel para complementar o projeto FALIBRAS a nível de

tradução automática de Português para LIBRAS dando mais liberdade na

comunicação dos DA.

1.1.1 Objetivos gerais

Projetar e desenvolver o sistema SOTAC–Mobile, que tem como finalidade

disponibilizar as funcionalidades até então desenvolvidas a nível desktop pelos

módulos FALIBRAS-MT e SOTAC e na web pelo FALIBRAS-WEB em

ambiente de telefonia celular, permitindo aos usuários DA, a real possibilidade

de inclusão social e digital.

1.1.2 Objetivos específicos

O sistema tem como proposta inicial, apenas a tradução da língua fonte o

Português, texto escrito no dispositivo móvel, para a língua alvo, vídeo

mostrado na tela do dispositivo móvel. Fica para uma adição posterior a

tradução do áudio (voz) para a linguagem texto em Português, que constitui a

primeira etapa de tradução do projeto FALIBRAS.

Não são abordadas questões relacionadas à edição dos dicionários, nem de

configurações de perfil usuário. Isso significa dizer que o sistema está sempre

funcionando com usuário único e no perfil de usuário móvel, não havendo

acesso administrativo nem de colaboradores ou usuários padrão,

diferentemente do que ocorre no SOTAC. O usuário móvel tem as mesmas

funções do usuário padrão do SOTAC, mas para sua identificação é automática

Page 16: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 16

e genérica e não é permitido a alteração de sua senha. A finalidade desta

opção é tornar o sistema o mais simples e leve possível, permitindo-o ser

executado em diferentes plataformas móveis de forma eficiente, já que as

mesmas possuem limitação de processamento e memória, em oposição ao que

ocorre nos computadores pessoais.

1.2 Justificativa

Desde a mudança de paradigma ocorrida com o advento da terceira geração

da telefonia móvel, conhecida popularmente como tecnologia 3G, a telefonia

celular vem sofrendo uma evolução rápida e avassaladora. Surgiram então

vários novos dispositivos conhecidos como smartphones, mas o lançamento do

iPhone pela Apple, é o real divisor de águas que transformou os aparelhos de

telefonia móvel em verdadeiros equipamentos multimídia, deixando para traz o

simples telefone para comunicação de voz.

Atualmente há mais telefones móveis no Brasil, do que pessoas. Segundo

dados do IBGE (Instituto Brasileiro de Geografia e Estatística) e da ANATEL

(Agência Nacional de Telecomunicações). Ao final de 2010 havia no país

202,94 milhões de telefones celulares, com crescimento de 16,66% em relação

a 2009. Isso equivale a 104,68 aparelhos para cada 100 habitantes. Em um

país com 185,71 milhões de habitantes (segundo o censo 2010), dos quais 5,7

milhões (segundo o censo 2000 – censo 2010 ainda em processamento) são

deficientes auditivos totais ou parciais, vemos que essas pessoas tornaram-se

uma classe de excluídos.

Neste cenário, para os deficientes auditivos (DA), a tecnologia de telefonia

móvel 3G permitiu uma nova forma de comunicação por meio de SMS (Short

Message Service), ou torpedos como são popularmente conhecidos. Porém

esta tecnologia limita-se a certas condições e não facilita a vida dos DA, afinal

seu idioma natural é LIBRAS e não o Português, que para eles é um segundo

idioma. O sistema SOTAC-Mobile, vem ocupar esta lacuna. Apesar da

proposta inicial não contemplar o uso do áudio, a possibilidade de tradução em

plataforma móvel, abre as portas para uma nova visão do projeto FALIBRAS.

Page 17: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 17

1.3 Metodologia

Devido à vasta gama de plataformas móveis atualmente existentes, foi feito

uma pesquisa dos principais ambientes de desenvolvimento móvel por meio de

fontes como livros, artigos e internet. Desta forma optou-se pela linguagem de

programação Java (J2ME), pois é aceita pela maioria das plataformas. Para o

desenvolvimento optou-se pelo uso de uma das IDEs disponíves, de modo a

organizar melhor o desenvolvimento. A este tipo de ferramenta podem ser

adicionados vários SDKs para desenvolvimento nas várias plataformas móveis.

Cada plataforma tem suas peculiaridades e cada uma é indicada para uma

determinada marca e modelo de dispositivo móvel, isso varia de fabricante para

fabricante. Há outras particularidades no desenvolvimento para dispositivos

móveis, que estão relacionadas à banda de rede e ao sistema usados. Assim

preferimos restringir num primeiro momento o desenvolvimento para aparelhos

Nokia série S60 terceira edição (S60_3rd_Edition_SDK_Feature_Pack_2_v1_1

for Nokia devices), que incluem os modelos E62, E63 dentre outros, e utiliza o

sistema Symbian. do mesmo fabricante.

1.4 Estrutura da monografia

Capítulo 1 – Apresenta a proposta de trabalho, objetivos, justificativa e

metodologia.

Capítulo 2 – Faz uma breve análise da tradução automática e um histórico dos

projetos correlatos (Player Rybená, TLibras, FALIBRAS, FALIBRAS-TS,

FALIBRAS-MT, FALIBRAS-WEB e SOTAC).

Capítulo 3 – Trata da tecnologia móvel, histórico, evolução com vistas mais

especificamente à telefonia móvel celular no Brasil.

Capítulo 4 – Apresenta o projeto, a análise e a implementação do sistema

SOTAC – Mobile.

Capítulo 5 – Apresenta as considerações finais e as perspectivas futuras.

Page 18: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 18

Anexo A – Lei nº 10.436/2002.

Anexo B – Sistema móvel celular no Brasil.

Anexo C – Informações de acesso ao protótipo.

1.5 Observações a respeito do texto dissertativo

No texto desta monografia são usados termos e palavras, que são jargões dos

profissionais das áreas de Tecnologia da Informação e Telecomunicações, os

quais possuem significados diferentes dos existentes e fixados pelos

dicionários da Lingua Portuguesa.

Também são usadas diversas siglas das áreas de Tecnologia da Informação e

Telecomunicações, cuja origem estão no Inglês, e tem seus significados

traduzidos ou explicados no decorrer do texto.

Neste trabalho é utilizado o Novo Acordo Ortográfico da Língua Portuguesa,

promulgado pelo Ex-presidente Luiz Inácio Lula da Silva no dia 29 de setembro

de 2008, e composto pelos Decretos Nº 6.583, Nº 6.584, Nº 6.585 e Nº 6.586.

Page 19: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 19

Capítulo 2

Tecnologia aplicada e trabalhos correlatos

Neste capítulo falaremos brevemente sobre a tecnologia usada na tradução

automática, e os trabalhos relacionados à proposta deste projeto.

2.1 Tradução Automática

A tradução automática (TA) é o processo automático de tradução de um idioma

original para outro idioma alvo, através do computador.

A TA não é nada simples, muito pelo contrário. As línguas humanas consistem

em morfologia (modo como as palavras são montadas), sintaxe (estrutura da

frase) e semântica (sentido que se quer expor). Nesse cenário qualquer texto

simples pode estar cheio de ambiguidades.

Segundo Nirenburg (1987), a tradução automática teria sido a primeira aplicação não numérica proposta dentro da nova área da ciência da computação, instigada pela explosão da transmissão de informações e pela relativa facilidade (segundo erroneamente se imaginava) de se calcar o processo computacional em uma técnica humana aparentemente simples.

Os aplicativos de auxílio à tradução podem ser encaixados em duas categorias:

os sistemas de tradução por computador, ou tradução automática:

MT (Machine Translation systems), são aqueles capazes de realizar o

processo tradutório completo, mas pode não excluir pré e/ou pós edição

humana.

MAT (Machine-Aided Translation systems) - são os sistemas automáticos

de auxílio à tradução. Estes subdividem-se em sistemas de tradução

automática assistida por humanos (HAMT - Human-Aided Machine

Translation) ou de tradução humana assistida por computador (MAHT -

Machine-Aided Human Translation), segundo quem realiza as tarefas

centrais e quem presta auxílio de forma mais secundária.

Page 20: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 20

Existem determinados métodos que caracterizam os diferentes sistemas de tradução automática. Em geral faz-se referência a três pares delas: tradução direta vs. tradução indireta, interlíngua vs. transferência e análise local vs. análise global (Slocum, J. 1985; Tucker, A. 1987).

Há também dois paradigmas que subdividem os sistemas que usam os métodos

acima citados. O paradigma fundamental corresponde aos sistemas baseados

em conhecimento profundo, fundamental ou linguístico, enquanto o paradigma

empírico agrupa os sistemas que se baseiam em conhecimento superficial ou

empírico.

Tais métodos e paradigmas podem misturar e combinar-se de várias maneiras

diferentes. De forma geral a TA, tem se tornado cada vez mais uma tarefa

multidisciplinar, levando à Ciência da Computação uma busca constante de

soluções para atender as diversas necessidades da sociedade.

Atualmente estão sendo feitos vários estudos de caso de tradução automática

utilizando o Português como língua fonte e LIBRAS como língua alvo, para

melhorar a inclusão social e digital dos DA, como veremos a seguir.

2.2 FALIBRAS (CORADINE et al., 2002)

Com a finalidade de melhorar a inclusão social e digital dos DA foi criado na

Universidade Federal de Alagoas (UFAL), com o apoio do CNPq e da Fundação

de Amparo à Pesquisa do Estado de Alagoas (FAPEAL), o projeto FALIBRAS.

O projeto FALIBRAS tem como inicial principal objetivo, desenvolver um sistema

de tradução automática de Português (falado) para LIBRAS (em gestos). Para

tanto, o áudio em Português é captado pelo microfone e sofre a tradução, de

modo a ser apresentado em LIBRAS e em tempo real por meio de uma

sequência de vídeos.

Page 21: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 21

Figura 2.1 – Proposta inicial do projeto FALIBRAS

O FALIBRAS é baseado em tecnologias de estruturas de dados, bancos de

dados e de animações e está dividido em etapas. Na primeira etapa o áudio

captado é convertida em texto usando recursos do IBM ViaVoice. Em seguida o

texto é analisado por um interpretador que corrige a ortografia do texto e define o

contexto em que as palavras estão inseridas na frase. Posteriormente o sistema

faz a tradução e executa as animações correspondentes ao que foi dito.

O FALIBRAS foi projetado para utilizar Java como ferramenta de

desenvolvimento, pois é multiplataforma, orientada a objetos e perfeitamente

compatível com o IBM ViaVoice, MySQL como banco de dados por ser gratuito,

o JSpell como corretor ortográfico e para as animações foi usado o Macromedia

Flash, que atualmente foi comprado pela Adobe, porque gera dados que ocupam

pouco espaço.

A partir do projeto FALIBRAS descrito no item acima, surgiram várias iniciativas

para sua evolução, como veremos a seguir.

2.3 FALIBRAS-MT(TAVARES; CORADINE; BREDA, 2005)

Segundo Breda (2005), o sistema FALIBRAS-MT é constituído pelos módulos de tradução e de autoria de tradutores. O módulo de tradução disponibiliza um ambiente que contém todas as funcionalidades necessárias para estabelecer traduções usando memórias de tradução, [apresentado na Figura 2.2]. O módulo de autoria de tradutores disponibiliza um ambiente contendo todas as funcionalidades necessárias para que os usuários possam atuar diretamente nas memórias de tradução, [como apresentado na Figura 2.3].

TEXTO

FONTE Processo

Cliente

ÁUDIO CAPTURADO

PELOS PERIFÉRICOS TRADUÇÃO TRADUÇÃO

Page 22: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 22

Figura 2.2 - Módulo de tradução do FALIBRAS-MT (BREDA, 2005, pág. 25)

Figura 2.3 – Módulo de autoria de tradutores do FALIBRAS-MT (BREDA, 2005, pág. 26)

2.4 FALIBRAS-TS (CORADINE, 2006)

O FALIBRAS-TS foi desenvolvido como sendo uma interface tradutora baseada

em sintaxe, que utiliza técnicas baseadas no processamento de linguagem

natural, com gramáticas, usadas para processar expressões.

Figura 2.4 – Arquitetura do FALIBRAS-TS.

A primeira versão do FALIBRAS-TS está implementada em PROLOG e em

Java. Uma segunda versão, baseada em componentes orientados a objetos,

está implementada em C++ (CALADO, 2006), usa tratamento de ambiguidade e

transferência sintática (RIBEIRO, 2007).

VÍDEOS TRADUÇÃO TEXTO

FONTE TRADUÇÃO

RECONHECEDOR

DE FALA

DICIONÁRIO

VÍDEOS

ÁUDIO CAPTURADO

PELOS PERIFÉRICOS

ANALISADOR LÉXICO

E SINTÁTICO

TEXTO

PARCIAL VÍDEOS TRADUÇÃO TEXTO

FONTE TRADUÇÃO

DICIONÁRIO

SÍMBOLOS

DICIONÁRIO

VÍDEOS

MEMÓRIA DE TRADUÇÃO

TEXTO

FONTE VÍDEOS TRADUÇÃO

Page 23: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 23

2.5 SOTAC (TAVARES; BREDA, 2008)

Segundo Breda (2008), o SOTAC é um ambiente para autoria e o uso de tradutores automatizados, sendo, baseado na utilização de memória de tradução e regras de tradução, derivadas de inferência gramatical, sobre os exemplos da memória de tradução. A interface desse ambiente está contextualizada na tradução de Português (texto) para LIBRAS sinalizada (vídeos), tendo como produto parcial da tradução a LIBRAS escrita (texto). No entanto, os algoritmos e os mecanismos de tradução, utilizados pelo ambiente, estão generalizados de qualquer língua-fonte escrita (textos) para qualquer língua-alvo falada (áudio) e/ou sinalizada (vídeos), tendo como produto parcial da tradução a língua-alvo escrita (textos).

Figura 2.5 – Tradutor de textos para usuário padrão SOTAC (BREDA, 2008 pág. 75)

A arquitetura do SOTAC é totalmente baseada na arquitetura do FALIBRAS-MT,

tendo sido adicionado a este o módulo de inferência gramatical.

Figura 2.6 - Módulo de inferência gramatical do SOTAC (BREDA, 2008, pág. 64)

O SOTAC foi desenvolvido em linguagem C# (C Sharp) em ambiente

SharpDevelop 2.2.0.2595, e usou banco de dados PostgreSQL 1.4.3.

MEMÓRIA DE

TRADUÇÃO INFERÊNCIA GRAMÁTICA

Page 24: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 24

2.6 FALIBRAS-WEB (FRANCO; SILVA; BRITO, 2010)

O FALIBRAS-WEB foi desenvolvido na Universidade Federal de Alagoas, para

estender ao ambiente da internet o FALIBRAS, permitindo aos DA uma real

inclusão digital. O sistema tem a finalidade de executar a tradução de

documentos on-line a fim de proporcionar autonomia aos DA no ambiente da

internet. Para tanto foi desenvolvido um add-on para o browser Firefox, e a

concepção da interface gráfica adaptada às necessidades do público alvo.

Figura 2.7 – Arquitetura do FALIBRAS-WEB.

Foi utilizado o XUL, uma linguagem baseada em XML, para o desenvolvimento

da interface e para adicionar os elementos necessários ao Firefox. O JavaScript

foi usado para o desenvolvimento das funções de comunicação do sistema com

ao módulos do FALIBRAS.

TRADUTOR

FALIBRAS

ADD-ON

INTERFACE

(XUL)

COMUNICAÇÃO

(JAVASCRIPT)

TEXTO SOLICITADO

TEXTO EM UM TIPO JAVA

ADEQUAÇÃO DO GIF PARA XUL GIF (CONJUNTO DE ANIMAÇÕES) COM A

TRADUÇÃO

Page 25: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 25

2.7 Player Rybená

Rybená, significa comunicação, no idioma indígena Xavante. O Player Rybená

foi desenvolvido para tradução textos escritos ou de páginas web de Português

para LIBRAS.

Figura 2.8 – Tela principal do Player Rybená.

2.8 Torpedo Rybená

A partir do Player Rybená, em 2005 surgiu o Torpedo Rybená, que envia e

recebe mensagens no formato texto via SMS convertidas para LIBRAS.

Atualmente o software é de distribuição gratuita, mas funciona em um conjunto

limitado de aparelhos e é oferecido pela Brasil Telecom GSM, sendo cobrada

uma tarifa de R$0,26 (valor da época) por mensagem e conexão GPRS.

Figura 2.9 – Tela de login do Torpedo Rybená.

Page 26: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 26

Figura 2.10 – Tela da caixa de entrada do Torpedo Rybená.

Figura 2.11 – Telas de mensagem do Torpedo Rybená.

A seguir os dispositivos compatíveis com o Torpedo Rybená.

Dispositivos móveis Marca Séries / Modelos

Siemens CX65, M65 Nokia 6600, 3660

Tabela 2.1 – Plataformas aceitas pelo Torpedo Rybená.

O software pode ser baixado via site WAP (Wireless Application Protocol) da

Brasil Telecom GSM

2.9 Rybená TV

Recentemente surgiu também o Rybená TV, também como extensão do Rybená

Player, que permite aos DA terem acesso à TV digital por meio de LIBRAS

Page 27: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 27

usando a tecla Close Captions padrão dos aparelhos de TV digitais. Porém esta

proposta se deparou com diversos problemas em relação a tradução em tempo

real bem como a obtenção dos textos em Close Captions.

A seguir estão mostradas as principais telas do sistema Rybená TV.

Figura 2.12 – Tela da principal do Rybená TV.

Figura 2.13 – Tela de execução do Rybená TV.

Para a implementação foi escolhido o Java EE, com biblioteca Java AWT para a

camada de visualização, e o banco de dados HSQLDB da Sun.

Page 28: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 28

Capítulo 3

Tecnologia móvel

Neste capítulo falaremos sobre a tecnologia móvel, mais especificamente a

telefonia móvel celular no Brasil.

3.1 Breve Histórico

Várias empresas fizeram testes entre o ano de 1947 e 1973, mas foi a

Motorola, que criou o primeiro protótipo de aparelho de telefonia celular

realmente portátil, o DynaTAC (Dynamic Adaptative Total Area Coverage).

Já no Brasil, a primeira tentativa de introdução da Telefonia móvel ocorreu em

1972, com um sistema de baixa capacidade anterior à tecnologia celular, com

tecnologia IMTS (Improved Mobile Telephone System), em Brasília com

apenas 150 terminais habilitados.

O Japão ativou seu sistema de telefonia celular em 1978 seguido pela Suécia

em 1981, ambos com tecnologias próprias.

Em 1983, o primeiro modelo liberado comercialmente pela FCC (Federal

Comunication Comission) foi o DynaTAC 8000x, e por U$3.995,00 estava

disponível somente nos Estados Unidos.

Figura 3.1 – DynaTAC 8000x da Motorola em 1983.

Page 29: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 29

O DynaTAC pesava 800 gramas, media 25 centímetros de comprimento por 3

centímetros de largura, tendo um comprimento de 7 centímetros e possuía uma

bateria que acabava em 20 minutos de conversação. Até então os aparelhos

celulares pesavam mais de 1 kilograma e eram enormes, geralmente sendo

acoplados em carros.

Em 1984 foi criado pela Bell Labs, nos Estados Unidos o padrão analógico

AMPS (Advanced Mobile Phone System) de primeira geração (1G). Este

padrão foi implantado em diversos países do continente Americano, da Ásia e

Austrália.

A partir daí, no início década de 90 os fabricantes já tinham condições

tecnológicas de lançar aparelhos de telefonia celular com um tamanho mais

aceitável, com um peso adequado e com baterias de duração mais prolongada.

O Sistema Móvel Celular (SMC) brasileiro foi inaugurado, usando o padrão

AMPS e banda A, oficialmente em 30 de dezembro de 1990, no Rio de Janeiro

com capacidade para 10 mil terminais. Nesta ocasião o país contava com 667

aparelhos. No ano (1991) seguinte passou a contar com 6.700 aparelhos e em

1992 ultrapassou a marca de 30 mil unidades. Em 1997 começou a operar o

primeiro serviço celular digital da banda B, em Brasília. Veja a evolução

quantitativa do SMC no Brasil, no gráfico B.1 do Anexo B.

O fator determinante para o crescimento do SMC no país foi a privatização, que

fez com que as antigas estatais e as novas empresas investissem no setor, de

modo a manter as vantagens competitivas. Assim houve um aumento na oferta

de serviços e redução de preços, em uma busca desenfreada para absorver o

novo mercado.

Em 2001, a ANATEL (Agencia Nacional de Telecomunicações) lançou novas

regras para a exploração do sistema de telefonia móvel no país, que foram

descritas no regulamento do SMP (Sistema de Telefonia Pessoal), propondo

uma simplificação nas áreas de atuação do mercado, leilão de novas licenças

para exploração das bandas D e E. As empresas que operavam segundo as

Page 30: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 30

regras do SMC, foram incentivadas a migrar para o novo regulamento (vide a

figura B.1 do Anexo B sobre a situação atual).

Para melhor compreensão da telefonia móvel, faremos mais a frente uma

exposição sobre a sua evolução tecnológica que se subdividiu em Tecnologia

Analógica e a Tecnologia Digital, e no convencionou-se chamar de gerações.

No mundo, a geração mais nova é a 4G (quarta geração) já amplamente

difundida em alguns países como Japão e países da EU (União Europeia) tais

como Suécia e Noruega. No Brasil a 4G deverá estar disponível antes de 2014

nas principais capitais, impulsionada pela vinda da Copa do Mundo em julho

desse mesmo ano.

Figura 3.2 – Evolução da tecnologia de telefonia móvel no Brasil.

Passados 20 anos desde o início da telefonia móvel comercial, o conceito

procurado pelos consumidores mudou. O celular tornou-se muito mais do que

um telefone para comunicação de voz, hoje é um aparelho multimídia e

multifuncional que está ao alcance de todos, e com preços variando de

R$90,00 a R$2.500,00, com uma diversa gama de opções de serviço.

AMPS

GSM GPRS / EDGE

CDMA2000x1

TDMA

CDMA

CDMA2000x1 EVDV

CDMA2000x1 EVDO

HSDPA

WCDMA

1G 2G 2,5G 3G

SISTEMA

ANALÓGICO

SISTEMA

DIGITAL

Page 31: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 31

3.2 Conceitos da telefonia móvel celular

O conceito de telefonia móvel celular pode ser definido basicamente como; um

transmissor de baixa potência que atua em uma determinada área geográfica

(célula) e fornece cobertura sob frequências que podem ser reutilizadas por

células adjacentes. Cada célula é composta por uma torre de transmissão, uma

estação de rádio frequência que são denominadas Estações Rádio Base

(ERB). Abaixo o exemplo de uma área de cobertura celular.

Figura 3.3 – Representação de uma rede AMPS de telefonia celular.

Usamos hexágonos para a representação das células, para facilitar o

entendimento, apesar da sua delimitação física não ser exatamente essa.

Estas ERB ficam conectadas a um Centro de Comutação e Controle (CCC). Os

CCC ficam conectados uns aos outros e ao resto da rede. Quando uma

Estação Móvel (EM) está ao alcance de uma ERB, esta faz todas as

verificações e mantém a EM em serviço. As ERB também fazem a função de

handoff, que é a passagem das EM de uma célula para outra, bem como a

função de roaming (itinerância) que é a capacidade das EM estarem em

serviço mesmo fora do local onde estão cadastradas.

CCC

CCC

ERB

ERB

ERB

ERB

ERB ERB

ERB

ERB

ERB

ERB

ERB

ERB

ERB ERB

ERB

ERB

ERB

ERB

ERB

ERB EM

Page 32: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 32

3.3 Telefonia móvel analógica

A telefonia móvel analógica é marcada pela transmissão unicamente de voz,

que é modulada e transmitida. Na recepção, o processo inverso ocorre ou seja

o sinal é recebido e demodulado de modo a obter-se o sinal de voz novamente.

As primeiras tentativas analógicas foram usando sistemas half duplex

chamados Push-to-talk onde era necessário apertar um botão para a

transmissão do áudio.

O sistema analógico não suportava criptografia, portanto era basicamente

inseguro, além da qualidade do áudio não ser boa e ainda tinha baixa taxa de

transmissão.

3.3.1 Primeira geração (1G)

A primeira geração de telefonia móvel funcionava para apenas o serviço de

transmissão de voz. As principais tecnologias utilizadas nesta geração foram:

IMTS (Improved Mobile Telephone System);

AMPS (Advanced Mobile Phone System).

Também houve outras tecnologias menos conhecidas e usadas em outros

países: TACS, ETACS, NMT450, NMT900, C-450, RTMS, RADIOCOM2000,

NIT, JTACS/NTACS. No Brasil a única tecnologia de primeira geração aplicada

à telefonia celular foi o AMPS.

Os aparelhos celulares da época eram ainda muito volumosos e seus visores

eram apenas numéricos. A bateria era grande e com performance insuficiente.

No Brasil, ficaram popularmente conhecidos como “tijolões”, pois eram grandes

e pesados.

A exemplo dos modelos mostrados abaixo que pesavam 800g, 300g e

respectivamente. Foi na verdade a Motorola que ao lançar o StarTAC em 1996,

Page 33: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 33

primeiro celular com “flip” (dobra em Português), mudou o conceito de

ergonomia do celular.

.

Figura 3.4 – Dispositivos 1G (Nokia Mobira Cytyman 900 de 1987, Motorola MicroTAC de 1989 e StarTAC de 1996).

3.4 Telefonia móvel digital

No processo de transmissão nestes sistemas, o sinal de voz é digitalizado e em

seguida é feita a adição dos bits de redundância para permitir a correção de

erros. Depois é adicionado um conjunto de bits para controle de comunicação

(tais como palavras de alinhamento e sincronização e etc.). Tudo isso gera um

aumento da taxa de transmissão. Na sequência ocorre o processamento da

faixa espectral e do sinal para a posterior modularização e transmissão.

Na recepção, ocorre a operação inversa, e a operação final consiste em

descartar os bits adicionais de redundância e controle e transformar o sinal

digital de voz novamente em sinal analógico.

A maior vantagem na transmissão digital está no fato de possuir um melhor

desempenho em ambientes difíceis, pois faz uso de recursos para correção de

erros. Há outras várias vantagens na comunicação digital, dentre elas:

melhoria na eficiência espectral;

rejeição à interferência;

sensibilidade.

Page 34: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 34

A transmissão digital também tem dificuldades e um dos problemas mais

críticos que podem afetar a comunicação digital é o efeito multipercurso.

Quando a trajetória do sinal percorre vários caminhos de comprimentos

desiguais. Este efeito piora na proporção em que aumenta a taxa de

transmissão e quanto maior for o diâmetro da célula.

A telefonia digital produziu as gerações subsequentes da telefonia móvel

celular.

3.4.1 Segunda geração (2G)

A segunda geração de telefonia móvel caracterizou-se pela possibilidade de

transmissão não apenas de voz, mas também permitia a transmissão de dados

numéricos de pequeno volume. Surgiu o SMS (Short Message Service),

popularmente conhecido como torpedo.

As principais tecnologias utilizadas no Brasil nesta geração foram:

CDMA (Code Division Multiple Access);

TDMA ou D-AMPS (Time Division Multiple Access);

GSM (Group Special Mobile).

Também houve outras tecnologias menos conhecidas e usadas em outros

países: N-AMPS, E-TDMA e outras.

Os aparelhos celulares 2G eram bem mais ergonômicos e seus visores apesar

de ainda ser monocromáticos já forneciam recursos de menu com ícones. A

bateria ainda possuía certa limitação de uso, mas já não era mais necessário

que o usuário carregasse uma bateria sobressalente. Também passaram a

possuir outras funções como agenda eletrônica, toques variados, jogos e

outras.

Page 35: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 35

Figura 3.5 – Dispositivos 2G (Motorola StarTAC de 1996 e Nokia 3320 de 2000).

3.4.2 Segunda geração e meio (2,5G)

Caracteriza-se pelo conjunto de tecnologias que possuem características

híbridas, ou seja características da segunda geração bem como da terceira

geração, assim devido a dificuldade em estabelecer uma posição, criou-se esta

denominação 2,5G. Esta geração ficou marcada pela transmissão de dados

numéricos de volume moderado, além da tradicional transmissão de voz.

As principais tecnologias utilizadas nesta geração foram:

CDMA2000x1 (Code Division Multiple Access 2000 One Time Radio

Transmission Technology);

GPRS (General Packet Radio System) / EDGE (Enhanced Data Rates

for Global Evolution).

Os aparelhos celulares 2,5G ganharam nova roupagem, toques polifônicos e

telas coloridas que no início possuíam 16 cores e chegaram a 65 mil cores o

que permitiu a instalação de câmeras fotográficas embutidas e mensagens

MMS (Multimedia Message Service).

Figura 3.6 – Dispositivos 2,5G (LG Champ BX4170 e Motorola RAZR V3 – ambos de 2004).

Page 36: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 36

3.4.3 Terceira geração (3G)

A terceira geração de telefonia móvel caracterizou-se pela possibilidade de

transmissão não apenas de voz e dados de maior volume, mas também

permitia uma nova gama de serviços que vão desde suporte multimídia para

áudio MP3, vídeo, TV, até a conexão de internet banda larga com velocidades

razoáveis, para permitir um uso bastante funcional de correio eletrônico,

serviços WWW (World Wide Web), vídeo chamada e até GPS (Global

Positioning System).

As principais tecnologias utilizadas nesta geração foram:

CDMA2000x1 EVDO (Code Division Multiple Access 2000 One Time

Evolution Data Only);

CDMA2000x1 EVDV (Code Division Multiple Access 2000 One Time

Evolution Data/Voice);

WCDMA (Wideband Code Division Multiple Access);

HSDPA (High-Speed Downlink Packet Access).

Também houve outras tecnologias menos conhecidas e usadas em

outros países: UMTS.

A geração 3G proporcionou o desenvolvimento de várias novas tecnologias, a

exemplo do WAP (Wireless Application Protocol), que são páginas próprias

para celular criadas pelos portais.

Nesta ocasião surgiram os smartphones, celulares com funcionalidades

avançadas e com sistemas operacionais que aceitam instalação de diversos

softwares; os modens celulares para as conexões de internet 3G e os celulares

touch pad com tela sensível ao toque e mais recentemente o multitouch que

permite ao usuário manipular o dispositivo com vários dedos simultaneamente.

Assim surgiram o Blackberry, e vários outros. Recentemente foi lançado o iPad

que é o modelo de PCTablet (ou Tablet) da Apple. Os tablets como são

Page 37: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 37

popularmente conhecidos, são dispositivos móveis do tamanho de uma

prancheta, que possuem funcionalidades de celular e de PC simultaneamente.

Na realidade os tablets estão mais próximos da quarta geração de telefonia

móvel do que da terceira geração.

Figura 3.7 – Dispositivos 3G (Nokia 6120c de 2007 e Nokia smartphone E63 de 2008, modem celular DLink, Apple

iPhone WWDC 2009 e iPad 1 de 2010).

3.4.4 Quarta geração (4G)

A quarta geração da telefonia móvel, já é uma realidade em vários países da

União Europeia, da Ásia e nos Estados Unidos. A Presidente Dilma Rousseff,

em entrevista no programa de

rádio “Café com a Presidenta”1

dia 12 de setembro passado,

divulgou que a tecnologia tem

previsão de funcional com 40

milhões de dispositivos antes do

1 "Presidenta" termo usado atualmente para referir-se à Presidente da República do Brasil, Dilma Roussef. Segundo à norma clássica do idioma, presidenteadvem do ente que preside, onde ente é substantivo comum de dois gêneros, logo o termo correto é Presidente Dilma Roussef.

Page 38: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 38

mês de julho de 2014, data na qual irá ocorrer a Copa do Mundo FIFA no

Brasil. A previsão é de um investimento de 200 milhões de Reais.

As principais tecnologias utilizadas nesta geração serão:

LTE (Long Term Evolution);

WiMAX (Worldwide Interoperability for Microwave Access).

O padrão 4G ainda não está totalmente definido pela ITU (International

Telecommunication Union) e nem pronto para uso. Assim há várias outras

propostas como: HSPA+, HSPA 14, WiMAX 2 e LTEA.

As tecnologias LTE e WiMAX estão na frente, e testes já estão sendo feitos no

Brasil apesar de ainda não estar definido entre estas duas qual será o padrão

usado no país. Fato é que a 4G trará conexão de internet em alta velocidade e

permitirá uso de HDTV, e de funcionar como cartão de crédito. A tecnologia 4G

promete conexões de 4 a 100 vezes mais rápidas do que as atuais.

Figura 3.8 – Dispositivos 4G (Vodafone Connect Pen K5005, Motorola Triunph 4G ambos lançados em junho e o

iPhone 4G ainda não lançado no Brasil).

3.5 Sistemas operacionais para DM

Nasceram inicialmente para atender aos PDAs (Personal Digital Assistent) e

passaram a ser utilizados na telefonia celular com a chegada da tecnologia 2G,

pois foi nesta ocasião que os dispositivos celulares passaram a ter display

compatível com menus e outras opções, apesar de serem, no início, ainda

monocromáticos.

Page 39: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 39

Os primeiros sistemas operacionais para celular eram bem primitivos.

Abaixo, um resumo das versões dos principais sistemas operacionais para

dispositivos moves já lançadas:

Ano Sistema Operacional /

Versão Comentários

1990 EPOC16 Desenvolvido para organizadores eletrônicos

1996 Palm OS 1.0 Agenda eletrônica, lista de tarefas e jogos

1997 EPOC32 v1 Primeira versão Palm OS 2.0 Correio eletrônico

1998 Palm OS 3.0 Suporte a HotSync com PC, e cores em 8 bits

1999 EPOC32 v5 (Symbian OS 5) Ultima versão antes do consórcio

2000 Windows CE/PocketPC 2000 Totalmente compatível com as principais ferramentas Office.

2001 PocketPC 2002 MSN Messenger e Media Player 8 Symbian OS 6.0 Primeiro Symbian Palm OS 4.0 Cores em 16 bits

2002 Palm OS 5.0 Bluetooth

Symbian OS 6.1 O primeiro com recurso para câmera embutida

2003

Symbian OS 7.0 Suporte a EDGE e IPv6

Symbian OS 7.0s Melhor compatibilidade com as versões 6.x

Windows Mobile 2003 Bluetooth, Internet Explorer

2004

Symbian OS 8.0 e 8.0b Uso de dois kernels diferentes, suporte a CDMA, 3G e gráficos vetoriais

Symbian OS 8.1a e 8.1b Versão melhorada do 8.0

Windows Mobile 2003 SE WPA, e variação da tela entre retrato e paisagem

Symbian OS 9.0 Fim dos dois kernels Palm OS Cobalt Wi-Fi e Bluetooth

2005 Symbian OS 9.1

Novos recursos de segurança e Bluetooth 2

Windows Mobile 2005 GPS e interface de gerenciamento Blackberry OS 4.1

2006 Symbian OS 9.2 Suporte ao idioma Vietnamita

Symbian OS 9.3 Gerenciamento de memória aprimorado, Wi-Fi e HSDPA

Page 40: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 40

Ano Sistema Operacional /

Versão Comentários

2007

iOS 1.0 Primeira versão

Windows Mobile 6 DotNet v2 SP2 compatível, SQL Server 2005 CE e Windows Live

Symbian OS 9.4 Paginação sob demanda Symbian OS 9.5 Suporte a DVB-H e ISBD-T Blackberry OS 4.2 Voice notes

2008

iOS 2.0 Sync Google Contacts e suporte a aplicações Third-part

Blackberry OS 4.5 HTML e correio eletrônico rápidos

Windows Mobile 6.1 Zoom de página inteira no Internet Explorer e

Google Android 1.0 Primeira versão

Symbian^1 (S60) Widgets interativos, Facebook IM Chat

2009

Google Android 1.1 (Cupcake) Bluetooth A2DP e AVRCP, upload de vídeos do YouTube e fotos do Picasa

Palm WebOS Multitarefa e Integração com correio eletrônico Yahoo Mail e GMail,

Google Android 1.2 (Donut) Resolução de tela WVGA, navegação Google turn-by-turn gratuita

Google Android 2.0 e 2.1 (Eclair)

HTML 5, MS Exchange Server e Bluetooth 2.1

Blackberry OS 5 Wireless Sync, Blackberry Enterprise Server 5

Windows Mobile 6.5 Suporte a multi-touch Samsung Bada 1.0 Primeira versão

iOS 3.0 Navegação turn-by-turn, Voice Memos, Push Notifications.

2010

iOS 4.0 Pastas multitarefas

Blackberry OS 6 Nova interface de mídia, lista de contatos múltipla e integração com mídias sociais.

Windows Phone 7 Multitarefas, suporte a serviços low-based e Tiled UI

Google Android 2.2 (Froyo) Funcionalidade USB e Wi-Fi e suporte a Adobe Flash 10.1

Google Android 2.3 (GingerBread)

Multi-touch, suporte a telas ultra-largas e de alta resolução

Symbian^2 Versão de avaliação gratuita

MeeGo Desenvolvido vários sistemas embarcados.

Symbian^3 WebKit nativo, arquitetura de gráficos 2 e 3D, melhoramentos UI e suporte a monitores externos com HDMI

HP Web OS Multitarefa, Synergy App e tela multi-touch

Page 41: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 41

Ano Sistema Operacional /

Versão Comentários

2011

Google Android 3.0 (HoneyComb)

Lançada especialmente para tablets

Google Android 3.1 (HoneyComb)

Multitarefa otimizada, compartilhamento de Bluetooth, suporte de transferência de mídias e customização da tela principal

Tabela 3.1 – Evolução dos principais sistemas operacionais para dispositivos móveis.

Os sistemas operacionais para celular são mais importantes nos aparelhos

smartphones, porque as aplicações são desenvolvidas para estes dispositivos.

Abaixo vemos da distribuição do mercado de smartphones no Brasil.

Gráfico 3.1 – Divisão do mercado de smartphones no Brasil (Gartner, 2010).

A seguir faremos uma breve descrição sobre os principais sistemas

operacionais para dispositivos móveis utilizados atualmente.

54,4%

22,1%

8,5%

8,4%

4,2% 1,0%

0,9% 0,4% 0,1%

0,1% 0,0%

Smartphones no Brasil

Nokia

RIM (Blackberry)

Apple

Motorola

Samsung

HTC

Sony Ericsson

Palm (HP)

LG Eletronics

Others

Dell

Page 42: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 42

3.5.1 EPOC OS

O EPOC era um sistema operacional rudimentar criado para organizadores

eletrônicos pela Psion (empresa criada em 1980). O EPOC16 era originalmente

chamado apenas de EPOC. Foi desenvolvido no final da década de 80, e

renomeado e lançado em 1990 como EPOC16 para o dispositivo Psion’s SIBO.

Era baseado nos processadores 8086 de 16 bits, e desenvolvido em assembly

e C, sendo formulado para rodar embarcado em ROM. Rodava com usuário

único.

A primeira versão do EPOC32 foi lançada em 1997, no Psion Series 5. Apesar

de levar o mesmo nome, o EPOC32 era praticamente um novo sistema. Foi

desenvolvido em C++, a partir de uma nova base de código. Era pré-emptivo

multitarefa, com usuário único. Originalmente foi desenvolvido para

processadores da família ARM (primeiramente Acorn RISC Machine,

atualmente Advanced RISC Machine), porém permitia a compilação para

outros processadores. Possuía um desempenho surpreendente levando-se em

conta a capacidade limitada do hardware.

As versões 2 e 4 nunca foram publicadas e não chegaram ao mercado. Já a

versão 3 foi lançada em sequência da versão 1. A seguir seguiu-se a versão 5

que rodava no Psion Series 5mx , Revo / Revo Plus, Psion Series 7 / netBook,

netPad e Ericsson MC218. Esta versão foi apelidada retrospectivamente de

Symbian OS 5.

Durante o período de desenvolvimento do EPOC32, houve uma divisão da

Psion, de modo que seu departamento de software tornou-se a Psion Software.

Em junho de 1998 a Psion Software tornou-se Symbian Ltd. a partir um

consórcio de várias empresas. A partir daí o EPOC versão 6 ficou conhecido

com Symbian OS.

Page 43: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 43

3.5.2 Palm OS

O pioneirismo da Palm na criação de PDAs deu origem ao Palm OS 1.0 em

1986, sistema para ser usado nestes dispositivos. Mas seu sucesso inicial no

mercado de consumo em geral não foi acompanhado pelo mercado

corporativo, especialmente depois que a Microsoft quando lançou o Windows

CE, que fazia perfeita interface com todas as ferramentas Microsoft para PC e

era extremamente intuitivo. Outras versões se seguiram até 2009 quando fui

lançado o Palm Pre rodando Palm WebOS.

O Palm WebOS é baseado em Linux, sendo altamente customizado, foi

desenvolvido para processadores ARM.

Em abril de 2010 foi efetivamente anunciada a compra da Palm pela HP.

Ao final de 2010 a HP lançou o Palm Pre 2 rodando HP Web OS sucessor do

Palm WebOS. Ambos tiveram baixa aceitação e foram descontinuados pela HP

em agosto de 2011.

3.5.3 Windows Mobile

Foi inicialmente desenvolvido pela Microsoft para dispositivos móveis do tipo

PDA e era chamado Windows CE ou PocketPC 2000. Sua segunda versão

lançada em 2000 chamou-se PocketPC 2002 ainda para plataformas PDA. Até

então foi pouco utilizado, pois herdou problemas oriundos de seu sistema

origem, o Windows para computadores pessoais. No marcado de PDAs

disputava com o Palm OS, sendo mais utilizado em ambientes comerciais e

industriais, enquanto o Palm OS fazia sucesso nas casas de seus usuários.

O sistema foi remodelado para melhorar sua performance e aceitar uma maior

variedade de hardwares, mesmo assim ainda é pesado para a maioria dos

dispositivos atuais.

Foram então criadas 3 versões, seguindo o padrão usado pela Microsoft, onde

separa as versões de seu sistema Windows de acordo com certas

Page 44: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 44

características. Nesse caso específico a separação foi feita visando a

diferenciação do hardware a ser usado:

Windows Mobile Professional para smartphones com touchscreen;

Windows Mobile Standard para celulares convencionais;

Windows Mobile Classic para ser usado nos PDAs conhecidos agora

como PocketPCs.

Assim como o Windows para computadores pessoais, não é efetivamente

multitarefa, funciona simulando este recurso.

Como em tese é a versão reduzida do sistema Windows usado nos

computadores pessoais, o que a tornou muito popular no mercado.

A última versão possui recursos para integração com Xbox360 e Zune.

Em termos de desenvolvimento de aplicações para Windows Mobile, a

Microsoft aconselha utilizar a linguagem C++ preferencialmente com o Studio

.Net (dot Net), o qual já possui todos os recursos para desenvolvimento para

esta plataforma.

3.5.4 Symbian

A partir de um consórcio, fundado em 1988, entre várias empresas

fornecedoras de dispositivos móveis (Nokia, Siemens, Sony Ericsson e

Panasonic) surgiu o Symbian OS. Atualmente pertence à Nokia que comprou

praticamente todas as ações em 2008, porém outras empresas podem licenciar

o sistema para utilização em seus produtos.

O Symbian é derivado do EPOC Psion e foi desenvolvido de forma modular,

para permitir que cada empresa pudesse desenvolver sua própria interface,

inclusive variando de modelo para modelo de dispositivo. Essa característica

permanece nas versões mais atuais o que permitiu que ele fosse usado em

dispositivos mais simples (até mesmo monocromáticos), bem como esteja

Page 45: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 45

sendo usado até hoje nos mais novos modelos de smartphones, e sendo a

atual líder de mercado. A interface mais conhecida desse sistema é a Nokia’s

series 60 (usada em dispositivos Nokia e Sony Ericsson).

Este sistema foi desenvolvido para funcionar em diversos tipos de

processadores da família ARM, bem como dar suporte a varias tecnologias de

comunicação celular: CDMA, CDMA2000 x1, WCDMA, GSM, EDGE, e outras.

O microkernel suporta vários protocolos de comunicação: TCP/IP, Ethernet, e

outros. Atende a navegação web: WAP e HTML, e mensagens: SMS, MMS, e-

mail. Permite o uso de multimídia em geral. Faz sincronização de dados

usando SyncML com PC via porta serial, USB, Bluetooth, infravermelho e etc.

Também possui segurança dando suporte a vários protocolos de criptografia.

Por causa dos mecanismos que limitam o consumo de recursos a programação

para Symbian é bem restrita e complexa. Porém com o conceito Open

Standard Operation System (Sistema operacional aberto padrão), ele permite

que sejam desenvolvidas aplicações 32 bits multitarefa usando as linguagens

JAVA e/ou C++ (com suporte a MIDP, CDC e CLDC).

Recentemente a Nokia abriu os códigos fontes do Symbian e está planejando

trocar o Symbian pelo Windows Mobile, nesse sentido transferiu os serviços

relacionados ao Symbian para a Accenture, uma empresa multinacional de

outsourcing. Esta troca está prevista até 2016, porém a Nokia pretende ainda

comercializar dispositivos como Symbian até lá.

3.5.5 Android

E agosto de 2005 a Google comprou a Android Inc que até então era uma

pequena empresa americana fundada em 2003.

Depois, em 2007, formou-se um consórcio de várias empresas chamado “Open

Handset Aliance” (OHA) com a intenção de criar padrões abertos para a

telefonia móvel. Entre as empresas participantes estão a Google, HTC, Dell,

Motorola, Qualcomm, Texas Instruments, Samsung, LG Eletronics, T-Mobile e

NVidia.

Page 46: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 46

Em dezembro de 2007 foi lançado o Android Beta SDK. E no ano seguinte foi

lançado o primeiro dispositivo móvel com Android 1.0, o HTC Dream G1.

Atualmente o Android é desenvolvido com uma parceria com a Sun Corp,

porém todo o controle comercial e operacional é da Google.

O Sistema possui código aberto e foi desenvolvido com base no GNU/Linux e é

altamente customizado para funcionar em dispositivos móveis. Não está

limitado a nenhum hardware específico e é multitarefa. Permite

desenvolvimento em plataforma Java e possui uma infinidade de aplicativos

gratuitos disponíveis para uso. Suporta todo tipo de conexão sem fio (3G,

EDGE, Wi-Fi e Bluetooth).

Hoje o Android é usado em aproximadamente 20% dos dispositivos móveis do

mercado mundial.

3.5.6 iOS

Chegou ao mercado em 2007 e hoje o iOS ocupa boa parte do mercado mas é

utilizado apenas em dispositivos da Apple (iPhone e iPad).

A Apple desenvolveu o iOS a partir do Mac OS X, desenvolvido para sua linha

de computadores pessoais no início da década de 80 que é usado até hoje.

Entretanto o iOS é bastante customizado e simplificado para funcionar

adequadamente no iPhone, que tem sido um grande sucesso de vendas.

Este sistema foi projetado para arquitetura ARM até a versão 4, a partir da qual

está usando o chip A4, que também é usado no iPad.

Como o iOS foi baseado no UNIX BSD, assim como seu “pai”, o Mac OS X, ele

permite que vários usuários usem o sistema simultaneamente, isso foi

contornado por meio da divisão do sistema em 3 domínios diferentes. Porém

esta segurança já foi quebrada e esse procedimento de quebra é conhecido

como jailbreak.

Page 47: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 47

Para evitar a pirataria a Apple faz o kernel ser carregado criptografado na

memória, bem como exige assinatura digital para que uma aplicação use

recursos do sistema. Entretanto a quebra citada acima permite que isso seja

contornado em aplicações feitas em C e Objective C.

Outra característica do iOS é que carrega drives de dispositivos direto no

kernel do sistema o que aumenta a eficiência nesse aspecto.

O desenvolvimento de aplicações para esta plataforma só pode ser feito em

Mac OS X, pois não há SDKs disponíveis para outros sistemas operacionais de

computadores pessoais.

A interface é intuitiva e de fácil compressão, desta forma tornou-se um

sucesso.

O iOS revolucionou o padrão de sistemas operacionais para dispositivos

móveis, e a cada dia vem ocupando uma maior fatia do mercado.

3.5.7 BlackBarry OS

Research In Motion (RIM) desenvolveu em o Blackberry OS especificamente

para sua linha de smartphones e handhelds Blackberry.

É multitarefa e é muito focado no uso de dispositivos especiais tais como

tracking balls e scroll wells (dispositivos para rolagens de páginas e textos,

similares aos encontrados em mouses e teclados de notebooks). Mas só

executa programas certificados.

Uma característica interessante dos dispositivos Blackberry é que possui o

teclado especialmente projetado para a digitação com polegares, desenvolvido

especialmente para facilitar o seu uso.

É notadamente conhecida por oferecer suporte para o e-mail corporativo, por

meio de MIDP 1.0 e, mais recentemente, um subconjunto do MIDP 2.0, que

permite a ativação sem fio completo e sincronização com Microsoft Exchange,

Lotus Domino ou Novell GroupWise e-mail, calendário, tarefas, notas e

Page 48: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 48

contatos, quando utilizado em conjunto com o BlackBerry Enterprise Server. O

sistema operacional também suporta WAP 1.2.

No meio empresarial a plataforma é bastante conhecida mundo a fora, porém

no Brasil não é tão difundida.

Recentemente perdeu bastante mercado a nível mundial devido ao avanço do

iPhone.

3.5.8 Bada

O Bada é o sistema operacional desenvolvido pela Samsung em 2009, voltado

para os dispositivos da própria empresa.

O kernel é configurado e pode ser tanto o Linux como outro tipo RTOS (Real

Time Operation System). A empresa sugere o uso do Linux para dispositivos

mais complexos. É multitarefa e possui suporte nativo para multi-touch.

O sistema oferece soluções voltadas para interação e comunicação com redes

sociais como Twitter e Facebook, bem como para multimídia YouTube.

Só está sendo usado nos smartphones mais modernos da Samsung.

Não se pode dizer muito a respeito da aceitação no mercado, pois seu uso

ainda é restrito.

3.5.9 Meego

Surgiu a partir da fusão do Maemo (plataforma de tablets e smartphones da

Nokia) com o Moblin (plataforma de netbooks da Intel).

É uma distribuição Linux com interface diferente e otimizada para telas

pequenas e telas sensíveis. Foi criado para plataformas variadas, como

desktops, netbooks, tablets, smartphones, dispositivos automotivos, smartTVs,

e outros sistemas embarcados. Por esse motivo fornece suporte para

arquiteturas ARM e x86.

Page 49: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 49

Roda qualquer aplicativo para Linux além dos que são desenvolvidos para ela

própria. Atualmente é hospedado pela Linux Foudation.

3.6 Desenvolvimento de Software para DM

Desenvolver aplicações para dispositivos móveis requer certo trabalho de

garimpagem de informações. Isso advém do fato de haver uma infinidade de

dispositivos no mercado e agregado a eles uma boa variedade de sistemas

operacionais e ainda alguns destes sistemas permitem interfaces variadas,

como já mostrado nos anteriormente.

Há alguns aspectos principais a serem considerados no desenvolvimento para

dispositivos móveis, como: as limitações de espaço físico para armazenamento

de dados, limitações de uso de memória, limitações no tamanho da tela,

velocidade de processamento, velocidade de transmissão de dados, e outras

mais. Vejamos a seguir os aspectos mais importantes.

3.6.1 Limitações

O desenvolvimento de softwares para celular requer certo cuidado

especialmente em relação a capacidade de memória e de processamento das

CPU dos dispositivos, porém há outros detalhes importantes, como a

velocidade atual fornecida para transmissão de dados.

Portanto ao pensarmos numa aplicação para celular temos que ter em mente

os seguintes aspectos, que são inerentes aos dispositivos celulares:

Tamanho de tela;

Capacidade da memória;

Capacidade de processamento;

Taxa de transmissão de dados;

Persistência dos dados.

Page 50: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 50

Capacidade do cartão de memória;

Sistema operacional;

Linguagem de programação;

Ao falarmos de aplicações para celular, deve ficar claro que estaremos

trabalhando com telas muito pequenas, de 3 a 7 polegadas, partindo de

resoluções de 150 por 150 pixels, e logicamente a disposição das informações

e recursos dos aplicativos precisam obedecer certas regras visuais, sob pena

de não serem utilizadas ou não funcionarem adequadamente. Há também

considerações relativas às telas multi-touch.

Quando nos referimos à capacidade de memória dos dispositivos celulares,

estamos basicamente querendo dizer que variam de meros 32Mb a 512Mb,

isso significa dizer que um aparelho celular atual funciona com a mesma

capacidade de memória dos primeiros computadores.

Seguindo esta analogia, e voltando ao passado, podemos considerar os

diversos problemas que foram enfrentados pelos mantenedores de software

quando se depararam com milhões de linhas de códigos antigas, contendo

data com formato de ano com dois dígitos numéricos, à beira da virada do ano

2000.

Toda esta questão se deu porque nas décadas de 70 e 80, quando estes

códigos foram criados, não se avaliava a durabilidade dos sistemas, e julgou-se

que a economia de espaço, suprimindo-se dois dígitos das datas, era

adequada àquela realidade.

Hoje sabemos que há sistemas com mais de 30 anos rodando e são totalmente

funcionais, porém como foram migrados para plataformas mais robustas não

há tanta limitação física.

Mas em relação à durabilidade das aplicações para dispositivos celulares

móveis, temos que considerar na realidade a durabilidade do dispositivo. Como

Page 51: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 51

os aparelhos celulares são na realidade em média trocados a cada ano por

seus usuários, graças às promoções e facilidades que as operadoras

oferecem, e sabendo que os aplicativos que neles são executados são

bastante dependentes da plataforma. Vemos que também a durabilidade das

aplicações para este tipo de dispositivo está cada vez mais relacionada à sua

portabilidade e modularidade. Isso significa dizer que quanto mais portável e

modular for o software para celular, mais tempo ele poderá ser usado.

Já a capacidade de processamento dos dispositivos atuais de mercado é

bastante razoável, podendo executar tarefas simultâneas, e executar arquivos

de multimídia, mas a capacidade ainda é restrita comparada aos

processadores de computadores pessoais. Nesse sentido, muito do

processamento de aplicativos móveis é executado em servidores por meio de

conexões web, wi-fi e etc.

É nesse cenário, que as taxas de transmissão de dados se tornaram muito

importantes, e com a chegada da tecnologia 4G as maiores velocidades

permitirão um grande avanço em se tratando de aplicações móveis. A taxa de

transmissão também é importantíssima, considerando que os aparelhos

celulares não possuem recursos para armazenamento de dados persistentes.

Estes dados ficam armazenados em servidores de banco de dados que são

também acessados por meio das diversas conexões. Os cartões de memória

podem ser utilizados para armazenamento de algum dado, mas ainda assim os

recursos de programação para manipulação destes dados são restritos e

exigem processamento que pode tornar a aplicação pouco funcional.

A tendência do mercado hoje é de cada vez mais restringir-se a duas ou três

plataformas operacionais para dispositivos móveis. Cada vez mais as

empresas estão procurando a utilização de sistemas operacionais mais

compatíveis que possibilitem o reaproveitamento das aplicações, até porque a

tendência é de estas aplicações se tornarem muito mais funcionais. Mesmo

assim há particularidades que precisam ser consideradas quando se trata do

desenvolvimento de aplicativos para celular. Na minha visão ficaremos

Page 52: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 52

divididos entre Google Android, Microsoft Mobile Windows, Nokia Symbian

(apesar de já estar fase terminal) e Apple IOS.

Finalmente temos que considerar a linguagem de programação para

desenvolvimento das aplicações para dispositivos móveis. Esta é uma decisão

importante quando se trata das aplicações para celular, pois os recursos

disponíveis para o desenvolvimento são bastante limitados e estão

especialmente relacionados ao hardware. Para cada hardware há plug-ins com

recursos próprios, e à medida que os utilizamos tornamos as aplicações menos

portáveis.

3.6.2 Linguagens de programação

Atualmente há no mercado uma vasta quantidade e variedade de linguagens

de programação, direcionadas a várias aplicações e plataformas. Porém

quando falamos de desenvolvimento para dispositivos celulares, ficamos

restritos a:

C++;

Java (J2ME);

Python;

Dot Net Framework (.Net);

XCode e Objective-C.

A linguagem C++ é orientada a objetos e sendo poderosíssima, permite fazer

praticamente tudo, inclusive em celulares, até mesmo acessar informações

protegidas do sistema operacional, mas é compilada especificamente para

cada hardware, ou seja, cada dispositivo ou grupo de dispositivos, precisa de

uma compilação própria da mesma aplicação, e na proporção em que mais

recursos específicos são usados; menos portável se torna a aplicação. As

melhores ferramentas para desenvolvimento em C++ são pagas o que também

encarece o desenvolvimento.

Page 53: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 53

A linguagem Java, possui uma plataforma voltada especificamente para

aplicativos para dispositivos móveis, o J2ME. É orientada a objetos, porém

possuem recursos restritos, comparada com as suas plataformas irmãs (J2EE,

J2SE), voltadas para desenvolvimento em computadores pessoais. Por outro

lado plataforma J2ME é extremamente portável e possui máquina virtual

instalada na maioria dos dispositivos móveis do mercado. Os aplicativos

criados em J2ME podem facilmente ser integrados a aplicativos criados para

outras plataformas Java (J2EE, J2SE, e plataformas para dispositivos

embarcados), mas não podem fazer acesso diretamente a certos recursos dos

dispositivos móveis, o que de certa forma está relacionado diretamente à

portabilidade das aplicações nela desenvolvidas. Há SDKs para praticamente

todos os modelos de dispositivos do mercado, que são distribuídos por seus

fabricantes. As ferramentas para desenvolvimento Java são em sua maioria

freeware ou open source (gratuitas ou de código aberto), o que também facilita

o desenvolvimento. Estas características tornam o Java como a grande fonte

da maioria das aplicações móveis do mercado.

A linguagem Python também é orientada a objetos, e é freeware (software

livre), é usada sob plataforma Palm OS e Symbian, bem como as tradicionais

plataformas para computadores pessoais. Por outro lado deixa de lado outras

plataformas móveis muito usadas, como o Android por exemplo. É bastante

usada industrial e academicamente, para vários propósitos. Usa gerenciamento

automático da memória e é bastante similar ao Pearl e Scheme.

Temos também a plataforma Dot Net (.Net) da Microsoft, que possui SDK para

programação voltada a dispositivos móveis que são capazes de rodar Dot Net,

em especial os que trabalham com Windows Mobile. É um ambiente bastante

robusto e totalmente integrado a PC, porém tem alto custo de desenvolvimento

já que todos os softwares são pagos.

Por fim temos o desenvolvimento iPhone, para o qual são utilizadas as

linguagens XCode e Objective-C. Porém o desenvolvimento de aplicativos para

iPhone está restrito a plataforma MacOSX, já que a Apple só disponibilizou o

Page 54: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 54

SDK para rodar nesta plataforma. Em alguns casos é necessário também que

os aplicativos desenvolvidos sejam homologados para iPhone. Há no mercado

algumas tentativas de SDK para Windows, não autorizadas e desenvolvidas

geralmente por hackers, mas a maioria delas não funciona. Outros fazem uso

do VMWare rodando MacOSX, um emulador, mas o trabalho está sempre

comprometido, e não há garantias quanto à qualidade da compilação. Ou seja

o desenvolvimento de aplicativos para iPhone é bem restrito às plataformas da

Apple, não havendo portabilidade.

Outras chamadas linguagens são divulgadas no mercado, mas basicamente

foram desenvolvidas sob uma das quatro plataformas acima, o que na verdade

as torna restrita às características próprias das linguagens sob as quais foram

montadas.

3.6.3 Bancos de dados

Quando se trata de persistência de dados, em ambientes móveis temos várias

considerações a fazer. A primeira delas trata do volume dados, ou seja, em

geral o volume de dados contidos em qualquer banco de dados é totalmente

incompatível com o hardware dos dispositivos móveis, logo o banco de dados

obrigatoriamente está externo ao dispositivo. Isso significa dizer que o acesso

aos dados é feito por meio de conexão com um servidor de banco de dados

que pode estar em qualquer lugar. Assim toda e qualquer operação de

persistência dos dados está diretamente relacionada à velocidade de conexão

dos dispositivos com o servidor.

Outro aspecto é a segurança, quando uma aplicação abre uma conexão com

um determinado banco de dados, abrem-se também as portas para as

invasões com intuito de roubo, destruição e todo o tipo de situação. Para isso

há diversas formas de criptografia dos dados e recursos de segurança

fornecidos pelas arquiteturas dos bancos de dados incluindo também a própria

arquitetura da aplicação. Quer dizer, a aplicação ao fazer acesso a um banco

de dados, e precisa usar recursos para tratar as diretivas de segurança

necessárias.

Page 55: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 55

Uma terceira questão está na manutenção dos dados em geral. Os bancos de

dados atuais são capazes de tratar as colisões e locks (bloqueios) de forma

bastante adequada, logo por ocasião da mobilidade, e provavelmente do

volume de acessos ao banco de dados, inclusive simultâneos, feitos pelos

dispositivos móveis, a aplicação precisa ter recursos para identificar os retornos

dados pelos bancos e tratar adequadamente cada situação.

Outra questão trata do controle de versão, quer dizer quando uma aplicação

para dispositivo móvel acessa um banco de dados, o faz por meio de recursos

disponíveis para uma dada versão do banco. Veja que neste caso não estamos

nem falando da arquitetura do banco, mas apenas da versão do banco daquela

aplicação. Ou seja, para cada alteração no dado banco, associada a esta

mudança, há na maioria das vezes uma inevitável alteração de versão da

aplicação. Isso exige uma atualização que pode ou não ser automática

conforme os recursos de cada dispositivo.

Os problemas relacionados à persistência de dados ainda são grande gargalo

para o desenvolvimento de aplicações para dispositivos móveis, esse cenário

provavelmente mudará na medida em que as taxas de transmissão fiquem

maiores com a chegada do 4G, pois a partir daí estarão abertas as portas para

novas aplicações.

3.6.4 Internet

O acesso a internet feito via dispositivos móveis celulares, recai também sob os

mesmos aspectos das aplicações para celulares, ou seja, as limitações do

hardware. Então em 1997 a Nokia, a Motorola, a Ericsson e a Unwired Planet

se juntaram para criar um padrão universal para acesso a internet por meio de

dispositivos móveis celulares, o WAP – Wireless Aplication Protocol. Desde

então 350 outras empresas aderiram ao WAP Forum hoje chamado de OMA

(Open Mobile Alliance). Mesmo assim até agora uma pouca fração sites na

internet tem possui funcionalidade WAP para acesso via aparelho celular.

Page 56: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 56

O WAP é projetado para funcionar em qualquer um dos serviços existentes,

usando padrões SMS, CSD (High-speed Circuit-switched Data), GPRS

(General Pocked Radio Service), USSD (Unstructured Supplementary Services

Data).

O WAP usa a Linguagem de marcação de aplicações sem fio (WML – Wireless

Markup Language) que é baseada no XML (Extension Markup Language). O

WML é considerado basicamente uma metalinguagem, o que permite a criação

de componentes.

O WAP foi desenvolvido por meio de camadas que são apresentadas a seguir:

Figura 3.9 – Camadas do WAP.

Rede

Qualquer Conexão Wireless

WDP

Wireless Datagram Protocol

WTLS

Wireless Transport Layer Security

WTP

Wireless Transaction Protocol

WSP

Wireless Session Protocol

WAE

Wireless Application Enviroment

WAP

Page 57: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 57

WAE – Ambiente de aplicação sem fio, que possui as ferramentas que

os desenvolvedores de conteúdo da internet usam. Incluem o WML e o

WML Script que é a linguagem script usada com a WML.

WSP – Protocolo de sessão sem fio, que determina se uma se uma

sessão entre o aparelho e a rede é orientada à conexão ou não.

WTP – Protocolo de transação sem fio, que mantém os dados fluindo de

uma maneira lógica e sem problemas. Também determina como

classificar cada pedido de transação (bidirecional confiável, unidirecional

confiável ou unidirecional não confiável).

WTLS – Segurança da camada de transporte sem fio, que fornece

muitas das mesmas características do TLS (Transport Layer Security)

que faz parte do TCP/IP. Ocorre a conferência da integridade dos dados,

codifica e realiza a autenticação do servidor e do cliente.

WDP –Protocolo de datagrama sem fio, que funciona em conjunto com a

camada de rede. Torna fácil a adaptação a uma variedade grande de

portadoras de rede.

Rede – Pode fazer uso de qualquer tecnologia existente usada pelas

operadoras e dispositivos, desde que a informação seja fornecida em

nível WDP para a interface do WAP.

Com o WAP o mundo da internet se abriu para os dispositivos móveis

celulares, e atualmente a demanda pelo uso do WAP está só aumentando, e

deve ficar cada vez mais atraente, na medida que se aproxima a chegada da

tecnologia 4G.

3.7 O futuro da telefonia móvel

O futuro da tecnologia celular móvel está bastante alem do que podemos

imaginar em termos de velocidade de conexão, tipos de comunicação, serviços

Page 58: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 58

entre outras coisas. Quanto aos aparelhos muita coisa está se desenhando nas

ideias dos designers. Veja alguns exemplos:

Figura 3.10 – Dispositivos do futuro idealizados pelos designers de diversos fabricantes.

Page 59: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 59

Capítulo 4

O sistema SOTAC-Mobile

Capítulo que descreve as tecnologias aplicadas neste trabalho, bem como trata

de sua relação e aplicação no sistema SOTAC-Mobile.

4.1 Requisitos

Baseado numa evolução do projeto FALIBRAS, é proposta a criação de um

protótipo de interface de tradução de linguagem textual em Português para

LIBRAS para ambiente móvel.

Neste sentido, o SOTAC-Mobile é executado em dispositivos móveis, tornando-

os capazes de processar, com o mesmo nível de recursos, a tradução feita

pelo Sistema SOTAC.

4.1.1 Requisitos funcionais

A criação de uma interface amigável para os DA em ambiente móvel requer

alguns aspectos muito importantes:

Simplicidade – o entendimento e a navegação desta interface deve ser

intuitiva evitando que o DA tenha que executar muitos cliques a fim de

obter seu resultado.;

Portabilidade – deve permitir que vários dispositivos móveis possam

executá-la, também deve ser executada via web.

Eficiência – o processamento não pode ser lento e o tempo de resposta

deve ser adequado à solicitação do DA;

Page 60: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 60

4.1.2 Requisitos técnicos

O protótipo deve executar as seguintes funções:

Validação de login;

Tradução de Português para Texto alvo;

Tradução de Português para LIBRAS;

O aplicativo móvel não fica transiente no dispositivo móvel, é iniciado

manualmente.

4.2 Tecnologias avaliadas

Devido a estas principais características, a escolha da linguagem JAVA (J2ME)

como ferramenta de desenvolvimento desta interface ficou clara, na medida em

que esta linguagem oferece todos os recursos necessários para esta

implementação, bem como é a linguagem mais utilizada atualmente no

mercado para desenvolvimento em plataformas móveis e/ou encapsuladas.

4.2.1 Plataforma Java

A linguagem Java, foi criada pela SUN Microsystems no final da década de 90,

é uma linguagem orientada a objetos que é compilada para um bytecode

intermediário, de modo que este código é interpretado e executado por uma

máquina virtual. Esta característica dá ao Java uma grande portabilidade, já

que o mesmo código pode ser executado em plataformas totalmente distintas.

Toda a codificação fonte para plataforma Java nada mais é do que o conjunto

de especificações definida pela Java Language Specification que é escrita em

formato texto, com arquivos de extensão .java.

Estas instruções do código fonte compiladas, resultam em mnemônicos

(comandos) montados (assembly da máquina virtual) que são chamados

ByteCodes. O nome ByteCode origina-se do fato da instrução ter o tamanho de

um byte.

Page 61: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 61

A linguagem Java não é o único recurso da plataforma de desenvolvimento

JAVA. Esta plataforma está baseada em três pilares: A linguagem em si; o

JVM, que é a máquina virtual Java e um vasto conjunto de APIs.

Figura 4.1 – Codificação em Plataforma JAVA.

A função do JVM é tratar as questões relacionadas à portabilidade, deixando o

desenvolvedor livre para os assuntos programáticos relevantes à sua

implementação. Por outro lado o usuário final que deseja executar uma

aplicação necessita ter em seu dispositivo uma série de instalações, que

atualmente são facilmente encontradas e instaladas, até mesmo em muitos,

casos já faz parte do pacote do dispositivo. Já os desenvolvedores, necessitam

das bibliotecas e outros recursos para desenvolvimento.

Por esta razão, a plataforma Java possui duas distribuições diferentes:

JDK – Java Development Kit, voltado para o desenvolvedor e usado

para o desenvolvimento das aplicações Java;

JRE – Java Runtime Enviroment – voltado para o usuário final e usado

apenas para a interpretação das aplicações Java.

SISTEMAS OPERACIONAIS

Qualquer sistema operacional

MÁQUINA VIRTUAL

JVM

BYTECODE

Código.class

CÓDIGO FONTE

Código.java + JSR

Page 62: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 62

Para os dispositivos, esta plataforma em sua versão 2 está dividida em:

J2SE – Java 2 Standard Edition: Tecnologia projetada para

computadores pessoais e ambientes de trabalho, neste caso as

aplicações são chamadas APLets;

J2EE – Java 2 Enterprise Edition: Tecnologia direcionada para

aplicações baseadas em servidores, neste caso as aplicações são

conhecidas como SERVLets e podem conter suporte interno para JSP

(JavaServer Pages) e XML (eXtensible Markup Language);

J2ME – Java 2 Micro Edition: Tecnologia direcionada para dispositivos

com poucos recursos computacionais como por exemplo, palms,

smartphones, tablets, onde as aplicações para estes são conhecidas

como MIDLets.

A seguir apresenta-se visualmente esta divisão da plataforma Java conforme

os dispositivos aplicáveis:

Figura 4.2 – Arquitetura da plataforma JAVA (ORACLE, 2012).

As APIs (bibliotecas) Java compreendem um conjunto de recursos, agrupados

em pacotes (packages) usado no desenvolvimento das aplicações Java. Estas

Page 63: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 63

APIs variam de acordo com a aplicação. Este conceito é muito comum e é

usado, por exemplo, nas linguagens C e C++.

O Java é compatível com os principais WebBrowsers do mercado e é

extremamente difundido na web. Atualmente também está se tornando a

plataforma clássica para desenvolvimento de aplicações embarcadas como,

veículos automotores, equipamentos industriais, televisores, e até

eletrodomésticos. Por este motivo e por suas características foi a plataforma de

desenvolvimento escolhida para este protótipo.

4.2.2 J2EE

O J2EE, é direcionado para aplicações baseadas em servidores, neste caso as

aplicações são conhecidas como SERVLets são usadas para suprir as

necessidades das aplicações distribuídas, ou seja, aquelas que necessitam da

flexibilidade de disponibilizar acesso à sua lógica de negócio e dados para

diferentes tipos de dispositivos (navegadores, dispositivos móveis, aplicações

desktop, aplicações embarcadas, etc.).

Abaixo o modelo de arquitetura J2EE.

Figura 4.3 – Arquitetura da plataforma J2EE (ORACLE, 2012).

Page 64: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 64

4.2.3 J2ME

O J2ME é a tecnologia direcionada para dispositivos com poucos recursos

computacionais como, por exemplo, palms, smartphones, tablets. As

aplicações desenvolvidas usando esta tecnologia são chamadas de MIDLets e

o ByteCode gerado na sua compilação é executado por meio de uma máquina

virtual reduzida chamada KVM (Kilobyte Virtual Machine), que nada mais é do

que a própria JVM mais enxuta (um subconjunto dela). O nome KVM é uma

alusão à pouca quantidade de memória exigida que é na ordem de Kilobytes.

Há uma configuração que define as características da família de dispositivos e

os recursos e bibliotecas que compõem a KVM, são:

CDC – Connected Device Configuration, que corresponde ao conjunto

de APIs para dispositivos “fixos”, por exemplo um computador ligado a

um televisor;

CLDC – Connected Limited Device Configuration, que corresponde ao

conjunto de APS para dispositivos com alguma capacidade de

processamento, vídeo e memória limitados, geralmente dispositivos

móveis.

Há perfis que definem o conjunto de APIs que fornece funcionalidade a uma

configuração, são eles:

Fundation Profile, que é a base para dispositivos em rede sem interface

gráfica usando CDC;

Personal Basics e Personal Profile, que é a base para dispositivos com

suporte gráfico e alta capacidade, usado com CDC;

Mobile Information Device Profile (MIDP), que é o perfil compatível com

o CLCD e implementa componentes, entrada, tratamento de eventos de

interface com o usuário, armazenamento persistente, interoperabilidade

de rede, segurança e outros vários recursos.

Page 65: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 65

A seguir está apresentada a Arquitetura J2ME.

Figura 4.4 – Arquitetura da plataforma J2ME (ORACLE, 2012).

Figura 4.5 – Codificação em Plataforma J2ME (ORACLE, 2012).

Page 66: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 66

O s MIDLets possuem um ciclo de processamento padrão definido pelo MIDP,

conforme a seguir:

Figura 4.6 – Ciclo padrão de execução de um MIDLet.

Normalmente os MIDLets são criados em um ambiente computacional padrão,

mas para efeito de desenvolvimento são utilizados emuladores de forma a

otimizar e aproximar a execução destes aplicativos em seus reais dispositivos.

Estes emuladores estão disponíveis sob a forma de plug-ins para as IDEs mais

utilizadas, e cada fabricante de dispositivos as disponibiliza em seus sites de

desenvolvimento, em geral de forma gratuita. Os plug-ins são compostos

também pelas SDKs necessárias para o desenvolvimento específico de

aplicações para um dado dispositivo.

4.2.4 Dispositivos série S60 com Symbian

Como o Symbian é atualmente o Sistema Operacional mais usado nos

dispositivos móveis no Brasil, optou-se por implementar a interface deste

protótipo voltada para este sistema. Mais especificamente para versão que é

compatível com os Smartphones série S60, atualmente os mais difundidos do

mercado.

O SDK para Symbian é o Nokia Developer Suite for J2ME e está disponível no

site do fabricante.

O modelo usado no projeto é o Nokia E63.

startApp()

destroyApp()

destroyApp() pauseApp()

PAUSADO

ATIVO DESTRUIDO

Page 67: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 67

4.2.5 Apache Tomcat

O Apache Tomcat é um servidor de aplicações Java para Web, livre e de

código aberto, criado no projeto Jakarta com apoio formal da SUN

Microsystems como sendo a implementação de referência para as tecnologias

J2EE. Atualmente o Tomcat tem seu próprio projeto de desenvolvimento

independente, dentro da Apache Software Foudation.

O Tomcat é robusto e eficiente, sendo na realidade um Contêiner Web, parte

da plataforma corporativa J2EE. Entretanto pode também atuar como servidor

Web/HTTP autônomo, ou pode funcionar integrado a um servidor web

dedicado como o Microsoft IIS, ou ainda ser parte integrante de um servidor de

aplicações mais amplo como o GlassFish com versão livre (também possui

versão comercial) e promover recursos de Java Servlet e JSP.

Por outro lado o Tomcat não implementa um contêiner EJB (Enterprise

JavaBeans). Isto é, para aplicações J2EE que utilizam JavaBeans se faz

necessário o uso de um servidor completo JBoss AS, Sun GlassFish ou IBM

WebSphere.

Figura 4.7 – Contêiner Web.

Para a nossa aplicação está disponível na web apenas um contêiner com

servidor Apache Tomcat versão 6.0.35 configurado para executar o SERVLet

SOTAC-Enterprise Mobile, que é capaz de responder as solicitações da

interface móvel retornando as traduções solicitadas.

4.2.6 Computação distribuída – RMI

O RMI (Remote Method Invocation) é um pacote opcional da plataforma Java

que contém uma API de alto-nível construída em cima de sockets, que permite

Cliente Web Apache Tomcat

Aplicações

Page 68: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 68

a passagem de dados entre computadores. Por meio desta tecnologia

conseguimos passar dados entre diferentes sistemas e invocar métodos em

objetos remotos, que podem ser manipulados com se estivessem na máquina

local. A transferência de dados é gerenciada pela máquina virtual Java de

forma transparente.

Na realidade podemos considerar o RMI como sendo uma evolução da

arquitetura cliente/servidor, onde um cliente é um computador que efetua

requisições por serviços, e um servidor trabalha como componente de entrega

dos serviços solicitados.

Figura 4.8 – Arquitetura RMI.

A seguir estão descritos os principais componentes da arquitetura RMI:

Interface de objeto de servido, que é uma sub-interface que implementa

a interface do objeto remoto;

Implementação de servidor, que é uma classe que implementa a

interface com o servidor remoto;

Objeto de servidor: que é a instância da classe implementação de

servidor;

Processo Cliente Processo Servidor

Camada de Transporte RMI

Objeto Cliente

STUB

Gerenciador

de Referências

Remotas

Objeto Servidor

SKELETON

Gerenciador

de Referências

Remotas

Page 69: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 69

Registro RMI (RMI Register), que é um utilitário responsável pelo

registro dos objetos remotos e fornece serviços de nomes (naming

services) para a localização de objetos (lookup);

Programa cliente, que é o programa que invoca (chama) os métodos no

objeto de servidor remoto;

Stub (canhoto) de servidor, que é um objeto que reside na máquina

cliente e serve como substituto para o objeto de servidor remoto;

Skeleton (esqueleto) de servidor, que é um objeto que reside na

máquina servidor e comunica com o objeto de servidor real e o stub.

O RMI-op é um subconjunto do pacote RMI, que roda sobre a plataforma

J2ME, tendo nesta plataforma a mesma funcionalidade de seu conjunto origem.

Para a utilização do RMI-op em dispositivos móveis é necessário que os

dispositivos possuam como recurso o JSE-066 (RMI Optional Package

Specification). Como nem todos os dispositivos móveis do mercado possuem

este recurso, optou-se pelo uso de frameworks aumentando a rapidez e a

portabilidade do protótipo.

4.2.7 Arcademis / RME

Arcademis é um framework utilizado para facilitar o desenvolvimento de

sistemas baseados em objetos distribuídos que utilizam a invocação remota de

métodos como meio de comunicação.

O RME (Remote Method Invocation for J2ME) é um sistema orientado a objetos, que permite a invocação remota de métodos segundo uma sintaxe semelhante à de JAVA RMI, de acordo com Pereira et al. (2006).

Page 70: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 70

O RME foi derivado do Arcademis, sendo assim uma instância do mesmo. Há duas implementações de RME, uma destinada à plataforma J2SE e a outra para ser utilizada na configuração CLDC da plataforma J2ME, contendo somente as funcionalidades necessárias para aplicações clientes. Assim como RMI, RME apresenta uma arquitetura orientada a serviços, segundo Baresi et al. (2003).

O RME é usado no nosso protótipo na medida em que é necessário acessar e

trocar dados entre um serviço remoto contendo as funcionalidades de tradução

do Sistema SOTAC, originalmente desenvolvido em outra plataforma, mas que

é usado como base para a implementação de uma versão do mesmo para

ambientes móveis, o Sistema SOTAC-Mobile.

4.2.8 Streaming

A transmissão de arquivos de multimídia entre plataformas se tornou uma

tarefa muito comum atualmente, porém estes arquivos em geral são grandes e

requerem muito espaço físico de armazenamento. Assim com o surgimento da

possibilidade de execução destas informações em dispositivos móveis de

forma integrada com a Internet, esta limitação relacionada ao espaço físico dos

dispositivos passou a ser um aspecto importantíssimo.

A tecnologia conhecida com Streaming foi criada com a finalidade de permitir

que os pacotes multimídia possam ser transmitidos através da rede sem

necessidade de download e upload síncrono. Em Streaming as informações de

mídia não são efetivamente gravadas pelo recebedor dos dados, ao invés disso

as informações são exibidas utilizando um fluxo de transmissão de acordo com

a sua banda de rede, desde que esta banda tenha capacidade suficiente para a

execução em tempo real.

Esta abordagem se tornou bastante interessante, pois livra os recebedores de

mídia das questões relacionadas a direitos autorais, e ainda assim permite que

as mídias possam ser executadas em seu destino.

Para que um dispositivo móvel possa executar as funções de Streaming é

necessário que ele possua nativamente os protocolos RTP e RTSP. Os

Page 71: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 71

dispositivos Nokia série S60 possuem este recurso nativamente, e este

também é um dos aspectos pesados na escolha do dispositivo móvel para o

qual o nosso protótipo está desenvolvido.

4.2.9 IDE NetBeans

De modo geral, o desenvolvimento Java não requer IDEs específicas, pois todo

o código pode ser criado em qualquer editor de texto padrão, e neste caso, a

organização necessária fica neste caso a critério do desenvolvedor. Porém o

uso de IDEs facilita, organiza e torna o desenvolvimento focado no resultado da

aplicação evitando-se perda de tempo com questões relacionadas a

manipulação de pastas e arquivos.

A SUN Microsystems oferece um IDE gratuitamente, porém este IDE ainda é

bastante dependente da organização do desenvolvedor, deixando boa parte da

organização do projeto por definir.

Atualmente a Oracle, é proprietária da SUN Microsystems, criadora do JAVA, e

indica como IDEs para desenvolvimento Java, o Oracle JDeveloper que é uma

ferramenta com custos de uso, e o NetBeans que é gratuito. Assim sendo,

apesar de haverem outras IDEs bastante populares e gratuitas, como o

Eclipse, a opção escolhida para o desenvolvimento da interface é o NetBeans

versão 7.1.2, considerada a última versão estabilizada do produto.

O NetBeans é totalmente compatível com os frameworks necessários ao

projeto, sendo uma ferramenta bastante robusta, estável e eficiente para

desenvolvimento Java.

4.2.10 Astah

O software para edição da documentação de Casos de Uso e UML é o Astah

Community versão 6.4.1 que é software livre. Ele é a escolha mais natural por

ser livre e possuir todos os recursos necessários à documentação deste

protótipo. Na realidade o Astah é a nova e última versão do Jude, que trocou

de nome por questões comerciais.

Page 72: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 72

4.3 Modelagem

4.3.1 Arquitetura do SOTAC–Mobile

A proposta do SOTAC-Mobile, é implementar uma interface simples para a

execução das funcionalidades do Sistema SOTAC em dispositivos móveis.

O MIDLet, SOTAC-Mobile, proposto neste projeto está focado em CLCD com

perfil MIDP com a finalidade de ser a interface entre o usuário DA e a aplicação

de tradução SOTAC.

Assim o protótipo trabalha com a seguinte arquitetura:

Figura 4.9 – Arquitetura do Sistema SOTAC – Mobile.

Como vemos acima, o MIDLet SOTAC-Mobile que está instalado nos

dispositivos móveis Nokia, compatíveis com a série S60, com sistema

operacional Symbian. Esta instalação se dá por meio de empacotamento feito

especialmente para facilitar este processo.

Como o MIDLet SOTAC-Mobile, proposto é apenas uma interface visual entre

as funcionalidades oriundas do Sistema SOTAC e o DA, logo se faz necessária

a criação de uma aplicação, SERVLet SOTAC-Enterprise Mobile, responsável

pela integração entre a Camada de Negócios obtida a partir do SOTAC e esta

interface. Esta aplicação intermediária também tem uma função muito

TRADUTOR

SOTAC VÍDEOS

Clowd Computing

J2ME - RME

TRADUÇÃO

SOTAC-

Mobile TRADUÇÃO

Page 73: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 73

importante que é manter os recursos do SOTAC disponíveis na web, já que o

SOTAC é um sistema desktop.

Desta forma, assim que o usuário DA executa a aplicação a mesma entra no

estado ATIVO, e fica aguardando a digitação de um texto em Português, que é

a opção inicial deste protótipo. Neste momento o DA deve enviar o texto para

uma das opções de Tradução.

O texto para Tradução é enviado para o SERVLet SOTAC-EMobile que está

disponível na web. Cabe então ao SERVLet SOTAC-EMobile providenciar a

tradução do texto e posteriormente o envio do resultado novamente ao MIDLet

SOTAC-Mobile.

Figura 4.10 – Interface entre as aplicações do SOTAC-Mobile.

Como podemos observar o SOTAC-Mobile é composto de três módulos

principais distintos, são eles:

MIDLet SOTAC-Mobile – aplicação que é executada nos dispositivos

móveis e é a principal interface com o usuário DA;

MIDLet

SOTAC - Mobile

VÍDEOS

Web Conteiner em Servidor

de Aplicação Tomcat

RME SERVLet

SOTAC - EMobile

TRADUTOR

SOTAC

J2EE

TRADUÇÃO

Page 74: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 74

SEVLet SOTAC-EMobile – aplicação responsável por receber as

chamada RME, via web ou dispositivo móvel, executar e gerenciar a

interface com a Camada de Negócios originada do SOTAC;

SOTAC versão 1.1 – nova versão do SOTAC usada para o cadastro e

configuração dos dados usados no nosso servidor de Banco de Dados.

Há também, na web uma interface (SERVLet SOTAC-Web Mobile) básica

apenas executar as mesmas funções do MIDLet SOTAC-Mobile a fim de

demonstrar que há portabilidade na solução. Ademais a função primordial do

SERVLet SOTAC-EMobile é apenas de comunicação entre o SOTAC e o

MIDLet SOTAC-Mobile. Isto significa dizer que a função desta aplicação é

apenas de usar os recursos disponíveis para apresentar na web os resultados

de tradução semelhantes aos feitos por meio do MIDLet SOTAC-Mobile, que

podem ser visualizados em qualquer WebBrowser.

4.3.2 Casos de Uso

O diagrama de casos de uso do MIDLet SOTAC-Mobile está apresentado a

seguir:

Figura 4.11 – Casos de uso do MIDLet SOTAC – Mobile.

Page 75: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 75

UC1 – Efetuar Login:

Atores: Usuário final do MIDLet SOTAC-Mobile (DA).

Pré-condições: SERVLet SOTAC-EMobile operante e conexão estável com a

Internet.

Fluxo de eventos primário:

Usuário final do MIDLet SOTAC-Mobile (DA) executa a aplicação;

A função Efetuar Login é chamada;

É feita a solicitação de acesso ao SERVLet SOTAC-EMobile que é

responsável pela chamada ao SOTAC;

O SERVLet SOTAC-EMobile processa o Login e aguarda o retorno do

SOTAC;

O SERVLet SOTAC-EMobile retorna a resposta ao MIDLet SOTAC-

Mobile, que trata este retorno;

Caso o retorno esteja ok, o MIDLet SOTAC-Mobile abre a tela para

digitação do texto a ser traduzido e aguarda atuação do usuário. Caso

contrário o sistema exibe a mensagem com o tratamento de erro

adequado e retorna ao modo de espera.

Fluxos alternativos: Nenhum.

UC2 – Traduzir Texto de Português para Texto Alvo:

Atores: Usuário final do MIDLet SOTAC-Mobile (DA).

Pré-condições: Digitação de um texto em Português, SERVLet SOTAC-

EMobile operante e conexão estável com a Internet.

Page 76: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 76

Fluxo de eventos primário:

Usuário final do MIDLet SOTAC-Mobile digita um texto em Português e

solicita a tradução para Texto;

O MIDLet SOTAC-Mobile valida o preenchimento do texto;

É feita a solicitação de acesso RMI ao SERVLet SOTAC-EMobile que é

responsável pela chamada às funções de tradução do SOTAC;

Após o processamento da tradução o SERVLet SOTAC-EMobile retorna

a resposta ao MIDLet SOTAC-Mobile, que trata este retorno;

Caso o retorno esteja ok, o MIDLet SOTAC-Mobile abre a tela para

exibir o Texto Alvo traduzido e aguarda atuação do usuário. Caso

contrário o sistema exibe a mensagem com o tratamento de erro

adequado e retorna ao modo de espera.

Fluxos alternativos: Nenhum.

UC3 – Traduzir Texto de Português para LIBRAS:

Atores: Usuário final do MIDLet SOTAC-Mobile (DA).

Pré-condições: Digitação de um texto em Português, SERVLet SOTAC-

EMobile operante e conexão estável com a Internet.

Fluxo de eventos primário:

Usuário final do MIDLet SOTAC-Mobile digita um texto em Português e

solicita a tradução para LIBRAS.

O MIDLet SOTAC-Mobile valida o preenchimento do texto;

É feita a solicitação de acesso RMI ao SERVLet SOTAC-EMobile que é

responsável pela chamada às funções de tradução do SOTAC;

Page 77: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 77

Após o processamento da tradução o SERVLet SOTAC-EMobile retorna

a resposta ao MIDLet SOTAC-Mobile, que trata este retorno;

Caso o retorno seja de falha, o sistema exibe a mensagem com o

tratamento de erro adequado. Caso contrário, se o retorno for ok, o

MIDLet SOTAC-Mobile abre a tela para exibir a sequência de vídeos;

O MIDLet SOTAC-Mobile solicita via internet a transmissão dos vídeos,

e apresentada uma a uma em tempo real;

Ao final da apresentação do texto alvo e dos vídeos o MIDLet SOTAC-

Mobile retorna à tela inicial e aguarda outra atuação do usuário.

Fluxos alternativos: Nenhum.

UC4 – Apresentação dos Vídeos:

Atores: UC3.

Pré-condições: Pasta publicável no servidor web contendo os vídeos listados,

para transmissão via HTTP ou um servidor Streaming, para transmissão via

RTP ou RTSP, a lista de vídeos a serem apresentados e conexão estável com

a internet.

Fluxo de eventos primário:

MIDLet SOTAC-Mobile recebe a lista de vídeos para apresentação;

É feita a solicitação e a transmissão dos arquivos listados pelo SERVLet

SOTAC-EMobile;

Caso haja falha de comunicação exibe a mensagem com o tratamento

de erro adequado e o MIDLet SOTAC-Mobile retorna ao modo de

espera. Caso a exibição seja ok, o MIDLet SOTAC-Mobile retorna ao

modo de espera.

Fluxos alternativos: Nenhum.

Page 78: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 78

O diagrama de casos de uso do SERVLet SOTAC-EMobile está apresentado a

seguir:

Figura 4.12 – Casos de uso do SERVLet SOTAC – EMobile.

UC5 – Serviço Remoto:

Atores: MIDLet SOTAC-Mobile.

Pré-condições: Contêiner web funcionando adequadamente.

Fluxo de eventos primário:

O SERVLet SOTAC-EMobile fica em estado de espera aguardando uma

solicitação do MIDLet SOTAC-Mobile;

O MIDLet SOTAC-Mobile solicita a execução de uma função ao

SERVLet SOTAC-EMobile, que é responsável pela chamada dos

métodos do SOTAC;

O SERVLet SOTAC-EMobile processa a solicitação, validando os

parâmetros informados;

Page 79: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 79

O SERVLet SOTAC-EMobile faz o repasse do retorno para o MIDLet

SOTAC-Mobile;

O SERVLet SOTAC-EMobile retorna ao estado de espera para nova

solicitação do MIDLet SOTAC-Mobile.

Fluxos alternativos: Nenhum.

UC6 – Login:

Atores: UC5.

Pré-condições: Banco de dados do SOTAC funcionando adequadamente com

todos os parâmetros e cadastros preenchidos a partir do SOTAC 1.1.

Fluxo de eventos primário:

O SERVLet SOTAC-EMobile solicita a execução do login à Camada de

Negócios para o processamento da solicitação;

A Camada de Negócios processa a solicitação e retorna a resposta ao

SERVLet SOTAC-EMobile;

O SERVLet SOTAC-EMobile faz a passagem do resultado "ok" ou "não

ok" para o MIDLet SOTAC-Mobile.

O SERVLet SOTAC-EMobile retorna ao estado de espera para nova

solicitação do MIDLet SOTAC-Mobile.

Fluxos alternativos: Nenhum.

UC7 – Tradução Texto:

Atores: UC5.

Pré-condições: Banco de dados do SOTAC funcionando adequadamente com

todos os parâmetros e cadastros preenchidos a partir do SOTAC 1.1.

Page 80: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 80

Também é necessário que os arquivos de vídeo estejam disponíveis em uma

pasta publicável na web, para transmissão via HTTP, ou em um servidor

Streaming, para transmissão via RTP ou RTSP.

Fluxo de eventos primário:

O SERVLet SOTAC-EMobile solicita a execução da tradução à camada

de negócios o processamento da solicitação;

A camada de negócios processa da solicitação e retorna a resposta ao

SERVLet SOTAC-EMobile;

O SERVLet SOTAC-EMobile faz a passagem do resultado da tradução

para o MIDLet SOTAC-Mobile

Caso haja a necessidade de transmissão da sequência de vídeos, o

SERVLet SOTAC-EMobile retorna também a lista de todos os vídeos

que devem ser apresentados, já na sequência correta, para o MIDLet

SOTAC-Mobile.

O SERVLet SOTAC-EMobile retorna ao estado de espera para nova

solicitação do MIDLet SOTAC-Mobile.

Fluxos alternativos: Nenhum.

4.3.3 Configurações

O protótipo proposto faz uso de persistência por meio de Banco de Dados,

atravéz do Sistema SOTAC para efeito de cadastro, assim sendo estas

questões são tratadas de forma transparente ao sistema. Para consultas, a

persistência é feita diretamente pela aplicação SERVLet SOTAC-EMobile.

Porém duas questões importantes foram levantadas. A primeira trata do

cadastro do usuário para uso geral do SOTAC-Mobile, e a segunda trata da

seleção da Memória de Tradução a ser utilizada.

Page 81: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 81

Com relação à questão relacionada à segurança e aos perfis usados no

Sistema SOTAC, ficou definido se fazer um cadastro contendo os seguintes

parâmetros:

Perfil = U;

Nome = Usuário Móvel;

Login = movel;

Senha = M.

Este cadastro está pré-fixado (hardcoded) na Camada de Negócios do SOTAC,

e é usado para todas as chamadas de tradução executadas por meio do

MIDLet SOTAC-Mobile. Esta abordagem, torna o MIDLet SOTAC-Mobile uma

ferramenta para uso irrestrito e livre.

A seguir a tela de cadastro do SOTAC 1.1 com o perfil acima citado, trazendo o

usuário cadastrado.

Figura 4.13 – Perfil para o SOTAC – Mobile. no SOTAC.

Este cadastro está programado para ser executado caso não haja este usuário

móvel inserido no banco de dados. Está implementada uma inclusão feita

Page 82: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 82

diretamente via código durante a função de login na Camada de Negócios do

SOTAC.

Já para tratar a questão da seleção da Memória de Tradução a ser utilizada,

preferencialmente a seleção é feita utilizando-se a primeira memória

cadastrada no sistema, pois para efeito do nosso protótipo a questão primordial

não está na essência da tradução, mas na possibilidade de executá-la em

ambiente móvel. Desse modo a Memória de Tradução "1" está pré-fixada

(hardcoded) no sistema.

4.3.4 UML

A seguir está o diagrama UML usado do MIDLet SOTAC-Mobile.

Figura 4.14 – Diagrama de Classes do MIDLet SOTAC – Mobile.

Page 83: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 83

A seguir está o diagrama UML usado do SERVLet SOTAC-EMobile.

Figura 4.15 – Diagrama de Classes do SERVLet SOTAC – EMobile.

A seguir está o diagrama UML referente às funcionalidades do SOTAC (Java).

Figura 4.16 – Diagrama de Classes da tradução do SOTAC.

Page 84: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 84

4.3.5 Recursos

As seguintes tecnologias e recursos são usados para desenvolvimento deste

protótipo.

Para o MIDLet, SOTAC-Mobile:

J2ME(JDK 1.6.0_25);

SDK para dispositivos Nokia série S60 FP2;

Nokia OVI Suite versão 2.1.0.87;

Arcademis / RME framework (client) 2.0;

NetBeans versão 7.1.2;

Conexão Móvel Web 3G;

Dispositivo celular Nokia modelo E63 (série S60), habilitado.

Para o SERVLet, SOTAC-EMobile:

J2EE (JRE e JDK 1.6.0_25);

Arcademis / RME framework (server) 2.0;

NetBeans versão 7.1.2;

SharpDevelop versão 4.0.4;

Banco de Dados PostGreSQL versão 9.3.1;

JDBC;

Host do tipo clowd computing com recursos Java, fornecido por mim.

Contêiner web Apache Tomcat versão 6.0.35 em Windows 2008 Server.

Page 85: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 85

Para o SERVLet, SOTAC-WMobile:

J2EE (JRE e JDK 1.6.0_25);

Arcademis / RME framework (client) 2.0;

NetBeans versão 7.1.2;

CSS;

HTML;

JSP;

Conexão Móvel Web 3G;

Host do tipo clowd computing com recursos Java, fornecido por mim;

Contêiner web Apache Tomcat versão 6.0.35 em Windows 2008 Server.

Para o SOTAC versão 1.1:

Banco de Dados PostGreSQL versão 9.3.1;

SharpDevelop versão 4.2.1;

Microsoft SKD para Windows versão 7;

SOTAC versão 1.0.

Para a Modelagem e Documentação:

Adobe Acrobat Reader 9;

Astah Community versão 6.4.1;

MS Work 2007;

Page 86: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 86

4.4 Implementação

Para tratar dos aspectos relacionados à implementação, temos que considerar

algumas questões importantes ocorridas durante o desenvolvimento do projeto.

4.4.1 Versões das ferramentas

A primeira questão está relacionada às versões das ferramentas utilizadas no

SOTAC versão 1.0. Tanto a versão do SharpDevelop quanto a versão do

PostgreSQL do projeto original, já não estão mais disponíveis para uso, logo

não houve outra opção, a não ser utilizar versões mais recentes.

Diante do exposto surgiu a necessidade de optar por usar versões mais

próximas das anteriormente usadas ou as versões mais atuais. Decidiu-se

então pelas versões mais atuais das ferramentas, mesmo correndo o risco de

ser necessário algum ajuste no código.

Gerou-se a nova versão do SOTAC, versão 1.1, para configuração dos dados

deste projeto. Cumpre esclarecer, que a nova versão não sofreu nenhuma

alteração funcional em relação à versão anterior, e nem quaisquer ajustes de

código.

4.4.2 Plataformas de desenvolvimento

A seguir levantou-se a questão a respeito do Java como plataforma de

desenvolvimento do protótipo. Fez-se necessário determinar a melhor

abordagem a respeito da camada de negócios do SOTAC, o qual está

desenvolvido em C# (C Sharp).

Foram levantadas duas abordagens:

Tradução da camada de negócios para Java;

Criação de uma DLL (COM) em C# acessível pelo Java via JNA2 e C++.

2 JNA: Framework para Java que pode executar bibliotecas escritas em outras linguagens (C ou C++).

Page 87: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 87

No primeiro caso avaliou-se o risco de não se obter os mesmos resultados no

processo de tradução, visto que a recodificação nem sempre resulta em

resultados satisfatórios, além do fato do trabalho de recodificação em si. Por

outro lado e baseado nos testes feitos, obteve-se ganho de performance, já

que não fez-se necessário o uso de chamadas externas.

No segundo caso fez-se necessário a criação de uma interface feita em C/C++

para executar a chamada à DLL em C#, já que o C# não é compatível com o

JNA (Java) diretamente, pois ambos, Java e C#, trabalham com máquinas

virtuais distintas entre si, ou seja; o resultado de seus assemblies é totalmente

incompatível. Neste sentido criou-se a DLL em C# com base no código original

do SOTAC, o que também trata-se de recodificação, bem com criou-se a DLL

de interface em C/C++, onde esta é disparada via JNA no Java.

A vantagem desta segunda abordagem está no fato de a recodificação feita

não alterar o código original diretamente, já que apenas se fez necessário

ajustar e código dos tratamentos de erros, para redução das mensagens de

forma a atender as restrições dos aplicativos móveis, e a separação da camada

de negócios em uma DLL a parte ao executável original. Por outro lado,

trabalhar com interface entre linguagens, C#, C++ e Java, gera menor

portabilidade e aumenta a complexidade.

A esta questão da interface entre bibliotecas desenvolvidas com linguagens

diferentes, também há dois agravantes. O problema de performance, já que

DLLs de componentes COM em C# são um pouco lentas, especialmente para

chamadas de chamadas. Bem como a passagem de parâmetros por referência

e à estabilidade deste processo, já que o Java trabalha unicamente com

passagem de parâmetros por valor.

Pensando de forma prática e vislumbrando o futuro onde a ideia é expandir

para outros dispositivos e plataformas os recursos de tradução do SOTAC,

verificou-se que a tradução da camada de negócio do SOTAC para Java

mostrou-se a melhor abordagem para este projeto. Ou seja, apesar de haver

um trabalho maior de recodificação da Camada de Negócios, e isto inclui a

Page 88: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 88

parte de segurança e conexão com o Banco de Dados, com esta abordagem,

obteve-se o melhor resultado com vistas a longo prazo.

Todos os métodos traduzidos estão ajustados para terem o comprimento das

mensagens de retorno reduzido, a fim de permitir a apresentação das mesmas

em dispositivos móveis com recursos limitados de tela. Também estão

anexados novos métodos em função das configurações móveis mencionadas

anteriormente.

4.4.3 Definição das camadas do sistema

Diante do exposto, tornou-se claro a necessidade da divisão do sistema em

camadas, que podem ou não estarem localizadas no mesmo ambiente,

conforme os recursos que se fazem necessários.

Assim o sistema está dividido em diversas aplicações responsáveis pelas

várias camadas, conforme apresentado na figura a seguir.

Figura 4.17 – Camadas do sistema SOTAC-Mobile.

Esta divisão é responsável não só pela portabilidade da solução proposta para

os diversos dispositivos que podem usar a tradução do SOTAC, mas também

BANCO DE DADOS

memoriatraducao

CAMADA DE NEGÓCIO DO SOTAC

Funções de login e tradução

CAMADA DE SERVIÇO RMI

Serviço RME

CAMADA DE INTERFACE

Aplicações web, ou móveis

SOTAC-Mobile

SOTAC-WMobile

SOTAC-EMobile

POSTGRESS

Page 89: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 89

pela possibilidade de alterações nos hardwares envolvidos, tanto para

expansão de recursos, como para a adição de novos itens de interface sem a

necessidade de alterações nas funções de negócio ou para futuras

modificações nas funções de negócio sem que haja a necessidade de maiores

alterações nas aplicações de interface com o DA.

As aplicações para dispositivos móveis e web, que são aplicações meramente

de interface entre o DA e o sistema, podem ser distribuídas e simultaneamente

usar os recursos de negócio do SOTAC. Daí fez-se necessário a criação de

uma camada especial no SERVLet SOTAC-EMobile, camada RME, para

gerenciar o uso da Camada de Negócios, recodificada a partir das funções do

SOTAC original, a fim de permitir que estas rotinas mantenham seu

encapsulamento original, fornecendo uma maior portabilidade do sistema.

4.4.4 Streaming e formato dos arquivos de vídeo

Posteriormente fez-se a avaliação a respeito da transmissão dos vídeos para

dispositivos móveis. Optou-se por executar este processo na própria aplicação

Java (MIDLet SOTAC-Mobile) de modo a minimizar o uso de recursos

específicos dos dispositivos. Nesse sentido, é fornecida a lista dos caminhos

(hosts e/ou paths) e arquivos de vídeo para exibição. Isso criou transparência e

ganho de performance.

Outro aspecto relacionado à exibição dos vídeos que exigiu tratamento, é que a

aplicação original trabalha com arquivos no formato AVI, que não é adequado

nem para o ambiente móvel nem para a web. Assim, os arquivos de vídeo

foram convertidos para o formato MP4, mais comummente utilizados para

exibição e transmissão de vídeos.

Neste processo de conversão, os vídeos também foram ajustados para o

tamanho 320 por 240 pixels, que é a medida padrão usada pelos dispositivos

Nokia S60, com relação ao tamanho de seus displays.

Page 90: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 90

O formato MP4 se apresentou como o mais adequado ao projeto devido a uma

série de vantagens:

É perfeitamente compatível com os recursos MMAPI do J2ME (JSR

135).

Permite streaming.

Seus arquivos podem ser exibidos com relativa facilidade, pois a maioria

dos dispositivos atuais possuem recursos para a sua exibição.

Mais especificamente nos dispositivos Nokia série S60, há players e

codecs capazes de executar este tipo de arquivo sem outras adições.

Este formato gera arquivos bastante compactos o que não compromete

os limitados recursos dos dispositivos móveis.

Por fim também se fez necessário avaliar os recursos para a transmissão da

sequência destes arquivos para os dispositivos móveis, de modo a garantir

uma performance adequada e uma execução sem interferência do usuário DA.

Para tanto os recursos desenvolvidos dentro da camada de serviço RMI do

projeto, permitem que se possa trabalhar com a transmissão dos arquivos

utilizando-se tanto protocolo HTTP quanto o protocolo RTMP, bastando apenas

uma configuração no arquivo de properties da aplicação do SERVLet SOTAC-

EMobile.

4.4.5 Portabilidade

Finalmente, optou-se por criar uma interface web, o SERVLet SOTAC-

WMobile, para uso das funcionalidades do SOTAC e a título de demonstração

a fim de apresentar como o uso destas tecnologias é capaz de trazer

portabilidade.

Page 91: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 91

Esta página também teve importância ao facilitar o desenvolvimento do projeto,

na medida em que os testes das duas camadas mais inferiores puderam ser

feitos de forma autônoma.

Também foram feitos testes em emulador para dispositivos móveis Nokia série

S40. Estes testes foram feitos com Nokia SDK 2.0 for Java — for Series 40

apps, e não exigiram maiores alterações de código. O uso de emulador nestes

testes se deu por uma questão de ausência de recurso físico. O resultado é

equivalente ao obtido na com a versão para Nokia série S60, portanto com

sucesso.

4.4.6 Interface

A partir dos módulos do sistema, a interface está separada em três partes, uma

para cada aplicação:

Do MIDLet SOTAC-Mobile:

A interface do MIDLet SOTAC-Mobile é bastante simples e minimalista.

Figura 4.18 – Telas de abertura e principal do SOTAC–Mobile obtidas via emulador.

Page 92: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 92

Figura 4.19 – Menu principal e tradução no SOTAC–Mobile obtidas via emulador.

Figura 4.20 – Tela de espera e exibição de vídeos no SOTAC–Mobile obtidas via emulador.

Page 93: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 93

No contexto das telas acima apresentadas, vemos que a navegação é bastante

simples e pode ser feita igualmente com dispositivos que possuem teclados

alfanuméricos ou numéricos com as mesmas funcionalidades.

Do SERVLet SOTAC-EMobile:

Como o SERVLet SOTAC-EMobile se trata de uma aplicação muito simples

apenas para execução do Serviço Remoto do sistema e das funções do

SOTAC, não há uma interface visual disponível, assim sendo; por meio do

prompt de comando do Windows é possível visualizar o processamento desta

camada.

Figura 4.21 – Serviço remoto SERVLet SOTAC –EMobile em execução no servidor

Do SERVLet SOTAC-WMobile:

A interface está criada, como já explicado anteriormente apenas para efeito

demonstrativo, assim há apenas as páginas mais básicas para a

demonstração.

Estas páginas podem ser abertas nos browsers Internet Explorer, Google

Crome, e Mozila Firefox, que são mais comumente usados. Em todos os casos

o funcionamento apresentou-se correto e com os resultados adequados para a

tradução e apresentação dos vídeos.

Page 94: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 94

A página de acesso ao sistema, para login de usuário.

Figura 4.22 – Tela de acesso ao SERVLet SOTAC –WMobile obtida via browser IE.

E a página para a execução da tradução.

Figura 4.23 – Tela de traduções do SERVLet SOTAC –WMobile obtida via browser IE.

Page 95: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 95

Página com a apresentação de uma tradução após um teste.

Figura 4.24 – Tela de resultado no SERVLet SOTAC –WMobile obtida via browser IE.

Usa-se nesta aplicação o CSS como tecnologia de gerenciamento de estilos.

Do SOTAC:

Está mantida, exatamente a mesma interface já usada na versão 1.0, ou seja; a

nova versão 1.1 é apenas a reedição do SOTAC com atualização das

ferramentas de desenvolvimento e banco de dados. Esta interface pode ser

vista na tese de mestrado de Breda (2008).

4.4.7 Fluxo de desenvolvimento

Como o SOTAC-Mobile é uma evolução do Sistema SOTAC, podemos

representar o fluxo de desenvolvimento do protótipo da seguinte maneira:

Figura 4.25 – Fluxo de desenvolvimento do SOTAC – Mobile.

FALIBRAS FALIBRAS - MT

SOTAC

SOTAC-Mobile

Page 96: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 96

4.4.8 Codificação

A partir das camadas definidas e mostradas anteriormente, a implementação

está separada em três aplicações principais desenvolvidas na plataforma Java:

SERVLet SOTAC-EMobile:

O SERVLet SOTAC-EMobilet é na verdade um Serviço Remoto RMI capaz de

executar as funções do SOTAC traduzidas para Java.

Assim sendo, primeiramente há a interface RME é composta das chamadas às

funções de login (linha 2), tradução (linha 3) e uma função auxiliar para

impressão de informações na tela do Serviço Remoto (linha 4), esta interface é

também utilizada por em todos os módulos de interface do projeto.

1. public interface ServicoRemoto extends Remote{ 2. public String Login(String usuario, String senha) throws ArcademisException; 3. public String[] Traduz(String perfil, String tipo, String TXTOrigem) throws

ArcademisException;

4. public void mensagemServidor(String mensagem) throws ArcademisException; 5. }

A seguir a rotina da classe skeleton do RME para login e tradução, responsável

pelo vínculo com a classe stub RME.

1. public class ServicoRemotoImpl_Skeleton extends arcademis.server.Skeleton { 2. 3. public Stream dispatch(RemoteCall r) throws Exception { 4. RmeRemoteCall remoteCall = (RmeRemoteCall)r; 5. Stream returnStr = OrbAccessor.getStream(); 6. Stream args = remoteCall.getArguments(); 7. switch (remoteCall.getOperationCode()) { 8. case 0: { 9. java.lang.String param0 = (java.lang.String)args.readObject(); 10. Marshalable retValue = null; 11. ((sotacsmobile.ServicoRemotoImpl)super.remoteObject).mensagemServidor(param0); 12. returnStr.write(retValue); 13. } 14. break; 15. case 1: { 16. java.lang.String param0 = (java.lang.String)args.readObject(); 17. java.lang.String param1 = (java.lang.String)args.readObject(); 18. java.lang.String retValue =

((sotacsmobile.ServicoRemotoImpl)super.remoteObject).Login(param0, param1);

19. returnStr.write(retValue); 20. } 21. break; 22. case 2: { 23. java.lang.String param0 = (java.lang.String)args.readObject(); 24. java.lang.String param1 = (java.lang.String)args.readObject(); 25. java.lang.String param2 = (java.lang.String)args.readObject(); 26. java.lang.String[] retValue =

((sotacsmobile.ServicoRemotoImpl)super.remoteObject).Traduz(param0, param1, param2);

27. returnStr.write(retValue); 28. }

Page 97: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 97

29. break; 30. default: { 31. throw new ArcademisException("Invalid operation in remote method request"); 32. } 33. } // end switch 34. return returnStr; 35. } // end dispatch 36. }

Para efetuar o processamento das requisições RME, tem-se e classe de

implementação da interface acima (implementação do login e da tradução).

Observa-se que estas rotinas são bastante semelhantes às rotinas usadas na

aplicação em C# do projeto original do SOTAC de Breda (2008).

Abaixo há a implementação do login, onde é feita a chamada da função (linha

6) do SOTAC traduzida para Java.

1. @Override 2. public String Login(String usuario, String senha) { 3. String ret = ""; 4. try { 5. sotacemobile.sotac.Login lgn = new sotacemobile.sotac.Login(); 6. ret = lgn.Login(usuario,senha); 7. } catch (Exception e) { 8. ret = ret +". "+ e.getMessage(); 9. } 10. return ret; 11. }

Observa-se que o retorno desta função é uma string alimentada com o valor

"Ok." em caso de sucesso ou de uma mensagem de erro em caso de

insucesso, resultados estes obtidos via retorno da função

sotacemobile.sotac.Login.

Na implementação da tradução é feita a chamada à função (linha 9) do SOTAC

traduzida para Java.

1. @Override 2. public String[] Traduz(String perfil, String tipo, String TXTOrigem) { 3. String ret = ""; 4. String TXTAlvo = ""; 5. Vector vret = new Vector(); 6. System.out.println("Traduzir texto origem: "+ TXTOrigem); 7. sotacemobile.sotac.TraducaoTexto trdtxt = new sotacemobile.sotac.TraducaoTexto(); 8. try { 9. ret = trdtxt.EfetuarTraducao(perfil,tipo,TXTOrigem); 10. } catch (Exception e) { 11. ret = ret +". "+ e.getMessage(); 12. }

Page 98: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 98

13. // alimenta a resposta com a tradução obtida 14. vret.add(ret); 15. if (ret.equals("Ok.")) { 16. // monta o retorno = primeiro a tradução depois a lista de aquivos 17. TXTAlvo = trdtxt.getTEXTOAlvoString()+" "; 18. System.out.println("Tradução: "+ TXTAlvo); 19. vret.add(TXTAlvo); 20. // carrega os vídeos 21. if (tipo.equals("V")) { 22. String[] videos = trdtxt.getSEQVideos(); 23. // passando os vídeos para o retorno 24. for (int i = 0; i < videos.length; i++) { 25. vret.add(videos[i]); 26. } 27. } 28. } 29. // prepara o retorno 30. String[] retorno = new String[vret.size()]; 31. for (int i = 0; i < vret.size(); i++) { 32. retorno[i] = (String)vret.get(i); 33. } 34. return retorno; 35. }

Observa-se que ao final da tradução ocorre a alimentação do vetor que contem

o conjunto de strings (cadeias de caractéres) com o resultado do

processamento, com a seguinte disposição:

Posição 0 (zero): retorno "Ok." ou mensagem de erro (linha 14);

Posição 1: texto Alvo (linha 19);

Posição 2 em diante: lista de arquivos (linha 25).

Por fim, há a função de execução do Serviço Remoto bem como a função main

da aplicação.

1. public void execute() { 2. try { 3. RmeConfigurator mc = new RmeConfigurator(); 4. mc.configure(); 5. ServicoRemotoImpl infoObj = new ServicoRemotoImpl(); 6. System.out.println("Registrando objeto Remoto..."); 7. RmeNaming.bind(URL,infoObj); 8. System.out.println("Registrado!"); 9. infoObj.activate(); 10. } catch (Exception e) { 11. System.err.println("Erro " + e); 12. e.printStackTrace(); 13. System.exit(2); 14. } 15. System.out.println("Esperando por ação..."); 16. }

Observando-se que a conexão RME (linha 7) é feita usando-se a URL pré-

definida em um arquivo de properties, comumente usado em Java.

Page 99: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 99

Abaixo a main da aplicação, com ênfase na geração das classes stub e

skeleton RME (linha 12), recurso este fornecido pelo Arcademis / RME.

1. public static void main(String[] args){ 2. String ret = ""; 3. // Obtem o nome do serviço registrado via properties 4. try { 5. ret = sotacemobile.SOTACEMobile.GetConfig(); 6. } catch (Exception e) { 7. System.err.println("Ocorreu uma falha na leitura das propriedades." +

"\n\nDetalhes: \n"+e.getMessage());

8. } 9. // stubs e skeletons 10. String localPath = new java.io.File("").getAbsolutePath() + "/src"; 11. rme.rmec.RmeC.main(new String[] {"-d", localPath, "sotacsmobile." +

ServiceName+"Impl"} );

12. // executando 13. try { 14. new SOTACEMobile().execute(); 15. System.err.println("SOTACEMobile pronto ("+URL+")."); 16. } catch (Exception e) { 17. System.err.println("Mensagem: " + e.toString()); 18. e.printStackTrace(); 19. } 20. }

MIDLet SOTAC-Mobile:

As funcionalidades principais do MIDLet SOTAC-Mobile são as que fazem

interface com o SERVLet SOTAC-EMobile, criadas em Java.

Primeiramente tem-se a rotina que efetua a conexão com o Serviço Remoto

(RME), que é feita por meio da String contendo a URL de conexão (linha 6):

1. try { 2. System.out.println("Configurando..."); 3. RmeConfigurator mc = new RmeConfigurator(); 4. mc.configure(); 5. System.out.println("Procurando por objeto remoto..."); 6. SRemoto = (ServicoRemoto)RmeNaming.lookup(URL); 7. }catch (Exception e) { 8. e.printStackTrace(); 9. throw new Exception("Erro ao procurar o objeto remoto!\n" + e); 10. }

A seguir é feito o login (linha 4) com a finalidade de garantir o acesso ao

sistema, observando-se que todos os parâmetros estão definidos hardcoded:

1. if (SRemoto != null) { 2. try { 3. SRemoto.mensagemServidor("Efetuando login remoto!"); 4. ret = SRemoto.Login("movel","M"); 5. }catch (Exception e) { 6. e.printStackTrace(); 7. throw new Exception("Erro ao realizar a chamada remota!\n" + e); 8. } 9. }

Page 100: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 100

Está definida uma classe chamada Locator inicializada juntamente com o

Serviço Remoto (SRemoto), e tem como principal finalidade armazenar a lista

de vídeos recebida com aspectos de playlist (lista de reprodução) permitindo

assim o sequenciamento dos vídeos sem atuação direta do usuário.

A seguir apresenta-se a definição desta classe:

1. public class Locator { 2. public String[] locator = null; 3. public int locatorindex = 0;

E finalmente a chamada para a função que efetua as traduções (linha 4),

incluindo a chamada a função para a alimentação da lista dos vídeos (linha 15)

definida na classe Locator mencionada acima:

1. if (SRemoto != null) { 2. try { 3. SRemoto.mensagemServidor("Efetuando a tradução remota!"); 4. sret = SRemoto.Traduz("U",tipo,textofonte); 5. ret = sret[0]; 6. }catch (Exception e) { 7. ret = e.getMessage(); 8. } 9. // trata o retorno do servlet 10. if (ret.equals("Ok.")){ 11. TextField SM_T = MIDlet.getSM_traducao_textfield(); 12. SM_T.setString(sret[1]); 13. // se a tradução é com vídeo prepara para a exibição 14. if (tipo.equals("V")) { 15. MIDlet.videos.intLocator(sret,2); 16. } 17. } 18. } 19. }

Esta aplicação faz uso da interface RME e da classe stub do RME com a

finalidade de integração com a implementação das funções de login e tradução

do SOTAC SERVLet-EMobile, abaixo está a classe stub do RME:

1. public java.lang.String Login(java.lang.String param0, java.lang.String param1) throws arcademis.ArcademisException {

2. java.lang.String resp = null; 3. try { 4. Stream args = OrbAccessor.getStream(); 5. args.write(param0); 6. args.write(param1); 7. int op = 1; 8. Stream future = invoke(args, op, '?', 0); 9. if(future.isException()) { 10. Exception e = (Exception)future.readObject(); 11. throw e; 12. } 13. resp = (java.lang.String)future.readObject(); 14. } catch (arcademis.ArcademisException e) { 15. throw e; 16. } catch (Exception e) {

Page 101: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 101

17. throw new arcademis.UnspecifiedException(e.toString()); 18. } 19. return resp; 20. } 21. 22. public java.lang.String[] Traduz(java.lang.String param0, java.lang.String param1,

java.lang.String param2) throws arcademis.ArcademisException {

23. java.lang.String[] resp = null; 24. try { 25. Stream args = OrbAccessor.getStream(); 26. args.write(param0); 27. args.write(param1); 28. args.write(param2); 29. int op = 2; 30. Stream future = invoke(args, op, '?', 0); 31. if(future.isException()) { 32. Exception e = (Exception)future.readObject(); 33. throw e; 34. } 35. resp = (java.lang.String[])future.readObject(); 36. } catch (arcademis.ArcademisException e) { 37. throw e; 38. } catch (Exception e) { 39. throw new arcademis.UnspecifiedException(e.toString()); 40. } 41. return resp; 42. }

Por fim, a seguir estão apresentadas as rotinas para execução da lista de

vídeos, onde a exibição em si (linha 4) ocorre no evento start da classe

PlayerManager por meio de uma thread (fluxo de execução) separada.

1. String video = MIDlet.videos.getLocator(); 2. if (!(video.equals("")) && !(video == null)) { 3. defplayer(); 4. player = Manager.createPlayer(video); 5. player.addPlayerListener(this); 6. player.realize(); 7. // aguarda o final da apresentação para iniciar o outro video

automaticamente

8. player.start();

Observa-se que não há um loop (fluxo de repetição) para a exibição da

sequencia de vídeos, pois um vídeo só é chamado após o evento

END_OF_MEDIA, disparado pelo objeto player, e utilizando a playlist vídeos da

classe Locator mencionada anteriormente. Conforme mostrado a seguir.

1. } else if(event.equals(PlayerListener.END_OF_MEDIA)) { 2. form.deleteAll(); 3. MIDlet.switchDisplayable(null, MIDlet.getSM_waitScreen()); 4. MIDlet.videos.nextLocator(); 5. if (MIDlet.videos.indexLocator() < MIDlet.videos.lenghtLocator()) { 6. // inicia o proximo vídeo 7. this.run(); 8. } else { 9. // reinicia o locator 10. MIDlet.videos.firstLocator(); 11. // volta para a tela anterior 12. MIDlet.switchDisplayable(null, MIDlet.getSM_form()); 13. } 14. }

Page 102: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 102

Todas as outras rotinas contidas no MIDLet SOTAC-Mobile são meramente

para tratamentos de GNU.

Do SOTAC-WMobile:

Na aplicação web, para as solicitações de login e tradução temos uma

repetição da lógica utilizada na aplicação móvel. sendo que estas rotinas foram

implementadas no dopost.

A interface RME e a classe stub do RME são exatamente as mesmas utilizadas

no MIDLet SOTAC-Mobile.

Todas as outras rotinas do SERVLet SOTAC-WMobilet são para tratamentos

usando CSS, XHTML e JSP.

Do SOTAC:

No SOTAC as principais rotinas traduzidas para Java estão relacionadas aos

processos de conexão ao banco de dados, login e tradução. Estes códigos

foram traduzidos do C# para Java.

Estas rotinas pertencem atualmente ao SERVLet SOTAC-EMobile,

contemplando a camada de negócios do SOTAC.

A seguir é apresentada a rotina utilizada para conexão (linha 2) com o banco

de dados, usando parâmetros de acesso obtidos a partir do arquivo de

properties Java, criado para substituir o config.ini usado no SOTAC que é

originalmente preenchido na rotina principal do SOTAC (program.cs).

1. public static Connection getConnection() throws SQLException { 2. return DriverManager.getConnection(URL,UserID,Password); 3. }

Page 103: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 103

Outro item de banco de dados é a rotina para a execução de querys (linha 7).

1. public static ResultSet runquery(String SQLquery) { 2. Connection CONEXAO = null; 3. ResultSet RS = null; 4. try { 5. CONEXAO = Conecta.getConnection(); 6. Statement stm = CONEXAO.createStatement(); 7. RS = stm.executeQuery(SQLquery); 8. } catch(SQLException e) { 9. e.printStackTrace(); 10. } finally { 11. try { 12. CONEXAO.close(); 13. } catch(SQLException onConClose) { 14. onConClose.printStackTrace(); 15. } 16. return RS; 17. } 18. }

A rotina de login do sistema está criada para atender a nova configuração de

acesso via dispositivos móveis.

1. public class Login { 2. public String Login(String user, String password) 3. { 4. String ret = ""; 5. try { 6. ret = sotacemobile.jdbc.Conecta.GetConfig(); 7. } catch (Exception e) { 8. return "Ocorreu uma falha na leitura das propriedades." + "\n\nDetalhes:

\n"+e.getMessage();

9. } 10. if (ret == "Ok.") { 11. ret = CriarAdministrador(); 12. if (ret == "Ok.") { 13. ret = CriarUsuarioMobile(); 14. if (ret == "Ok.") ret = EfetuarLogin(user,password); 15. } 16. } 17. return ret; 18. }

Observa-se que o usuário móvel é criado (linha 13) quando não existe na base

de dados, adequando-se ao novo contexto. Na sequência (linha 14) é feita a

chamada para a consulta de login via banco de dados.

Page 104: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 104

A rotina para criação do usuário móvel assemelha-se muito àquela utilizada na

versão original do SOTAC para a criação de um usuário administrador

automaticamente, esta abordagem é proposital de forma a respeitar a lógica

original do SOTAC.

1. private String CriarUsuarioMobile() { 2. String COMANDO = ""; 3. int contagem = 0; 4. ResultSet rs = null; 5. try { 6. COMANDO = "select count(usuario) as total " + 7. "from usuarios " + 8. "where perfil = 'U' and usuario = 'movel'"; 9. rs = sotacemobile.jdbc.Conecta.runquery(COMANDO); 10. if (rs.next()) contagem = rs.getInt("total"); 11. if (contagem == 0) { 12. COMANDO = "select max(cod_us) as total " + 13. "from usuarios "; 14. rs = sotacemobile.jdbc.Conecta.runquery(COMANDO); 15. if (rs.next()) { 16. double total_us = rs.getDouble("total"); 17. if (total_us>0) total_us++; else total_us = 1; 18. COMANDO = "insert into usuarios " + 19. "(cod_us,usuario,senha,nome,perfil) " + 20. "values ("+Double.toString(total_us)+",'movel','M','Usuário

Móvel','U')";

21. rs = sotacemobile.jdbc.Conecta.runquery(COMANDO); 22. } 23. } 24. } catch (Exception e) { 25. return "Ocorreu uma falha de conexão com o banco de dados." + 26. "\n\nDetalhes: \n"+e.getMessage(); 27. } 28. return "Ok."; 29. }

Por fim, todas as outras rotinas foram traduzidas para Java, sem alteração de

sua lógica original em C#, sempre respeitando a autoria que é do SOTAC de

Breda (2008). No mais todas as diferenças de tradução estão relacionadas

apenas ao contexto de caixas de mensagens removidas e substituídas por

retorno string, e/ou com a retirada de objetos e eventos visuais.

Os códigos completos estão disponíveis para download por meio das URLs

apresentadas no ANEXO C.

Page 105: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 105

4.4.9 Resultados alcançados

No processo de tradução foram alcançados os mesmos resultados obtidos na

tese de Breda (2008). Porém o contexto de apresentação destes resultados

está expresso de maneira diferente.

No dispositivo móvel Nokia E63 (modelo S60 disponível), fez-se a instalação da

aplicação empacotada correta e automaticamente, por meio dos recursos

próprios do modelo e de conexão com PC via USB.

A execução da aplicação é feita via menu principal do sistema operacional,

sem maiores dificuldades.

A navegação apresentou-se muito simples e tranquila e a tradução para

LIBRAS ocorre perfeitamente de acordo com a MT cadastrada.

A apresentação dos vídeos possui o tempo de resposta adequado e sua

visualização é muito boa.

Na web, apesar da função principal desta aplicação ser ilustrativa, a mesma

pôde ser acessada via WebBrowser Internet Explorer, Google Crome e Mozila

FireFox sem qualquer restrição e mantendo totalmente seus recursos

funcionais e visuais.

Assim sendo, vemos a implementação de um sistema portável para tradução

Português para LIBRAS é totalmente viável e eficiente.

Page 106: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 106

Capítulo 5

Considerações finais

Neste capítulo são apresentadas, as análises de portabilidade e escalabilidade

bem como as considerações finais a respeito deste trabalho.

5.1 Análise de portabilidade

Considerando que atualmente há uma vasta quantidade de dispositivos móveis

em funcionamento e disponíveis no mercado, está claro que apesar deste

trabalho se limitar a um grupo específico de dispositivos móveis, é possível

expandir esta ideia para uma diversa gama de outros dispositivos e

plataformas.

5.1.1 Portablidade para dispositivos móveis compativeis com

plataforma J2ME

O MIDLet SOTAC-Mobile está codificado em J2ME e usa alguns recursos que

não estão presentes em todos os dispositivos compatíveis com J2ME. Desta

forma nem todos os dispositivos compatíveis com J2ME são capazes de

executar o MIDLet SOTAC-Mobile.

Dentre o conjunto dos dispositivos compatíveis com J2ME, todos aqueles que

possuírem JSR-118, JSR-135e JSR-139 são capazes de executar o MIDLet

SOTAC-Mobile. Para tanto, faz-se necessário gerar uma nova compilação do

aplicativo, vinculando a ela a SDK do conjunto dos dispositivos selecionados.

Por exemplo, considerando os dispositivos Nokia séries S40, uma série de

dispositivos mais antiga, é fato que nem todos os seus dispositivos desta série

podem executar o MIDLet SOTAC-Mobile, porém para a série S80, bem mais

recente, vemos que a maioria de seus dispositivos podem executar o MIDLet

SOTAC-Mobile.

Page 107: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 107

Para dispositivos de outros fabricantes como a Samsung, Motorola e outros, a

regra é a mesma, é necessário observar suas especificações, ou seja; desde

que sejam compatíveis com J2ME e possuam recursos JSR-118, JSR-135 e

JSR-139, podem executar normalmente o MIDLet SOTAC-Mobile.

A seguir alguns exemplos de dispositivos que podem executar o MIDLet

SOTAC-Mobile, baseados em testes feitos com base em seus SDKs e usando

os seus respectivos emuladores (não foram executados testes nos dispositivos

fisicamente, por questões de viabilidade do recurso).

Figura 5.1 – Nokia S40 Asha 311 e LG C205 podem executar o MIDLet SOTAC – Mobile.

Para alguns dos dispositivos móveis compatíveis com J2ME que não possuam

todos os recursos JSR-118, JSR-135 e JSR-139, provavelmente é possível

também executar o MIDLet SOTAC-Mobile, mas são necessários ajustes no

código e isso depende muito de cada especificação. Como isso não está

testado, não há garantia nestes casos.

5.1.2 Portabilidade para dispositivos móveis com Android

A plataforma Android possui alguns recursos Java, mas não é totalmente

compatível com J2ME. Assim, para suprir esta diferença, há alguns emuladores

J2ME, também conhecidos como J2ME Runners, capazes de executar

aplicações J2ME no Android.

Na realidade os J2ME Runners, funcionam como máquinas virtuais J2ME

dentro do Android e normalmente não executam corretamente todas as

funções J2ME, fazendo com que os aplicativos não funcionem corretamente.

Isso ocorre principalmente nos processos de conexão via socket.

Page 108: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 108

Como o MIDLet SOTAC-Mobile usa recursos Arcademis/RME baseados em

conexão via socket, faz se necessário avaliar e testar o MIDLet SOTAC-Mobile

nestas condições antes de determinar a portabilidade real desta solução.

Outra opção é gerar uma nova interface voltada para a plataforma Android de

forma nativa. Neste caso há a necessidade de verificar a capacidade desta

aplicação em acessar a Camada de Serviços RMI. Há algumas soluções para

esta questão, mas também precisam ser avaliadas e testadas antes de

determinar a portabilidade real desta solução.

Certamente é mais interessante para o futuro partir para outras opções de

desenvolvimento como a utilização de SOA (WebServices e SOAP).

Nestes casos a Camada de Serviço RMI é afetada, necessitaria de substituição

ou manutenção. Porém o mais adequado é adicionar novas camadas de

serviço de forma paralela à atual camada RMI, desta forma não há

necessidade de manutenção nas atuais interfaces que estão em J2ME.

Figura 5.2 – Exemplo de novas possíveis camadas para o SOTAC-Mobile.

As opções acima citadas são ideias para trabalhos futuros.

BANCO DE DADOS

memoriatraducao

CAMADA DE NEGÓCIO DO SOTAC

Funções de login e tradução

CAMADA DE SERVIÇO RMI

Serviço RME SOTAC-EMobile

POSTGRESS

CAMADA DE SERVIÇO SOA

WebService

CAMADA DE INTERFACE

Aplicações web, ou móveis

J2ME

SOTAC-Mobile

SOTAC-WMobile

CAMADA DE INTERFACE

Aplicações web, ou outras

plataformas móveis

Page 109: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 109

5.1.3 Portabilidade para dispositivos móveis com Windows

Mobile ou Windows Phone

Em geral a plataforma Windows Mobile ou Windows Phone é compatível com

J2ME, e isto está diretamente relacionado ao fabricante do dispositivo.

Portanto, da mesma maneira ao que já mencionado anteriormente se faz

necessário a aplicação de SDKs específicos dos fabricantes dos dispositivos

para recompilar o MIDLet SOTAC-Mobile para execução em Windows.

Como o MIDLet SOTAC-Mobile não usa nenhum recurso específico dos

dispositivos Nokia S60, a portabilidade não exige manutenções maiores. Porém

é interessante que faça uma avaliação e testes com relação a este caso, sendo

também uma proposta de trabalho futuro.

Em se tratando de versões mais antigas da plataforma Windows, ou seja, do

Windows CE, há diversas Máquinas Virtuais Java para esta plataforma no

mercado. Porém devido às limitações dos dispositivos móveis que usam

Windows CE, que são mais antigos, provavelmente não seja possível executar

o MIDLet SOTAC-Mobile na maioria deles. Há que se testar em trabalho futuro.

Um aspecto interessante a se citar, é que a plataforma Symbian está sendo

abandonada pela Nokia, em prol da plataforma Windows Phone. Isto significa

dizer que todos os aplicativos J2ME para Symbian que atualmente existem no

mercado em breve devem ser migrados caso se deseje mantê-los.

5.1.4 Portablidade para dispositivos móveis BlackBerry

Em geral a plataforma BlackBerry é compatível com J2ME. Portanto, da

mesma maneira ao que já mencionado anteriormente se faz necessário a

aplicação de SDKs específicos do fabricante, neste caso a RIM, para

recompilar o MIDLet SOTAC-Mobile para execução em BlackBerry.

Em geral os aplicativos J2ME quando executados no BlackBerry, não tem

acesso à maioria dos recursos próprios destes dispositivos, isto significa dizer

Page 110: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 110

que para aplicações onde estes recursos são exigência o melhor e desenvolver

diretamente para a plataforma, ou seja nativamente.

Mas como o MIDLet SOTAC-Mobile não usa nenhum recurso específico dos

dispositivos Nokia S60, portar o MIDLet SOTAC-Mobile para a plataforma

BlackBerry não requer maiores manutenções. Porém é interessante que faça

uma avaliação e testes com relação a este caso, sendo também uma proposta

de trabalho futuro.

5.1.5 Portabilidade para dispositivos Apple

A plataforma Apple é totalmente diferente do que, até o momento, se discutiu e

testou no presente trabalho. Como o desenvolvimento para esta plataforma

requer ambiente Apple, se faz necessário criar uma nova interface.

Faz-se então necessário recodificar o MIDLet SOTAC-Mobile para o ambiente

nativo Apple. Porém, uma questão importante relacionada aos aplicativos para

plataforma Apple, está na necessidade de registro e pagamento de comissão

de 30% cobrada pela Apple.

Esta abordagem é uma proposta bastante interessante para o futuro.

5.1.6 Portabilidade para dispositivos de outras plataformas

Recaímos neste caso para a mesma questão, cada plataforma tem seus

aspectos particulares, devendo portanto para cada qual verificar-se a

viabilidade do projeto.

O aspecto mais importante é a relação custo benefício, que deve ser avaliada

quando se trata de desenvolvimento em plataformas móveis de pouca

expressão no mercado. Em especial, porque a tendência do mercado a partir

de 2012, é ficar restrito às plataformas Android, Windows Mobile ou Windows

Phone, Apple e com menor expressividade o BlackBerry.

Outra ideia interessante, e viabilizar a utilização do SOTAC-Mobile em outras

plataformas Java embarcadas, como TV, dispositivos automotores, dispositivos

Page 111: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 111

de posicionamento global (GPSs) entre outros. Em todos estes casos a

plataforma Java (J2ME) já é uma realidade o que possibilita novas abordagens.

Logicamente a interface de cada caso é item de estudo e testes em trabalhos

futuros, mas a possibilidade de executar o SOTAC-Mobile em tão vasta gama

de dispositivos é extremamente interessante, levando-se em conta que

somente faz-se necessário trabalhar na Camada de Interface.

Dar ao DA a possibilidade de comunicação com todos estes dispositivos é uma

realidade muito próxima.

5.2 Análise de escalabilidade

Há várias possibilidades de expansão do sistema SOTAC-Mobile. A seguir

apresenta-se as ideias mais promissoras.

5.2.1 Expansão do SOTAC de forma completa para a web

Neste trabalho já está criado um pequeno site, no qual é possível executar

traduções pela web. Portanto é totalmente viável expandir este site de forma a

permitir o acesso a toda camada de negócios do SOTAC.

A respeito desta expansão temos três questões básicas a considerar:

Manter apenas a abordagem RMI atual.

Partir também para uma abordagem usando SOA.

Em ambos os casos a solução passa pelo que já está feito neste projeto, onde

necessita-se adicionar, ou melhor traduzir, todas as funções de negócio e

persistência do SOTAC para o SERVLet SOTAC-EMobile. Adições na Camada

de Negócios.

Porém, no primeiro caso faz-se necessário criar as interfaces RMI necessárias

para a manipulação das mesmas, fazendo-se da mesma forma como está feito

para as funções de login e tradução apresentadas neste projeto. Adição na

Camada de Serviços RMI.

Page 112: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 112

A seguir parte-se para toda a interface web, e uso de todos os recursos do

SOTAC via Internet, seguindo o que já está feito neste projeto de forma

bastante simples para as traduções e login.

No segundo caso, há a necessidade da criação de uma segunda Camada de

Serviços para gerenciar as questões relacionadas a WebService. A criação de

WebServices em Java é relativamente normal e não traz problemas em termos

das adições a serem implementadas. Adição da Camada de Serviços SOA,

vide a figura 5.2.

Por fim então pode-se fazer toda a interface web, para uso de todos os

recursos do SOTAC, via Internet . Neste caso usa-se os serviços WebService

disponíveis na nova Camada de Serviços WS criada.

Outro aspecto é verificar o desempenho destas soluções comparativamente, o

que pode ser outra questão de estudo.

5.2.2 Melhoramento do SOTAC-Mobile no processo de seleção

das Memórias de Tradução

Na medida em que todas as funcionalidades do SOTAC estiverem disponíveis,

independentemente do uso de SOA ou RMI, as Memórias de Tradução estão

disponíveis para manipulação.

Isto significa dizer que o SERVLet SOTAC-WMobile, pode ter acesso ao

cadastro e manipulação das Memórias de Tradução, assim como o uso das

mesmas exatamente como o SOTAC original, tanto na web como em

dispositivos móveis.

No caso da web estamos tratando de uma aplicação similar ao SOTAC, que

pode executar todas as suas funcionalidades, isso inclui a persistência e o uso

das MT nas traduções.

Já para dispositivos móveis, é mais adequado a criação de uma outra interface

para gerenciar as funções administrativas do SOTAC. Quer dizer, trabalhar

Page 113: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 113

separadamente com os perfis de usuário "Administrador" ou "Colaborador".

Isso evita aumentar a complexidade do MIDLet SOTAC-Mobile, que está criado

para usuários DA.

Neste caso é interessante notar que pode-se adicionar a opção de seleção de

Memórias de Tradução no atual MIDLet SOTAC-Mobile, tornando-o igual à

aplicação web, e consequentemente igual ao SOTAC original, neste quesito.

5.2.3 Futura utilização de SOA.

No projeto atual a Camada de Serviços utiliza RMI para integração entre a

Camada de Negócio e a Camada de Interface dos sistema. Porém, é possível o

uso de SOA, e para tanto é necessário a adição de uma nova da camada de

serviços para gerenciar os WebServices, como já mencionado anteriormente.

O uso de SOA, abre um leque de possibilidades, permitindo a expansão da

Camada de Interface, para diversas outras plataformas e tornando o SOTAC-

Mobile um sistema extremamente portável, especialmente porque é possível

manter a abordagem RMI atual rodando paralelamente à abordagem SOA.

É interessante salientar que ambas abordagens devem andar paralelamente,

até porque nem todos os dispositivos móveis possuem recursos para uso de

WebServices e manipulação de arquivos no formato XML. Isto significa dizer

que as abordagens de Serviço RMI e SOA são na realidade complementares

no sentido de atingir o maior volume de plataformas.

Como a Camada de Serviços não interfere no funcionamento das camadas

mais abaixo, todo o sistema pode ser modular e distribuído fisicamente em

diferentes ambientes. Até mesmo as diferentes Camadas de Serviço podem

estar em ambientes distintos, o que é bastante interessante pois podemos até

mesmo criar formas para balancear os recursos físicos para distribuir melhor o

serviço prestado.

Em um projeto futuro pode-se adicionar a abordagem SOA ao SOTAC-Mobile e

simultaneamente complementá-lo tanto na web como em uma outra plataforma

Page 114: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 114

móvel como o Android ou em uma outra plataforma embarcada por exemplo de

TV.

5.2.4 Integração do SOTAC-Mobile com soluções de animação

2D ou 3D

Há diversos trabalhos com animações para LIBRAS, usando-se Avatares

(figuras humanas animadas para animações), estes trabalhos estão baseados

no melhoramento da forma de armazenamento e transporte dos vídeos. Como

exemplo pode-se consultar o projeto POLI-LIBRAS de Januário et. al. (2010),

no qual uma destas ideias é apresentada.

Isto pode tornar-se uma adição interessante ao projeto. E abre as portas para

que os vídeos possam ser substituídos por animações 2D ou 3D.

Neste caso, com o uso de XML e/ou de computação gráfica, pode criar-se um

padrão em XML para geração das traduções do texto em LIBRAS,

possibilitando maior velocidade de tradução. Cabe então à aplicação,

interpretar o XML de retorno da tradução e a partir dele gerar as animações

adequadas por meio dos Avatares.

A principal vantagem desta forma de exibição de LIBRAS é tornar a tradução

mais impessoal o que melhora o entendimento e a comunicação com o DA.

Outra vantagem é que torna-se desnecessário o uso de muitos recursos de

transmissão de dados, players e codecs, na medida em que as interfaces não

mais necessita exibir arquivos de vídeo.

As desvantagens do uso de Avatares são algumas, e dentre elas temos

primeiramente a incapacidade de dispositivos móveis mais antigos se

utilizarem dos recursos de animação 3D. Por outro lado, em geral; todo

dispositivo móvel capaz de executar jogos pode executar animações 2D, porém

estes perdem muito da linguagem LIBRAS pois alguns sinais em 2D podem

ficar confusos para o DA.

Page 115: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 115

Depois há que se verificar se as diferenças entre os dispositivos móveis alvo

requerem muito tratamento de fabricante para fabricante, ou se o mesmo

código pode ser portável de um dispositivo para outro. Logicamente estamos

tratando, neste caso, de cada uma das plataformas individualmente. Por

exemplo; qual a possibilidade de portabilidade de código entre dispositivos

diferentes que usam uma mesma plataforma Android ou J2ME ou BlackBerry.

Há também questões inerentes à animação em si, como o caso da influência

das expressões faciais em LIBRAS. Como estas questões precisam ser

visualizadas em dispositivos móveis com recursos visuais reduzidos.

De certa forma a tendência é que os novos dispositivos móveis do mercado

possam lidar com isso facilmente e esta evolução venha em breve.

5.2.5 Futura migração do sistema para HTML5 e WAP

A linguagem HTML5 (Hypertext Markup Language, versão 5) é a nova versão

da linguagem de marcação de hipertexto HTML, que teve sua primeira

especificação divulgada em 2008 pela W3C.

Há uma série de adições a esta versão de HTML, voltadas para

desenvolvimento de aplicações web com a finalidade de recuperar o terreno

perdido nestes últimos tempos.

Devido a uma série de limitações o desenvolvimento em HTML, sempre

dependeu de outros recursos, o quê com esta nova versão propõe-se, sejam

padronizados.

Outra questão em que o HTML5 aparece com grande força é no

desenvolvimento de aplicações web para dispositivos móveis. Apesar do

HTML5 não substituir todos os recursos das plataformas nativas, ele vem com

grande força já que oferece portabilidade total, ou seja; uma aplicação web

escrita em HTML5 pode rodar em qualquer dispositivo móvel, desde que seu

WebBrownser assim o permita.

Page 116: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 116

Em breve todos os dispositivos móveis do mercado aceitarão HTML5 assim

como os mais atuais dispositivos da linha Apple e Samsung Galaxy.

Uma proposta futura de implementar todas as funcionalidades do SOTAC e

SOTAC-Mobile em HTML5, assim flexibilizando e facilitando o uso geral de

seus recursos pelos DA.

Esta abordagem, também pode ser disponibilizada de forma paralela à

abordagem atual, pois também atua na Camada de Interface.

5.3 Conclusão

A principal conclusão deste trabalho está na validação da real possibilidade do

uso de técnicas de tradução em toda a sua gama de possibilidades em

ambientes variados e móveis.

Tais considerações são uma porta nova para a inclusão social dos DA no

mundo digital, podendo inclusive estender-se a outros tipos de linguagens,

idiomas e dispositivos.

Page 117: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 117

Referências

LIBRAS. Língua Brasileira de Sinais. Disponível em:

http://www.libras.org.br/libras.php. Acessado em: setembro de 2011.

BREDA, W. L. Um ambiente para apoio à tradução baseado em conhecimento

– Estudo de caso com Português – LIBRAS. Dissertação (Mestrado) –

Universidade Federal do Espírito Santo, 2008.

BREDA, W L. Projeto FALIBRAS-MT – Um sistema para autoria e uso de

tradutores automáticos Português - LIBRAS. Dissertação (Bacharelado) –

Universidade Federal do Espírito Santo, 2005.

TAVARES, O. L.; CORADINE, L. C.; BREDA, W. L. FALIBRAS.MT. Autoria de

tradutores automáticos de texto do português para libras, na forma gestual

animada: Uma abordagem com memória de tradução. XXV Congresso da

Sociedade Brasileira de Computação 2005.

TAVARES, O. L.; CORADINE, L. C.; et al. Sistema FALIBRAS: Um intérprete

virtual, como ferramenta de apoio pedagógico à educação de surdos.

Universidade Federal de Alagoas, 2002.

CORADINE, L. C.; ALBUQUERQUE, F. C.; et al. Interpretação de pequenas

frases com análise léxica no sistema FALIBRAS: Tradutor do português para a

LIBRAS. III Fórum de informática aplicada a pessoas portadoras de

necessidades especiais – CBComp 2004.

FRANCO, M. N.; SILVA, W. L. A.; BRITO, P. H. S. FALIBRAS-WEB : Uma

proposta de inclusão social para surdos. Universidade Federal de Alagoas.

CORADINE, L. C. BRITO, P. H. S; SILVA, R.L; SILVA, T. F. L.; CUNHA, F;

Estruturação da Linguagem LIBRAS em Computador a Partir de um Locutor

Page 118: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 118

Externo - Sistema FALIBRAS. Projeto FAPEAL / UFAL (Iniciação Científica),

2002.

JANUÁRIO, G. C. LEITE, L. A. F. KOKA, M.L. Projeto POLI-LIBRAS – Um

tradutor de Português para LIBRAS. Dissertação (Bacharelado) – Escola

Politécnica de São Paulo, 2010.

RYBENÁ, Player. Comunicação priorizando a acessibilidade. Instituto CTS.

Disponível em: http://www.rybena.com.br/default/index.jsp. Acessado em:

setembro de 2011.

LIRA, G. de A. Projeto TLIBRAS – Tradutor Português x LIBRAS. Disponível

em: http://www.acessobrasil.org.br/index.php?itemid=39 e

http://www.acessobrasil.org.br/libras/. Acessados em: outubro de 2011.

NIRENBURG, S. "Knowledge and Choices in Machine Translation". Machine

Translation. Org. Sergei Nirenburg. Cambridge, Cambridge University Press,

1987, pp. 1-15.

SLOCUM, J. "A Survey of Machine Translation: Its History, Current Status, and

Future Prospects". Machine Translation Systems. Org. Jonathan Slocum.

Cambridge, Cambridge University Press, 1985, pp.1-41.

TUCKER, A. B. "Current Strategies in Machine Translation Research and

Development". Machine Translation. Org. Sergei Nirenburg. Cambridge,

Cambridge University Press, 1987, pp. 22-41.

DECLARAÇÃO UNIVERSAL DOS DIREITOS HUMANOS, adotada e

proclamada pela resolução 217 A (III) da Assembleia Geral das Nações Unidas

em 10 de dezembro de 1948. Tradução oficial, UNITED NATIONS HIGH

COMMISSIONER FOR HUMAN RIGHTS. Disponível em:

http://portal.mj.gov.br/sedh/ct/legis_intern/ddh_bib_inter_universal.htm.

Acessado em setembro de 2011.

Page 119: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 119

BRASIL, LEI Nº 10.436/2002, DE 24 DE ABRIL DE 2002. Braslília Gabinete da

Presidência da República. Disponível em:

http://www.planalto.gov.br/ccivil_03/Leis/2002/L10436.htm. Acessado em

setembro de 2011.

BRASIL, DECRETOS Nº 6.583, Nº 6.584, Nº 6.585 e Nº 6.586.

http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6583.htm,

http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6584.htm,

http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6585.htm,

http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6586.htm.

Acessados em outubro de 2012.

ABNT (Associação Brasileira de Normas Técnicas). Informação e

documentação – citações em documentos – apresentação: NBR 10520. Rio de

Janeiro, 2002a.

ABNT (Associação Brasileira de Normas Técnicas). Informação e

documentação – referências – elaboração: NBR 6023. Rio de Janeiro, 2002b.

IBGE (Instituto Brasileiro de Geografia e Estatística), Censo 2010, publicado no

Diário Oficial da União no dia 04 de novembro de 2010. Disponível em

http://www.censo2010.ibge.gov.br/. Acessado em setembro de 2011.

GARTNER. Disponível em HTTP://www.gartner.com. Acessado em setembro

de 2011.

ANATEL (Agência Nacional de Telecomunicações). Disponível em

http://www.anatel.org.br. Acessado em setembro de 2011.

INES, Instituto Nacional de Educação dos Surdos. Disponível em

http://www.ines.org.br. Acessado em setembro de 2011.

APACHE TOMCAT. Disponível em http://tomcat.apache.org/. Acessado em

abril de 2012.

Page 120: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 120

ORACLE, Java – J2ME. Disponível em

http://www.oracle.com/us/technologies/java/mobile/overview/index.html.

Acessado em abril de 2012.

SUN MICROSYSTEMS, Disponível em http://java.sun.com. Acessado em abril

de 2012.

SUN MICROSYSTEMS, RMI-op. Disponível em

http://java.sun.com/products/rmiop/. Acessado em abril de 2012.

MICROSOFT, Windows Mobile. Disponível em

http://www.microsoft.com/windowsmobile. Acessado em setembro de 2011.

Linguagem Python. Disponível em http://www.python.org. Acessado em

outubro de 2011.

TELECO, Telefonia Celular no Brasil. Disponível em

http://www.teleco.com.br/tutoriais/tutorialcelular/pagina_1.asp. Acessado em

setembro de 2011.

TELECO, Desenvolvimento de aplicações móveis com J2ME. Disponível em

http://www.teleco.com.br/tutoriais/tutorialj2me/pagina_1.asp. Acessado em

setembro de 2011.

TELECO, Aparelhos celulares. Disponível em

http://www.teleco.com.br/celprod.asp. Acessado em outubro de 2011.

NOKIA Developer. Disponível em http://www.developer.nokia.com. Acessado

em setembro de 2011.

NOKIA E63, Device Especifications em

http://www.developer.nokia.com/Devices/Device_specifications/E63/. Acessado

em maio de 2012.

Page 121: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 121

LG Developer. Disponível em

http://developer.lge.com/resource/mobile/RetrievePhoneList.dev. Acessado em

outubro de 2012.

Plataforma Symbian. Disponível em http://www.symbian.org. Acessado em

setembro de 2011.

Plataforma Google Android. Disponível em

http://developer.android.com/index.html. Acessado em setembro de 2011.

PALM / HP, Developer. Disponível em http://developer.palm.com. Acessado em

setembro de 2011.

Plataforma Samsung BADA. Disponível em http://www.bada.com. Acessado

em setembro de 2011.

Plataforma Meego. Disponível em http://meego.com. Acessado em setembro

de 2011.

NETBEANS. Disponível em http://netbeans.org/. Acessado em abril de 2012.

Open Mobile Alliance. Disponível em http://www.openmobilealliance.org.

Acessado em outubro de 2011.

ACCENTURE noticias. Disponível em

http://newsroom.accenture.com/article_display.cfm?article_id=5191. Acessado

em setembro de 2011.

FALIBRAS. Disponível em: http://www.falibras.tci.ufal.br Acessado em:

setembro de 2011.

http://www2.dcc.ufmg.br/laboratorios/llp/projects/arcademis

ASTAH Community. Disponível em http://astah.net/. Acessado em abril de

2012.

Page 122: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 122

Amazon Clowd Computing. Disponível em http://aws.amazon.com/pt/.

Acessado em agosto de 2012.

Page 123: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 123

ANEXO A

LEI LIBRAS

LEI Nº 10.436, DE 24 DE ABRIL DE 2002.

Dispõe sobre a Língua Brasileira de Sinais - Libras e dá outras providências.

O PRESIDENTE DA REPÚBLICA Faço saber que o Congresso Nacional

decreta e eu sanciono a seguinte Lei:

Art. 1o É reconhecida como meio legal de comunicação e expressão a Língua

Brasileira de Sinais - Libras e outros recursos de expressão a ela associados.

Parágrafo único. Entende-se como Língua Brasileira de Sinais - Libras a forma

de comunicação e expressão, em que o sistema linguístico de natureza visual-

motora, com estrutura gramatical própria, constituem um sistema linguístico de

transmissão de ideias e fatos, oriundos de comunidades de pessoas surdas do

Brasil.

Art. 2o Deve ser garantido, por parte do poder público em geral e empresas

concessionárias de serviços públicos, formas institucionalizadas de apoiar o

uso e difusão da Língua Brasileira de Sinais - Libras como meio de

comunicação objetiva e de utilização corrente das comunidades surdas do

Brasil.

Art. 3o As instituições públicas e empresas concessionárias de serviços

públicos de assistência à saúde devem garantir atendimento e tratamento

adequado aos portadores de deficiência auditiva, de acordo com as normas

legais em vigor.

Art. 4o O sistema educacional federal e os sistemas educacionais estaduais,

municipais e do Distrito Federal devem garantir a inclusão nos cursos de

formação de Educação Especial, de Fonoaudiologia e de Magistério, em seus

Page 124: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 124

níveis médio e superior, do ensino da Língua Brasileira de Sinais - Libras, como

parte integrante dos Parâmetros Curriculares Nacionais - PCNs, conforme

legislação vigente.

Parágrafo único. A Língua Brasileira de Sinais - LIBRAS não poderá substituir a

modalidade escrita da língua portuguesa.

Art. 5o Esta Lei entra em vigor na data de sua publicação.

Brasília, 24 de abril de 2002; 181o da Independência e 114o da República.

FERNANDO HENRIQUE CARDOSO

Paulo Renato Souza

Texto publicado no Diário Oficial da União de 25.4.2002

Page 125: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 125

ANEXO B

Sistema Móvel Celular no Brasil

Abaixo estão apresentadas a evolução da tecnologia móvel no Brasil.

Geração Tecnologia Largura de banda (Hz)

Taxa de transmissão (b/s)

1G AMPS 30K ≤ 16,2K

2G TDMA CDMA GSM

30K 1,25M 200K

≤ 28,8K ≤ 28,8K ≤ 28,8K

2,5G GPRS CDMA-2000 1x (1XRTT) EDGE

200K 1,25M 200K

≤ 64K – 144K ≤ 64K – 144K ≤ 384K – 2M

3G

WCDMA CDMA-2000 1xEVDV CDMA-2000 1xEVDO HSDPA

5M 1,25M 1,25M 5M

≤ 384K – 2M ≤ 384K – 2M ≤ 384K – 2M ≤ 384K – 10M

Tabela B.1 – Evolução da telefonia móvel no Brasil.

Outras tecnologias de telefonia celular não utilizadas no Brasil.

Geração Tecnologia

1G DECT

2G D-AMPS PHS

2,5G HSCSD

Tabela B.2 – Tecnologias não usadas no Brasil.

O futuro da tecnologia móvel no Brasil está previsto para 2014, com o SMC de

quarta geração.

Geração Tecnologia

4G

WiMax WiBro iBurst LTE 3GPP LTE 3GPP2 UMB

Tabela B.3 – O futuro da telefonia móvel no Brasil.

Page 126: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 126

Abaixo estão apresentadas as operadoras de telefonia móvel no Brasil, sua

cobertura e região de atuação.

Figura B.1 – Presença das Prestadoras de telefonia móvel (ANATEL, 23/06/2009).

Page 127: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 127

Abaixo o gráfico evolutivo (ao longo dos anos) dos terminas SMC habilitados no Brasil.

Gráfico B.1 - Evolução do número de terminais habilitados no SMC no Brasil (ANATEL, 2011).

Ano Terminais

habilitados

1972 150

1990 667

1991 6.700

1992 31.726

1993 191.402

1994 755.224

1995 1.416.500

1996 2.744.549

1997 4.550.175

1998 7.368.218

1999 15.032.698

2000 23.188.171

2001 28.745.769

2002 34.880.967

2003 46.373.266

2004 65.605.577

2005 86.210.336

2006 99.918.621

2007 120.980.103

2008 151.949.077

2009 173.959.368

2010 202.944.033

2011 220.352.712

Tabela B.4 – Evolução do número de terminais habilitados no SMC no Brasil (ANATEL, 2011).

0

50.000.000

100.000.000

150.000.000

200.000.000

250.000.000

1972 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011

150

667

6.70

0

31.7

26

191.

402

755.

224

1.41

6.50

0

2.74

4.54

9

4.55

0.17

5

7.36

8.21

8

15.0

32.6

98

23.1

88.1

71

28.7

45.7

69

34.8

80.9

67

46.3

73.2

66

65.6

05.5

77

86.2

10.3

36

99.9

18.6

21

120.

980.

103

151.

949.

077

173.

959.

368

202.

944.

033

220.

352.

712

Terminais habilitados no Brasil

Page 128: SOTAC MOBILE UMA FERRAMENTA DE TELEFONIA MÓVEL …bfmartins/wp-content/papercite-data/pdf/... · Este trabalho visa abrir uma nova porta para a comunicação dos DA na sociedade

P á g i n a | 128

ANEXO C

Acesso ao Protótipo

Abaixo estão os links onde são encontradas as implementações do protótipo

apresentado.

SERVLet SOTAC-EMobile (via SSH):

http://ec2-23-23-199-102.compute-1.amazonaws.com.

SERVLet SOTAC-WMobile:

http://ec2-23-23-175-86.compute-1.amazonaws.com/SOTAC-WMobile/.

MIDLet SOTAC-Mobile (instalação):

http://ec2-23-23-175-86.compute-1.amazonaws.com/SOTAC-

WMobile/donwloads/SOTAC-Mobile%20-%20instalacao.rar.

Estes host serão mantidos até agosto de 2013, podendo haver extensão deste

prazo caso necessário.

Também estão disponíveis links para todos os recursos utilizados bem como

acesso às planilhas de testes de Breda (2008).