Originally published: May 01, 2000 Printable PDF Version Articles Archives
The Myth: A thin-client solution is just a simple change to our existing user interface. The Reality: A thin-client solution can be much harder to develop than a traditional client/server application.
Could it be possible? Absolutely. Here are three important reasons why and five mistakes that we often make.
Three Important Reasons
- Scalability and timing – Today’s thin-client application is often on a four to six month timeline, yet is expected to scale to thousands of users immediately.
- Technical challenges – You must get a thin-client solution to perform both fast and reliably across a myriad of network firewalls, gateways, and servers. This can be a challenge even for the brightest network engineer.
- High user expectations – Users have a “browser mentality” that says that the software should be instantly usable. This is a new usability goal for developers to attain, which often results in a re-engineering of the existing client/server user interface.
Choosing a browser-only approach can also present a series of obstacles to success. Remember that the browser is a SDI (single document interface) implementation that is not well suited for applications where multiple views, direct user manipulation, or multiple windows are required. Trying to force power users, who have become accustomed to the flexibility of modeless windows, drag and drop, and other traditional GUI features to accept a new and improved browser-based web interface may be met with a great deal of resistance.
Navigation models are very different for web applications as compared to traditional client/server GUIs. This is a result of the limited scope of the typical navigation controls available and the hierarchical nature of most browser-based solutions. Normal methods of flattening out navigation, such as multiple modeless windows, also pose challenges since most users do not like having windows launched from their existing browser window. In fact, the navigation models of most mainframe systems are more similar to web applications, with their typically deep hierarchical navigation design.
To complicate matters, the browser is not very friendly to the concept of applications. When in a browser, we don’t select from a Start; menu to launch another thin-client solution. Instead, we simply click on a link and the content is displayed. Since all of the application content is only one click away, your design must provide a unified workspace where content, rather then the traditional menu structure, is the main navigation method. To solve this problem, developers need design standards and patterns for different classes of users (novice, expert, etc.) and different deployment platforms.
The guidelines need to address implementations with both rich GUI interfaces and more constrained web-based interfaces. Collecting and sharing this design knowledge should be accomplished via a web-based knowledge repository that allows for easy update, access, and dissemination of the design patterns developed within the organization.
Implementing a thin-client application can result in a highly scalable solution that dramatically reduces deployment costs for your users and provides a consistent, easy to use interface for even the most novice users. Just realize that the path to success has been traveled by others who have made these mistakes. If you learn from them, you will have a much better chance of achieving success in your thin-client migration efforts.