The paper will explore the differences between smart-client and thin-client mobile architectures. It will then examine the details of common smart-client architectures, including what type of back-end systems they integrate with, the types of devices they support, how data is managed within the architecture, and development languages that can be used to build the application.
white paper
Smart Client Architectures for the
Mobile Developer
A whitepaper from iAnywhere Solutions, Inc.,a subsidiary of Sybase, Inc.
iAnywhere SolutionsMarch 11, 2006
Rwww.iAnywhere.comOverviewMobile solutions can be built in many different ways, used on many different devices, operate over many different networks, and integrate with many different back-end systems. The task of building a mobile solution can often be daunting given the many technology choices and implementation approaches. This whitepaper explores common architectures that have been successfully used by enterprises to build smart client solutions with iAnywhere developer technologies, including SQL Anywhere, M-Business Anywhere and Afaria.
The paper will explore the differences between smart client and thin client mobile architectures, and when you would want to use each. It will then examine the details of common smart client architectures, including what type of back-end systems they integrate with, the types of devices they support, how data is managed within the architecture, and development languages that can be used to build the application.
Smart Client versus Thin Client ArchitecturesMany developers are attracted by the apparent simplicity of a thin client architecture. Having the application reside on a single Web server can have a strong attraction. This is can be a powerful model successfully implemented in office environments, but is often plagued with challenges when taken into mobile environments.
Let's take a closer look at the two application models identifying the pros and cons of each. In a smart client model, a software application and data reside locally on the mobile device. Data is periodically exchanged with the enterprise through a synchronization process. In the thin client model the software application and data reside on a Web server. The application is accessed over a wireless network using a Web browser running on the mobile device. See Table 1 for more details.
www.iAnywhere.com As we can see, things appear much simpler with a thin client model. The application and data reside on a Web server in the enterprise. Deployment of the application and updates to it are relatively simple - just install and update the application on the Web server. However, the solution requires a constant wireless network connection in order for users to access the application, which poses a major challenge in many real world mobile environments.
Complete dependence on a constant wireless network connection can be problematic for a number of reasons, including:
1. A limited area of coverage by the wireless network2. Transmission interference resulting in dropped network connections due to physical obstructions and coverage gaps3. Slower network speeds compared to landline connections4. High costs to connect to the wireless network
As a result, user productivity is often extremely poor with a thin client architecture making it undesirable for mobile enterprise implementations. Let's take a look at a number of characteristics relevant to mobile solutions and how thin client and smart client architectures impact each of them.
www.iAnywhere.com The above characteristics impact the success of a mobile implementation in one of two ways:
. Affecting user productivity and user adoption of the mobile solution, which ultimately impact whether the project will achieve long term success. Impacting IT investment and involvement in developing, deploying and maintaining the mobile solution
Overall, we should not underestimate the cost of poor user productivity or overestimate the cost of more involved management of the mobile solution. A thin client model definitely provides a benefit to the IT department tasked with the solution's deployment and maintenance. However, the lack of user productivity and user adoption can be dismal, resulting in a negative return on investment.
While a smart client solution generally requires more involvement from the IT department to deploy and maintain the solution, the dramatic improvements in user productivity and user adoption greatly outweigh it.
Furthermore, there are approaches to minimize the effort required by IT to deploy mobile applications as well as support multiple types of devices. In particular, the management of a smart client solution can be simplified through:
. The use o... [download for more]