Software Programming Technology - Walling Info Systems

Software Programming Technology

Most software programs can be divided into 5 different technology categories. Please review each here to consider the different advantages and disadvantages that are relevant to your situation. These technologies will differ in terms of complexity, price, stability, ease-of use, and scalability.

Because I have worked with all four of the technologies explained below, I will use the approach that is best for your needs without bias. Beware of any software developer trying to push you in the direction of one of these technologies or a specific development tool without understanding your needs first. This is likely because they only know that one technology or tool.

If the following introductions need clarification, please don’t hesitate to call or email me for a free consultation. I will be happy to walk you through each option. The following detail has been included here for those that have a good understanding of technology.

• Desktop Based Rapid Application

A desktop based rapid application is the most economical and is best suited for small database applications with few users. This technology is the least scalable (unable to expand) and requires each desktop to be upgraded when software upgrades are released. Typical of this type of application would be an MS Access or Silverlight based program.

• Client-Server Application

A client server application can typically offer much better performance than a Rapid Application. It is more scalable (able to expand) than the rapid application; as such, it is more expensive. This type of application works well on a LAN but should be avoided when there are multiple locations not connected by a LAN. Note that like the rapid application, any updates require someone to upgrade the program on every desktop.

These programs are typically built with a tool like Visual Studio using C# or VB.NET and use a SQL based database such as SQL server. With the release of .NET by Microsoft, there is little need for this technology in new development as the Rich Client – Zero deployment technology has all of the advantages of this technology and none of the disadvantages. This technology will be relegated to legacy systems.

• Web Browser based Application

Tech trends today focus largely on web based programs. While web-based applications are easy on the user, they take slightly longer to develop. Increased development translates to increased costs; however, your ROI may justify this type of project. This may be a good choice for you if you have many remote users or are trying to provide functionality to millions of users on the Internet.

Using responsive design can allow these web applications to also work on mobile devices.

• Rich Client – Zero Deployment

When Microsoft released .NET, they provided a means for allowing developers to create software programs that have a rich client interface, like client server applications, yet are easy to distribute and can be accessed by remote users. Surprisingly, little is said of this technology as most of the hype centers around web browser based applications. This technology offers the benefits of stability, scalability, easy distribution, and rich client functionality.

Software developed with this technology is typically more expensive than a rapid application, but less expensive than pure web-browser based applications of the same functionality.

• Mobile Applications

These applications can run on Smart Phones and tablets such as iPhones, Android devices, Windows Phones, iPads, and more.