Editor's Note: Martyn Mallick is a wireless solutions evangelist at iAnywhere Solutions, a vendor of mobile database solutions. Though the article is not impartial, we have sought it for publication because we believe there is educational value in the technical concepts as presented. |

hen extending information to mobile workers the first problem that the IT department has to solve is how to give those workers access to enterprise data when and where it is needed. Smart client applications have emerged as the architecture of choice over browser-based wireless Internet applications, as they enable access to data while the mobile user is disconnected from the networkwireless or otherwise. This capability is best implemented by incorporating persistent data storage using a mobile database in your application.
Your choice of mobile data storage will dictate many factors of your mobile application including storage capacity, performance, security, operating systems support, development tool support, and ability to integrate with enterprise data sources via synchronization.
This article will define the components of a smart client architecture, with a focus on the mobile database component. In Figure 1, you can see the main components of a smart client solution: the mobile smart client application, the synchronization server, and the back-end data source. The main difference between a smart client application and a client-server application is the synchronization layer. Synchronization is a key element in delivering the many benefits that smart client applications provide.
Of course, each of the three smart client components is important to the overall success of your mobile application. Your application will require a form of persistent data storage, which, as you will read, is often best accomplished by a small footprint relational database.