Using an Enterprise Integration Competency Center to Drive Success with Enterprise SOA and Web Services
By Chris Rollyson, nVISIA
The Opportunity and the Challenge
In 2005, several technology developments are converging to enable global enterprises to achieve uncommon returns from their IT investments. Maturing technology and emerging standards are enabling "tightly coupled" integration to give way to n-tier, "loosely coupled" integration using Web services and service-oriented architectures (SOA). These approaches to enterprise software can lead to software that natively interoperates, diminishing the need for "integration" over time, which allows IT to support more rapid business agility and directly drives competitiveness. This article will briefly discuss the role of a competency center, and how it can facilitate the growth of enterprise-level SOA.
The challenge for IT and business leaders is to think differently about some of their software development approaches and to invest in aggressive skills development for their developers and architects. "Distributed" applications are significantly more complex than more traditional applications. The former are comprised of "components" or "services" that can be shared and reused with other applications. This sharing and reuse, when it is done properly using standards-based technologies like Web services and SOA, gets easier to do over time, as more services and components are available to share and developers get accustomed to the new software.
Enterprise Application Integration
Enterprise application integration (EAI) refers to "application-centric" software development in which applications are built to requirements that subsequently change. New requirements dictate sharing information or functionality with other (usually) similarly built applications, and this requires a separate effort to design communication links between the applications.
In 2005, most enterprise architects and developers still have an application-centric orientation. SOA and Web services lead to network-centric applications that are built to interoperate. Building these applications requires a change in mindset for software development organizations. The EAI Competency Center can bridge the transition between old and new integration approaches, which must coexist for years in most organizations. It is carefully staffed by a combination of architects, developers, analysts and consultants who mitigate risk while mentoring enterprise developers in the new technology and approach. Organizations rotate their IT professional through the EAI Competency Center to drive their skill development and hands-on experience.
The EAI Competency Center
As described in the "Roadmap for the Enterprise Rollout of Service-oriented Architecture" (see http://www.technologyexecutivesclub.com/Articles/artRoadmapforSOA.htm), most organizations begin using SOA and Web services for EAI-like activities as they learn new tools, processes and technologies during Stages I and II. The EAI Competency Center (EAICC) is often a company's central node for adopting SOA, Web services and like technologies as a strategy for enterprise application integration. nVISIA's experience with guiding enterprises in designing, developing and growing EAICCs reflects two major patterns:
· The top-down approach in which the company builds the EAICC to support a larger enterprise architecture initiative
· The bottom-up approach in which the EAICC is launched after one or two successful distributed applications that have demonstrated a significant level of reuse and agility; IT wants to repeat the success with other projects
Most enterprises have experienced staff that have worked with consultants while using software best practices (i.e. J2EE), mentoring and knowledge transfer. To launch the EAICC, the company usually staffs the center with a focused consultant team and their own resources, with explicit roles and responsibilities defined for each. In most cases, the effort should have a business champion and CIO or similar level support. In virtually every case, the key goal is to develop client software professionals' competence in using J2EE for EAI, and client architects and developers are constantly rotated through the center to transfer knowledge. Best practice is also to explicitly mentor architects in mentoring and training as well as architecture and J2EE best practices.
Cont'd on page 2
|