SUBSCRIBE TO TMCnet
TMCnet - World's Largest Communications and Technology Community

CHANNEL BY TOPICS


QUICK LINKS




 
tmc logo
October 2007 | Volume 10 / Number 10
Feature Articles

Delivering Communications Enabled Business Processes

By Kenneth Kuenzel

Enterprises and service providers alike are entering a new era of communications-enabled business processes (CEBP). By integrating business applications with real-time communications, CEBP streamlines many business activities and helps companies serve their customers more responsively. By allowing applications to adapt more readily to changing business requirements, CEBP also makes organizations more agile and dynamic.

The movement to CEBP is enabled by two major trends: the growing popularity of service-oriented architecture (SOA) for business applications and the widespread adoption of SIP-based real-time communications, including voice, video, presence and more. But an additional enabler is needed to make CEBP a secure, cost-effective reality: SOA-compliant, policy-based, real-time session management.




Making session management an integral part of the application infrastructure gives business applications dynamic, fine-grained control over real-time communications. Basing session management on the SOA model minimizes the time and cost required to implement CEBP. And building in stringent policy enforcement ensures that all real-time activities comply with security, regulatory and business policies.

Leveraging SOA in CEBP

Most of today’s business applications, whether built for the public Internet or for enterprise intranets, rely on a Web-like model-centrally hosted applications interacting with distributed user devices via HTTP (Hypertext Transfer Protocol). Moreover, most of these applications are based on a layered SOA

At the top of the architecture, enterprise applications embody business processes like CRM (customer relationship management), conferencing and IVR (interactive voice response). Service provider applications include services like gaming, prepaid VoIP (voice-over-IP), ringback tones and push-to-talk.

In a parallel layer, application servers from BEA, IBM, Microsoft, Oracle, the open source community and others provide shared application logic components that enable the assembly of applications from existing building blocks. Application servers also provide a virtualization capability that shields applications from detailed knowledge of application server components and shields component functions like database access and network access from detailed knowledge of each other. Applications use standard Web Services protocols like SOAP (Simple Object Access Protocol) and WSDL (Web Services Description Language) to invoke server-layer modules.

At the bottom layer of the architecture, network equipment provides IP-based switching, routing, etc. for both real-time and non-real-time communication. Applications can talk directly to the network equipment layer using SIP (Session Initiation Protocol) or invoke network services indirectly via the application server layer.

Compared to previous, more monolithic models, this layered, modular architecture makes it much easier for developers to build and maintain business applications. Since applications can share lower-layer services and functions, SOA avoids the application “silos” that waste resources and block communication among applications. By making it easy for developers to reuse existing software components, the architecture dramatically reduces the time and cost required to create new applications. Moreover, as business requirements evolve, SOA modularity makes it simpler for developers to adapt existing applications and incorporate new services.

Due to its efficiency, flexibility and ease of use, this Web Services architecture has been adopted widely and is well understood by developers throughout the Global 2000. If the same model could be extended to include real-time applications, the benefits would be enormous. Developers could avoid creating separate real-time communications stacks that would multiply cost and complexity and slow or prevent CEBP rollout. Companies could leverage existing software functionality and developers’ existing skill sets to save time, reduce cost and risk and move rapidly to the benefits of CEBP.

Policy-based Session Management: The Missing Link

To extend the benefits of SOA and Web Services to real-time applications and to facilitate the implementation of CEBP, another layer is needed between the application and application server layers and the network equipment layer (Figure 2). This session management layer combines session border control with application-level security, session routing and session management to create a single point of policy enforcement for real-time applications and services.

The session management layer gives application developers a level of dynamic, fine-grained, policy-based control over real-time communications that cannot be implemented at the network equipment layer. Application developers can specify, for example, that certain VoIP calls should follow least-cost routes while others are routed to maximize quality. Acting as a policy gateway, the session management layer also assures compliance with security, regulatory and business policies. To satisfy Sarbanes-Oxley, for example, the session management layer could log all inter-enterprise instant messages. To control costs, it could block international phone calls by unauthorized users.

Clearly, real-time session management can add value to business applications. And clearly, real-time session management is essential to successful CEBP. But if software developers must learn new protocols or master a complicated interface to use session management tools, the flexibility and development ease of the SOA model will be lost or compromised and the move to CEBP will be slowed or stopped. To deliver fully on the promise of CEBP, the session management layer must fit into the Web Services/SOA model.

Session management services must be available to applications via component interfaces in the application server layer (Figure 3). That is, the application server layer must be augmented to include a new set of high-level component interfaces-interfaces like: routeCall(sessionID), forkCall(sessionID), encryptCall(sessionID), recordCall(sessionID), terminateCall(sessionID), etc. - with the complex session management code behind these interfaces hidden from the developer.

With robust session management accessible via familiar SOA component interfaces, companies will be able to implement CEBP quickly and cost-effectively. Application programmers will not have to learn new programming languages or write difficult new code. They will be able to set dynamic real-time policies by writing one line of Java instead of hundreds lines of XML. Real-time session management will be accessible immediately and easily to millions of experienced developers.

CEBP in Action

While CEBP and dynamic real-time session management may sound “visionary,” many enterprises and service providers are reaping their benefits today. One major financial institution, for example, recognized that the efficiency of communications between customers and the sales force could be significantly improved by integrating call control and call policy with its CRM system. Working with the author’s company, Covergence, the enterprise created a CEBP solution that performs as follows.

A sales representative uses the CRM system to select a group of customers to contact with a new sales opportunity. The CRM system passes the customers’ phone numbers to the server-layer Manage Call component via a standard web services protocol. The Manage Call component initiates a call to the first number on the list. If the customer answers the call, the call is delivered to the sales representative for a real-time conversation with the customer. If the customer does not answer and the call goes to voicemail, the Manage Call component hands control of the call to the Voice Drop component. The Voice Drop component leaves a prerecorded voicemail message for the customer. Meanwhile, the Manage Call component dials the next customer on the list. This process repeats until all the customers have been called. Because sales reps do not have to spend time dictating messages to voicemail, but can spend all their time talking with live customers, this CEBP solution greatly increases their productivity.

Since this company’s CRM system was a packaged solution and not developed internally, the best way to integrate call control was through its existing web services interface. To achieve this, the company’s IT staff, with help from Covergence, added call control components to their application server, including the Manage Call and Voice Drop components described above. Besides supporting these server-layer call control components, the session manager also dynamically selects routes from multiple carriers based on a number of factors including the called party’s physical location, the cost of different routes, and the quality of service currently delivered by each route.

Conclusion

As this simple example illustrates, by integrating real-time communication with business applications, CEBP can boost employee productivity and reduce operating costs simultaneously. CEBP can also make companies more responsive to ever-changing business and customer requirements. The best way to implement CEBP is to make real-time session management part of a company’s existing SOA/Web Services architecture. By adding a robust session management layer and making it accessible to applications via familiar Web service protocols, companies can leverage their developers’ existing skill sets and make a quick, cost-effective transition to CEBP. IT

Kenneth Kuenzel is the Founder, VP Engineering and CTO of Covergence. For more information, visit the company online at http://www.covergence.com.

» Internet Telephony Magazine Table of Contents



Today @ TMC
Upcoming Events
ITEXPO West 2012
October 2- 5, 2012
The Austin Convention Center
Austin, Texas
MSPWorld
The World's Premier Managed Services and Cloud Computing Event
Click for Dates and Locations
Mobility Tech Conference & Expo
October 3- 5, 2012
The Austin Convention Center
Austin, Texas
Cloud Communications Summit
October 3- 5, 2012
The Austin Convention Center
Austin, Texas