If you ask IT professionals about their jobs, you'll probably hear tales of server problems, network limitations and storage shortages. But in the midst of all that activity, you'll rarely hear an IT professional talk about the business applications that allow a company to function and generate revenue from day to day—or the application updates the data center might need. Application development needs the same consideration and attention as any hardware platform and should be evolving and improving as business needs and the data center environment allows.
When new platforms or technologies appear, such as virtualization, administrators must consider the impact on business applications and drive the application development efforts that will keep their businesses competitive.
Virtualization’s effect on apps: Resource efficiency
Let's be clear right from the start—the introduction of virtualization in an enterprise does not automatically obligate any business application updates. One of the principal benefits of virtualization is that business applications can run within a virtual machine (VM) and receive the benefits of virtualization technology without users ever realizing that virtualization is in place.
But virtualization does affect data center environments, which can potentially translate into factors that might drive business application updates. For example, virtualization is mainly used for server consolidation, allowing multiple workloads to run simultaneously on one physical server.
Because business applications demand computing resources such as CPU cycles, memory, network and disk I/O, it's easy for the cumulative demands of multiple workloads to tax the server's resources, often resulting in application performance or user access problems. This is very different from a nonvirtualized environment where it would be almost impossible for business applications to use more resources than one modern server could provide.
This push toward higher consolidation puts a new emphasis on the performance of business applications and the efficient use of computing resources. Business applications previously developed with inefficient or careless resource allocation use often benefit from a closer look at the way those resources are used.
A more efficient redesign and focus on business application development can vastly improve the application's performance or user capacity when you run it in a VM on a busy server.
“One of the things we're doing is to figure out a way to limit the number of disk writes that are happening in that application,” said Chris Steffen, principal technical architect with Kroll Factual Data in Loveland, Colo.
Memory allocation is another area where business application development should focus on minimizing the overall resource use. The net effect is business applications with smaller resource footprints and lower I/O requirements, ultimately allowing more instances to coexist on the same server.
Why update business applications?
But, beyond resource efficiency, there are other reasons you may need business application updates, such as platform changes. For example, an organization may need to upgrade the server operating system from Windows Server 2003 to Windows Server 2008. If the application doesn't support the new operating system or use its features, an upgrade is required.
Changes or updates in the API or SDK programming interfaces for your server virtualization platform may also require business application updates.
“If you have a task or application that needs to be written that directly manipulates something with the virtual environment, then you need to take a step back and really plan this out because you can have some pretty serious consequences if you mess up,” said Bill Kleyman, director of technology at World Wide Fittings Inc., a manufacturer and distributor of steel hydraulic tube and fittings in Niles, Ill. “If you do it wrong, you can take down your entire virtual environment.”
Security issues also drive business application updates—particularly for Web-based or other business applications that communicate across LANs and the Internet. Although some security flaws are discovered only in the aftermath of an attack, comprehensive vulnerability testing in the development cycle can prevent many careless programming oversights that might leave an application exposed.
An evolution in the development platform might also warrant a re-examination of application development, and key business applications might benefit from tighter coding and compilation under the later development platform. “I know that the newest Visual Studio 2010 has some tools and testing capabilities that coincide directly with the System Center Suite and Hyper-V Server,” Steffen said.
Legitimate business needs also might require application updates. One example is that data integration needs may change. Chances are that your application is either processing data developed by another application upstream or delivering data to another application downstream—or both.
If other patches or updates change the data format expected by those other programs, you will almost certainly need corresponding business application updates.
And there are broader business considerations that influence application development. For example, business applications that are working fine might still benefit from new features and functionality that can make the business more efficient or competitive. Similarly, growth or workflow changes can justify major business application updates.
“Let's say you expand into another division or you buy another company and all of a sudden your application is either obsolete or deficient in features,” Kleyman said. “So business elements can dictate the need for an application update.”
About the author
Stephen J. Bigelow, a senior technology editor in the Data Center and Virtualization Media Group at TechTarget Inc., has more than 15 years of technical writing experience in the PC/technology industry. He holds a bachelor of science in electrical engineering, along with CompTIA A+, Network+, Security+ and Server+ certifications and has written hundreds of articles and more than 15 feature books on computer troubleshooting, including Bigelow’s PC Hardware Desk Reference and Bigelow’s PC Hardware Annoyances. Contact him at firstname.lastname@example.org.
This was first published in June 2011