Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as...

12
Aplicações Java em Sim Cards Este tutorial apresenta as características e formas de uso de Aplicações Java a partir dos Sim Cards instalados nos terminais celulares de tecnologia GSM. Flávia Schreiber Administradora de Empresas com Habilitação em Comércio Exterior tendo atuado no mercado de componentes eletrônicos na Siemens e em empresas do grupo como, Icotron e Infineon Technologies, e recentemente Smart Cards, especialmente SIM Cards, na DARUMA ORGA Card Systems S.A. como Gerente de Vendas. Email: [email protected] Categoria: Telefonia Celular Nível: Introdutório Enfoque: Técnico Duração: 20 minutos Publicado em: 23/05/2005 1

Transcript of Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as...

Page 1: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

Aplicações Java em Sim Cards

Este tutorial apresenta as características e formas de uso de Aplicações Java a partir dos Sim Cards

instalados nos terminais celulares de tecnologia GSM.

Flávia Schreiber

Administradora de Empresas com Habilitação em Comércio Exterior tendo atuado no mercado de

componentes eletrônicos na Siemens e em empresas do grupo como, Icotron e Infineon Technologies, e

recentemente Smart Cards, especialmente SIM Cards, na DARUMA ORGA Card Systems S.A. como

Gerente de Vendas.

Email: [email protected]

Categoria: Telefonia Celular

Nível: Introdutório Enfoque: Técnico

Duração: 20 minutos Publicado em: 23/05/2005

1

Page 2: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

Aplicações Java: Porquê VAS

A comunicação de Voz proporcionada pelos serviços públicos de telefonia fixa (STFC) e móvel (SMP) é a

principal fonte de receita das concessionárias de serviços de telecomunicações. Entretanto, este tipo de

serviço tem sido cada vez mais transformado em "commodity" tanto no mercado corporativo como no

mercado residencial.

Com a crescente demanda por mobilidade e acesso a diversos tipos de informações de forma rápida no

mundo atual, novas oportunidades de negócios surgem principalmente para as operadoras de serviços de

telefonia celular.

Esses novos tipos de serviços, que proporcionam o acesso a diferentes informações, recebendo e enviando

dados, têm sido chamados de Value Added Services (VAS), ou em português, Serviços de Valor Adicionado.

Embora também presentes em menor escala no mercado de telefonia fixa, os serviços VAS têm sido mais

utilizados no mercado de telefonia celular, cuja mobilidade e capacidade computacional proporcionada pelo

terminal, permitem atender às necessidades de seus usuários de forma mais ampla e criativa.

Os VAS introduzem multi-funcionalidade no mercado de telefonia celular, tornando-se instrumentos que

permitem às operadoras obterem as seguintes vantagens:

Aumentar o air time, ou seja, o tempo de uso de sua rede.

Oferecer serviços novos e adicionais.

Diferenciar-se de outras operadoras.

Cobrar por esses serviços adicionais.

Aumentar a fidelização dos seus clientes.

Reduzir o churn, ou seja a evasão de clientes para outras operadoras.

O objetivo deste tutorial é apresentar uma solução de implementação de VAS usando o SIM Card presente

nos terminais de telefonia celular utilizados nas redes de tecnologia GSM.

2

Page 3: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

Aplicações Java: Fatores de Sucesso em VAS

Embora o mercado de telefonia celular seja favorável para o lançamento de serviços VAS, alguns cuidados

devem ser tomados para garantir que os assinantes irão de fato utilizá-los.

Durante a fase de especificação e desenvolvimento de uma aplicação para um serviço VAS, os fatores de

sucesso detalhados a seguir devem ser considerados com profundidade, de forma a nortearem o lançamento

desse serviço:

Facilidade de Aprendizado

Um serviço VAS deve ser fácil de ser aprendido por todos os tipos de usuários. Serviços complexos exigem

usuários mais avançados, porém estes normalmente são uma pequena parcela da base de assinantes de uma

operadora.

Uso Eficiente

Um serviço VAS deve proporcionar um benefício ao usuário, ou seja, ao utilizá-lo ele deve perceber que

usufruiu do serviço e obteve o resultado esperado. Oferecer um serviço apenas para aumentar o portfólio,

sem entregar nenhum benefício perceptível pode até denegrir a imagem da operadora.

Facilidade de Memorização

Um serviço VAS deve ser fácil de ser lembrado, pela sua simplicidade de uso ou pelo benefício que traz ao

usuário, senão por ambos. Ele deve ser sempre uma das opções que o usuário lembre ao realizar as suas

atividades cotidianas.

A Prova de Erros

Um serviço VAS, além de ser fácil de aprender, deve também ser à prova de erros, tanto quanto possível. Se

o seu uso induz o usuário a erros freqüentes, a probabilidade de insucesso do serviço cresce

exponencialmente. Interface intuitiva é a palavra de ordem para um serviço VAS.

Uso Agradável

Um serviço VAS, além de ser eficiente, deve também proporcionar ao usuário um momento agradável. Uma

interface bem desenvolvida, com textos claros e bem posicionados, e conteúdos bem apresentados, tornam o

uso desses serviços uma experiência interessante para o usuário.

Tarifação Adequada

Um serviço VAS deve apresentar uma tarifa que leve o usuário a uma noção de valor condizente com o

benefício obtido. Tarifas excessivas, que levem os usuários a pensar que o "serviço de valor adicionado"

sempre será muito mais caro que o serviço de VOZ, podem inibir o uso desses serviços de forma

generalizada junto à base de assinantes.

Conclusão

3

Page 4: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

O sucesso do "Mobile Business" está na mobilidade e personalização dos serviços VAS, oferecendo aos

usuários benefícios que levem à fidelização e que diferenciem a operadora nesse mercado.

Este é um desafio também para provedores de conteúdo, que devem ser criativos para desenvolver o

conteúdo e atender às expectativas dos usuários, sempre levando em consideração a segmentação da base de

clientes do mercado.

4

Page 5: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

Aplicações Java: Aplicações

As aplicações dos serviços VAS que são oferecidos aos clientes das operadoras de telefonia celular com

tecnologia GSM têm, basicamente, a seguinte arquitetura:

Como pode ser observado, as mensagens SMS proporcionam o mecanismo de transporte das informações na

rede GSM da operadora. O conteúdo do serviço VAS existente no servidor de aplicações é integrado à

plataforma de SMS da operadora, e normalmente é fornecido por parceiros especializados no

desenvolvimento de conteúdos.

Para o usuário dos serviços VAS, o acesso é feito através da visualização de um menu de serviços no display

do terminal celular. Selecionado o serviço, inicia-se uma troca de mensagens SMS entre o terminal e o

servidor de aplicações, até que o conteúdo selecionado seja apresentado no display do celular.

Características

As aplicações dos serviços VAS têm as seguintes características:

Falta de Padronização: as aplicações não possuem atualmente nenhuma padronização, mesmo

quando os serviços são semelhantes (acesso a banco, por exemplo), e são totalmente dependentes da

implementação feita pelo desenvolvedor de conteúdos.

Aplicações Menu Driven: o acesso às diversas funcionalidades de cada aplicação é feita através de

menus e sub-menus apresentados no display do celular.

SIM Card: apesar do menu ser visualizado no display do celular, seu conteúdo é armazenado no SIM

Card, juntamente com a parte residente no celular da aplicação selecionada.

A figura a seguir apresenta um exemplo de acesso a um serviço de acesso a Banco, e a seqüência inicial de

menus e sub-menus:

5

Page 6: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

Exemplos

A figura a seguir apresenta alguns exemplos de aplicações de serviços VAS já desenvolvidos pelas diversas

operadoras e desenvolvedores de aplicação:

Implementação

Como todo projeto de implementação, uma aplicação para um serviço VAS deve cumprir as seguintes

Etapas de Implementação:

Definição da aplicação;

Desenvolvimento técnico da aplicação;

Testes e aprovação da aplicação;

Implementação no SIM Card;

Implementação na rede;

Integração com provedores de conteúdo.

A implementação da aplicação no SIM Card é feita de acordo com as suas características. Algumas dessas

características são:

6

Page 7: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

Não existe padronização para o sistema operacional dos SIM cards, ou seja, cada fabricante detém o

seu próprio sistema operacional proprietário.

A execução de aplicações SAT é diferente para cada fornecedor de SIM card.

Softwares Interpretadores poderiam "traduzir" aplicações para plataformas de sistemas operacionais

de outros fornecedores de SIM card.

Essas característica proprietárias dos SIM cards podem causar impactos no custo dos projetos de

implementação de serviços, uma vez que torna necessário o desenvolvimento de diversas versões de

aplicações, uma para cada fornecedor.

Entretanto, o uso de aplicações JAVA tem proporcionado uma novo ambiente de desenvolvimento, como

apresentado a seguir.

Aplicações Java

O uso da linguagem JAVA para o desenvolvimento de aplicações em SIM cards, a exemplo de outras

plataformas de maior capacidade computacional, tem sido amplamente adotado pela sua portabilidade.

Algumas características da implementação do ambiente JAVA em SIM cards são apresentadas a seguir:

as aplicações são plenamente interoperáveis - "write once, run everywhere";

cada fabricante de SIM card implementa sua própria" Java Virtual machine" como interface para o seu

sistema operacional proprietário;

requer mais memória no SIM Card e aparelho celular.

7

Page 8: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

Aplicações Java: Java

Conceito

A tecnologia Java CardT abre um novo caminho para o desenvolvimento de aplicações para SIM cards. Seu

uso tem sido amplamente divulgado, com comentários como o apresentado a seguir:

"A tecnologia Java Card™ provê uma plataforma para smart cards (e

outros dispositivos) segura e independente de fabricante.

Abre o mercado aos desenvolvedores de aplicações, possibilitando aos

programadores desenvolver uma variedade de aplicações para smart

cards."

O uso dessa tecnologia apresenta as seguintes vantagens descritas a seguir.

Compatibilidade

A tecnologiaJava CardT provê compatibilidade com os seguintes órgãos normativos:

ISO/IEC, atendendo às recomendações 7816 - Identification cards -- Integrated circuit(s) cards

with contacts;

ETSI, atendendo às recomendações:

GSM TS 11.11 - Specification of the Subscriber Identity Module - Mobile Equipment (SIM -

ME) interface

GSM TS 03.19 - Subscriber Identify Module Application Programming Interface (SIM

API); SIM API for Java Card; Stage 2

GSM TS 03.48 Security Mechanisms for the SIM application toolkit

EMV, atendendo à recomendação EMV 96 Integrated Circuit Card (ICC) Specifications for

Payments;

GlobalPlatform, atendendo à recomendação Open Platform Card Specification.

Portabilidade

A tecnologiaJava CardT provê independência de plataforma de hardware.

8

Page 9: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

Multi-funcionalidade

A aderência á recomendação da EMV e à estrutura inerente da tecnologia Java permite a adoção de multi-

funcionalidades num mesmo cartão.

Algumas das facilidades da tecnologia que permitem essa multi-funcionalidade são:

Mecanismo firewall do Java CardT assegura que as aplicações não tenham acesso umas às outras,

exceto com explícita permissão.

Como as aplicações podem ser carregadas no cartão seguramente após a emissão, a funcionalidade da

aplicação pode sofrer upgrades continuamente através de novas aplicações ou atualizações

pós-emissão, possuindo-se o mesmo cartão.

Segurança

Segurança é a principal vantagem dessa tecnologia. As principais características de segurança do Java CardT

asseguram que:

O nível de acesso aos "métodos e variáveis" é estritamente controlado.

Ponteiros não podem ser forjados a terem acesso à memória.

As aplicações são separadas por firewall.

Gerenciamento de Memória

O mercado de telecomunicações demanda:

Flexibilidade na disponibilização de aplicações.

9

Page 10: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

Customizações, set-up de aplicações específico do usuário.

Provisão de aplicações temporárias (ex. eventos esportivos, publicidade, etc.).

Possibilidade de corresponder aos interesses individuais, ou seja, possibilitar ao usuário criar seu

próprio portfólio de aplicações, já que somente com usuários utilizando aplicações é que se gera a

receita adicional.

Com base nessas demandas, o gerenciamento de memória do SIM card se torna um elemento extremamente

importante na implementação de aplicações.

O gerenciamento de memória ocorre através das seguintes facilidades: alocação dinâmica de memória,

"garbage collection" e defragmentação. Essas facilidades são descritas a seguir.

Alocação Dinâmica de Memória

A alocação dinâmica de memória permite que:

Aplicações funcionem independentemente de sua localização física. As aplicações podem ser movidas

na memória EEPROM sem sofrer qualquer impacto na funcionalidade.

Acesso à aplicação independa da localização física do seu arquivo. Os arquivos podem ser localizados

em qualquer espaço da memória EEPROM.

Toda memória livre seja vista como recurso comum. Arquivos podem ser extendidos e/ou divididos,

podendo suas partes (Java objects) serem alocadas em qualquer espaço livre da memória.

Garbage Collection

Esse processo deixa memória livre para re-utilização, ou seja, a memória que não está mais sendo utilizada

nem pelo sistema operacional do cartão nem pelas aplicações é liberada.

O processo tem a seguinte ação:

Após a remoção de uma aplicação, todos os componentes são removidos e a memória é liberada e

limpa para re-utilização, não ocupando espaço desnecessariamente.

Se o carregamento de uma aplicação não pôde ser terminado por completo, o processo assegura que a

área de memória utilizada para armazenar os fragmentos daquela aplicação seja liberada.

Defragmentação

Fragmentação significa que vários blocos de memória livre estão disponíveis, porém não em um bloco

contínuo. A fragmentação é causado por:

Carregamento e remoção de aplicações de tamanho diversos.

Criação e remoção de vários arquivos ("applet objects") na memória EEPROM.

A Defragmentação de memória é o estabelecimento de uma nova disposição dos vários blocos de memória

livre de tal forma este representem um único bloco contínuo.

Portanto, o objetivo da defragmentação é facilitar o carregamento de novas aplicações em blocos contíguos

de memória.

10

Page 11: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

Aplicações Java: Considerações Finais

Pode-se afirmar que os serviços VAS tendem a serem implementados em aplicações JAVA, como solução

para a convivência da grande variedade de oferta de serviços com a segmentação da base de clientes,

possibilitando que os usuários "degustem" estes serviços, decidam por manter alguns deles e simplesmente

abandonar outros serviços que não sejam tão importantes e que ocupariam espaços preciosos da memória do

SIM Card.

Os Serviços de Valor Adicionado serão o principal diferencial entre empresas líderes de mercado e segundos

operadores, estes com lucratividade duvidosa.

Num mundo repleto de novas tecnologias, será bastante interessante observar com os operadores, os

desenvolvedores de conteúdos e os fornecedores de terminais celulares conseguirão continuar envolvendo

continuamente os usuários para que estes busquem mais e mais serviços a partir desse objeto de desejo que

já fez com que não se possa mais "viver" sem a sua "preciosa" companhia.

11

Page 12: Aplicações Java em Sim Cards - · PDF fileEste tutorial apresenta as características e formas de uso de Aplicações Java a partir ... Ponteiros não podem ser forjados ... alocação

Aplicações Java: Teste seu Entendimento

1. Qual alternativa representa uma vantagem que as operadoras obtém com os Serviços de ValorAdicionado (VAS)?

Aumentar o air time, ou seja, o tempo de uso de sua rede.

Aumentar a fidelização dos seus clientes.

Reduzir o churn.

Diferenciar-se de outras operadoras.

Todas as anteriores.

2. Qual alternativa representa um fator de sucesso em VAS?

Uso Eficiente.

Facilidade de Aprendizado.

Tarifação Adequada.

Uso Agradável.

Todas as anteriores.

3. Qual alternativa não representa uma característica do uso de uma aplicação JAVA?

Cada fabricante de SIM card implementa sua própria" Java Virtual Machine" como interface para o

seu sistema operacional proprietário.

Requer mais memória no SIM Card e aparelho celular.

Não usa uma plataforma aberta.

As aplicações são plenamente interoperáveis - "write once, run everywhere".

12