Relação entre as partes

Na semana passada um parceiro me perguntou como é divisão técnica de "responsabilidades" entre a Operadora, o Fabricante e a Microsoft em um dispositivo Windows Mobile, considerando que esse dispositivo possui software/configurações/customizações de cada uma das empresas. Aproveitando que a resposta está fresca na minha cabeça, vamos dar uma olhada com mais detalhe nesse tema (use a imagem abaixo para acompanhar o texto).

Microsoft (região amarela)

A Microsoft, como vimos, é responsável pelo sistema operacional core, o shell (interface do usuário) e aplicações como Outlook Mobile, Office Mobile, Windows Media Player, MSN Messenger, Internet Explorer Mobile, etc. (a partir do Windows Mobile 5.0, as aplicações presentes nos dispositos mudam de nomenclatura. Ex.: Pocket Outlook -> Outlook Mobile, Pocket Excel -> Excel Mobile). Além disso expomos APIs do sistema operacional (SDK) e incluímos frameworks (.NET CF) e componentes (*.ocx) para os desenvolvedores.

Veja que neste estágio ainda não temos um aparelho celular! Eu diria que até aqui temos somente 70 a 80% do que roda no seu device Windows Mobile, os restantes 20 a 30% são do fabricante e operadora celular.

Fabricante/OEM (região vermelha)

De posse do Windows Mobile, os fabricantes começam a integrar o OS com o hardware. Essa integração é basicamente feita com o desenvolvimento de device drivers que permitirão que o hardware converse com o software - é "praticamente" o mesmo modelo do PC, mas aqui a integração tem que ser MUITO maior, uma vez que o hardware é super especializado.

Além dos device drivers, o fabricante também integra a parte de telefonia celular, chamada de radio stack. A Microsoft disponibiliza a Radio Interface Layer (RIL) e os fabricantes usam essa camada do Smartphone ou Pocket PC Phone Editon para integrar o radio stack (GSM ou CDMA) ao Windows Mobile - essa interface e e seu desenvolvimento é super complexo (coisa de geek de alto nível :-) !

O fabricante também agrega valor à plataforma acrescentando aplicações desenvolvidas por ele e/ou seus parceiros. Alias, além de agregar valor, essas aplicações ajudam a diferenciar os fabricantes: um fabricante pode entregar seus devices com uma suíte de aplicações mais completa que seus concorrentes. Por exemplo, o Motorola MPx220 vem com as seguintes aplicações desenvolvidas pela Motorola: reconhecimento de voz (incrível!), aplicativos para câmera, álbum de fotos, video player (para formatos outros que WMV), visualizadores de arquivos office, pdf, etc, uma JVM, um gerenciador de arquivos e gerenciador de recursos!

Uma vez tudo integrado, temos um celular funcionando! Mas não está pronto para ser comercializado e para isso, o dispositivo ainda terá que passar pela Operadora Celular.

Operadora Celular (região rosa)

A operadora recebe um celular "padrão" do fabricante, um equipamento rodando uma versão sem customização nenhuma que chamamos de versão vanilla. Com esse aparelho a operadora inicia os testes e passa as customizações que ela quer ou precisa para que o aparelho funcione em sua rede.

Essas customizações podem ser:

  • Visuais: logomarcas da operadora (branding), cores, fundo de tela, marcas d'água, etc.
  • Interface do usuário: ordem dos menus, formato do menu Iniciar (somente no Windows Mobile 5.0), favoritos do IE, discagem rápida, etc.
  • Aplicativos: aplicativos extra que a operadora podem adicionar para agregar valor à plataforma e deferenciá-la da concorrência;
  • Rede: configurações específicas da rede da operadora, como: conexões GPRS (APN, usuário, senha), conexões/gateway WAP, "endereço" do SMSC, redirecionamento de redes, proxies, etc.

Como exemplo vamos usar novamente o MPx220 no Brasil. Tanto a Claro quanto a TIM Brasil lançaram esse Smartphone. No entanto cada uma optou por uma forma de customização completamente diferente. A TIM criou o "Meu TIM", uma forma de acesso rápido às principais aplicações de valor agregado deles; já a Claro optou por desenvolver o "ClaroCorp" que permite acesso rápido a conteúdos tanto com foco corporativo quanto consumer. O mesmo aparelho foi customizado de formas totalmente diferentes para se adaptar aos requisitos (técnicos e de mercado) de cada uma das operadoras!

Somente depois que essas customizações são integradas ao aparelho, ele é submetido ao processo final de certificação - processo bastante complexo e detalhado. Uma vez certificado, o celular está finalmente pronto para ser comercializado.

Usuário Final (regiões verdes)

Por fim o usuário final é responsável por usar o aparelho :-) E com isso ele acaba personalizando-o, trocando o fundo de tela, instalando aplicativos, mudando configurações, criando novas conexões proxy ou VPN para acesso corporativo, etc. Além disso, ISVs e desenvolvedores podem criar suas aplicações corporativas e parceiros de hardware podem desenvolver equipamentos como leitores de cartão de crédito.

Espero que tenha conseguido explicar um pouco a "relação entre as partes" e o processo necessário para colocar esses brinquedos no mercado.

Qualquer dúvida é só gritar!

[Update: typos corrected]