« Dig-Smart Field 3.0 Captures Field Photos! | Main | Can You See The Forest Through The Trees: Why Go GIS-Centric? »

Web-Based vs. Client-Server: Which Software Model?

This has been a pretty hot topic among utilities lately. Why? Because in this day and age many IT or IS Departments have begun a movement of centralization. Huh? Well, by implementing Web-Based solutions, IT can manage all the "licenses" at the server level. Meaning? In layman's terms no more installs, patches, upgrades, rebuilds, etc, etc. The application being deployed actually sits or is installed on the server and deployed over the web.

So by centralizing all solutions on a web tier, IT now has full and simplified management over any deployed solution. This holds true for pure web applications and terminal server technology. But, there is a price to pay both financially and performance-wise. Pure web technology is written using different levels of code and development environments than that of client-server technology. In order to make a fair comparison, think hard about automobiles. If you drive off-road, on the frozen tundra, in the muddy bog, or in the desert dunes, would you buy a fuel-efficient 4 door sedan? No. That is pretty easy to understand. If you were to drive in those conditions you would be more inclined to buy an SUV, a heavy duty pickup truck or some-type of military cross-over vehicle. The reason is POWER. In order to brave the elements you need power. V8s (no not the vegtable drink), V10s, horsepower, elevated exhaust systems, performance tires, etc. You just cant drive up a sand dune in a mid-size sedan.

Make this same comparison to web-based vs. client-server. In order to go web-based, you need power. Absolute, raw, power. Why? To push those heavy applications sitting on the server to the terminals which hit them. Power is the key for web solutions but that's not it. If your network is sub-par meaning lacking space, bandwidth or cache on the servers, forget about going web-based. It's just not going to be possible. Your investments in network improvements and upgrades alone will completely break your budget. But, if you have power. If you have the resources and you have the management skill at the IT level then web-based is the way to go. Beyond that, there is only one flaw in web-based system architecture. What if my trunkline is cut? What if I loose power? What if a tornado, hurricane or earthquake takes down the communication lines? Well, I don't have to answer that because you don't need to know anything about computer technology to know the answer. The bottom line - you loose it all.

Client-server technology is not centralized. It does not reside in a server room under one roof. It is what most people are common with. Installing software locally on laptops, PC's or other devices. It requires patches, upgrades, service packs, etc. But what it doesn't need is that absolute power. It can run the applications on much cheaper configurations. Usually on the range of 2-3x cheaper than the web-server model. But it does pose the management problem of tracking and maintaining licenses. It also comes with the problem of synchronization where two devices need "synching" to keep consistency at the database tier as updates are not automatic. But, you can bet your bottom dollar that client-server technology is oblivious to network interruptions. Well, hold on just a second. If the network goes down, the database may be interrupted but you can still connect locally while running on short-term backup devices.  So if you loose power for 1 week your crews are not helpless. They can continue to work on their projects in the field becasue the software they needed is installed locally on their tablet pc's.

So which way should you go? To me, it is simple. If you have money, resources and lots of patience go web-based. It is an easier management model but with slower performance, weaker application design, security threats and natural disaster threats. If you are not in the position to spend oodles of cash and resources reconfiguring your utility to a web environment, stick with client-server technology. There is absolutely nothing wrong with it and it usually provides a faster, more powerful application that the web-based solutions.

Dig-Smart, LLC is pleased to offer 2 levels of licensing for our customers. We offer both a web-based solution using the core elements of ArcObjects and we offer the client-server model also using the ArcObjects development library. Our web-based customers are required to have a license of ArcGIS Server and our client-server customers are required to have a license of ArcGIS. Please contact us for more information on which way your organization should go.

About the author: Jim Schoenberg, President of Dig-Smart, LLC has 10 years of experience designing and implementing system architecture design models for both federal and local governments as well as public and private utilities. Using GIS as the core, Mr. Schoenberg is experienced in client-server as well as web-based designs at the single, dual and three-tier level of enterprise architecture deployments.

TrackBack

TrackBack URL for this entry:
http://dig-smart.com/blog-mt/mt-tb.fcgi/27

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)