Application Deployment Considerations
If a large application is designed today, what would be the best computer platform to use for the installation? Surprisingly, there are not very many choices despite the advances in computer technology. The best choice, however, depends on a number of factors, not all of which are easy to discern. These include environmental considerations, (how many resources do systems use), organizational, (what have you used before), and personal preference. Ultimately, the best choice of the final production technology may come down to a compromise rather than the best choice. This is usually acceptable at first but may prove to be less so over time.
For the purposes of discussion, a few guidelines must be considered when evaluating a computer platform to select. Obviously a small application, such as a personal appointment calendar, might not warrant much attention to the choice of computer platform. These kinds of small applications are usually installed on the individual's current platform. This article describes the technical architecture that might be considered for an enterprise application, something that an entire department may use. These would be applications that are used daily by at least 5, and as many as 100 or more, staff members in order to accomplish their daily work. A customer tracking system which generates orders is such an application. In order to truly evaluate viable options, the target system should also be scalable for more users. That would mean that a solution that works for 5 to 10 users should be expandable to 100, 200 or more users.
The viable computer platforms available today, (July 2012), include Windows, UNIX and OpenVMS. There are other options that might be considered, such as Apple computers, but these are less attractive. While Apple computers are great for personal use, as departmental servers, there are problems. The server based software, such as large database tools, is not available for Apple. In addition, there are no server class Apple computers. For this discussion, the possible choices are Windows, UNIX or OpenVMS.
Windows started as a single user system which was an addition to the personal disk operating system from the early 1980's. It has since evolved into a range of server operating systems. Provided by Microsoft, Windows is constantly updated with fixes and new versions. There are more computers running Windows than any other system. As a technology platform for large applications, Windows can be a good choice. Many organizations already use the software for their departmental servers. There is a wide range of server utilities available such as mail, web and database. Many development languages have integrated environments on Windows. Many organizations implement their applications on the Windows server platform with good results. Remember, however, that this is the server version. The standard Windows that might be running on your laptop or desk machine is usually deficient at running applications for a whole department. Scaling up to many users is risky, if it works at all. Windows server installations tend to rely on multiple servers, one for the interface, one for the database, etc, although these may be combined in some cases.
Since Windows is the most popular computer software in the world, why wouldn't every organization simply install their application on a Windows server platform? The answer is the ongoing support costs. Windows remains particularly vulnerable to security threats. Constant vigilance by system operators is necessary to ensure system safety. Regular updates to Windows and the support components is necessary. Cost can be a concern as well. Despite the basic hardware costs being low, many organizations find that many servers are necessary for large applications. Each additional server requires a hardware, software and operational budget.
UNIX is another viable application hosting platform. This operating system is available from a number of vendors who offer various versions. While all such systems are similar to the original product developed by Bell Labs in the 1960's, a great deal of customization has occurred since. Many additional components have been added over the years. The evolution of the similar systems has not been smooth since branching has occurred. Some lines are based on the original UNIX code while others are based on completely new base sets of source code. Regardless, there are a number of vendors offering servers, a great deal of commercial software is available and operating costs tend to be reasonable. UNIX was designed as a multiple user, networked operating system from the beginning. As such, many of the integral server functions are easily supported by the core operating system and are more efficient in operation, as measured by computer memory use and other related statistics.
The final operating system to consider is OpenVMS. This system was developed by Digital Equipment Corporation back in the 1970's. The company was taken over by Compaq who were later taken over by Hewlett Packard, ("HP"). HP remains the sole provider of the OpenVMS system. Originally designed to run on specialized computer hardware, OpenVMS has evolved to take advantage of modern computer chip technology. A line of microprocessors made by Intel is now able to execute the OpenVMS operating system. For several reasons, this platform remains a viable choice for many organizations seeking to implement large applications. OpenVMS was designed to be a multiple user, networked operating system from the earliest days. Because there are many different levels of security, installed applications are virtually immune from technology attacks from hostile forces. Most sites install applications using privileged accounts which are run by standard users who have no ability to update critical operating system components. This effectively prevents virus or malware infiltration into an OpenVMS system. Although safety, capacity and availability of software on the OpenVMS platform are currently excellent, this platform is possibly reaching a crossroads. The 35th anniversary of the system is October 2012. There may not be as long a future as with Windows or UNIX. Various software design firms wish to discontinue OpenVMS support. Many firms never supported the system at all. Without viable support options, a system starts to die out. If this continues to happen with OpenVMS, there may only be 10 or so more years left for the platform.