Oded Noy had faced challenges before — when he co-founded an application management startup, for instance, or when he participated in war game simulations for the Israeli Air Force. But this was unique: Create a scalable platform that would transform the online car shopping and financing experience for consumers — in six months.
It was September 2005, not long after Noy, as CTO of a new startup called Zag, had led the development of a Java platform for distributing inquiries and leads to auto dealers. So at least he wasn’t starting from scratch.
But Capital One, a major provider of auto loans, had just partnered with Zag to fill a much taller order: Give consumers no-hassle pricing and availability for new and used cars, as well as the ability to configure new vehicles and arrange financing online. That required bringing a whole new set of applications into Zag to handle the inventory management, configuration, pricing, call center, and CRM. The technology Noy’s team developed would underlie a new Capital One Web site, DriveOne.com, but it also had to be flexible enough to serve future partners that might have other requirements.
For Noy, the answer lay in SOA (service-oriented architecture). Its abstracted, modular approach is fundamentally about designing for extensibility and adaptation to new business needs. “It lets you build a framework that can incorporate unknowns, providing a cohesive platform even when developing rapidly — without later requiring a re-architecting,” Noy says.
But SOA or not, Zag couldn’t develop all the needed applications in time. So the company acquired Autoland, a credit-union auto-buying service. Autoland’s technology included call center and CRM applications for the automobile industry, as well as back-end transaction handling. Zag’s own technology was based on Java, whereas Autoland’s technology was largely based on COM (Common Object Model) and Visual Basic, with a smaller set of .Net and Microsoft SQL Server components, as well.
Click for larger view.
Speeding development with composite apps
Zag needed to develop, deploy, and integrate 10 core applications in all, most of which drew upon the functionality of existing Zag and Autoland apps. To achieve that goal on time, “we needed a composite application environment very early in this effort,” recalls Nick Pernblad, Zag’s chief software architect. And that meant defining services that would form the building blocks for the applications.