Mobile is an exciting place, fast moving, also hard to predict and an enterprise mobile strategy has to be able to evolve and should be planned from the offset as one that is heterogeneous.
There are many issues that you could come up against if you take the approach of developing thin, rich or thick client applications for specific devices. Many device/OS vendors have developed broad mobile application development toolkits that are focused on their own single-platform development rather than multi-platform development. If you are building for two or more devices, this can get very complicated. Some of the issues are, higher development costs where skills must be maintained for multiple platforms, tools and, in some cases, programming or database languages complexities – authentication, application updates, standardisation (e.g. of DBs) should be consistent across applications. That is why a lot of the smart money is on the Mobile Enterprise Application Platform (MEAP) that should support many facets of developing mobile applications, on many devices, with many datasources such as existing systems and therefore eases considerably the above issues.
Planning and developing mobile apps for the times that a data connection is not available is essential and has a by-product of saving money as unlimited data plans disappear, and we start to feel the true cost of being connected. This ‘always available, occasionally disconnected’ development paradigm, that promotes local secure storage with bi-directional secure synchronization of data.
Synchronization has to be bi-directional; it has little or no benefit being one-way. The analogy would be having a mobile phone where your handset only had a microphone and no earpiece/speaker. The devices have to be refreshed with relevant or up to date data and the updated or collected data has to be sent back. Usually data for mobile applications, especially if they are enterprise mobile applications, will be subsets of enterprise data that resides on back-end systems. These subsets will be of the datasets as a whole, as well as being restricted by the profile of the Information Worker. Think of a huge system, not all data would want to be mobilized, maybe some customer & order data, but not payment records etc. Also the whole database of customers will not be required and would be restricted by the customers that each individual Information Worker interacts with. The exchange and storage of the data, has to be secure, as corporate data is your most prized asset. Building an agile system/infrastructure that can cater for different back end systems will also be another major challenge for a developer, along with a conflict resolution mechanism.
So this is a task that that is usually best left for a MEAP. Then you as the mobile developer can concentrate on the business logic and an innovative mobile application that extends your systems out of the traditional business environment.
Get along to these sessions…
MB4497 Consider This When There is No App for That
MB4502 Learn Best Practices for Developing Innovative Mobile Apps
MB4673 Deploy a Mobile Platform in Weeks Safely and at a Predictable Cost
MB4495 Choose the Best App for You, Whether Native, Hybrid Web Container, or HTML5
MB4449 Develop Engaging Mobile Apps with the SAP Mobile Platform
Check out the sessions here http://www2.sapevents.com/SAP/madrid/index.cfm?fuseaction=agenda.sessionCatalog&view=sessions&savedFilter=525
Please follow me on Twitter @ithain and also follow @SAPMobile