As organizações de TI inovadoras veem a mobilidade como um importante facilitador de negócios para um crescimento futuro e diferenciação competitiva. Elas priorizam o desenvolvimento de aplicativos móveis e a consideram como parte da estratégia de suas empresas.
Como parte deste esforço elas enfrentam muitos desafios, incluindo como fornecer de forma eficiente aplicativos para múltiplos sistemas operacionais e dispositivos, como permitir interações de dados seguras com sistemas de back office e como acompanhar as recentes demandas de negócios e avanços tecnológicos.
Essa sessão irá ajudá-lo a respirar no meio do caos das demandas e evoluções tecnológicas e tornar-se consciente das opções existentes, e o que é necessárias para minimizar os riscos e obter êxito na adoção de uma estratégia de mobilidade corporativa para sua empresa.
Desafios e Preocupações na Adoção de uma Estratégia de Mobilidade Corporativa – Magic Sem Segredos – S01E14
1. Desafios e Preocupações na Adoção de uma Estratégia
de Mobilidade Corporativa
Magic Sem Segredos – S01E14 – 08 Agosto 2014
2. Quem somos
• Um fornecedor global de
plataformas de desenvolvimento e
integração de aplicações
• 30 anos de experiência comprovada
com foco em negócios
• NASDAQ (MGIC)
• Presente em mais de 50 países
• Parceiros +3.000
• Maiores informações em
http://www.magicsoftware.com.br
13. Visão Holística
Tenha uma visão holística
do que significa um projeto
de Mobilidade.
O projeto não se resume ao
App
14. Conexão Crítica com os Sistemas Corporativos
ERPCRM
RH
DMZCloud
Tablets (BYOD, corporate)Smartphones (BYOD, corporate)
Legado
Sistemas de TI Corporativos
1. Que dados ? Que Lógica ?
2. Complexo, Não Escalável, Não Seguro
14
15. 3- Identificar quais sistemas operacionais móveis e funcionalidade nativas do dispositivo
você quer suportar
19. 4- Escolha a arquitetura móvel(nativa, web/HTML5, híbrida) que funcionarámelhor para
cada aplicativo
20. Desenvolvimento nativo para apps nativos
Lado Cliente
(um dev por plataforma)
+ Comunicação Servidor,
autenticação,…20
1.
21. Desenvolvimento nativo para apps nativos
Lado Cliente
(um dev por plataforma)
Lado Servidor
(alguns devs)
2.
+ Comunicação Servidor,
autenticação,…
AJAX, PHP, Ruby, …
+ Lógica Negócio, Ger.
Sessão, Ger. Dispositivos,
segurança…21
1.
22. Desenvolvimento nativo para apps nativos
Lado Cliente
(um dev por plataforma)
Lado Servidor
(alguns devs)
Integração
(ponto-a-ponto)
2. 3.
+ Comunicação Servidor,
autenticação,…
AJAX, PHP, Ruby, …
+ Lógica Negócio, Ger.
Sessão, Ger. Dispositivos,
segurança…
Teste, execução,
manutenção4.22
1.
23. Desenvolvimento web para apps web/híbrido
23
Lado Cliente
(multi-plataforma)
1. 2.
+ Comunicação Servidor,
autenticação,…
24. Desenvolvimento web para apps web/híbrido
24
Lado Cliente
(multi-plataforma)
Lado Servidor
(alguns devs)
1. 2.
AJAX, PHP, Ruby, …
+ Comunicação Servidor,
autenticação,…
+ Lógica Negócio, Ger.
Sessão, Ger. Dispositivos,
segurança…
25. Desenvolvimento web para apps web/híbrido
25
Lado Cliente
(multi-plataforma)
Lado Servidor
(alguns devs)
Integração
(ponto-a-ponto)
1. 2. 3.
AJAX, PHP, Ruby, …
Teste, execução,
manutenção
4.+ Comunicação Servidor,
autenticação,…
+ Lógica Negócio, Ger.
Sessão, Ger. Dispositivos,
segurança…
26. Plataforma para apps híbridos e nativos
Modelo / Metadados
Plataforma de Desenvolvimento,
Execução e Integração de Apps Mobile
Lado Cliente + Lado Servidor + Integração1.
Lado ServidorLado Cliente
Integração
Teste, execução,
manutenção
2.
28. Cuidado com o risco da alta complexidade
28
Native
Web/HTML5
JavascriptHybrid
applications
development
User Interface
App stores
Online/offline
security
Multi-platform applications
Future proof
Cloud-based
CRM
Manufacturing
Performance
User experience
Legacy
Smartphones
Native
What should I do?
29. Essencial para o mundo corporativo
• Suporte a uma programação ágil
• Frameworks aceleradores -
Componentes pré-construídos de
UI/UX
• Nível de Segurança Embutida
• Capacidade Multicanal (Mobile,
Desktop, Web e SOA)
• A prova de futuro
30. 6- Faça comque queinterface de usuárioseja uma decisão em grupo
36. Segurança acesso e dados
• Login / Armazenamento de
Credenciais em Modo Offline
• Acesso Web x Exposição de
Aplicações e Dados
• Criptografia de dados
• MDM
37. Arquitetura MDM – Mobile Device Management
Device Agents
MDM Server/Database
Management Console
Internet
39. Componentes de Produto MDM
Monitoramento
Rastreamento de dispositivo
em tempo real, alertas e
auditorias para o
cumprimento de políticas
Provisão, controlar e
configurar os dispositivos
móveis, serviços e
aplicativos corporativos
Os dados, usuário, em nível
de dispositivo, o
apagamento remoto de TI e
gestão de políticas
Melhores ferramentas de
controle remoto e de suporte
Gerenciamento
Segurança Suporte
41. Que caminho adotar?
• Desenvolvimento interno
• Terceirização Parcial
• Terceirização Completa
• Apoio Consultoria Especializada
42. Solução Completa da Magic de Mobilidade
Corporativa
Magic xpa Magic xpi Magic MDM
Magic Mobility
Professional
Services
Uma Abrangente
Plataforma de
Aplicações para
Desenvolvimento de
Soluções para
Web, SOA e
Desktop
Plataforma de
Integração de
Sistemas e
Processos de
Negócios
Uma Solução de
Gerenciamento de
Dispositivos Móveis
(Mobile Device
Management) para
segurança,
monitoramento e
controle
centralizado e
suporte.
Serviços para ISV's
(Parceiros) e
Empresas (Clientes
Finais)
43.
44. Obrigado e até o próximo
http://mss.magicsoftware.com.br
Notas do Editor
First main trend is the Bring-Your-Own-Device trend. Employees using their personal mobile devices for business purposes.. The trend to limit mobile CAPEX investments by IT makes BYOD a lasting trend in the future.
Even though as an IT manager you say :”There will not be BYOD policy in my company”, which will be difficult to go against, you will need to make sure that your enterprise mobile applications can run on safely on different mobile devices with different forms and capabilities because it is mostly the case that your company will support tablets and smartphones, for at least 2 mobile device vendors.
And we come to the second main chaotic enterprise mobility trend: Platform fragmentation
Let’s start with the most important question in mobile enterprise application projects and this is not the technology, not the User Interface, not the development tools.
First question to address is “What business processes to mobilize” and how to leverage the fact that internal workers, partners or customers are now mobile, always connected and take business-impacting decisions via a intelligent device that has a GPS, camera, 3G/4G broadband internet access or is a mobile wallet.
By utilising mobile technologies, businesses can re-design processes, make them simpler, friendlier and easy use.
An Mobile Enterprise Application is not a web/desktop application adapted to a smaller screen. To have the equivalence of desktop applications on a mobile device (like a CRM application for instance), this is hard work to display the right business logic and the right data. Usually several mobile apps are needed, each achieving a part of total business processes of a desktop app.
The second question is how to deliver benefits from innovation in technologies, such as GPS, camera, location services and more. The most innovative mobile apps are becoming transaction-oriented and leverage key mobile technologies and end user behavior.
Adapt to ever change customer demands, and addressing them closer to the customer “just think about a presentation a product catalogue on an iPad , which is connected to real-time ERP system, without the need to keep latest version, printing etc.” ...
Obviously types of users, if they are internal users, external users is a key input for a mobile enterprise application project and has impact on user experience requirements, management infrastructure, security...
These mobile business processes require to be innovative to have them adopted by their users, and be a business differentiator for the enterprise. You can even think of integrating other types of business processes like Machine-to-Machine communications
Mobile enterprise projects have an objective to reduce the total cost of doing businesses and improving the bottom line.
They require adaptability as they may evolve with user experience, device capabilities or business transformation. They will change over the time and will be optimized .
Inside ecosystems (JDE, Salesforce, SAP,...) but not only !
Mobile business logic is simple on the client-side but complex on the back-end side to really give value to mobile users
Puxa um pelo e vem um Leão
For enterprise mobility, the most costly and most technically challenging issue for enterprises is not the User Interface or client-side application (although it has his own problems –we will get back to it), but the value (data, process, application) that resides into Enterprise IT systems and that needs to be unlocked to mobile in an enterprise grade mode (scalable, performance, security).
The connection to enterprise IT systems is most often, under-estimated and bottleneck in a mobile project compared to client-side or User Interface development. It usually represents a high effort and cost in the overall project because it often requires expensive, specialized resources both on the technical and on business side..
In a recent report, MGI Research assessed it as a 70 % add-on on the mobile project cost.
Main issues here are what data, what process to mobilize, how to combine diverse data types and data, how to streamline a end-to-end process to a mobile user (CRM+ERP, HR+real-time,…), social + internal processes….
A seamless and intuitive User experience is also a key requirement but fragmentation is a barrier that needs to be overcome.
The WW smartphone OS market is highly fragmented and has dramatically changed over the past few years. RIM market share has plunged while Android for instance has plummeted.
Even fragmentation can exist within the same operating system and this is the main problem of Android.
Android: versions: 2.1 to 4.2 (10 different versions)
4 different sizes (small, normal, large, extra large). For each one, you have 4 different densities (low, medium, high, extra high)
This platform fragmentation in term of OS, form factors, processing…is a key issue when succeeding in entreprise mobile app projects, and obviously knowing exactly where mobile enterprise apps will be deployed on is essential.
The differences between OS capabilities and UI philosophies, form factors and processing power has a huge impact on the User Experience.
But before deployment, you have the development phase with technologies, languages and tools and here too, multiplicity but also proprietary and non-standard technologies and languages make everything complex.
I would like to give an example of developing a native application with a native development language.
A typical project would start with a client side development with one stream per targeted platform, then multiple server-side development streams using for example PHP, AJAX or Ruby.
Then you would add as many integration development streams as required for point-to-point integration.
Obviously you would need to develop also the communication layers and test, deploy and maintain all these.
The whole process is quite heavy, risky in term of quality and not adapted to fast time-to-market environment.
I would like to give an example of developing a native application with a native development language.
A typical project would start with a client side development with one stream per targeted platform, then multiple server-side development streams using for example PHP, AJAX or Ruby.
Then you would add as many integration development streams as required for point-to-point integration.
Obviously you would need to develop also the communication layers and test, deploy and maintain all these.
The whole process is quite heavy, risky in term of quality and not adapted to fast time-to-market environment.
I would like to give an example of developing a native application with a native development language.
A typical project would start with a client side development with one stream per targeted platform, then multiple server-side development streams using for example PHP, AJAX or Ruby.
Then you would add as many integration development streams as required for point-to-point integration.
Obviously you would need to develop also the communication layers and test, deploy and maintain all these.
The whole process is quite heavy, risky in term of quality and not adapted to fast time-to-market environment.
Let’s take now a web or hybrid application developed with web technologies.
A typical project would also start with a client side development using HTML5 for example, with this time one development stream for all the platforms , then multiple server-side development streams for server-side logic.
Then you would add as many integration development streams as required for point-to-point integration.
In the same way, you would need to test, deploy and maintain all these.
The whole process is less heavy and risky but still not optimized .
Let’s take now a web or hybrid application developed with web technologies.
A typical project would also start with a client side development using HTML5 for example, with this time one development stream for all the platforms , then multiple server-side development streams for server-side logic.
Then you would add as many integration development streams as required for point-to-point integration.
In the same way, you would need to test, deploy and maintain all these.
The whole process is less heavy and risky but still not optimized .
Let’s take now a web or hybrid application developed with web technologies.
A typical project would also start with a client side development using HTML5 for example, with this time one development stream for all the platforms , then multiple server-side development streams for server-side logic.
Then you would add as many integration development streams as required for point-to-point integration.
In the same way, you would need to test, deploy and maintain all these.
The whole process is less heavy and risky but still not optimized .
Finally, last example is developing hybrid or native applications using an end-to-end development platform covering client-side, server-side and integration development.
You would have only one development stream this time and the whole process here would be optimized for best quality, time-to-market and high flexibility.
Today, you can hear many buzzwords around mobile enterprise application: technologies like HTML5, Javascript, native, hybrid, cloud but also mobile capabilities, user interface…there are many philosophical debates that makes decision-makers and IT managers a bit lost or at least very cautious in their strategy or later at the implementation phase.
The changing environment is mainly driven by 2 main trends: Consumerization of IT and OS fragmentation