Anda di halaman 1dari 30

Desenvolvimento interno

de apps Guia acelerador

Viso geral
Transforme as suas ideias para apps internos em realidade. Veja como aqui.
A sua empresa nica, assim como os seus usurios. H um mundo de possibilidades para responder as necessidades deles de apps inovadores para dispositivos mveis que iro mudar a forma como eles trabalham. Se voc como a maioria das equipes internas de desenvolvimento, tambm enfrenta limitaes. Sejam elas financeiras, organizacionais ou de recursos, concentre seu foco na oferta de apps que realmente atendam as necessidades da empresa. O iOS um timo veculo para a oferta desses apps. O desenvolvimento em iOS simples e altamente recompensador, permitindo que voc crie apps que ofeream benefcios imediatos para os seus usurios. Voc no precisa adotar processos dispendiosos e ocupar um grande nmero de recursos para fazer a diferena na sua empresa, embora esse processo exija concentrar seus esforos de uma forma diferente de um projeto habitual de desenvolvimento interno. Este guia ir ajudar voc a fazer isso. Ele analisa as melhores prticas para a criao de apps incrveis para os seus usurios, d dicas e apresenta recursos que ajudaro a organizar o seu projeto da forma mais eficiente possvel. Este guia est organizado nas quatro sees a seguir: PlanejamentoDefinio do seu projeto, coleta dos requisitos e planejamento do processo de desenvolvimento. DesignUse os conceitos do design da interface do iOS para ter certeza de que os seus apps internos iro agradar os usurios. DesenvolvimentoDesenvolva os seus apps internos e obtenha o mximo das ferramentas da Apple, como o iOS SDK. ImplantaoDistribua apps internos na empresa e defina o seu prprio servio de distribuio remota de apps. Vamos comear?
Exemplos. Procure se inspirar e ideias em exemplos de clientes e confira como outras empresas desenvolveram seus apps internamente para iPhone e iPad.
Tnhamos que descobrir uma forma de fazer atualizaes e mudanas rapidamente, por isso adotamos a abordagem hbrida. Reunimos elementos nativos da interface de usurio presentes no telefone com pginas web.
Giancarlo De Lio, Mt Sinai Hospital

Como usar este guia


Lista de verificao. Use a lista de verificao de cada captulo para analisar e acompanhar as etapas mais importantes do processo de desenvolvimento.

Lista de verificao da implantao


No final da fase de implantao, voc deveria ter concludo: A criao do certificado da empresa e do perfil de aprovisionamento A definio de um servidor web de distribuio ou de uma soluo para a distribuio remota dos apps O anncio da sua soluo para os usurios finais

Dicas rpidas. Obtenha informaes importantes, essenciais para o processo em um recurso de fcil acesso.

Dicas rpidas: Apps compactos


Os apps simples, rpidos e bem executados iro gerar demanda interna e minimizar o escopo e o investimento Os apps compactos fazem a festa. Os usurios iro criar a suas prprias solues, , dando assim muita mais flexibilidade fora de trabalho

Links rpidos. Confira esses links de referncia rpida para saber mais sobre o desenvolvimento interno de apps em iOS.

Links rpidos
Perguntas mais frequentes sobre inscrio no programa http//developer.apple.com/support/ios/enrollment.html Perguntas mais frequentes sobre o Programa para Desenvolvedores de Apps Corporativos http//developer.apple.com/support/ios/enterprise.html

Viso geral

Planejamento
Por trs de um app fantstico tem um planejamento fantstico. importante que os envolvidos dentro da empresa estejam engajados com o objetivo do projeto e que eles participem ativamente da elaborao do plano. Quanto mais a equipe conseguir chegar a um equilbrio de trabalho durante todo o processo e entender as etapas necessrias para a execuo do plano, maiores sero as chances de criao de algo realmente impressionante. Como parte do plano, voc e a sua equipe devem explorar o seguinte: Descobrir os requisitos corporativos e dos usurios. Certifique-se que a sua soluo atenda os reais interesses da empresa. A soluo economiza tempo e/ou dinheiro, ajuda a fora de trabalho a ser mais produtiva ou responde ao requisito de fazer a empresa prosperar? Avalie os recursos e a infraestrutura existentes. Voc pode maximizar recursos valiosos redirecionando algo que voc j criou e us-lo para o ambiente mvel. Explore a facilidade de implantao. Colha primeiro os frutos que estiverem mais embaixo: Invista em projetos com retorno rpido, onde seja mais fcil e rpido demonstrar os resultados positivos do seu esforo. Lembrar-se sempre destes conceitos de planejamento ajudar a desenvolver o foco do seu projeto. Este captulo abordar as etapas necessrias para deixar o seu projeto organizado e pronto para entrar em ao.

Lista de verificao do planejamento


Consulte essa lista de planejamento durante toda a fase de planejamento do seu projeto. No final da fase de planejamento, voc dever ter um escopo de trabalho que inclua: Um inventrio de todas as possveis necessidades e requisitos corporativos Um inventrio das necessidades dos usurios (alinhadas aos requisitos corporativos) Os requisitos da infraestrutura de TI para suporte ao projeto Uma declarao da definio do aplicativo descrevendo o app e a finalidade da soluo O cronograma e as etapas do projeto A equipe de envolvidos com os seus respectivos papis e responsabilidades definidos O processo de inscrio iniciado no Programa de Desenvolvedor Corporativo de iOS

Solicite comentrios do usurio


Coloque-se na pele dos seus usurios. Dedique um tempo no local de trabalho para participar de algumas reunies ou visitando um outro local de trabalho. Voc conseguir informaes valiosas sobre os hbitos de trabalho dos usurios, os gargalos no fluxo de trabalho e os principais obstculos enfrentados pelos funcionrios ou clientes. Convide particularmente ou convena os usurios a participarem da sua equipe de projeto e fazerem comentrios regularmente. Identifique qual problema um app para dispositivos mveis poderia resolver e que poderia agregar mais valor para os seus usurios e para a empresa, no menor espao de tempo possvel. No tente agradar a todos quando comear a desenvolver apps para dispositivos mveis. Concentre as ideias no para o que voc poderia criar mas simplesmente o que voc deveria criar.

Direcionamos as comunicaes do desenvolvedor para a fora de vendas. Participamos at de reunies de vendas, demos dicas e sugestes, entramos e fomos a reunies de vendas para ver exatamente o que eles precisavam e como eles usariam o app.
Dean Moore, Sunbelt Rentals

Planejamento Design Desenvolvimento Implantao

Pense em algumas tarefas simples que a maioria do seus usurios faz frequentemente e imagine como um app mvel poderia facilitar essas tarefas. Veja aqui alguns exemplos: Um app simples que permita que o funcionrio aprove uma um relatrio de despesas ou ordem de compra, mesmo em trnsito Uma lista dos telefones da empresa e mapa do campus que todos poderiam ter acesso Um localizador de sala de reunies que os funcionrios poderiam usar quando no estivessem nas suas mesas Um app simples de controle do tempo que poderia estar vinculado ao seu sistema de gerenciamento de tempo ou de faturamento

Exemplo: Inventrio de Ativos


Responder essas perguntas pode ajudar a determinar se voc pode reaproveitar a tecnologia existente no seu app para dispositivos mveis: Quais sistemas so mais usados pela maioria dos funcionrios remotos? O que os seus funcionrios remotos mais precisam? Quais processos manuais poderiam ser automatizados ou simplificados com a ajuda de apps para dispositivos mveis? Voc possui sistemas no mveis que poderiam ser teis para funcionrios remotos? Quais funes desses sistemas so usadas com mais frequncia? Que tipo de acesso a dados os seus sistemas corporativos oferecem? Os dados podem ser acessados facilmente via web services?

Faa um inventrios dos seus ativos


Normalmente, a melhor forma de criar um app interno realmente eficiente aproveitar a tecnologia existente. Pode ser que voc queira fazer um inventrio dos sites dos seus funcionrios e verificar se seria interessante otimiz-los para iPhone ou iPad. Pode ser que voc tenha sistemas back-end com dados em formulrios que possam ser oferecidos facilmente em dispositivos mveis. No esquea tambm dos apps j disponveis na App Store: pode ser que l voc encontre aquele app que est procurando. Consulte o exemplo do Inventrio de Ativos ( direita) para obter mais informaes que podem ajudar na pesquisa do seu ambiente existente.

Voc possui sites internos que os seus funcionrios acessam diariamente? Eles poderiam ser transformados facilmente em apps para dispositivos mveis?

Defina o seu app


Assim que voc souber claramente o que os seus usurios precisam, assim como as possveis solues para dispositivos mveis que podero atender essas necessidades, seria interessante refinar esses conceitos em um plano conciso e compartilhar com os outros envolvidos no projeto. O elemento mais importante na definio do plano do seu projeto a definio do seu aplicativo uma definio concisa da finalidade do seu app. A definio clara do seu aplicativo ajuda a evitar dois problemas bastante comuns: Voc j possui um app para desktop que deseja viabilizar para dispositivos mveis e uma longa lista de recursos para levar para o novo ambiente. Voc tem uma ideia tima para um app novo para dispositivos mveis, mas pula imediatamente para os recursos antes de se concentrar na finalidade principal do app.

Ns simplesmente analisamos as diferentes linhas de produtos e nos perguntamos, O que seria interessante para os dispositivos mveis? Qual o objetivo principal? Quais seriamos maiores benefcios? Ns partimos desse ponto. Analisamos o nosso portflio de produtos e descobrimos o que seria mais indicado.
James Blomberg, General Electric

Planejamento Design Desenvolvimento Implantao

Como definir o aplicativo


Comece escrevendo uma definio que inclua o seguinte: A finalidade do seu app Para quem ele se destina e como ele ser utilizado Sua funo principal Defina claramente apenas a soluo e a sua funo principal no coloque uma lista detalhada dos recursos. Elabore uma definio clara e slida que ser usada para filtrar as ideias para os recursos. Pergunte-se se cada recurso responde a finalidade desejada. O prximo passo escolher o menor nmero de recursos, mas os recursos utilizados mais frequentemente e mais indicados para dispositivos mveis. Assim, voc no acaba com uma lista interminvel de recursos sem foco, difceis de serem usados e que no resolvem os problemas. Manter o foco do seu app ajudar a melhorar a produtividade dos usurios em um pacote simples e fcil de usar.

Exemplo: Definio do aplicativo


Veja como deve ser a definio de um aplicativo tomando como exemplo um app de controle do tempo para advogados: Finalidade: Contabilizar o tempo gasto e as horas a serem cobradas de cada cliente Para quem se destina: Advogados da empresa que precisam contabilizar as horas a serem cobradas Como ser utilizado: Nas reunies com os clientes, contabilizando o incio e o final do perodo a ser cobrado Funo principal: Contabilizar e comunicar o tempo decorrido para o sistema de CRM Definio consolidada: App para que os advogados contabilizem o tempo e as horas a serem cobradas de cada cliente Caractersticas compatveis com a definio do app: Um cronmetro; processamento e contabilizao em segundo plano; integrao com o sistema de CRM no servidor; busca do cadastro do cliente para atribuio do tempo ao cliente/caso; sincronizao on-line/off-line na conexo com a rede Exemplo de recursos no compatveis com a definio ou excedem o escopo do projeto: alertas de novos casos; consulta a documentos para referncia jurdica; mapa com a localizao dos clientes e interface para consulta de patentes

Planeje o processo de desenvolvimento


Um projeto de desenvolvimento de software corporativo absorve um grande nmero de recursos durante a fase de desenvolvimento. Usando o iOS SDK e as estruturas Cocoa Touch de alto nvel, as equipes de desenvolvimento conseguem gastar menos tempo com codificao e dedicar mais tempo criao do melhor ambiente possvel para o usurio. Esse processo no apenas permite que voc oferea um app para os funcionrios mais rapidamente, como tambm ajuda a oferecer solues que realmente excedem as expectativas dos usurios. Independentemente de voc optar por um processo de desenvolvimento mais rpido ou mais tradicional, no deixe de reservar tempo e recursos para investir no processo de design, a parte principal e contnua de desenvolvimento do seu app. Defina um cronograma estimado do processo com datas e o papel de cada envolvido em cada etapa do caminho. Obviamente no h nada fixo e imutvel, funciona apenas como um ponto de referncia para todos os envolvidos.

Dicas rpidas. Crowdsourcing


A Genentech sabia que boas ideias para apps podem vir de qualquer pessoa e qualquer lugar, por isso adotou o modelo crowdsourcing, que acata as sugestes dos funcionrios sobre apps que eles gostariam que fossem desenvolvidos internamente. Desde ento eles criaram cinco apps solicitados, para grande satisfao e que foram amplamente adotados pelos usurios.

Planejamento Design Desenvolvimento Implantao

Criao do escopo do trabalho


Para ajudar a manter o foco e comunicar o processo, seu planejamento deve incluir um documento central, com o escopo do trabalho, que cubra todos os recursos, objetivos, metas, cronogramas e os principais resultados parciais do projeto. Esse documento ser uma referncia importante para todos os envolvidos no projeto. O escopo do trabalho pode compreender os requisitos tcnicos preliminares do seu app, assim como os fluxogramas e diagramas que ajudaro a comunicar a inteno do conceito do app durante a fase de desenvolvimento.
Requisitos
Escopo do projeto Obteno das aprovaes Composio da equipe

Exemplo: Equipe de Projeto Tpico


Executivo responsvel Principal responsvel pelo planejamento estratgico Responsvel pela linha de negcio Principal envolvido e usurio do app

Cdigo

Curso de Cdigo do app Design e parte grfica Testes Testes da unidade

Liberao

Liberao interna do app Aceite do envolvido Plano de manuteno

Lder do projeto Controla as datas, os cronogramas e o escopo do projeto em geral

Gerente de produto Entre o app, gerencia os requisitos e reconcilia as necessidades corporativas com as solues

Design

Desenho da arquitetura Elaborao do planejamento do projeto Esquemas iniciais Dimensionamentos do desenvolvedor

Verificao

Testes nos dispositivos Testes da interface de usurio automatizada Correo de problemas Reviso do design Orientao para os envolvidos

Arquiteto de experincia do usurio Responsvel pela estrutura do modelo de interao com o usurio e pelo fluxo do processo com o usurio

Arquiteto tcnico Responsvel pela infraestrutura, segurana e os modelos de acesso aos dados

Gerente de desenvolvimento Responsvel tcnico e gerente do projeto

Monte a sua equipe


Assim como ocorre em qualquer projeto, ser necessrio montar uma equipe de colaboradores que iro compartilhar o xito e os resultados do projeto do seu app. Alguns participantes podem ser clientes internos (um responsvel por linha de negcio ou grupo de usurios) enquanto outros tero a tarefa de cuidar de partes especficas do processo de desenvolvimento em si (os designers, desenvolvedores, arquitetos tcnicos e assim por diante). Na verdade, seu objetivo alinhar as funes e responsabilidades dentro da equipe ao cronograma e etapas do projeto discutidos no item anterior. Por exemplo, como o design um elemento central de qualquer projeto de desenvolvimento em iOS, voc precisa se certificar que conta com uma equipe de design (ou recursos que iro desempenhar essa funo). bem provvel que grupos diferentes tenham pontos de vista e interesses distintos, da a importncia de documentar todas as funes, para que todos estejam cientes das suas responsabilidades dentro do projeto.

Designer da interface do usurio Responsvel pelo projeto visual, pela parte grfica e identidade do app

Gerente de TI Responsvel pela implantao e pelo gerenciamento do ciclo de vida dos apps

Desenvolvedor Responsvel por toda a arquitetura tcnica e codificao

Planejamento Design Desenvolvimento Implantao

Desenvolvimento terceirizado
Se voc no tiver recursos suficientes internamente, considere a possibilidade de terceirizar parte do trabalho de desenvolvimento. Os desenvolvedores terceirizados podem apresentar a voc um portflio do trabalho deles, o que pode trazer novas ideias. bvio que para ser bem sucedida, necessrio que a equipe terceirizada conhea o projeto a fundo tudo o que foi definido durante a fase de planejamento e interaja regularmente com voc e com a equipe interna. Apresente as suas necessidades e certifique-se de que os seus objetivos ficaro bem claros para eles. Consulte a definio do projeto e reveja cuidadosamente cada detalhe do seu projeto. No se esquea tambm de definir, desde o incio uma forma de comunicao clara e bidirecional e um processo para manter contato. importante definir o papel que o seu provedor terceirizado exercer, assim como aconteceu com os demais membros da sua equipe interna. Alinhe os papis e responsabilidades ao planejamento e cronograma do projeto de forma que voc comunique claramente por quais aspectos do seu projeto eles sero responsveis.
Requisitos Responsabilidades da equipe interna Responsabilidades do desenvolvedor Design Cdigo Verificao Liberao

Dicas rpidas. Como selecionar um fornecedor externo


Rena-se com vrios fornecedores. Verifique o trabalho j realizado, inclusive os apps disponveis na App Store; a avaliao dos mesmos e os comentrios dos usurios. Avalie o conhecimento e as habilidades. Por exemplo, a codificao ocorre toda internamente? Solicite referncias. Desconsidere a abordagem multiplataforma e genrica. Concentre o foco no desenho da interface do usurio, em elementos grficos de alta qualidade e no fluxo do app. Discuta a manuteno e o ciclo de vida do app aps a verso 1.0. Pergunte sobre a experincia em infraestrutura de TI.

Alguns parceiros terceirizados podem ajudar voc em todos os elementos do projeto, dos requisitos iniciais implantao final. Enquanto outros podem se concentrar apenas no cdigo do app. Seria interessante conversar sobre essas possibilidades e servios com o seu fornecedor terceirizado, independentemente do contrato que voc tem com eles. Isso ajuda a avaliar os pontos fortes do seu fornecedor e tambm a moldar o relacionamento entre vocs.

Utilizamos fornecedores externos em vrios elementos. Depende unicamente da necessidade do app. Caso haja necessidade de uma aparncia e ambientao muito especficas, conversamos com fornecedores que j fizeram coisas similares porque sabemos que eles j tm experincia no que desejamos. Dessa forma conseguimos oferecer um produto de alta qualidade tanto para a nossa equipe quanto para os clientes.
Todd Schofield, Standard Chartered Bank

Planejamento Design Desenvolvimento Implantao

Noes bsicas sobre o Programa de Desenvolvedores de Apps Corporativos em iOS


Assim que voc tiver coletado os requisitos, informaes dos seus usurios e definido o planejamento do seu projeto e o seu aplicativo, a ltima etapa antes de passar para a fase de design, se cadastrar no iOS Developer Enterprise Program. Esse programa oferece um processo completo e integrado para desenvolvimento, teste e distribuio de apps em iOS para os funcionrios da sua empresa. Depois que voc tiver se cadastrado no programa, voc ter acesso s ferramentas e recursos mencionados na lista direita. Essas informaes ajudaro voc a entender o processo de cadastramento no programa e a dar os primeiros passos. Para obter mais detalhes, acesse http://developer.apple.com/programs/ios/enterprise. Viso geral Viso geral: Recursos do iOS Developer Enterprise Program
Como membro do iOS Developer Enterprise Program, voc receber os seguintes benefcios: Acesso ao iOS Dev Center Acesso ao iOS SDK Algumas ferramentas e softwares em verso preliminar Permisso para informar o nome dos membros da sua equipe de desenvolvimento na seo Team do Member Center. Acesso aos Apple Developer Forums Incidentes de suporte tcnico (dois por participante do programa ao ano) Permisso para testar aplicativos diretamente no iPad, iPhone e iPod touch Simulao de distribuio do seu app para at 100 dispositivos registrados Distribuio interna para um nmero ilimitado de dispositivos de funcionrios

Requisitos para participao


Antes de se cadastrar no programa: Verifique se voc pretende distribuir os apps em iOS somente dentro da sua empresa. Lembre-se que o iOS Developer Enterprise Program destina-se a desenvolvedores que desejam desenvolver e distribuir seus apps em iOS para os funcionrios dentro da sua empresa. Verifique se a sua empresa possui um Dun & Bradstreet Number (D-U-N-S). Voc precisar desse nmero para inform-lo para a Apple durante o cadastro. Voc tambm precisar informar a razo social da sua empresa. Para solicitar ou obter um nmero D-U-N-S, acesse https://eupdate.dnb.com/requestoptions.asp. Verifique se voc tem autorizao para representar a sua empresa em contratos jurdicos. Durante o processo de cadastramento voc dever informar um contato legal que poder atestar a sua autorizao para representar a sua empresa na assinatura do Contrato de Licena do Programa de Desenvolvedor de Apps Corporativos. Voc tem capacidade tcnica para certificar aplicativos em Xcode. Como cadastrado voc ser o Agente da sua equipe, ou seja, responsvel pelo aprovisionamento dos apps e tarefas tcnicas administrativas relacionadas conta.

Dicas rpidas. Composio do seu kit de ferramentas de desenvolvimento


O requisito bsico para o iOS SDK um Mac com processador Intel. Os desenvolvedores normalmente optam pelo MacBook Air ou MacBook Pro pela portabilidade e liberdade que eles oferecem. Mas o iMac e o Mac mini tambm so boas opes, principalmente se voc possui um laboratrio de desenvolvimento na empresa. No esquea tambm de ter alguns dispositivos para teste. Se quiser garantir compatibilidade total, tenha sempre um hardware de gerao anterior como o iPhone 3GS ou iPad de primeira gerao.

Viso geral do processo de cadastramento


1. Cadastre-se como Desenvolvedor Apple. Para se inscrever, ser necessrio se cadastrar na Apple criando um novo Apple ID, especfico para esse programa. aconselhvel definir um endereo de e-mail especfico para essa conta para que a sua empresa possa design-lo para vrias pessoas, se necessrio. 2. Insira os dados sobre a sua empresa, de contato e legais. Essas informaes so necessrias para a validao do seu status como pessoa jurdica. O principal requisito um nmero D-U-N-S vlido. Certifique-se que o nome e o endereo da sua empresa sejam os mesmos que constam no banco de dados da Dun & Bradstreet. Como parte do processo de verificao de identidade possvel que voc seja solicitado a enviar para a Apple alguns documentos da sua empresa como o estatuto, um contrato de operao e alvar de funcionamento.
Planejamento Design Desenvolvimento Implantao 8

3. Envio para a Apple . Assim que tiver enviado o seu cadastro, confira o seu status se registrando como desenvolvedor no Member Center http://developer.apple.com/membercenter. Como parte dessa etapa, a Apple analisar o app e entrar em contato com voc ou com o seu departamento jurdico, se necessrio. 4. Aceite o Acordo de Licena do Programa Corporativo. Para continuar o cadastro, necessrio aceitar os termos de licena do programa. Esse o momento para conferir os termos e compartilhe-os com o seu departamento jurdico. 5. Adquira o programa. Assim que tiver aceitado os termos, voc receber instrues sobre como adquirir o programa na Apple Online Store. Se quiser usar uma ordem de compra, entre em contato com a sua Apple Store local para ver as opes de compra disponveis. 6. Ative a sua adeso. Voc receber um comprovante do pedido depois de ter adquirido o programa. No prazo de 24 horas voc receber um e-mail de ativao da Apple com um cdigo para ativar a sua adeso. Uma vez ativada, voc ter acesso a todos os recursos do programa.

Viso geral Definio da equipe


Os Agentes e Administradores podem adicionar novos Membros, que podem ter papel de Administrador ou Membro, navegando pela guia People do Apple Developer Member Center. V at a seo Invitations e clique no boto Invite Person para convidar novos Membros para participar da sua equipe.

Agente

Administradores

Membros

Administrador - Definio e Distribuio

Membro - Definio e Aprovaes

Desenvolvimento

Configurando a sua equipe


Assim que a empresa estiver cadastrada no iOS Developer Enterprise Program, ser necessrio colocar o nome dos membros da sua equipe de desenvolvimento na seo Team do Member Center.
Certificado de distribuio Certificados de desenvolvimento Certificados de desenvolvimento

Papis e responsabilidades da equipe


Uma equipe de desenvolvimento composta de pessoas com as seguintes funes: Agente. O contato principal da equipe de desenvolvimento, responsvel por aceitar todos os acordos do iOS Developer Program, cadastrado tambm como o primeiro usurio inscrito no programa. O Agente responsvel por gerenciar o certificado para distribuio na empresa, usado para aprovisionar apps para implantao em larga escala para os funcionrios. Administrador(es). Os administradores gerenciam as suas equipes de desenvolvimento e os certificados de desenvolvimento. Necessrio o envolvimento do Agente para gerenciar a distribuio na empresa. Membros. Principais desenvolvedores da empresa. Os membros recebem aprovao dos Administradores para aprovisionar os apps e dispositivos para fins de teste e desenvolvimento. Necessrio o envolvimento do Agente para gerenciar a distribuio na empresa.
Aprovisionamento para o ambiente corporativo Desenvolvimento Aprovisionamento Desenvolvimento Aprovisionamento

Dicas rpidas. Cadastrando dispositivos para desenvolvimento


Os Administradores podem inserir vrios IDs de dispositivo simultaneamente subindo um arquivo .deviceids gerado pelo iPhone Configuration Utility. No iPhone Configuration Utility, selecione os dispositivos que voc deseja carregar e clique no boto Export. Isso ir criar o arquivo.deviceids. Acesse www.apple.com/support/iphone/enterprise para baixar o iPhone Configuration Utility.

Planejamento Design Desenvolvimento Implantao

Recursos de aprendizado
Assim que tiver informado os nomes dos membros da sua equipe, acesse o iOS Dev Center em http://developer.apple.com/devcenter/ios onde voc encontrar uma grande variedade de recursos. Voc poder marc-los como favoritos ou fazer deles a sua pgina inicial para tudo relacionado ao processo de desenvolvimento. Veja aqui alguns dos timos recursos disponveis. Fruns Entre em contato com outros desenvolvedores de apps corporativos e compartilhe ideias e melhores prticas. sempre til contar com uma comunidade de desenvolvedores como voc e sua disposio. Biblioteca de referncia Uma enciclopdia, um livro texto e um programa de referncia em um lugar s. Uma lugar para voc pesquisar, com tpicos separados por categoria, com todas as informaes que voc precisa para criar os seus apps. Cdigo de amostra Use os exemplos para inspirar o desenvolvimento de apps incrveis, criados por voc. Se quiser voc pode copiar e colar o cdigo de exemplo diretamente no seu projeto. Guias de Primeiros Passos Se voc novato em desenvolvimento de iOS, esses guias oferecem sua equipe conceitos fundamentais e melhores prticas para o desenvolvimento em iOS.

 Os exemplos em Apple.com realmente ajudam a ver melhor um recurso especfico como detalhamento, por exemplo, ou mapas, ou a integrao com um banco de dados SQL local.
Keith Debickes, JM Family Enterprises, Inc.

Links rpidos
Perguntas mais frequentes sobre adeso ao programa: http://developer.apple.com/support/ios/enrollment.html Perguntas mais frequentes sobre o Programa para Desenvolvedores de Apps Corporativos em iOS: http://developer.apple.com/support/ios/enterprise.html

Mais frente
Quando concluir o processo de planejamento, consulte a lista de verificao de planejamento no incio desde captulo. Se voc concluiu todas as etapas, bem provvel que voc tenha o suporte dos executivos e da sua equipe e um planejamento claro do projeto para que todos possam seguir. Sua equipe estar bem preparada para a prxima fase do processo: conhecer as melhores prticas de design e desenvolvimento e entender os conceitos bsicos de desenvolvimento em iOS.

Planejamento Design Desenvolvimento Implantao

10

Design
O design muito importante. muito fcil criar um app bsico para iPhone e iPad. Mas apps mais elaborados demandam um pouco mais de trabalho. O que os apps mais bem sucedidos tm de to atrativos? Eles tm um design atrativo e fazem excelente uso das cores e do udio. So simples de usar e funcionam como o previsto. Eles envolvem o usurio e fazem com que o usurio sempre retorne a eles. Dando bastante ateno ao design na criao de um app novo ou aprimorando um app existente, voc melhora o seu apelo, promove uma experincia mais envolvente para o usurio e faz com que as pessoas gostem de usar o seu app. Este captulo descreve algumas estratgias que podem ser usadas para refinar a sua ideia, analisar as opes de design e determinar o design de um app que deixar os usurios mais produtivos.

Lista de verificao do design


No final da fase de design, voc ter: Lido as Diretrizes sobre Interface Humana em iOS da Apple Definido uma lista concisa de recursos, diretamente alinhados definio do seu aplicativo Dado prioridade a uma lista de objetos, tarefas e conceitos e definido como eles se relacionam entre si Criado um conjunto bsico de esquemas e composies para visualizao do processo do app

Design para toque


Criar uma interface para interao com o mouse bem diferente do que criar uma interface para toque. Assim que voc comear a desenvolver um app, ficar interessado em entender o grande diferencial dos dispositivos com iOS. Analise melhor um iPhone ou um iPad e se familiarize com a interao dos usurios e convenes de design da interface. Para resumir, para interao por toque necessrio um nmero maior de pixels para representar um boto que pode ser selecionado por um dedo do que seriam para um mouse em um desktop. Por exemplo, o tamanho mnimo confortvel para um elemento de toque da interface 44 x 44 pontos. Os elementos como os menus pull-down e as barras de rolagem,to comuns no desktop no funcionam bem nos dispositivos mveis desenvolvidos para toque.

Leia as Diretrizes sobre Interface Humana


As Diretrizes sobre Interface Humana em iOS descrevem os princpios que ajudam na criao de uma interface de usurio aprimorada, para melhor experincia do usurio com o seu app em iOS. Esses princpios so importantes tanto para os apps corporativos desenvolvidos internamente como para os apps desenvolvidos para a App Store.

 Uma das formas de garantir a consistncia dos nossos apps seguir as Diretrizes sobre Interface Humana da Apple. Esse material realmente nos ajuda na consistncia dos apps que desenvolvemos. H vrios estilos diferentes de design disposio e sempre nos certificamos de ter um tema consistente permeando todos eles. muito importante para ns seguir as Diretrizes sobre Interface Humana.
Todd Schofield, Standard Chartered Bank

Planejamento Design Desenvolvimento Implantao

11

Simplifique
Muitas vezes os apps corporativos desenvolvidos internamente sero derivados de um aplicativo j existente para desktop ou sero baseados em sistemas que os usurios j utilizam. muito fcil cair na armadilha de tentar levar todos os recursos e funes do aplicativo para desktop para o dispositivo mvel. Isso quase nunca d certo e normalmente o usurio no tem a mesma experincia no dispositivo mvel. Lembre-se que os usurios realizam as tarefas de forma totalmente diferente nos dispositivos mveis e que a realizao de algumas tarefas nem sempre to prtica em um dispositivo mvel. O dispositivo mvel mais indicado para tarefas menores, por isso to importante filtrar continuamente os recursos na fase de definio do aplicativo, para refinar o seu app. Veja algumas perguntas que voc pode se fazer sobre os elementos da interface do usurio do seu app e que ajudaro a simplificar o design: importante que esse elemento aparea na tela? Esse elemento viabiliza o acesso a um recurso importante? Ele utilizado frequentemente? Quase sempre? O usurio precisa desse elemento para fazer uma seleo? Com base no fluxo do app, importante colocar esse elemento na tela agora? Caso a resposta a alguma dessas perguntas seja no, bem provvel que voc possa ignorar o elemento. Talvez voc possa considerar a combinao da funcionalidade com alguma outra coisa. Os usurios de iPhone e iPad esto habituados com a aparncia e o comportamento dos apps que acompanham esses dispositivos. Voc no precisa copiar cada detalhe dos apps integrados, mas interessante entender os padres de design que eles seguem e pensar como aplicar esses padres aos apps que voc criar, com um design simples, funcional e fcil de usar. Analise os comandos comuns desses apps, os eventos de toque como esticar e zoom, as animaes e comece a pensar como voc poderia aplicar esses conceitos ao seu prprio app de forma consistente. Dicas rpidas. Apps compactos
Os apps simples, rpidos e bem executados iro gerar demanda interna e minimizar o escopo e o investimento. Esses apps compactos fazem a festa. Os usurios iro criar as suas prprias solues , dando assim muito mais flexibilidade fora de trabalho.

 Nossa filosofia que os apps internos devem ser to elegantes e bonitos quanto o melhor app comercial. Por isso quando comeamos a pensar no desenho da interface do usurio, no queramos apenas resolver um mero problema de funcionalidade, queramos resolver issode uma forma que fosse bastante prtica.
Mark McWilliams, Razorfish

Planejamento Design Desenvolvimento Implantao

12

Priorizar
Quando um app em iOS define e mantm o foco na sua funo principal, ele fica agradvel e prtico de usar. Cada parte do seu app deve ser ajustada para a sua finalidade principal. Criar uma lista de objetos, tarefas e conceitose depois organizar tudo com base na relevncia para a finalidade principal do seu app ajudar a apresentar uma interface de usurio bem organizada e com foco. Essa etapa tambm ajudar voc a pensar no fluxo de trabalho ou processo de interao do seu app, que informar as decises sobre o design da interface do usurio.

Dicas rpidas. Tela Retina


A tela Retina do iPhone 4 possibilita a visualizao de verses em alta resoluo da parte grfica e dos cones. Se voc exagerar nos elementos grficos, perder a oportunidade de mostrar as imagens bonitas e atrativas que os usurios tanto gostam. Em vez disso, trabalhe os recursos da imagem existentes de forma a compor verses maiores e de maior qualidade mais ricas em termos de textura, detalhes e mais realistas.

Faa um inventrio dos objetos, tarefas e conceitos


Objetos. So os principais elementos funcionais do seu app. Por exemplo, em um app de calendrio, os elementos seriam as coisas como os dias, meses, compromissos e lembretes. Tarefas. So as aes normalmente executados nos objetos, por exemplo, filtragem, agendamento, edio e criao. Conceitos. So os fluxos de trabalho ou, em alguns casos, uma srie de tarefas relacionadas que compem um conceito mais amplo. Usando o mesmo exemplo do calendrio, um conceito poderia ser a busca, algo que normalmente envolveria vrias tarefas.
Objetos Busca
Dias Semanas Meses Criar Lembretes

Tarefas Agenda
Criar Editar Busca

Conceitos Busca
Calendrios Filtrar

Quando tiver criado essas listas, voc comear a perceber alguns relacionamentos entre os itens dentro de cada categoria. Isso ajudar voc a agrupar objetos, tarefas e conceitos relacionados em uma hierarquia que poder simplificar a forma como eles sero apresentados para o usurio.

Planejamento Design Desenvolvimento Implantao

13

Pense de cima para baixo


Disponha os elementos utilizados com mais frequncia (normalmente os de nvel mais elevado) prximo parte superior da tela, onde eles ficaro mais visveis e de fcil alcance. Como o usurio varre a tela de cima para baixo, os elementos so apresentados progressivamente, de acordo com os seguintes critrios: Frequncia de utilizao: Os elementos utilizados com mais frequncia devem ser maiores e os utilizados com menos frequncia, menores. Importncia para o usurio: Os elementos mais importantes devem ser maiores. nfase visual: Os elementos que voc quiser que tenham mais destaque na sua composio devem ser maiores. O mesmo vale para as informaes no seu app. Elas devem ser apresentadas na tela do material de maior interesse geral para o mais especfico na parte mais inferior. Dicas rpidas. Crie um esquema do seu app
Repita no papel. Normalmente a melhor maneira de articular a viso do seu design criar esboos nos estgios iniciais do processo de design que ajudem a moldar e refinar o seu design, sem o custo associado ao desenvolvimento de cdigo. Voc pode comprar prticos modelos online que iro ajudar na criao de esquemas com certo refinamento. Repita com um app. H tambm apps na App Store, como o iMockup e o App Layout, que ajudam a criar uma espcie de maquete da interface do usurio para iOS, usando comandos e modos de visualizao padro.

Otimize
O bom design um processo iterativo. Quanto mais voc aplicar os conceitos de design da interface nos estgios iniciais do processo (antes de gravar qualquer cdigo), melhor sero os resultados finais. muito importante otimizar o design para o seu pblico-alvo e dispositivo alvo. Os apps incrveis compensam os conceitos de interao do usurio que iro variar de acordo com as caractersticas nicas do dispositivo. Otimize o seu app para refinar e reiterar esses conceitos, de forma que o resultado final ir satisfazer os seus usurios.

Seja iterativo
Antes de dar incio criao bem sucedida de um app, voc precisa de um conjunto bem organizado de esquemas. Voc pode comear com alguns esquemas iniciais e refinar as ideias com o passar do tempo. A cada passo voc descobrir mais sobre como o seu usurio poder interagir com o app e novas ideias que poderiam ser incorporadas tudo sem gastar tempo, dinheiro nem recursos no desenvolvimento em si. Considere desenhar ou esquematizar o fluxo completo do seu app, do incio ao fim, para obter uma ambientao completa da experincia do usurio e da funcionalidade que o seu projeto ir oferecer.

Planejamento Design Desenvolvimento Implantao

14

iPad versus iPhone


Se voc pretende desenvolver um app que rode tanto no iPhone como no iPad, ser necessrio adaptar o design do app para cada dispositivo. Embora a maioria dos elementos da interface de usurio estejam disponveis para todos os dispositivos, o layout como um todo varia muito. Por exemplo, o usurio normalmente espera uma parte grfica mais sofisticada nos apps para iPad do que nos apps para iPhone. No recomendvel aumentar simplesmente um app para iPhone para preencher toda a tela do iPad. Em vez disso, voc precisa fazer com que o seu app para iPad envolva o usurio de forma que ele aproveite ao mximo todas as vantagens da sua tela maior e dos seus recursos. Lembre-se tambm que o iPhone 4 suporta elementos grficos de maior resoluo com a ajuda da tela Retina, o que exige a duplicao da resoluo da parte grfica. H tambm diferenas nos movimentos disponveis e na forma como ocorre a rotao. Os dispositivos tambm suportam diferentes elementos da interface do usurio. Por exemplo, os comandos popover e os comandos do modo de diviso de tela so exclusivos do iPad.

 O iPad definitivamente nos deu mais flexibilidade, e vamos tirar proveito disso. Isso foi fundamental para ns. No foi simplesmente algo do tipo vamos aumentar tudo trs vezes agora que podemos contar com muito mais pixels mas, vamos nos certificar que estamos usando esse espao devidamente . Se vamos passar uma coisa do iPhone para o iPad, vamos repensar o processo. Provavelmente 60% da funcionalidade principal a mesma, mas o que mais ns podemos fazer? Como podemos deixar o app mais prtico, como podemos usar menos cliques ou menos tela para fazer as coisas?
James Blomberg, General Electric

Apps Universais
O iOS SDK suporta o desenvolvimento de aplicativos Universais. Um app Universal otimizado para rodar em todos os dispositivos com iOS. Basicamente um app para iPhone e um app para iPad criado como um nico binrio. Um app Universal consegue determinar em qual dispositivo ele est sendo executado e viabilizar a melhor experincia para aquele dispositivo. Os apps Universais bem desenvolvidos usam os recursos exclusivos de hardware do dispositivo, oferecem a opo certa de elementos de interface de usurio e usam apenas a funcionalidade suportada por aquele dispositivo. Ao criar um app Universal app para iOS, importante pensar como separar a interao do usurio do cdigo do aplicativo adjacente. As classes e APIs do iOS SDK usam um paradigma MVC (model-viewcontroller) que promove uma separao clara dos dados e da lgica do seu app dos modos de visualizao que sero usados para apresentar tais dados. Por exemplo, a criao da sua interface de usurio com a ajuda do Interface Builder d ao seu projeto esse tipo de flexibilidade (consulte o prximo captulo). O primeiro passo na criao de um app Universal criar desenhos da interface do usurio para cada tamanhoum desenho para os dispositivos iPad e outro para os dispositivos iPhone/iPod touch. Grande parte do design ser influenciada pelos recursos que sero apresentados em cada um dos diferentes tamanhos. Pense como os usurios iro utilizar os movimentos e a orientao de forma diferente. Considere cada recurso de hardware de cada dispositivo, assim como a cmera. As diferenas em como os seus usurios usam o dispositivo informaro qual ser o seu enfoque e design consistente de cada dispositivo e onde voc poder precisar de codificao condicional.

Planejamento Design Desenvolvimento Implantao

15

Acessibilidade
importante em um ambiente corporativo viabilizar acesso igual a todas as ferramentas e tecnologia mvel para todos os usurios. O iOS oferece vrios recursos que deixam um dispositivo acessvel e fcil para que todos possam usar. Entretanto tambm importante otimizar os seus apps internos para acessibilidade para que os usurios com necessidades especiais visuais, auditivas e fsicas possam usar e usufruir o seu app. O iOS traz uma interface de programao de Interface de Usurio de Acessibilidade, uma API leve que ajuda um app a oferecer todas as informaes que o VoiceOver precisa para descrever a interface para que pessoas com necessidades visuais especiais possam usar o app. A interface de programao de Interface de Usurio de Acessibilidade permite agregar uma camada extra de funcionalidade que no altera a aparncia do seu app nem interfere na sua lgica principal. Isso significa que quando voc usa comandos e modos de visualizao padro, grande parte do trabalho de deixar o seu app acessvel feito no seu lugar. Dependendo do nvel de personalizao do seu app, deix-lo acessvel pode ser to simples quando fornecer descries precisas e teis dos elementos da interface do usurio. O iOS SDK tambm oferece essas ferramentas que ajudam voc a deixar o seu app acessvel: Uma janela inspetor do Interface Builder que facilita a colocao de informaes descritivas de acessibilidade durante a criao dos arquivos nib. O Accessibility Inspector, que mostra as informaes de acessibilidade integradas interface de usurio do seu app e que ainda permite que voc verifique essas informaes quando roda o seu app no iOS Simulator. Alm disso voc pode usar o prprio VoiceOver para testar a acessibilidade do seu app. Dicas rpidas. Agregando suporte ao VoiceOver
A coisa mais certa a fazer tornar o seu app em iOS acessvel para usurios de VoiceOver. Com isso voc tambm responder s diretrizes de acessibilidade elaboradas por vrios organismos governamentais. Para certificar-se que os usurios de VoiceOver podero usar o seu app, no ser necessrio fazer qualquer tipo de modificao no design da sua interface. Quando voc usa elementos padro, praticamente no h trabalho extra. Pode ser que seja necessrio fornecer informaes descritivas sobre os modos de visualizao e comandos da sua interface de usurio. Quanto mais personalizada for a sua interface de usurio, mais informaes personalizadas voc precisar fornecer para que o VoiceOver possa descrever o app com preciso.

Mais frente
Tendo como base as melhores prticas de design de interface de usurio, voc estar pronto para passar para a fase de desenvolvimento do seu projeto. Mas como voc pode se lembrar do captulo sobre planejamento, o design um processo iterativo que continua durante todo o ciclo de vida de desenvolvimento do app. A execuo de um bom design com foco na experincia do usurio deve ser uma estratgia consciente, mesmo quando a sua equipe de desenvolvimento comea a mexer no cdigo. O conjunto de ferramentas e os conceitos discutidos no prximo captulo ajudaro voc a fazer exatamente issodesenvolver um cdigo slido e, ao mesmo tempo, permitir que voc oferea apps muito bem feitos para os seus usurios.

Planejamento Design Desenvolvimento Implantao

16

Desenvolvimento
Com o iOS voc oferece contedo e informaes de novas formas, simples, mas poderosas, ajudando os seus funcionrios a serem ainda mais produtivos. Com o iOS SDK, a sua equipe de desenvolvimento poder criar apps usando as mesmas ferramentas que os engenheiros da Apple utilizam para criar o OS e os apps que vm em cada iPhone e iPad. Isso permite criar apps que se apresentam, operam e respondem aos seus usurios de forma elegante e com a mxima eficincia. Usando as ferramentas do iOS voc usa estruturas de alto nvel que ajudam a aproveitar todas as vantagens da plataforma. Ns iremos explorar as principais APIs para desenvolvimento interno e dar a voc ideias para integrao desses recursos aos seus apps. Discutiremos tambm como aproveitar as tecnologias web como HTML5, CSS e JavaScript. Com os recursos certos de segurana integrados na sua soluo, essas tecnologias operam juntas para a criao de um alicerce poderoso e seguro que suporte as suas necessidades corporativas. Finalmente, antes que voc possa considerar o seu app pronto para os usurios, voc ter que test-lo e depur-lo. Voc tambm ir validar o desempenho do seu app em diferentes dispositivos. Ns discutiremos como as ferramentas do iOS ajudam voc a realizar essas tarefas e sugerir melhores prticas para garantir que o seu app funcione da forma que voc pretende.

Lista de verificao do desenvolvimento


No final da fase de desenvolvimento voc ter noes bsicas de: Ferramentas iOS SDK, entre elas Xcode, Interface Builder, Instruments e Simulator As principais APIs e estruturas para desenvolvimento de apps corporativos internos Desenvolvimento de apps web Arquitetura do iOS para acesso aos dados dos sistemas de back-office Melhores prticas para a segurana dos seus apps internos Teste, depurao e validao do desempenho do seu app

Desenvolvimento nativo
Quando se trata de desenvolvimento interno, o importante a execuo da viso do design do seu app, aproveitando ao mximo os recursos do dispositivo e tudo isso em um ambiente organizado e eficiente. O iOS SDK vem com o Xcode, o IDE para codificao, criao e depurao do seu app; Interface Builder para a criao de uma interface de usurio; Instruments para analisar o comportamento e o desempenho e dezenas de outras ferramentas. O Xcode a central da sua experincia de desenvolvimento. O Xcode oferece finalizao de cdigo, anlise esttica em tempo real e depurao imediata no dispositivo. O Interface Builder facilita a criao de um prottipo do seu app. Arraste elementos para criar uma interface completa de usurio, sem necessidade de qualquer cdigo. No Xcode 4, o Interface Builder est integrado ao IDE do Xcode. O Instruments coleta e apresenta os dados como uso do disco, da memria e da CPU em tempo real, facilitando a identificao de reas problemticas. O Simulator roda o seu app praticamente da mesma forma que um dispositivo iOS faria, para que voc possa verificar e testar o seu cdigo diretamente no ambiente do desktop.

 Minha equipe diz que o SDK e o Xcode so ferramentas fantsticas de programao e muito fceis de usar, mesmo para desenvolvedores que no tem conhecimento de Mac.
Hans-Christian Pahlig, Axel Springer

Planejamento Design Desenvolvimento Implantao

17

APIs essenciais para desenvolvedores de apps internos


O iOS SDK oferece ferramentas que ajudam voc a integrar praticamente qualquer funcionalidade que voc possa imaginar. Vrias dessas ferramentas vm com cdigo de exemplo e recursos para ajudar voc a se familiarizar rapidamente. Vamos analisar alguns dos milhares de APIs disponveis no iOS SDK. Uma rpida olhada pode dar asas sua imaginao quando voc v a fantstica variedade de recursos que podem ser facilmente integrados na criao dos seus apps internos. Multitarefa. Os desenvolvedores tm acesso a sete servios multitarefa que permitem que tarefas sejam executadas em segundo plano, preservando o desempenho e a durao da bateria. Eles incluem funes como Voice over IP, udio em segundo plano, servios de localizao em segundo plano, notificaes locais e via tecnologia push, finalizao de tarefa e alternncia rpida entre apps. Notificao via tecnologia push. O servio da Apple de notificao via tecnologia push oferece uma forma de alertar os seus usurios sobre novas informaes, mesmo com o app inativo. Envie notificaes em texto, acione alertas audveis ou agregue um identificador numrico ao cone do seu app. Acessrios. Os aplicativos podem se comunicar com os acessrios via o conector da base de 30 pinos ou sem fio, via Bluetooth. Crie um app que recupere dados de sensores externos e at mesmo controle os acessrios com a ajuda de uma sofisticada interface Multi-Touch. Crie um app de inventrio para o seu leitor de cdigo de barras. Mas se preferir, crie um app que registra e controla as leituras de um monitor cardaco conectado. Voc tambm pode criar seus prprios protocolos personalizados para intercmbio de dados e comandos com o seu app. Para descobrir como agregar suporte a apps em iOS no seu acessrio, obtenha mais informaes sobre o programa de licenciamento MFi em http://developer.apple.com/ programs/mfi. Servios de localizao. Use a estrutura Core Location para determinar a latitude e a longitude atuais de um dispositivo para configurar e agendar eventos relacionados localizao. A estrutura usa o hardware disponvel para fazer uma triangulao da posio do usurio com base nas informaes dos sinais das redondezas. iOS 4 traz aprimoramentos ao mapeamento com a ajuda da API MapKit. O MapKit oferece suporte panormica e zoom, anotaes personalizadas, mostra a localizao atual e at codificao geogrfica, destacando regies do mapa e apresentando outras informaes.

O Xcode a central da sua experincia de desenvolvimento, oferecendo finalizao de cdigo, anlise esttica em tempo real e depurao imediata no dispositivo.

Planejamento Design Desenvolvimento Implantao

18

Integrao de dados compartilhada. O iOS oferece opes poderosas de conectividade para compartilhamento de informaes entre apps. Usando sintaxe em URL, voc consegue acessar dados da web, assim como iniciar aes em outros apps instalados como o Mail, Calendrio, Contatos e outros. Seu prprio app pode adotar um esquema exclusivo de URL, permitindo que qualquer aplicativo inicie o seu app. Mail. O iOS permite apresentar uma interface de composio de Mail ou SMS padro a partir do seu app. Em ambos os casos, voc pode pr-configurar por programa a mensagem com os destinatrios e contedo, que pode ser editado pelo usurio antes do envio. O correio e as mensagens SMS enviadas so coordenados automaticamente nas filas do Mail e do Mensagens do sistema. Contatos. Com APIs do Address Book para dados compartilhados, o seu app pode criar um novo contato ou obter informaes de um contato j existente. Acessando a lista de contatos integrada, o seu app pode habilitar um usurio e associar um contato ou endereo comercial a um processo ou tarefa do aplicativo. Calendrios. O Event Kit permite que apps em iOS acessem informaes sobre eventos que constem no banco de dados do Calendrio de um usurio. Busque eventos por faixa de data ou identificador exclusivo, receba notificaes quando os registros do evento sofrerem alguma alterao e permita que os usurios criem e editem eventos para qualquer calendrio. As alteraes feitas nos eventos do banco de dados do Calendrio de um usurio com o Event Kit so sincronizadas automaticamente com o calendrio devido, inclusive com calendrios corporativos hospedados em servidores CalDAV e Exchange. Fotos. O UIKit viabiliza o acesso biblioteca de fotos do usurio. A interface para escolha de fotos traz comandos para navegao pela biblioteca de fotos do usurio e seleo de uma imagem que ser enviada para o seu app. Voc tambm tem a opo de habilitar comandos de edio para o usurio, para que o usurio possa dar uma panormica e recortar a imagem recebida. Outra opo oferecer uma interface para a cmera, para que as fotos tiradas possam ser carregadas diretamente no seu app. udio e vdeo. Tecnologias multimdia do iOS SDK permitem implantar recursos sofisticados de udio e vdeo no seu app. A estrutura Media Player, que suporta reproduo de arquivos de vdeo em tela cheia e reproduo de HTTP ao vivo, facilita o uso de servidores web padro para a reproduo de contedo em udio e vdeo de alta qualidade e remotamente. Seu app tambm pode aproveitar os benefcios de Core Audio para gerar, gravar, mixar, processar e reproduzir udio no seu app. Use Core Animation para agregar movimento suave e feedback dinmico sua interface de usurio. Se preferir, use OpenGL ES para grfico em 2D ou 3D de alto desempenho.
19

O Interface Builder, integrado diretamente ao IDE do Xcode 4, simplifica a criao de um prottipo do seu app. Arraste elementos para criar uma interface completa de usurio, sem necessidade de qualquer cdigo.

Core Animation

Planejamento Design Desenvolvimento Implantao

Desenvolvimento web
Apps web uma categoria totalmente nova de aplicativos para dispositivos mveis esto abrindo inmeras possibilidades para o mundo corporativo. Os apps web so pginas web personalizadas que aproveitam as vantagens de HTML, CSS e JavaScript para oferta de uma experincia realmente inigualvel para os usurios de iOS. Como voc cria apps usando HTML, voc consegue desenvolver apps web em qualquer ambiente de desenvolvimento web. Voc s precisa hospedar uma pgina web para oferecer um app web. Voc consegue gerenciar as mudanas e atualizaes a partir do servidor que armazena a pgina. Vamos dar uma olhada rpida nas tecnologias utilizadas para criar apps web para dispositivos com iOS. HTML5 a especificao HTML mais recente, o principal padro que determina como o contedo web interage com os navegadores modernos. HTML5 permite que os desenvolvedores integrem mdia rica diretamente em pginas web padro, reduzindo o tempo de desenvolvimento e oferecendo rica interatividade para a criao de apps web. As animaes CSS3 e os efeitos visuais permitem criar interfaces grficas de usurio sofisticadas para os apps web. Os efeitos visuais disponveis vo desde degrads, mscaras e reflexos at efeitos 2D e 3D mais complexos. Quando esses efeitos visuais so combinados com eventos de toque, possvel criar apps web que interagem de forma bem semelhante aos apps nativos do iPhone e iPad. O WebKit um mecanismo aberto de navegador. Viabilizando o Safari no iPhone e no iPad, o WebKit simplifica o desenvolvimento web e acelera a inovao. Um conjunto de ferramentas de cdigo aberto, WebKit gratuito para qualquer pessoa. Oferece um mecanismo HTML para os apps web no iPhone e no iPad. Dashcode faz parte do iOS SDK. Seu ambiente integrado permite compor, codificar e at mesmo testar apps web. O Dashcode tambm oferece prticos modelos para dar vida ao seu app web. O Safari 5 para Mac e Windows traz um poderoso conjunto de ferramentas que facilita a depurao, calibragem e otimizao de apps web para melhor desempenho e compatibilidade. Para ter acesso a essas ferramentas, v at o menu Develop em Preferncias do Safari no seu Mac ou PC.
O Simulator roda o seu app praticamente da mesma forma que um dispositivo com iOS, para que voc possa verificar e testar o seu cdigo diretamente do seu ambiente desktop. Como o Simulator vem com o navegador Safari para iOS, voc consegue testar e verificar os seus apps web antes da implantao.

 Uma das coisas que conseguimos fazer no SDK ir ao ponto certo e fazer as mudanas necessrias rapidamente. uma coisa que pode ser feita rapidamente na tela. Depois voc usa o Simulator onde poder ver tudo praticamente na hora. E para ns possvel ter uma resposta direta.
Todd Schofield, Standard Chartered Bank

Planejamento Design Desenvolvimento Implantao

20

Integrao de contedo web aos apps nativos


Com o iOS SDK voc tambm viabiliza acesso a contedo web em um app do iOS com a ajuda de um elemento chamado Web View. Ele permite que os seus aplicativos web acessem iOS recursos como notificaes via tecnologia push, a cmera integrada, movimento em 3D e muito mais. Como benefcio voc implanta novos aprimoramentos no seu app, com ajustes no seu servidor web e sem necessidade de implantar o app novamente. Usar o contedo web do seu app nativo tambm timo para turbinar o desenvolvimento nativo e sem necessidade de retroagir nem de descartar qualquer investimento j feito em desenvolvimento web.

 Tnhamos que descobrir uma forma de fazer atualizaes e mudanas rapidamente, por isso adotamos a abordagem hbrida. Reunimos elementos nativos da interface de usurio presentes no telefone com pginas web.
Giancarlo De Lio, Mt. Sinai Hospital

Como acessar sistemas de back-office


Em muitos casos o seu app corporativo ter que acessar os sistemas de back-office e depsitos de dados existentes. Embora viabilizar uma excelente experincia para o usurio no cliente seja uma importante prioridade para qualquer app de sucesso para ambientes mveis, necessria a mesma ateno aos detalhes e arquitetura para integrar a experincia do cliente aos dada dos servidores de back-end. O iOS SDK traz um poderoso conjunto de ferramentas e estruturas para armazenamento, acesso e compartilhamento dos dados armazenados nos servidores de dados corporativos.

Servios web
Com o iOS SDK, voc trabalha com dados XML para comunicao entre o aplicativo cliente e o servidor. Os arquivos XML tm um formato leve e estruturado que o seu app pode ler e gravar facilmente. Eles se adaptam perfeitamente ao sistema de arquivos do iOS. Se voc estiver usando SOAP, poder criar e analisar as suas prprias transaes de dados, ou usar bibliotecas de terceiros como a gSOAP ou Axis2. Se voc estiver implantando REST, poder integrar XML diretamente no seu app para melhorar o desempenho. Vrios apps em iOS usam JSON para intercmbio leve dos dados e bibliotecas de terceiros como a estrutura JSON. Dicas rpidas. Web View
Para integrar contedo web basta incluir um objeto UIWeb View no seu app nativo, anex-lo a uma janela e envi-lo com uma solicitao para carregar contedo web. Essa classe tambm pode ser usada para se mover para a frente e para trs no histrico das pginas web. possvel at definir algumas propriedades de contedo web por programa.

Rede
O iOS oferece uma grande variedade de tecnologias de rede modernas, prticas e sofisticadas. BSD Sockets a principal interface de programao de rede do iOS; todas as estruturas de nvel mais elevados se baseiam nela. uma tima opo para quem deseja melhor desempenho e flexibilidade. Como BSD o padro de fato para programao de rede UNIX, normalmente a portabilidade de cdigo de rede de outras plataformas bem mais fcil. O Bonjour o protocolo poderoso da Apple que facilita a localizao de sistemas e servios em uma rede local, automaticamente e sem necessidade de configurao trabalhosa. Seu app tem acesso a esses recursos via estruturas de alto nvel que facilitam a conexo, apresentao e interao com a informaes, onde necessrio, em qualquer parte do mundo.

Planejamento Design Desenvolvimento Implantao

21

Armazenamento local
O iOS traz o Core Data e o SQLite que ajudam o seu app a gerenciar e a interagir com os dados armazenados no prprio dispositivo. Core Data. A estrutura Core Data compreende solues generalizadas e automatizadas para tarefas comuns associadas ao ciclo de vida dos objetos e gerenciamento grfico do objeto, inclusive persistncia. Core Data uma soluo geral para gerenciamento de dados desenvolvida para responder s necessidades de modelos de dados de todos os tipos de aplicativos, pequenos e grandes. Voc consegue definir o modelo de dados dos seus apps rapidamente e graficamente e acess-lo facilmente a partir do cdigo. Essa soluo fornece uma infraestrutura para lidar com funcionalidades comuns como, por exemplo, salvar, restaurar, desfazer e refazer, permitindo que voc fique apenas com a tarefa de colocar inovaes no seu app. Como Core Data utiliza a biblioteca de dados integrada do SQLite, voc no precisa instalar um sistema de banco de dados a parte. SQLite. O iOS traz uma conhecida biblioteca SQLite, um mecanismo de banco de dados relacional leve, mas poderoso, que se integra facilmente a um app. Utilizado em inmeros apps e em vrias plataformas, o SQLite considerado o padro de mercado de fato em programao de banco de dados SQL leve. Diferentemente da estrutura Core Data, orientada a objetos, SQLite usa uma API de processo com foco em SQL para manipulao direta das tabelas de dados. Voc tambm pode usar SQLite em um app web com JavaScript. Exemplo: Servios web centralizados
Uma excelente forma de simplificar o seu desenvolvimento em back-end centralizar os servios web, principalmente se o seu app precisar conversar com vrios sistemas back-office. Por exemplo, a Sunbelt Rentals usou os servidores de aplicativos .Net para gravar scripts capazes de invocar procedimentos armazenados em sistemas legados AS/400 e em bancos de dados CRM da Microsoft. Assim eles conseguiram apresentar os dados recuperados por.Net via XML, para que pudessem ser utilizados facilmente pelo app para dispositivos mveis

AS/400

Servidores MS SQL

MS CRM

Como proteger o seu app


bem provvel que o seu app interno use dados corporativos confidenciais que precisam ser protegidos. Muitos dos salvaguardas bsicos de dispositivos como as polticas de senhas e apagamento remoto esto disponveis para serem administrados pelos seus gerentes de TI. Mas, independentemente desses recursos de segurana, sempre aconselhvel contar com uma estratgia para proteger os dados armazenados nos seus apps internos. Para suportar o processo de proteo dos dados no seu app, o iOS oferece um enfoque fechado que exige que os apps sejam assinados para que no possam ser violados. O iOS tambm possui uma estrutura que facilita o armazenamento seguro das credenciais do app em uma cadeia de chave codificada. H tambm estruturas de alto nvel que podem ser usadas para codificar os dados dos apps e viabilizar uma rede segura. Voc pode usar todos esses recursos durante o seu prprio processo de desenvolvimento para oferecer um alicerce seguro, sem impacto algum na experincia do usurio.

 A segurana um fator fundamental na nossa deciso para desenvolvimento de um aplicativo para iPhone. O iPhone nos ofereceu segurana HTTPS, cadeia de chaves para manter determinadas coisas confidenciais e ainda conseguimos codificar dados.
Keith DeBickes, JM Family

Planejamento Design Desenvolvimento Implantao

22

Apps

Dicas rpidas. Cadeia de chaves compartilhada


Core Services
Rede CF

Servios de segurana
Servios de cadeia de chaves Certificado, chave e confiana Servios Servios de randomizao

Core OS
LibSystem CommonCyrpto

Voc pode compartilhar itens da cadeia de chaves com vrios apps O compartilhamento de itens facilita que apps do mesmo sute de apps operem entre si tranquilamente. Por exemplo, voc poderia usar esse recurso para compartilhar senhas de usurio e outros elementos que poderiam, de outra forma, necessitar informaes do usurio a cada aplicativo. O acesso a itens compartilhados em tempo de execuo envolve o uso da interface de programao Keychain Services com os grupos de acesso definidos durante a fase de desenvolvimento. Para obter mais informaes sobre como acessar a cadeia de chaves, consulte o Guia de Programao de Guia de Programao de Keychain Services no Portal do Desenvolvedor em iOS.

Arquitetura
As APIs de segurana do iOS localizam-se na camada Core Services do sistema operacional e se baseiam em servios na camada subjacente, Core OS (kernel), do sistema operacional. Os apps chamam as APIs dos servios de segurana diretamente, em vez de passar pelas camadas Cocoa Touch e Media. Os apps de rede tambm podem acessar as funes de rede segura via API CF Network, localizada tambm na camada Core Services. CFNetwork uma API C de alto nvel que facilita a criao, envio e recebimento de mensagens HTTP serializadas. Como CFNetwork fica na parte superior de Secure Transport, possvel codificar o fluxo de dados usando qualquer uma das diferentes verses dos protocolos SSL ou TLS.

Segurana da rede
Sem necessidade de qualquer codificao, o iOS suporta servios VPN, permitindo que os apps internos se comuniquem com as redes corporativas com segurana. Os departamentos de TI das empresas podem configurar os ajustes VPN internos para IPSec, L2TP, PPTP, ou instruir os usurios para baixar os apps cliente VPN da Juniper, Cisco ou da F5 SSL da App Store. Para as configuraes que usa autenticao por certificado, o iOS oferece VPN On Demand. VPN On Demand estabelece uma conexo automaticamente quando um app acessa domnios predefinidos, oferecendo assim conectividade tranquila para os apps internos. Para os apps que precisam de acesso Wi-Fi, o iOS suporta WPA2 Enterprise Wi-Fi com autenticao 802.1X. O iOS tambm suporta mtodos padro de autenticao como os certificados digitais tokens de segurana como Secure ID e CRYPTOCard e autenticao por senha.

Planejamento Diseo Desenvolvimento Implantao

23

Segurana dos dados


Os apps internos podem proteger os dados confidenciais, com a ajuda dos recursos integrados de criptografia disponveis nos dispositivos Apple de geraes mais recentes. Data Protection utiliza a senha exclusiva de cada usurio para o dispositivo juntamente com a criptografia de hardware do dispositivo para gerar uma chave de criptografia forte. Quando o seu app interno especifica um determinado arquivo como protegido, o sistema armazena esse arquivo no dispositivo em um formato codificado. Enquanto o dispositivo estiver bloqueado, o contedo do arquivo ficar inacessvel tanto para o seu app como para qualquer possvel invasor. Mas quando o usurio destrava o dispositivo, o iOS cria uma chave de criptografia que permite que o seu app acesse o arquivo. Voc ter que criar o seu app para proteger os dados porque eles so criados e preparados para mudanas no acesso aos dados, tanto quanto o usurio bloqueia como quando desbloqueia o dispositivo. Dicas rpidas. Biblioteca de autenticao
Uma forma tima de implantar segurana nos apps em iOS criar uma biblioteca de autenticao compartilhada que voc pode usar para todos os seus apps internos. possvel integrar essa biblioteca de autenticao aos seus servios de diretrio existentes (LDAP ou Active Directory) para que cada vez que voc crie um app novo, no seja necessrio gravar um novo cdigo de autenticao. Armazenar uma credencial em uma cadeia de chaves compartilhada, melhora a experincia do usurio porque os usurios no precisam fazer login em cada app que forem usar. A sua biblioteca tambm poderia definir perodos de espera de acordo com os requisitos internos de TI. Compartilhar esse tipo de cdigo com os apps internos d consistncia s suas polticas e experincia do usuriotimo tanto para os usurios como para TI.

Autenticao segura
O iOS oferece uma cadeia de chaves segura e codificada para armazenamento de identidades digitais, nomes de usurios e senhas. O sistema operacional particiona os dados da cadeia de chaves para que as credenciais armazenadas pelos apps de terceiros no possam ser acessadas por apps com uma identidade diferente. Isso permite que o iOS proteja as credenciais de autenticao em todos os apps e servios dentro da empresa. No iOS, Keychain Services confere a assinatura de um app antes de conceder o acesso a uma cadeia de chaves, cuidando de todo o acesso cadeia de chaves sem interao do usurio. Seus apps internos podem interagir com a cadeia de chaves via API de Keychain Services.

Testes e validao
Os testes de validao de desempenho, de otimizao da interface de usurio, da rede e de usabilidade devem fazer parte integrante do processo contnuo de desenvolvimento. Na verdade, o conselho teste desde o incio e sempre fundamental para um projeto de desenvolvimento de app em iOS bem sucedido. Voc garante que o design e o cdigo do seu app esto no caminho certo com a ajuda de vrios mtodos de testes desde o incio do projeto e validao. Veja um resumo das ferramentas de teste para iOS que podem ser utilizadas para anlise e depurao. Anlise esttica. Identifique bugs no cdigo at mesmo antes de rodar o app com a ajuda do analisador esttico Xcode integrado que testa milhares de caminhos de cdigo possveis em poucos segundos, reportando possveis bugs que poderiam ficar ocultos ou praticamente impossveis de replicar. Depurao em tempo real no dispositivo. Prepare o seu dispositivo para usar o depurador grfico Xcode ou colete dados sobre desempenho em tempo real no modo de visualizao de linha do tempo do Instruments. Essas ferramentas poderosas de otimizao permitem identificar e responder rapidamente a qualquer problema de desempenho. Voc poder ver valores variveis passando o mouse.
Planejamento Design Desenvolvimento Implantao

 Temos single sign-on em todos os apps e listas de controle de acesso nos confidenciais. Ou seja, mesmo que voc baixe um app, por causa do single sign-on, ele passar um dado para nosso aplicativo e faremos uma verificao para conferir se voc tem acesso. Se tiver, timo, caso contrrio, voc no conseguir abri-lo.
James Blomberg, General Electric

24

Instruments. O aplicativo Instruments uma ferramenta poderosa de avaliao de desempenho que permite conferir o seu cdigo durante a execuo e coletar mtricas importantes sobre o que estiver fazendo. Voc pode ver e analisar os dados coletados pelo Instruments em tempo real, ou salv-los e analis-los posteriormente. Gravao de dados. Diga para o Instruments qual app deve ser analisado e quais instrumentos devem ser usados. Clique no grande boto vermelho para iniciar o processo de registro. Os dados so coletados e armazenados para anlise mais detalhada. Comparao visual. medida em que os dados so registrados e apresentados, fica mais fcil ver os relacionamentos entre os diferentes tipos de dados coletados, bem como os mesmos dados coletados nas diversas execues. Detalhamento. Verifique os picos de dados no grfico para saber que cdigo est sendo executado no pico e depois passe facilmente para o Xcode para solucionar o problema. Reproduo. Faa um teste simulado registrando a interao do usurio com o seu app e reproduza a gravao para ver como as mudanas no cdigo afetam o desempenho. Teste automatizado de interface do usurio. O instrumento de automao integrado opera a partir de scripts (em JavaScript) que voc fornece para orientar a simulao dos eventos no seu app. Esses eventos sintticos so gerados com a ajuda de interfaces de acessibilidade integradas ao iOS. Voc pode usar esse instrumento para melhorar o seu processo de teste e conferir os elementos da interface de usurio do seu app enquanto ele estiver rodando em um dispositivo conectado.
Instruments coleta e apresenta dados em tempo real como o uso do disco, da memria e da CPU, facilitando a identificao de reas problemticas.

Mais frente
Como foi discutido durante todo este captulo, as ferramentas e recursos fornecidos no iOS SDK permitem que voc desenvolva rapidamente apps inovadores que aproveitam todos os recursos tanto do iOS como do dispositivo. Alm disso, com o iOS SDK, os seus apps esto sempre prontos para implantao em um instante. Na verdade, muitas das equipes internas de desenvolvimento adotam um enfoque iterativo com relao ao processo de desenvolvimento como um todo, criando e implantando apps frequentemente durante todo o ciclo de vida do projeto. Com validao e testes integrados e um modelo de segurana que protege os seus dados corporativos, voc pode implantar os seus apps para qualquer nmero de usurios e grupos de qualquer tamanho. O prximo captulo ir orientar voc passo a passo pelo processo de distribuio do app e ajudar voc a elaborar uma estratgia que atenda aos requisitos especficos da sua empresa.

 O Static Analyzer uma ferramenta de valor inestimvel para ns. Consegue identificar problemas sem que praticamente tenhamos que rodar o app. A ferramenta Static Analysis conseguiu localizar imediatamente algo que poderia ter nos custado semanas ou meses de depurao, ou coisas que talvez nunca encontrssemos.
Mark McWilliams, Razorfish

Planejamento Design Desenvolvimento Implantao

25

Implantao
Uma vez concludas as etapas de desenvolvimento e teste do cdigo do seu app code, h algumas outras tarefas importantes que precisam ser feitas antes que ele esteja pronto para os usurios. Para preparar o seu app para distribuio, necessrio obter um certificado de distribuio para ambiente corporativo concedido pela Apple e validar o seu cdigo em Xcode. Depois que o seu projeto em Xcode estiver preparado para implantao, voc poder hospedar o seu app desenvolvido internamente, com segurana, no seu prprio servidor web e distribu-lo diretamente para os usurios via Wi-Fi e 3G. Este captulo apresenta os processos para implantao e gerenciamento do ciclo de vida do seu app.

Lista de verificao da implantao


No final da fase de implantao, voc deveria ter concludo: A criao do certificado da empresa e do perfil de aprovisionamento A definio de um servidor web de distribuio ou de uma soluo para a distribuio remota dos apps O anncio da sua soluo para os usurios finais

Preparao para o lanamento


Para iniciar o processo de implantao, ser necessrio certificar a provisionar o seu app no iOS Developer Enterprise Program e depois validar e criar o seu projeto em Xcode. Um processo simples de trs etapas ir preparar voc para distribuir o seu app diretamente de Xcode. 1. Crie e baixe um certificado de distribuio. Para distribuir o seu app para iOS, o Agente cadastrado no Programa para Desenvolvedores precisar criar um certificado de distribuio. Somente o Agente da sua equipe poder criar esse certificado e s esse certificado dar autorizao para distribuio do app na sua empresa. Obtenha mais informaes e instrues detalhadas sobre como baixar e criar um certificado para distribuio na empresa no Portal de Aprovisionamento de iOS em http://developer.apple.com/ios/manage/overview/. 2. Crie e baixe um perfil de aprovisionamento. Quando voc estiver pronto para implantar o seu app em produo, ter que criar um perfil de aprovisionamento para o ambiente corporativo. Como esse perfil pode ser instalado em qualquer dispositivo, voc optar por usar esse mtodo para a distribuio em larga escala do app na sua empresa. Os perfis de aprovisionamento de distribuio esto associados ao seu certificado de distribuio, permitindo que voc crie apps que os usurios podero rodar nos seus dispositivos com iOS. Voc pode criar um perfil de aprovisionamento para um app especfico ou vrios apps, informando o AppID autorizado pelo perfil. Se um usurio tiver um app, mas no tiver um perfil que autorize o seu uso, ele no poder usar o app. Como esses perfis esto atrelados ao seu certificado, quando o seu certificado for revogado ou expirar, o app no rodar mais. H dois tipos de perfis de aprovisionamento: Ad Hoc e Corporativo. Os perfis de aprovisionamento Ad Hoc so restritos a determinados IDs de dispositivos, ou sejam eles so executados apenas em um determinado telefone identificado (via ID do dispositivo) e informado no Developer Program Portal. Os perfis Ad Hoc so mais indicados para teste internos ou programas beta limitados, porque eles no podem ser expandidos para at mais de 100 dispositivos e alm disso eles demandam mais administrativamente (ou seja, adicionar o ID de cada dispositivo no portal do programa). Viso geral Developer Provisioning Portal
O iOS Provisioning Portal orienta voc nas etapas necessrias para testar os seus apps em dispositivos com iOS e como prepar-los para distribuio. Voc usar o iOS Provisioning Portal para vrias das etapas descritas neste captulo como a criao de certificados e perfis de aprovisionamento. Acesse o Member Center no iOS Dev Center para localizar o portal, onde voc encontrar outros documentos teis.

Planejamento Design Desenvolvimento Implantao

26

 importante observar que um perfil de aprovisionamento no um mecanismo de segurana. Embora ele fornea autorizao bsica para que um app seja executado, ele no oferece autenticao do usurio nem proteo extra dos dados utilizados ou acessados no seu app. O mais aconselhvel proteger o seu app com meios internos. Como mencionado no captulo Desenvolvimento deste guia, voc pode agregar uma grande variedade de recursos de segurana e estruturas do iOS ao seu app desenvolvido internamente. Por exemplo, uma das melhores formas de proteger o seu app interno criar uma biblioteca padro para autenticao de usurios. 3. Valide e crie em Xcode. Depois de instalados o seu certificado de distribuio e o perfil de aprovisionamento, voc precisar validar o seu cdigo em Xcode. Para obter mais informaes sobre o processo de assinatura de cdigo, siga as instrues passo-a-passo no Developer Provisioning Portal. Assim que o app for validado, o Xcode criar um pacote para que a distribuio no ambiente corporativo ocorra como um processo simples de exportao. Use o Xcode Organizer para compartilhar um projeto que foi adicionado ao seu arquivo e selecione as opes para distribuio no ambiente corporativo. Esse processo cria automaticamente um pacote contendo o app, o perfil de aprovisionamento e outros elementos necessrios para distribuio remota.

Distribuio
Uma vez finalizada a criao do seu app, a distribuio pode ocorrer hospedando o seu app em um servidor web simples criado internamente, configurando o seu prprio catlogo de apps internos, ou usando uma soluo de terceiros para gerenciamento de dispositivos mveis. A soluo ideal depende dos seus requisitos especficos, da sua infraestrutura e do nvel de gerenciamento de apps que voc precisa.

Viso geral Xcode Organizer


O Organizer simplesmente uma janela para gerenciamento de projetos em Xcode, repositrios SCM, arquivos de apps e dispositivos que oferece, inclusive, configurao rpida de novos dispositivos com iOS para desenvolvimento. Dentro do contexto de distribuio de apps, o organizer a biblioteca central a partir da qual possvel compartilhar (exportar) apps para distribuio no ambiente corporativo. O Organizer tambm pode ser usado para instalar apps internos e aprovisionar perfis em dispositivos conectados.

Planejamento Design Desenvolvimento Implantao

27

Processo de distribuio remota de apps


A forma mais simples de distribuir o seu app hosped-lo em um servidor web. Basta seguir estas etapas: 1. Hospede o seu app em um servidor web que os seus funcionrios possam acessar. 2. Notifique os seus usurios por e-mail, SMS, por notificao push ou qualquer outro mtodo que os seus usurios possam receber uma mensagem em um dispositivo com iOS que o app est disponvel; no se esquea de informar a URL do app. 3. D um toque na URL para instalar o app. Uma caixa de dilogo perguntar se voc deseja continuar com a instalao. Para obter mais detalhes sobre como definir um servio para distribuio remota de app, acesse http://developer.apple.com/library/ios/#featuredarticles/FA_Wireless_Enterprise_App_Distribution/. Estudo de caso: A App Store interna da GE
A equipe de desenvolvimento interno de apps para dispositivos mveis da GE, o Mobile Center for Excellence, no desenvolve apenas apps avanados. Eles tambm criaram um portal interno, a GE Internal App Store, para simplificar os downloads dos apps especficos da companhia para os seus mais de 300 mil funcionrios. Precisvamos encontrar um jeito prtico para distribuir os aplicativos para dispositivos mveis internamente , explica James Blomberg, diretor de Mdias Novas e Emergentes da GE tecnologia. Tambm temos apps na App Store da Apple, mas precisvamos de uma coisa mais privativa, para os aplicativos da GE que no podem ser compartilhados com todos. Desde o seu lanamento em 2009, a App Store da GE j registrou a visita de dezenas de milhares de usurios internos e mais de 100 mil downloads de apps. Quando h apps novos disponveis, o grupo os divulga na internet da companhia, posts e boca a boca pelos 200 membros do Mobile Center of Excellence da GE, que conta com participantes de todos os principais setores da companhia. O sucesso da loja se deve em parte sua aparncia simples, mas muito eficiente. A interface bem rica, mas fcil de usar , explica Dayan Anandapa, diretor de Tecnologias Digitais e Colaborao da GE. s se cadastrar e clicar em uma URL para obter instrues sobre todo o processo de download. Como os prprios dispositivos so muito prticos, queramos um processo de instalao que seguisse o mesmo padro. Em uma empresa to grande e diversificada como a GE, nem todos os apps internos servem para todos os usurios. Para controlar o acesso e deixar os apps disposio apenas a quem interessa, a empresa instituiu um sistema de acesso em duas fases. Temos o single sign-on para todos os apps e listas de controle de acesso para os apps confidenciais , explica Blomberg. A App Store interna da GE ajuda a informar e a divulgar os recursos da GE para dispositivos mveis, alm de facilitar o processo de download dos apps. Mas h outras vantagens. Ela tambm atua como repositrio, uma central de compartilhamento de conhecimento para as nossas diferentes reas de negcios , conta Blomberg. Alm disso totalmente aberta a novos relacionamentos. Vrias pessoas que no se conheciam hoje trabalham juntas. Em toda GE a comunicao e colaborao mvel enorme.

Catlogo dos apps internos


Sua equipe tambm pode criar um catlogo de apps internos que oferea um portal para a distribuio remota dos seus apps em iOS. Esse modelo de auto-atendimento exige um mnimo em termos de download e instalao por parte dos funcionrios. O catlogo pode oferecer as URLs para que os apps possam ser baixados diretamente, possibilitando assim a instalao e atualizao de vrios apps simultaneamente, agilizando a implantao e a configurao. Um site ou app nativootimizado para iPhone ou iPad um mtodo ainda mais fcil para colocar as URLs de uma forma organizada e mais familiar. Para obter um exemplo informativo de um catlogo de apps internos, consulte Estudo de caso: A App Store interna da GE direita.

Gerenciando as atualizaes
Os apps desenvolvidos e distribudos internamente no so atualizados automaticamente. necessrio comunicar os funcionrios sobre as atualizaes e orient-los sobre como instalar o app. Se o identificador do aplicativo associado ao app no Xcode no mudar, ele ir reconhecer o app como um app j existente e instalar a atualizao, mantendo os dados e preferncias do app armazenados localmente. Para maior praticidade, considere a possibilidade de desenvolver uma funo dentro do app que entre em contato com o servidor em busca de atualizaes durante a execuo. Na distribuio remota de apps possvel fornecer um link para o app atualizado, diretamente dentro do seu app. Se voc criar um aplicativo de catlogo de apps nativos, pense na possibilidade de usar Servios de Notificao Push com um alerta ou cone que permita que o usurio saiba quando houver alguma atualizao disponvel.

Gerenciamento de dispositivos mveis


Vrias solues de terceiros para gerenciamento de dispositivos mveis j oferecem recursos de distribuio remota de apps. Uma das vantagens de gerenciar apps internos em um ambiente
Planejamento Design Desenvolvimento Implantao

28

gerenciado a capacidade de ter controle sobre as verses e saber quais usurios esto trabalhando com qual verso do seu app. Vrias solues para gerenciamento de dispositivos tambm oferecem servios de Notificaes Push que permitem que os usurios saibam quando h apps novos ou atualizaes disponveis. E as solues para gerenciamento de dispositivos mveis conseguem fazer isso. Configuraes de rede e polticas de segurana - uma tima forma de configurar diretamente os dispositivos no momento em que um app instalado (por exemplo, certificados Wi-Fi ou VPN). Para obter mais informaes sobre solues para gerenciamento de dispositivos mveis, acesse www.apple.com/iphone/business/integration/mdm.

Anunciando a sua soluo


Parabns! Voc projetou, desenvolveu e implantou um iOS app para os seus funcionrios. A nica coisa que falta fazer anunciar aos quatro ventos dentro da sua empresa. Alguns dos melhores apps internos e mais inovadores caem no esquecimento e no so adotados ou no do retorno de investimento simplesmente porque os usurios no sabem que eles existem. H vrias formas de anunciar novas solues para os seus usurios. Veja aqui algumas ideias que podem ser usadas quando voc for compor seu pacote de anncio e comunicao do seu app: Considere a possibilidade de promover os apps internos mais recentes e melhores na intranet da empresa. Crie um site especfico na sua intranet apenas para os apps em iOS e permita que os usurios faam comentrios, participem de fruns e assim por diante. Crie uma demo em vdeo do seu app em ao para que os usurios entendam o poder da soluo. Envie e-mails e boletins para divulgar o app. Coloque cartazes e outros materiais grficos em locais de maior acesso para que os funcionrios tomem conhecimento do app quando estiverem circulando pelo escritrio e pelo campus. Quando possvel, envie notificaes push para os seus usurios sobre novos apps, assim que eles estiverem disponveis e tambm sobre aprimoramentos em recursos. Incremente o catlogo de apps internos com capturas de tela e demos em vdeo dos seus apps para que os funcionrios obtenham mais detalhes sobre eles.

Exemplo: Comunicao interna


Ao anunciar novos apps internos para os seus usurios, a Genentech d uma grande importncia comunicao dos novos recursos e benefcios de cada soluo. Assim como um fornecedor de software faria uma campanha para lanamento de um produto, a Genentech cria material de marketing exclusivo para a divulgao de cada app interno novo. Essa estratgia traz resultados imediatos, ajudando na maior adoo dos novos apps.

Mais frente
Mas implantar e divulgar o seu app ainda no o fim do processo na verdade, apenas o comeo. A cada app de sucesso para dispositivos mveis, seus usurios iro exigir outros mais. Este guia apenas um ponto de partida para a sua equipe de desenvolvimento. Alm deste guia, h uma grande variedade de recursos didticos, melhores prticas, dicas e tcnicas disposio como parte do iOS Developer Program. Entre em contato com outras pessoas atravs dos fruns para desenvolvedores ou baixe os vdeos para desenvolvedores para conhecer melhor os recursos avanados da plataforma. As possibilidades so ilimitadas.
Planejamento Design Desenvolvimento Implantao 29

Mais recursos didticos


Quer se aprimorar no desenvolvimento de apps internamente na empresa? Os recursos avanados apresentados abaixo vo mais fundo e trazem informaes tcnicas detalhadas sobre os tpicos mais relevantes para o desenvolvimento de apps internos.

Vdeos WWDC
Para assistir os engenheiros da Apple e especialistas discutirem como inovar com a ajuda das tecnologias mais recentes da Apple, acesse: http://developer.apple.com/videos/wwdc/2010/

Podcast da Universidade de Stanford


Conhea as ferramentas e as APIs necessrias para a criao de apps para iPad, iPhone e iPod touch. O podcast Developing Apps for iOS da Universidade de Stanford abrange o design da interface de usurio para dispositivos mveis, interaes especiais para os usurios com a ajuda das tecnologias Multi-Touch, Core Animation e muito mais. Confira essa srie no iTunes ou acesse: http://itunes.apple.com/us/itunes-u/developing-apps-for-ios-hd/id395605774

Big Nerd Ranch


Esse curso de sete dias, elaborado para oferecer a voc noes bsicas sobre Objetive-C e do iOS SDK, traz um material bastante abrangente sobre desenvolvimento com iOS. O Big Nerd Ranch tambm pode vir at voc com workshops para a sua equipe interna de desenvolvimento. Para saber mais sobre as ofertas do Big Nerd Ranch acesse: www.bignerdranch.com

Pragmatic Studio
Esse curso prtico de quatro dias ensina como criar apps em iOS repletos de recursos. Para saber mais acesse: http://pragmaticstudio.com/iphone/

Sobre Objects
About Objects

I Saiba mais sobre desenvolvimento de apps em iOS com turmas menores e cursos mais individualizados. Para ver uma lista completa dos custos disponveis acesse: www.aboutobjects.com

2011 Apple Inc.Todos os direitos reservados. Apple, o logotipo da Apple, Bonjour, Cocoa Touch, Dashcode, iMac, Instruments, iPad, iPhone, iPod, iPod touch, iTunes, o logo do iTunes, Keychain, Mac, MacBook, MacBook Air, Safari e Xcode so marcas comerciais da Apple Inc., registradas nos Estados Unidos e em outros pases. Multi-Touch uma marca comercial da Apple Inc. Apple Store uma marca de servio da Apple Inc., registrada nos Estados Unidos e em outros pases. App Store marca de servio da Apple Inc. A palavra marca Bluetooth e os logos so marcas comerciais registradas da Bluetooth SIG, Inc. e qualquer uso dessas marcas pela Apple devidamente licenciado. Intel e Intel Core so marcas comerciais da Intel Corp. nos Estados Unidos e em outros pases. UNIX marca registrada do The Open Group. Os demais produtos e nomes de empresas aqui mencionados provavelmente so marcas comerciais das suas respectivas empresas. Este material tem apenas carter informativo. A Apple no assume qualquer responsabilidade sobre o seu uso.

30

Anda mungkin juga menyukai