n the movie It’s a Wonderful Life, Clarence the Angel explains how one person’s life affects so many others. In a similar vein, every application in an enterprise touches many other applications. While most developers know that, independent software vendors (ISVs) still tend to create software as though it will exist in a vacuum?humming along, doing its thing without having to interface with other enterprise applications. This type of thinking created the whole enterprise application integration (EAI) industry.
Back when enterprise application development first emerged, it was a case of “who knew?” As in who knew all these applications would one day have to play well with each other? Today, however, no one can plead ignorance regarding the need for integration. Still, knowing it and actually doing something about it are two different things. So in the spirit of helpfulness, this article offers ISVs 10 integration tips to keep in mind when developing new software.
Interoperability is one of those buzz words that crops up a lot in press releases, but its meaning seems to vary depending on who’s using it. True interoperability, however, is really an automatic function rather than a manual one. Two applications should be able to deal with each other natively without a great deal of custom coding and teeth-gnashing. If developers have to create a connector manually every time your application needs to interface with another, your application will quickly become “bloatware.” It probably won’t work well across the board, and users won’t be able to get the support they need. Make it simple?build in automatic interoperability.
2. Look Beyond the Walls
Interoperability isn’t limited to internal systems. Financial institutions and manufacturers, for example, both need their applications to interface not only internally with each other but also with suppliers and dealers. Making sure information such as purchase orders can move from one system to another?no matter what that “other” is?is key to taking advantage of technology. Every time someone re-keys this information is an opportunity for error. Keeping data exchange automatic without either side having to change their systems is a huge advantage for all.
3. Allow for Multiple Sources
Most communications applications draw information from a variety of different sources, including LDAP, databases, e-mail, CRM, and HR systems such as SAP and PeopleSoft. Each of these has a protocol, so the more technology-agnostic your application, the better able it will be to serve as a central point to all of them. This is particularly true when information is integrated into a portal?or may be sent to someone else’s portal for aggregation. Becoming the conduit between all of these different applications makes your software that much more valuable.
4. Speaking of HR…
HR applications touch more users’ lives than any other, because their data pertain to everyone within the organization. It is the starting point for all people data, such as payroll, vacation time, healthcare benefits, authorization to access certain systems, passwords, and more. As such, integrating them with other applications is an even greater requirement. At the same time, however, those very same factors also call for greater security and availability.
The second item on this list mentioned manufacturing in terms of working with suppliers and dealers on a fairly simple level. Yet the truth is manufacturing requires one of the most complex series of relationships. You have to manage multiple internal processes, such as scheduling, materials handling, and shipping/receiving, as well as external processes all along the supply chain. The paradox is that although manufacturing is one of the industries that most needs technology integration, it’s one of the least integrated.
|Editor’s Note: The author, JT Smith, is the director of technology for WDI, makers of an integration engine product. We have selected this article for publication because we believe it to have objective technical merit.|
6. Leverage Single Sign-on
This is one of the Holy Grails of productivity. Users don’t want to spend their time looking up passwords in order to do their jobs. They want to be able to simply sign on to the network once and have their login information follow them as they go. Good integration tools allow you to make that happen, especially with older applications that were built when networks were uncommon. Offering single sign-on puts you at a tremendous advantage in the battle for the hearts and minds of corporate decision-makers.
7. Track Those Projects
The growth in outsourcing has greatly increased the use and the importance of project tracking software. While tracking hours and expenses internally is good, the ability to share that information with clients is even better, whether via Web sites, extranets, or even e-mail. If data on project hours can be imported directly into a client’s accounting system, it greatly simplifies the payment process. (Whether it speeds it or not remains to be seen.)
8. See the Big Picture
Most ISVs tend to focus solely on their own applications. For the most part, that makes sense because you want to focus on things you can control. But in this increasingly connected world, smart ISVs also look at the business aspects of their software (i.e., how it will be used in the real world) and plan ahead for integration. While you may not be able to envision every scenario, the more you work toward universal, automated connectivity, the better off you will be.
No matter what type of software you’re creating, it should contain secure Web services for any back-end functions, such as authentication, privilege levels, encryption, logging, auditing, etc. Web services and service-oriented architectures are becoming increasingly important in today’s enterprise. If you can’t connect to them, your software may not get a second look.
10. Build or Buy?
It’s the age-old question: do you build your own integration engine or buy one from someone else and incorporate it into your product? To answer that question, do the math. How much will it cost to assign or hire a developer to create the integration tool, and how long will it take?
Learn to Play Well with Others
Whatever you decide, building your applications with integration in mind gives you a key selling advantage in the marketplace, and helps you move from being a vendor to a partner. Give yourself the ability to play well with others, and you’ll reap the rewards time and again.