Platform as a service: Kerry Group extends enterprise apps into the cloud
For the Americas region of Kerry Ingredients, part of Kerry Group, new product development is the lifeblood of the business. Until recently, the maker of custom ingredients for major food & beverage manufacturers relied on a homegrown application written in Microsoft Visual Basic (VB) to manage its new product development processes.
For the Americas region of Kerry Ingredients , part of Kerry Group, new product development is the lifeblood of the business. Until recently, the maker of custom ingredients for major food & beverage manufacturers relied on a homegrown application written in Microsoft Visual Basic (VB) to manage its new product development processes.
Because of the nature of Kerry's business—where each product is configured to the needs of specific clients—the product development application had to combine elements of customer support, market forecasting, and project management. It also had to operate as an extension of Kerry's new CRM system.
After implementing Salesforce.com for CRM, Kerry faced a crossroads: It either had to upgrade or replace the homegrown product development application so it could work with Salesforce. The $1.5-billion company, which has a modest 50-person IT staff, already had its hands full maintaining its MAPICS ERP installation, as well as a portfolio of supplementary custom VB apps.
The challenge was familiar: Kerry had limited IT resources, and with its product development system, had to decide how best to integrate with Salesforce, which resides on a different platform. The decision pitted reliance on existing Microsoft .NET development skills and use of Salesforce's Web services versus a rewrite using the Force.com development platform from Salesforce.com. It's a decision that most organizations approach gingerly because of risks and costs associated with migration—not to mention retraining.
In the end, Kerry chose migration. IT Director Dan Callahan says the decision was driven largely by productivity savings.
“The majority of infrastructure is already there,” he says, referring to the fact that the Force.com platform bundles Salesforce's existing workflow, reporting, and application security engines. “We can spend the majority of our development concentrating on the value-add, rather than the plumbing.”
Serving up platforms
In short, what Callahan is describing is much akin to higher-level ease of assembly that first emerged with 4GL client/server development well over a decade ago. 4GL introduced more businesslike high-level features that did not require the same degree of programming skills as more traditional 3GL computing languages. However, 4GLs soon hit the wall because of the high cost of maintaining diverse, locally deployed fat clients—not to mention an inability to support the n-tiered architectures necessary for achieving scale beyond workgroup level.
By contrast, the new PaaS offerings seek to combine the best of both worlds, offering the kind of simplicity and high-level development approaches associated with early 4GLs with the scalability resulting from centralized deployment. And as a bonus, as an online offering, access can be carefully vetted and controlled by the enterprise.
Force.com is the culmination of Salesforce's strategy to grow past its on-demand CRM applications business into a full enterprise back-end platform—also known as Platform-as-a-Service (PaaS).
PaaS is comprised of these pieces:
Apex, a Java-like procedures language for storing logic in Salesforce's multi-tenant database;
VisualForce, a tool for developing GUIs; and
AppExchange, where access is provided to third-party applications.
“This lets customers or partners build any kind of user experience with our on-demand delivery without a touch of our branding,” explains Adam Gross, a company VP with Salesforce.com.
Admittedly, it's not startling that Salesforce would offer a development environment for customers to extend its applications. Rivals like SAP and Oracle have been offering their own programming languages for years. Similarly, Microsoft Visual Basic was a key pillar in entrenching the Windows platform. What is different on this go-round is that, as a Software-as-a-Service (SaaS)-based offering, Salesforce is delivering Force.com as part of a PaaS strategy to supplant Windows, not only for the back end, but for development and desktop delivery of other applications that may or may not have anything to do with the core CRM offering.
Microsoft has responded with its “Live” platforms covering Dynamics CRM, Office, and various calendar tools and personal services under the banner of Windows Live. Ultimately, these platforms, which are still in beta stage, are intended to support a hybrid strategy that combines the ease, manageability, and low cost of on-demand delivery with the convenience of having key features—such as the ability to create or store documents, spreadsheets, or presentations—locally on the desktop.
But at this point, Microsoft has yet to fully respond to Force.com with a “Live” strategy for its Visual Studio development tooling. Instead, it is focusing its efforts on Popfly, an online environment similar to efforts from Serena and IBM —i.e., offering hosted services where business users can create mashups using assets that are vetted by IT.
Just as SaaS offerings for enterprise applications intend to reduce administrative burdens associated with maintaining conventional on-premises software, PaaS aims to streamline the experience covering the other side of enterprise software: integrating applications, or developing or composing them from scratch.
In place of the headaches of installing and integrating different tools for software development, composition, and testing, PaaS has its own self-contained environments that eliminate those tasks.
For instance, Coghead , one of a string of start-ups backed by SAPVentures , offers a Web-based platform for enabling power users from the business—rather than developers—to compose applications using Prebuilt components, such as rudimentary CRM and project management with contact management, quote management, sales-lead analysis, to-do lists, expense trackers, and others through a process akin to dragging and dropping widgets onto a form.
Under the hood, Coghead has an Oracle database, an Apache Tomcat-based Java servlet container, a data service-oriented REST interface, and an embedded BPEL engine that allows users to generate conditional workflows.
“The complexity is not exposed,” says CEO Paul McNamara. “Users only see simple visual metaphors using flow charts to create bus logic.” At the recent SAP Sapphire user conference, Coghead demonstrated integration with SAP.
OutSystems , an established provider from Europe with new North American presence, has trod a similar path, providing a simplified hosted environment for business users and developers to compose applications. Its environment also was recently certified for SAP NetWeaver integration.
The major difference is that OutSystems has developed a more ambitious developer-centric offering that is accessed as an Eclipse or Microsoft Visual Studio plug-in that accommodates features such as batch process scheduling, dependency checking, wizard-based integration adapters, and simplified tools for auditing and single-click deployment and versioning of applications.
At the other end of the spectrum, Bungee Labs offers a Web-based, hosted development environment oriented toward custom development. Aside from a reference calendaring application, Bungee emphasizes its C#-like, Web-based integrated development environment, which for now includes development and testing, but does not yet include other features such as source-code control or versioning. The applications run over the Bungee Grid, which uses the Amazon EC2 cloud computing facility as backup, or on a virtual appliance.
Since implementing its product development system, Kerry Ingredients has proceeded to develop several other applications in the Force.com environment, including a new customer credit application. Thanks to the simplicity of working at business or data object, rather than code level, administrators from the business can handle much of the load. Only rarely does Kerry need to resort to Apex-skilled developers.
”They [administrators] know how to create new custom objects and work with Salesforce's workflows,” says Kerry's Callahan, noting that adding new functionality often can be created “within hours.”