Criteria for Picking a Client Platform
The second consideration is responsiveness. Smart clients, because of all of the local data, will be more responsive to the user. Posting a search to a server and waiting for a response, however, takes time, regardless of how fast the server is. If the clients want the feel of a local application, you may be forced into using a smart client. Of course, the question is always whether they need the snappy local interface or if it's simply something that they ask for out of habit.
Conversely, if there are no requirements for a rich user interface with all of the bells and whistles, it may make sense to stick with something simple. Bells and whistles cost time and, ultimately, money; they may not be worth the time or cost.
Every application has its own unique set of data needs. A sales force application may need to send tens of megabytes of detailed customer information so salespeople can instantly call up the order history, support incidents, and current credit balance before critical client meetings. As we become more and more dependent upon automation, we expect to have more and more detailed information available to us.
Therefore, when determining what platform to develop, you need to consider how much data you'll need in order to be effective. However, that being said, sometimes there are ways to reduce the amount of data that is truly necessary.
At first glance, if you wanted to provide all of the customer information, you may be talking about gigabytes of data. If you add the order history tables from your production database, the support database, and the various other data repositories, you may end up with an even larger number. It's not uncommon for organizations to have hundreds of gigabytes or terabytes of customer information.
However, in most cases, individual salespeople wouldn't need all of the details of every customer. They would only need the information for their own customers. Even if the records for a customer take 10 MB and the sales person covers 20 customers, the information on those customers is a far cry from the hundreds of gigabytes or terabytes that all of the customer data might take.
Most applications have similar distinctions that can be made, as well. Field force personnel need the details for any tickets that are assigned to them, and perhaps details of any new unassigned tickets. This is a far cry from having complete information for all of the tickets.
Notebooks today are carrying hard drives in sizes up to 80GB. This effectively removes concerns about the amount of storage on a PC based smart client for all except the most data intensive applications. Even those applications could be served by externally attached hard drives. With IDE hard drives with capacities of 320GB of data, even the most data-hungry application can be served.
The storage capabilities for mobile devices are substantially less; however, they are still expansive by historical definition. It used to be that the storage capacity of PDAs was measured in Kilobytes. Palm OS based PDAs used to come with only a few megabytes of storage. Today, there are compact flash cards with 2GB of storage and Secure Digital cards, roughly the size of a big postage stamp, which can hold 1GB of information. Clearly, the old perception that a PDA doesn't have the capacity for applications is no longer correct.
The only real problem with the devices is getting the data to them. As you push more and more data to clients, you'll have to address the need for bandwidth between central servers and the mobile clients.
While it's certainly true that there are not always clearly defined answers on what the platform for an application will be, it is also true that there are core concepts that you can use to help focus the decision.
About the Author
Robert Bogue, MCSE (NT4/W2K), MCSA, A+, Network+, Server+, I-Net+, IT Project+, E-Biz+, CDIA+ has contributed to more than 100 book projects and numerous other publishing projects. He writes on topics from networking and certification to Microsoft applications and business needs. Robert is a strategic consultant for Crowe Chizek in Indianapolis. Some of Robert's more recent books are Mobilize Yourself!: The Microsoft Guide to Mobile Technology, Server+ Training Kit, and MCSA Training Guide (70-218): Managing a Windows 2000 Network. You can reach Robert at Robert.Bogue@CroweChizek.com.
Page 2 of 2