SDA India is an online resource for Software, Development,IT, Architecture, Open Source, Mobile, Security, Databases, Delphi, C, OS, Asp, .Net, Php, Xml, Java

Enterprise solutions Enterprise IT Architecture Information Security Wireless And Mobility Hardware & Networking Data & Storage

SOA in Lotus Connections


Current Issue
Mohamed Khiasudeen is a Consultant at Wipro Technologies. He has over 15 years of experience in IT. He has worked on architecting collaboration, groupware and messaging solutions involving IBM products and technologies.


New technologies such as blogging, Facebook, MySpace, YouTube and Flicker were emerged during the last couple of years. These technologies have immense adoption in the consumer market which emerged as social software technologies and has become integral parts of work environment. I am going to discuss Lotus Connections - industry's first platform for business-grade social computing which was built on Service Oriented Architecture.

Lotus Connections

Following are vital in the current competitive and global environment which was facilitated by Lotus Connections

§ Collecting and sharing information through professional networks
§ Dashboard view of projects
§ Connects users to like-minded communities

Lotus Connections gives a solution as an alternative for the requirement of multiple different social software applications by providing business a single roadmap for building professional communities.

Five Web 2.0 based services - Activities, Communities, Dogear, Profiles, and Blogs were included in Lotus Connections. This enables and helps business community to communicate, connect and develop a new relationship based on their individual needs.

Service Oriented Architecture – Lotus Connections

Service Oriented Architecture (SOA) in Lotus Connections was confirmed by the given below diagram. Set of EAR files were installed on a web server and that store data in a relational database. HTTP requests were used entirely and it is a standard means of accessing via a web browser. Services in Lotus Connections are standalone web applications which can be accessed not only via browser but also through feed readers. Feed reader data is reverse proxy cacheable, so the application does not have to regenerate the feed every time the client polls. The proxy server stores the page, asks if there are any changes, and provides a timely response.



Above diagram shows the Lotus Connections features logical architecture and has the following:

§ Clients used to access the features
§ HTTP transport and proxy caches
§ J2EE container that hosts and controls access to all Lotus Connections features and data
§ Backend systems for use by those features for authentication, data storage, and integration with external messaging systems

Features to broader types of clients over standard Web ports through an API based on REST protocol and Atom standard was provided by Lotus Connections.

Even though several means of accessing the features are provided natively, such as browser access and application plug-ins for IBM Lotus Sametime V7.5 or IBM Lotus Notes V8, the API is designed to allow customers to create, update, query, and manage Lotus Connections information from their own custom applications. Calls to the features are compatible with mostly available standard web and proxy servers because Lotus Connections REST API is similar in structure to HTTP and is based on REST protocol. Various methods like POST, PUT and DELETE are used for the information to be entered and managing via Lotus Connections API with the service data encapsulated in an HTML form or an XML Atom document. GET method is used to retrieve information and rendered as a HTML or an XML Atom document depending on the needs to the requesting client.

Lotus Connections provides the following four additional community utility modules apart from the five standard functional features

§ JMX administration
For configuring and managing the Lotus Connections environment. Web Sphere wsadmin command is used to manage most administrative functions and others are via web interface

§ Navigation header
To make awareness of one another in web navigation for the users.

§ Person card
For displaying business card information and details when a basic profile information is requested from within each of the features

§ User directory
Directory interface used by Lotus Connections for validation – authentication, authorization and query and this depends of other backend services

§ LDAP
Used for standard validation services (authentication and authorization) and used as a primary data source for a person information used by the Profiles

§ Relational database
Is used to store tables and databases that is required by the Lotus Connections features and each features has its own data store

§ Data integration (IBM Tivoli Directory Integrator)
Used to integrated LDAP directory and Lotus Connections for extracting person data from enterprise data and pushing that data in profile feature database

§ File system
For storing Service profile data like file attachments uploaded to blogs or activities and service indexes. Domino database can be used for file attachments and large objects in Activities

§ Outbound SMTP
Existing organization’s messaging infrastructure is used by Lotus Connections for the message transmits – notification messages using industry standard SMTP protocol

Lotus Connections operational architecture

Above diagram shows the Lotus Connections with primary deployment components. The components shown are the minimum required components. In some deployments same physical can used for locating some components for consolidation any required. As a common deployment practice HTTP server was installed on a separated server but it may be required to install on same server which is running IBM Web Sphere Applications server for a development or test bed setup.



Host platform as IBM Web Sphere Application server v6.1 in Windows or Linux platform is required for Lotus Connections. Single or multiple functional features can be deployed in multiple separate servers or on the same physical instance. Also feature can be deployed across geographically scattered physical servers in a cluster environment for the high availability.

Current release of Lotus Connections supports IBM Tivoli Directory Server V6.1 and Microsoft Active Directory 2003. Future release will support other LDAP directories, such as IBM Lotus Domino and Sun Java System.

IBM DB2 V9.1 or Oracle 10g can be used to host Lotus Connections database. Each service data is stored in a separate database in DB2. Profiles and Activities data are stored in separate database instances in Oracle 10g, while Blogs, Communities, and Dogear data are stored in separate tables that share a single database instance. Tivoli Directory Integrator v6.1 used to populate profiles database collocated within the database server.

Deployment PoC Setup

Below diagram shows PoC minimal deployment architecture for Lotus Connections which can be used for a test system/development bed.



In this topology:

HTTP server is co-deployed in IBM Web Sphere Application server so that clients can use SSL and HTTP channels to directly access Lotus Connections

LDAP/LDAPS protocol is used by Lotus Connections/IBM WAS server to bind the directory server and thin JDBC connection is used for database server access

Database server holds Tivoli Directory Integrator and uses LDAP/LDAPS to connect to directory server and to populate profiles database with user data

Commonly Tivoli Directory Integrator connection may be a one-way feed with periodic updates as an when users are added/updated/removed from the directory

The basic approach is to leave Web Sphere Application server console in the default server1 application in case of stand-alone Web Sphere Application server setup

Lotus Connections Integration

Lotus Connections has closer integration with Web Sphere Portal. Core portal services that aggregate application and content, enabling them to be delivered as role-based applications or portlets are provided by Web Sphere Portal. Web Sphere Portal supports all the five Lotus Connections services - Activities, Communities, Dogear, Profiles, and Blogs. Switching between the Lotus Connections services are facilitated using multi-service Portlet, allowing the data to be surfaced through messaging, collaboration, business applications. More than one instance of Lotus Connections multi-service portlet can be used on a Web Sphere Portal page and each portlet can be customized for the specific requirements, for example default Activities to view ToDo’s or Dogear to view watchlist. Frond administrative feature facilitates the locking of Lotus Connections portlet with an administrative settings so that switching of portlet between services or views are blocked.

Feed readers and Mashups in Lotus Connections

Lotus Connections is built on service oriented architecture, pen standards and extensible with a REST-style HTTP-based API and support for ATOM feeds, we can surface the content in favorite feed reader. ATOM-based URL’s can be generated in Lotus Connections which allows a broader category of software programs to check for the updates via feeds. These feeds can then be downloaded by Web sites that syndicate content from the feed, or by feed reader programs that allow Internet users to subscribe to feeds and view their content. Lotus Connections give organizations to mash up their existing applications and web sites by extensibility.

  Related Links
  http://www.eclipse.org/
  http://www.ibm.com/
  http://www.ibm.com/
  http://www.notes.net/
  http://www.lotus.com/
  http://developers.sun.com/ajax/documentation/
Post a Comment
Name
Title
Comment
Menu
News Desk
Feature Stories
Articles
Interviews
Case Studies
White Paper
Analyst Corner
Planet SDA-India
SDA Events
INDIA IT Event Calender
IT Jobs
Advertise