The number of mobile applications is growing exponentially. There is an app for almost anything you want to do, and everyday, thousands of apps are added to app stores. The demand for mobile apps is also growing. Mobile app developers have to cater to this increasing demand in a rapid manner. Enterprise are increasingly utilizing mobility, and this has led to enterprises developing a large number of enterprise mobile apps that cater to their needs. Developing such apps and governing API calls made by those apps in a standard manner thus becomes a major challenge. This is when choosing a proper Mobile Backend as a Service (mBaaS) platform would be immensely helpful. An mBaaS platform provides enterprise Backend as a Service (BaaS) APIs along with enterprise mobility specific APIs. The mBaaS would provide a rich set of APIs that are readily available to mobile app developers that would enable them to rapidly develop mobile applications. Using the mBaaS APIs, the mobile app developers would be able to make effective use of the enterprise assets in a standard, governed, and secured manner, and it would also allow them to connect the mobile apps to the rest of the business organization. Standard SDKs provided with mBaaS also makes developers’ life easier, and enables rapid development of apps without having to worry about platform-specific complexities.
In this session, Azeez will take you through the concepts behind mBaaS, how it can be utilized by mobile app developers to accelerate enterprise mobile app development, and how an mBaaS adds value by enabling you to connect your apps to the rest of the enterprise.
6. What is MBaaS?
• A model for providing web and mobile app
developers with a way to link their applications to
backend cloud storage while also providing features
such as user management, push notifications, and
integration with social networking services.
• These services are provided via the use of custom
SDKs and APIs.
7. Why MBaaS?
• Reduce the time and complexity required to build
mobile applications
• Allow developers to focus on core features instead of
low-level tasks
• virtual machine configuration
• developing common functionality like user authentication
or notifications
8. When do you need an MBaaS?
• Many apps
• Many developers
• Many in-house integrations
• Many backend systems
• Many third party integration
• Multiple mobile platforms
• Multiple versions
9. Core components of an MBaaS
• Cloud-based storage for mobile data
• Cloud caching
• Ability to automatic generate REST-based interfaces to
read and write data
• Internet optimized data access
• User & security management
• SSO
• Usage analytics
• Location service
• Specialized integration with enterprise software
10. MBaaS in a nutshell
App
S
D
K
MBaaS
Service 1
Service 2
Service N
…
13. Push Notifications
• A style of Internet-based communication where the
request for a given transaction is initiated by the publisher
or central server
• Apple Push Notifications (APNS)
• Android Push Notifications (Google Cloud Messaging for
Android)
• Blackberry Push Notifications
• Microsoft Push Notifications
15. Enterprise vs. Consumer
Enterprise Consumer
Identity Providers Active Directory, IBM Data
Power, Salesforce.com
Twitter, Facebook
Identity Protocols SAML, WS-Trust, WS-
Federation, Passive Profile,
OAuth
OAuth, OpenID
Mobile Ops Management MDM, MAM integration No MDM, MAM integration
Compliance PCI, HIPAA, Compliance APIs No level of compliance
Cloud Topology Public, Private, Hybrid clouds Mostly public cloud
Environments Dev, QA, Production Single environment
Data sources Business data sources Social, public
Tenancy Enterprises which are building
multiple apps for 100s or
1000s of users
Developers building one app
for multiple users
Pricing Model Based on number of users Based on number of API calls
17. MBaaS SDK
• Static SDK
• Dynamic SDK
• Provides a consistent developer experience irrespective of
platform
• Java/JavaScript etc.
• Handles the complexities of the transport protocol
• Similar to service stubs
• Can include MAM features
18. MBaaS vs. BaaS
• Not much different
• BaaS synonymously used for MBaaS
• Also written as (M/m)BaaS
• Arguably MBaaS is more optimized towards mobile
app development
• MBaaS == BaaS == PaaS?
25. API Management vs. MBaaS
• (M)BaaS – Mobile add on to API Management
• Mobile optimized
• Mobile SDK
26. Governance and MBaaS
• API call rate limiting
• Policy enforcement
Corporate data cannot be accessed from certain NWs or
geographic locations
• SLA monitoring
27. Conclusion
• The need for mobile apps is exponentially 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