Extending communications to the enterprise
Consolidation and integration are high on the priority list of many CIOs. Lethargic disconnects between different parts of a business, particularly communications, could put companies at risk of losing their initiative when it comes to servicing existing customers and attracting new ones, which, in times of heightened competition, is critical to survival.
To integrate various communications functions, enterprises must leverage multiple communication services. These are typically a mix of traditional and legacy services, including telephony, videoconferencing, web portals and unified communications solutions.
As a rule, application developers generally aren’t interested in knowing what technology and which vendors provide the underlying communications functions. What they need is an effective and fast way of breaking down the walls between an organisation’s information and communications silos, and an open-standards platform that will stand the test of time and get the company in good shape to compete.
Service-oriented architecture is a business-driven concept that is based on a style of architecture that uses loosely coupled services and components to support the requirements of business processes and users.
It is evolutionary in terms of its distributed computing approach (software running on multiple platforms) and modular programming style (ie, building blocks of functions or services that can be connected).
Previously, software programs were written as integrated programs. The addition of each new feature impacted the entire program, requiring a full program test for each program code update. SOA’s distributed computing approach and modular programming style create ‘building blocks’ of functions or services that can be connected.
Within a PBX, for example, a service such as ringing a phone, forwarding a call, conferencing a call, etc, is developed as a building block that can easily be modified or integrated into a new application. With SOA, a change to or addition of a new feature is a change to the building block of the service, without concern for how it might impact other functions in the application.
Further, building blocks can be combined (‘mashed up’ to use an SOA term) to create new ‘composite services’. The major advantage of SOA is the ease in which one service can ‘talk’ to another (by connecting the building blocks, where each block is a service) - without concern or even knowledge of the underlying interfaces or connections. Thus a business process expert can link and sequence services, in a process known as ‘orchestration’, to meet new or existing business system requirements.
Web services offer one method of implementing SOA and providing a standardised way (or technology) of integrating web-based applications using standards-based interfaces such as XML, SOAP and others.
By using web services, services or application components functions can be published to the rest of the world. Web services support interoperable machine-to-machine (ie, PCs) interaction or communication over a network such as the internet.
The primary protocol used in communicating web services is HTTP/HTTPs. Service oriented architecture protocol (SOAP) is the message envelope format and it can use HTTP/HTTPS, XMPP or SMTP as the transport protocol. As a service or application component, web services are self-contained and self-describing.
They can be discovered using universal description, discovery and integration (UDDI), which acts like a registry and describes web services so that developers can find them easily (ie, to incorporate into other applications). And to facilitate the connection of these services to one another there is web services description language (WSDL), which provides web services interface syntax to facilitate the connectivity between services.
Extensible markup language (XML) provides a language that can be used between different platforms and programming languages, and express complex messages and functions. Web services use XML to code and decode data, and SOAP to transport it using open protocols.
The key advantage of web services is that they use technologies such as XML, HTTP, SOAP and WSDL in order to recognise, identify and communicate with these building blocks of functions or services in order to develop new services (ie, composite services) simply and easily.
For example, to increase the capacity of the ‘my conferencing service’ feature now requires a simple code change in the conferencing service building block.
The software developer can simply test that single building block, verify that it works and then launch it as an overall feature of the PBX.
Before SOA, that same software programmer would search for the specific line of code (out of millions of lines) that impacted that conference service, make the change and then follow the impact of the change in other services (ie, how it connected to other services).
Finally, those million lines of code would be tested, then run in the labs for a couple of days with the hope nothing would go wrong.
Enterprises that effectively align technology with business goals achieve competitive advantage. The adoption of SOA is an effective way to organise the discrete functions contained in enterprise applications into interoperable, standards-based services that can be combined and re-used quickly to meet business needs.
The IT world is already using SOA and web services to facilitate the integration of business processes and business applications. One strategy is to take real communications capabilities such as location, presence, proximity and identity, turn them into applications and make them available as enablers for customers’ business processes.
This adaptation and interaction between the communications capabilities and the business applications is made easier by the adoption of SOA-based software architectures and web services technologies within the communications domain.
Communications capabilities will be available as services that can be combined with IT-based services and re-used quickly to meet business needs.
By organising enterprise IT (with telecomm) around services instead of around applications, SOA improves business agility, productivity and speed (for both business and IT); allows IT and telecom to deliver services faster and align closer with business; allows the business to respond quicker and deliver the optimal user experience; and masks the underlying technical complexity of the IT, network and telecom environment.
This results in more rapid development and more reliable delivery of new and enhanced business services. Organisations that have adopted SOA environments within their IT domains are experiencing dramatic results, including increased revenues, increased customer satisfaction, lower operational costs and higher returns on their existing technology investments.
In summary, SOA is superior because it uses a modular, distributed, building block approach to create, develop and deliver new products and features faster, more simply and in a less resource-intensive way.
Levi Sutherland joined Nortel in 2008 to lead its unified communications alliance with Microsoft in Australia and New Zealand. Sutherland has more than 12 years’ IT industry experience - and more importantly very specialised unified communications channel experience - from his time at Express Data and Allied Telesyn.