Concepts
Through the development of several mobile applications we have become aware of a number of concepts that are crucial for the success of a mobile application. Especially if such an application will be more than just a nice gadget. Meaning that the application needs to support actual business processes in a reliable way.
Reliable communication is an important aspect of any good software design, especially for mobile applications. Reliability of the mobile network is a real life problem that needs to be addressed!
The question "which platforms and which devices do we need to support?" is becoming increasingly more difficult to answer. The enormous diversity in development platforms and available devices makes it necessary to make clear choices during the development of mobile applications.
Do you want to support multiple platforms or devices? Knowledge required to handle these requirements are aggregated under the term Device Fragmentation. A subject that needs a lot of attention.