ALM best practices for advanced DevOps organizations
A comprehensive collection of articles, videos and more, hand-picked by our editors
Deciding where to host new business applications is no easy feat. IT shops have more choices with cloud hosting, SaaS and the flexible architecture of today's apps.
We asked the SearchDataCenter advisory board where new business applications should live, and why. Here are the many factors to consider and "what ifs" that help IT pros make the decision.
Clive Longbottom, co-founder, Quocirca
The first question to ask: What will an application look like in the future?
Instead of a monolithic chunk of code like we have now, it should be a composite app pulling together functions to meet the needs of a business process. They can be existing functions already in your data center -- part of an existing enterprise application that has been wrapped to act as a cloud service -- or a commercial function -- a software as a service (SaaS) offering that you subscribe to and use from the public cloud (e.g., Equifax address cleansing). Or it may be that the function is available in the public domain as a free service, such as Google Maps.
The company risk profile affects where functions in that composite app reside. For example, if your organization is highly risk averse and has poor perceptions of public cloud computing, you might have to host everything in an on-premises data center. For some functions, an external provider's amount of domain expertise will outweigh any worries. Companies with less risk can easily move to cloud-based functions.
On the hardware side -- unless you are completely in the public cloud -- you need to maintain a modern IT infrastructure platform for maximum application performance. This means implementing an aggressive IT infrastructure lifecycle management strategy. To refresh often without ballooning costs, look at the residual value of any kit and use a suitable agent to securely and effectively resell or attain scrap value for equipment.
Ian McVey, director of the enterprise and systems integrators segments, Interxion
Hosting choices highly depend on the role of the business application and its connection to legacy systems.
To choose a deployment model, assess the investment and return profile for new business applications. An app that requires minimal connection to data residing in legacy on-premises systems can develop natively in the cloud. Reliant on cost economics, a highly scaled and utilized application is better built on-site, depending on the underlying asset utilization and capital depreciation lifecycle. And a new business venture with a pilot target market might suit cloud deployment.
Consider return on investment in the application's development set against the business value it provides. What is its level of connectivity to legacy data? Do regulatory and sovereignty requirements affect that data? How agile, scalable and efficient can the application and underlying infrastructure be?
Tom Nolle, president of CIMI Corporation
Size plays a role. Generally, big IT shops find it cheaper to host new business applications in-house in existing data center space rather than adding colocation space or hosting apps on cloud infrastructure.
Stephen J. Bigelow, technical writer
Many modern businesses mix and match deployment options to optimize costs and mitigate business risk.
In some cases, only one option exists. If the application is mission-critical, where security and availability are vital, keeping the app on-premises or in a private cloud often justifies compliance control and the cost to do it yourself. If the business application is non-critical and low-risk, consider a public cloud deployment vs. on-prem. Research whether a commercial provider offers a better, cheaper SaaS version of the app, as long as occasional downtime isn't a problem.
How you treat the application depends on its business driver. The latest and greatest thing isn't always the best financial decision.
In the data center, improve utilization first rather than buying new capacity, unless there is a clear justification of the cost and risk of business disruption that the new technology brings.
Carrie Higbie, global director, data center solutions and services
Some factors for application deployment include expectation of uptime, customization, usage periods, in-house talent, and capital and operating expenses.
You have to consider the hype around cloud vs. on-premises. If you're looking at cloud applications, be aware that most cloud services don't offer 99.995% uptime and service-level agreements are best effort.
Without knowing where a cloud provider with multiple locations houses your data, you run into data sovereignty concerns, especially with personally identifiable data. You also don't know who maintains the equipment or what their relationship is with equipment providers, like you know the staff in your own data center.
How secure, reliable and mature is the cloud provider? We all hear horror stories: One provider told its customers they had two weeks to remove everything from their cloud before it shut down; some colocation facilities were seized by the U.S. Securities and Exchange Commission due to lack of tracking; another went three days with zero security before discovering the problem.
As for the application, how customizable is it? Will the software fit your needs as is? It is very difficult to realign your business around a piece of software. Internal software is more customizable than some cloud-based applications. If you have unique needs, this may be the better route for your company.
Functionality and portability are also imperative. You can't always pull your data off a cloud, or at least not easily. Some clouds have proprietary hooks that make porting an application or information difficult, if not impossible.
Look at licensing demands. Some cloud applications offer concurrent licenses -- this is highly advantageous to companies that require several licenses but don't need to license full-time users. Infrequently used, seasonal and promotional business applications fall under this category. A cloud service reduces your bill to zero at the end of the usage period.
Look at capacity -- if you have plenty of power, cooling, cabling and hardware along with support staff, keep the application in-house. Due to virtualization projects, many data centers have "spare" equipment with which there may not be an expense up front, but power and maintenance expenses add up. If a business is highly virtualized, then it is in their best interest to ensure that any new application will fit in their environment.
Also consider latency. If local users create a large bandwidth demand, hosting the application in-house is more desirable and efficient. If you have a lot of mobile users, then consider the cloud -- incoming bandwidth won't have to be supported and paid for locally.
Talent is another variable. Do you have staff capable of supporting the application? Factor in the cost of outside consultants and in-house support staff as well as reoccurring costs.
Cloud vs. on-prem for HR apps
Where to host UC apps
Can ERP move out of HQ?