Architecting Collaborative Applications (Part I of II)

Untitled Document

In rocky economic times, a successful collaboration strategy can unlock employee potential, reduce costs and help achieve true customer intimacy. Companies can motivate their workers, make them more effective, improve leadership, and foster innovation. Innovative application models are emerging to incorporate collaboration into core business processes, which will encourage greater teamwork and set productivity free throughout the increasingly borderless enterprise. But this shift requires an architectural approach that can support this evolution.

Beyond technical capabilities, the next-generation application architecture must accommodate new ways of working, support collaboration across end-to-end business processes, extend current practices of service-oriented architecture (SOA) and Web 2.0 to new environments, and take advantage of new technology opportunities.

But the last thing enterprise architects -- or users -- want is new technology and process silos. Both enterprise architects and empowered users want tools that are already integrated or that can be easily integrated into applications, business flows and enterprise architecture. Avoiding new silos represents a significant challenge to enterprise architects. But using the network as a platform helps enable a future-proof, open collaboration architecture for the enterprise. The network can provide key services that contribute to the security, performance and scalability of collaborative applications.

Collaboration as the platform for business

What fundamental issue must an improved collaboration architecture solve? Many of us experience this issue every day in our work lives.

At critical junctures, a business process frequently requires key team members to collaborate. They need to access, process and transform information from a variety of sources to advance the business process. Application silos, data silos, technology silos and collaboration silos hamper productivity, slow down the business process, and invite error. People engage in "swivel-chair process integration," mediating between silos and trying to convert information between them by using cut-and-paste operations or relying on memory. A simple example is dialing the wrong number while reading it from a computer screen.

As companies expand their business processes throughout a borderless enterprise, the complexity escalates. Imagine a network of business partners trying to institute a common set of business processes and achieve a common goal. Each partner company has its own internal application and data infrastructures, to which it is hesitant to provide open access. The result is partners emailing documents back and forth or talking on the phone if they can actually connect in real time. At the same time, each partner must still negotiate internal siloed communication, application and data architectures.

Despite a plethora of available communication tools -- desktop and mobile phones, instant messaging, email -- it is still an everyday occurrence for key team members to fail to connect at critical junctures in the business process. Teams work overtime to complete a customer proposal, but if the one person required for ultimate approval isn't reachable, the entire process comes to an abrupt halt until that person can be located.

Enterprise architects, more than anyone else, are keenly aware of this problem at a scale far beyond the examples presented here. But how do EAs architect collaboration-enabled business processes that help break down silos?

One could say that collaboration as a whole is a workgroup dashboard that is designed to optimally support a particular business process. As shown in Figure 1, it could be referred to as a shared presentation layer that allows every user instant access to other users and to relevant data and that allows the team to drive the business process forward wherever they are, whenever they can.

Far beyond chat rooms and instant messaging, the definition of enterprise-class collaboration includes composite applications as a whole: things like service-oriented architecture (SOA), enterprise-class mashups, and task-specific widgets that support the activity of the workgroup. Team members get a shared dashboard with all the up-to-date information they need, which allows them to be fully synched up anytime and anywhere.

Figure 1: Collaboration Dashboard (click here to enlarge image)

Network-based services in collaboration architecture

Key to this collaboration nirvana is the network. Today's network has the unique ability to enrich the collaboration-enabled business process with services that can further accelerate the business process. It can accurately and reliably pinpoint the location of users and, for example, dynamically link presence preferences to locations. The network can provide the type of security these composite applications require as infrastructures become more open by necessity, while ensuring application performance for remote users. As enterprises aggressively integrate business video into their communications portfolio, the network must ensure adequate network resources to establish and maintain the end-to-end session and protect sensitive content.

By considering and deploying network-based services, EAs can leverage communication and collaboration, security, application delivery, transport, management and virtualization services that can all enrich or enable the business process. Using this approach, EAs can use collaboration-enabled business processes to align technology with business layers, making IT extremely relevant to the business and exploiting network-based services to enable and enrich emerging composite applications.

But where can an EA start building a truly collaborative architecture?

Classifying communications

We can analyze collaboration along the dimensions of time and space, where the cooperating parties may or may not be in the same time and place when trying to collaborate.

  • Same Time, Same Place (Synchronous): traditional face-to-face communications such as in-person meetings
  • Same Time, Different Place (Synchronous Distributed): mostly audio conference calls but, increasingly, video conferencing, webcasts, desktop application sharing, virtual presence and instant messaging
  • Same Place, Different Time (Asynchronous): usually email and voicemail, with discussion forums and wikis rapidly growing in popularity
  • Different Place, Different Time (Asynchronous Distributed): traditionally email and voicemail, which provide limited benefit; this model lends itself well to discussion forums as well as social networking and collaborative workspace applications

Figure 2: Communications Classifications (click here to enlarge image)

As enterprises become increasingly dispersed across the global marketplace, trends are emerging that promise to overcome many of the challenges associated with these variations in time and place. Virtual-presence systems, such as Cisco TelePresence, extend face-to-face meeting quality to any "same time" meeting; asynchronous tools are converging, whether local or distributed; and mashups will evolve to create an egalitarian collaboration field across time and distance.

Existing on-premises technologies provide a very robust framework within the traditional enterprise boundary. However, as enterprises extend their reach to include partners, customers and mobile workers into a powerful collaborative environment, they need to embrace an architecture that will extend those technologies throughout the borderless enterprise.

Architects need to combine the best of both worlds -- the on-premises and Web 2.0 on-demand (software as a service, or SaaS) model. But is this possible? The natural response is to implement separate technology solutions: one inside the enterprise and another outside. This simply perpetuates the tradition of technology stovepipes and a belief that these are mutually exclusive environments. It also stands in the way of enterprises developing a truly effective collaboration-enabled architecture.

Linking these worlds is the one ubiquitous technology that touches everything throughout even the most distributed enterprise: the network. Not only does the network support both on-premises and on-demand models wherever needed to best support business goals, it has the ability to mediate between the two and makes the transition seamless to users. Although transport and quality of service are critical for new productivity boosters like Cisco TelePresence, network-based policy and resource utilization (virtualization) are vital to overcoming the chasm between on-premises and on-demand and allowing enterprises to derive maximum benefit from both models.

The network is positioned to overcome today's most difficult collaboration challenges such as policy management and dynamic collaboration resource management. Because it is ubiquitous throughout the enterprise, the network is the ideal place for enforcing policy, separating policy decisions from applications, providing reliable location information, and enabling reuse of these network-based services by all applications. Complete visibility into resource use (including availability, load and location) streamlines management and enables mediation between cloud and on-premises resources.

Part II of this article coming soon!

About the Author

Paul Liesenberg is an Enterprise Architecture and Technology Manager for Cisco where he develops methodologies that optimally align next-generation infrastructures and overarching business processes. Prior to Cisco, Liesenberg was VP of Strategic Marketing for ZettaCom and Bivio Networks, orchestrating product and partnership strategies. Earlier, he was with Cisco through the acquisition of StrataCom, and was previously with Nortel's Data Networks Division and Siemens' Public Networks' R&D division. Liesenberg holds two patents in the area of VoIP, and an M.Sc. from TUM (Technische Universitaet Muenchen).

More by Paul Liesenberg