WSO2Con Asia 2014 - Accelerating Mobile App Development with MBaaS

1,746 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

WSO2Con Asia 2014 - Accelerating Mobile App Development with MBaaS

  1. 1. Accelera'ng  mobile  app  development   with  MBaaS   A8ham  Azeez   Director,  Architecture            WSO2  Inc.  
  2. 2. Credits:  hEp://theemf.org/2013/09/10/enterprise-­‐mobility-­‐is-­‐no-­‐game/  
  3. 3. Enterprise  Mobility  Challenges   •  Backend  integra'on   •  Channel  security   •  Client  side  development   •  Fast  delivery  of  apps  
  4. 4. What  is  MBaaS?   •  A  model  for  providing  web  and  mobile  app   developers  with  a  way  to  link  their  applica'ons  to   backend  cloud  storage  while  also  providing  features   such  as  user  management,  push  no'fica'ons,  and   integra'on  with  social  networking  services.   •  These  services  are  provided  via  the  use  of  custom   SDKs  and  APIs.    
  5. 5. Why  MBaaS?   •  Reduce  the  'me  and  complexity  required  to  build   mobile  applica'ons   •   Allow  developers  to  focus  on  core  features  instead   of  low-­‐level  tasks     •  virtual  machine  configura'on     •  developing  common  func'onality  like  user  authen'ca'on   or  no'fica'ons  
  6. 6. When  do  you  need  an  MBaaS?   •  Many  apps   •  Many  developers   •  Many  in-­‐house  integra'ons   •  Many  backend  systems   •  Many  third  party  integra'on   •  Mul'ple  mobile  plaYorms   •  Mul'ple  versions  
  7. 7. Core  components  of  an  MBaaS   •  Cloud-­‐based  storage  for  mobile  data   •  Cloud  caching   •  Ability  to  automa'c  generate  REST-­‐based  interfaces  to   read  and  write  data     •  Internet  op'mized  data  access   •  User  &  security  management   •  SSO   •  Usage  analy'cs   •  Loca'on  service   •  Specialized  integra'on  with  enterprise  so]ware  
  8. 8. MBaaS  in  a  nutshell   App   S D K   MBaaS   Service  1   Service  2   Service  N   …  
  9. 9. A"ham  Azeez   Source:  hEp://devcenter.kinvey.com/android/samples/scrump'ous  
  10. 10. APNS   MBaaS  
  11. 11. Push  No'fica'ons   •  A  style  of  Internet-­‐based  communica'on  where  the   request  for  a  given  transac'on  is  ini'ated  by  the  publisher   or  central  server   •  Apple  Push  No'fica'ons  (APNS)   •  Android  Push  No'fica'ons  (Google  Cloud  Messaging  for   Android)   •  Blackberry  Push  No'fica'ons   •  Microso]  Push  No'fica'ons  
  12. 12. Types  of  MBaaS   •  Consumer  MBaaS   •  Enterprise  MBaaS  
  13. 13. Enterprise  vs.  Consumer   Enterprise   Consumer   Iden'ty  Providers   Ac've  Directory,  IBM  Data   Power,  Salesforce.com   TwiEer,  Facebook   Iden'ty  Protocols   SAML,  WS-­‐Trust,  WS-­‐ Federa'on,  Passive  Profile,   OAuth   OAuth,  OpenID   Mobile  Ops  Management   MDM,  MAM  integra'on   No  MDM,  MAM  integra'on   Compliance   PCI,  HIPAA,  Compliance  APIs   No  level  of  compliance   Cloud  Topology   Public,  Private,  Hybrid  clouds   Mostly  public  cloud   Environments   Dev,  QA,  Produc'on   Single  environment   Data  sources   Business  data  sources   Social,  public   Tenancy   Enterprises  which  are  building   mul'ple  apps  for  100s  or   1000s  of  users   Developers  building  one  app   for  mul'ple  users   Pricing  Model   Based  on  number  of  users   Based  on  number  of  API  calls  
  14. 14. Key  Players            
  15. 15. MBaaS  SDK   •  Sta'c  SDK   •  Dynamic  SDK   •  Provides  a  consistent  developer  experience  irrespec've  of   plaYorm   •  Java/JavaScript  etc.   •  Handles  the  complexi'es  of  the  transport  protocol   •  Similar  to  service  stubs   •  Can  include  MAM  features  
  16. 16. MBaaS  vs.  BaaS   •  Not  much  different   •  BaaS  synonymously  used  for  MBaaS   •  Also  wriEen  as  (M/m)BaaS   •  Arguably  MBaaS  is  more  op'mized  towards  mobile   app  development   •  MBaaS  ==  BaaS  ==  PaaS?  
  17. 17. Developer  Experience  without  MBaaS  
  18. 18. Developer  experience  with  MBaaS  
  19. 19. MBaaS  Challenges     •  Scalability   •  Availability   •  Extensibility  
  20. 20. How  to  build  an  MBaaS  using  WSO2   Infrastructure-­‐as-­‐a-­‐Service   Mobile  Apps              Connectors        Service  Cartridges   SDK  
  21. 21. MBaaS  &  MEAP   MBaaS   +  
  22. 22. API  Management  vs.  MBaaS   •  (M)BaaS  –  Mobile  add  on  to  API  Management   •  Mobile  op'mized   •  Mobile  SDK  
  23. 23. Governance  and  MBaaS   •  API  call  rate  limi'ng   •  Policy  enforcement   Corporate  data  cannot  be  accessed  from  certain  NWs  or   geographic  loca'ons     •  SLA  monitoring  
  24. 24. Conclusion   •  The  need  for  mobile  apps  is  exponen'ally  growing   •  Mobile  app  developers  need  to  fully  concentrate  on   (mobile)  app  development   •  High  scalability,  availability,  extensibility,  security  are  core   requirements   •  MBaaS,  BaaS,  PaaS  -­‐>  same  thing?   •  MBaaS  is  about  the  developer  experience   •  Final  thought;  IoT  &  BaaS  
  25. 25. Reference       •  hEp://www.kidozen.com/enterprise-­‐vs-­‐consumer-­‐ mbaas/   •  hEp://servicesangle.com/blog/2012/10/23/mobile-­‐ backend-­‐as-­‐a-­‐service-­‐mbaas-­‐all-­‐hype-­‐or-­‐here-­‐to-­‐ stay/   •  hEps://cloud.google.com/developers/ar'cles/ mobile-­‐backend-­‐starter  

×