Skip to main content

By clicking Submit, you agree to the developerWorks terms of use.

The first time you sign into developerWorks, a profile is created for you. Select information in your developerWorks profile is displayed to the public, but you may edit the information at any time. Your first name, last name (unless you choose to hide them), and display name will accompany the content that you post.

All information submitted is secure.

  • Close [x]

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerworks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

By clicking Submit, you agree to the developerWorks terms of use.

All information submitted is secure.

  • Close [x]

Web services improves employee benefits processing

Storebrand ASA improves efficiency through web services

Natalie Whitlock (CASAFLORA@aol.com), Freelance writer, Casaflora
Natalie Walker Whitlock is the owner of Casaflora Communications, a content service specializing in e-business and technology issues. She writes regularly for developerWorks, along with publications such as PC World, Smart Computing, Office.com, iVillage, Intraware, CBS Marketwatch, and The Tribune Syndicate. Contact her at Casaflora@aol.com.
Anton Fricko, European Programme Manager, EMC
Information for this article was provided by Anton (Tony) Fricko, European Programme Manager for jStart Emerging Technologies, Java Technology Centre, Winchester, England. You can reach him at anton_fricko@uk.ibm.com.
Rawn Shah (rawn@us.ibm.com), Editor, developerWorks
Rawn Shah provided additional content for this article. He is the editor for developerWorks Web services zone, and has also written over 250 articles for numerous technical magazines as well as several technical books over the years. He can be reached at rawn@us.ibm.com.

Summary:  Norwegian company Storebrand's use of web services is helping to improve efficiency of its employee benefits processing services to its clients by automating the system over the Internet.

Date:  01 Oct 2001
Level:  Introductory
Also available in:   Japanese

Activity:  3524 views
Comments:  

As Norway's largest financial services corporation, Storebrand ASA provides for the health and life insurance as well as banking and asset management needs of more than 280,000 clients throughout Norway. One of the toughest challenges facing this mammoth corporation has been tracking and managing employee records when operating the pension schemes of the 390,000 employees across approximately 6,500 Norwegian companies.

For years, this monumental synchronization task has been largely a manual process, occupying a dedicated staff of 50 to maintain the relevant database entries. The work involved includes the transmittal, verification, updating, and rechecking of data such as dates, salaries, addresses, contracts, account numbers, and other detailed information, and then entering it into Storebrand's centralized database. To do so, data from customers' multiple payroll systems was extracted and sent to Storebrand -- sometimes through the use of forms online but often manually and on paper. Authentication of the data is provided through a combination of Smartcards and certificates. This tedious process begged for an automated solution, yet previously has not been possible using existing Web standards. Therefore, Storebrand's sought to find a way to utilize open standards to electronically exchange documents with partners over the Internet.

Along with employee records synchronization, other business challenges facing Storebrand included linking key products and services together, such as between life insurance policies, pension funds and banking choices. They also sought a better way to offer their products to distributors and customers. Finally, Storebrand wanted to control costs by improving efficiencies both internally and with business partners by automating business processes to lower operating costs.

As a result, Storebrand expected to see improvement in operational efficiency by reassigning the majority of employees currently involved in manual data input and management, thereby potentially saving the company thousands of hours in labor costs annually.

The business and technical challenges

Storebrand ASA approached the IBM j(ump)Start Emerging Technologies UK team with their dilemma. After consulting with jStart Engagement Managers, Storebrand identified a two-prong objective:

  1. Modify existing internal business practice of manual employee data handling.
  2. Enable data to be captured from client payroll systems using Web Services, automatically perform calculations on that data, and then transfer the resulting information directly to its mainframe database.

On the jStart implementation side, the project objectives were identified as the following:

  • Create web services for Storebrand side (as Servlets).
  • Adapt Vendor Payroll Systems to web services.
  • Implement the necessary infrastructure.
  • Ensure security.
  • Connect existing Storebrand business partners.
  • Provide a proof of technology for web services.

Table 1: The Storebrand business challenge
  • Reduce operating costs (50 dedicated employees).
  • Automate database entries and maintenance.
  • Eliminate manual data entry through Web forms.
  • Introduce and use industry standards to connect to other businesses.
  • Keep the effort of electronically connecting another business below one working day.
  • Involve third party vendors.
  • Link key products and services.
  • Open new opportunities for growth.

Finding a common format

The first step in the process was to identify and agree upon a common data format. A common format was needed for customers to be able to present their data to Storebrand in a consistent way, and Storebrand applications needed to be able to extract the appropriate data and deposit it in their central database.

The majority of Storebrand customers and partners already have captured employee data electronically, and most have linked employee information to their own payroll systems. The information required to perform precise calculation of an employee's benefits originally was kept in each company's payroll system. That means, changes in earnings and other data had typically been extracted onto paper and such document faxed or mailed to Storebrand ASA for manual input.

In order to enable multiple payroll systems (and eventually support a target of all systems of the 6,500+ businesses served by Storebrand ASA), a standards-based solution had to be provided that could be implemented in multiple payroll systems running on different operating systems on a variety of hardware platforms.

Storebrand ASA identified for this purpose an industry-specific XML vocabulary -- XMLife from the US industry group ACORD. With a few additional tags (see the full modified DTD in the Resources section), Storebrand ASA was able to provide a standards-compliant means to exchange data between companies' payroll systems and their own benefits management system.

In selecting XMLife, the joint development team of Storebrand and jStart members took into consideration several factors. First, the format needed a generic solution for all partners, not a schema specific to a single vendor. Neither entity wanted to expend the time or money to develop their own standard. Since ACORD is the current industry standard for the insurance business (which represents approximately 44% of Storebrand's business), and XMLife was an acknowledged and suitable XML Schema for a common adoption, the duo was the obvious choice.

Using this solution, each payroll vendor extracts the necessary data and the data is converted into XMLife. A COM-component provided by the vendor generates a SOAP-request, and a web service at Storebrand receives the data and passes it on to IBM's MQSeries Integrator middleware.


Ideal solution: industry specific tModels

While identifying an XML vocabulary for data exchange between businesses is a great start, what the insurance industry needs is to standardize on web services. Web services definitions allow descriptions of specifics in the form of tModels. TModels are basically a free-format extension of the metadata, outlining the comprehensive specifications for a service. As such, the description through a tModel as defined by a WSDL document could contain a pointer to the used XML vocabulary, but also contain further descriptions like business rules, cost, or obligations related to the use of the specific service.

However, this would not be something Storebrand would want to do on their own. Ideally, the insurance industry would define this (that is, exchange of life insurance data) and other business transactions, standardized as web services and documented through tModels for the swift adoption by the entire industry.

For the case of Storebrand and its customers the jointly defined system fit the bill. After the common data format had been agreed to, the next step involved getting multiple disparate systems using different programming languages to communicate with one another. Many of Storebrand's customers use the Windows 2000 operating environment on Intel-based systems architecture, while Storebrand's central data repository operates on an IBM mainframe running a completely different operating environment.

The team began with a project definition workship in early January 2001, investigating the current infrastructure with the payroll department, the business partners, payroll vendor providers, and the technical teams. Development began in February and progressed over the course the next two months before completion of the initial system in early May. Storebrand in the meantime had to get contracts in place with its customers to use the new system, which took until August. The initial tests for the new system has two to three customers processing hundreds of employee benefits clients. Initially the system involves a direct relationship between Storebrand and its client companies. In the future, a third party serving as a payroll vendor provider may be involved as an intermediary. In such a case, the payroll vendor provider would act as an application service provider to the actual client companies with the individuals with benefits needs.

To get the divergent environments to share data, jStart suggested using a SOAP (Simple Object Access Protocol) connection to bridge the gap by connecting the Windows environments of most payroll applications with the WebSphere Java environment at Storebrand Life.

The team determined that three options were available:

  1. SOAP alone -- SOAP would provide the basic program-to-program "glue" that enables applications to bind together and enter into peer-to-peer communications.
  2. SOAP + WSDL definitions -- WSDL would provide a standardized description of the service, but would not offer full repository lookup. Once the application service has been described, it would be published with a service broker that helps make the application/service known to Web "requestors" (in this case, new Storebrand distributors).
  3. SOAP + WSDL + UDDI (including service description in registry) -- UDDI is also a framework for web services integration. It contains standards-based specifications to describe the Storebrand products and services and allow discovery in a global registry architecture.

Storebrand initially opted to utilize a combination of all three technologies. To do this, the team created a COM object that takes the XML document as input and sends it to the Storebrand web service, by transmitting it over the Internet via the HTTP protocol. The customer sites, in this case, primarily used Microsoft Windows NT or 2000 systems to perform their data entry for the benefits processing. Thus, the team decided on building COM interfaces in VB for the client-side and used Microsoft's SOAP toolkit for the interface. On Storebrand's server-side, the team converted an existing Java application to a service by simply using the Wizard provided in the IBM XML & Web Services Development Environment. This web services-enabled application receives the XML document and transforms the data for the verification and update process required to feed the DB2 central database of Storebrand. Data transport and manipulation at the backend is managed with MQSeries Integrator. Figure 1 details the conceptual architecture of the project system.


Figure 1. The Storebrand project architecture
Figure 1. The Storebrand project architecture

Table 2 shows the planned deliverables and the individual software components used in the project.


Table 2: Planned deliverables for Storebrand project
  • Define and build the service and its interfaces.
    • build Java classes, C++, VB, COM component
  • Register the service with the SOAP router.
    • entered via Webform at the Apache SOAP administrator GUI
  • Write a client to exercise the service.
    • Build a Java program to make a Apache SOAP API call
      • create the SOAP envelope
      • send HTTP request
      • rpc router picks up the deployment descriptor for the requested services
      • creates a Java object and pass parameter into the correct method
      • produces a response: either 'response object' or shows fault (or other expected) result
  • Define the Web Service Define and its interfaces.
    • create a deployment descriptor file (or use Webform for definition)
    • invoke Apache utility to deploy to RPC router
    • execute the client from a JVM
    • invoke SOAP APIs
    • service is now known by the port of the RPC Router, or the URL of the SOAP listener (http://localhost:8080/soap/servlet/rpcrouter)
  • Develop the client code for encapsulating the XML file as a COM object and invoke SOAP communication to the Storebrand WebSphere Java environment.
  • Connect to the UDDI Registry.
    • register business (the "service provider") with UDDI
  • Call the service from a client using SOAP over HTTP either:
    • directly using the basic SOAP interface ignoring the UDDI registration
    • by looking up the service in UDDI and binding to it through WSDL

A project of this scale using brand-new technology is not without complications. At that time in early 2001, the team had no idea on how to implement the lacking security of web services. Storebrand's requirement was to have the same level of security as the current online system they offered to their customer using a form on a Web page rather than sending a fax or paper record (that also often required the customer to re-enter all the data onto the Web form). The team ended up using the Secure HTTP and SSL protocols, as is commonly used on many business Web sites. However, one initial problem was that the Microsoft SOAP toolkit for the client-end development did not support SSL at the time. Thus they had to use direct calls to the Microsoft Wininet.dll library to initiate the call to the server-end service. An example of these Visual Basic calls is given in the Resources section. They would then make the SOAP calls (see Resources.)

A second problem was handling sequential messages in an idempotent fashion, such that they are executed once and only once. This is a general lack in web services today. To avoid this classing problem which can cause a service to reprocess multiple instances of the same message, the team added a uniquely generated record number in the application software above the services level.

Additionally, there was no way to identify a client-side context to the server. As part of the implemented security system, the team had to include a certificate as part of the SOAP message. To do this, they used the pluggable provider interface available in the Apache SOAP implementation.

Finally, at the time of the project, the team faced incompatible WSDL implementations in the Microsoft and IBM toolkits. This is one of the factors that led them to not use standard WSDL in the deployment system and instead opt for their own document description format. Once the project moves into a broader context and brings in more companies (as well as more client systems), they plan to evolve towards a single compatible WSDL implementation. An example of the document descriptor they used and an example stub on the server end that matches the descriptor is given in the Resources section.

Once the calls through the Wininet library have established a secure connection to the server end, the Visual Basic client application would make the appropriate SOAP calls to send data. This would theoretically access a service through a description in a WSDL file. However, as noted, it uses the customer deployment descriptor. A set of example files that illustrate the calls to Wininet, Microsoft SOAP toolkit, the theoretical WSDL file, the actual customer deployment descriptor, and a server stub for this particular example is available in the Resources section.

For users of the newly adapted payroll systems, there were several consequences. First, the installation time for the client-side software at each new client company is less than a day. All that is really needed is to make the provided DLL files available to the payroll application, assuming that the client software supports standardized XML. During execution, the operator does not need to do anything different in their client data entry to establish the SOAP connection over the Internet and transmit the necessary data to Storebrand. Wrapping the XML as a COM object also eliminates a potential security risk, which would exist if, during a failure in execution, the XML file would remain accessible as a document on the file system of the client machine. This is particularly undesirable, as the data contains salary and other personnel related information, which needs to be maintained with the respective obligations for such data.

Key products and technologies used in the Storebrand project

Server Side:

  • WebSphere 3.5.2
  • VisualAge for Java 3.5
  • IBM MQSeries Integrator 2
  • IBM XML Parser
  • IBM WSDE v1.1 [Version:R0.5 Alpha Build:0.033] 20/12/2000 from Alphaworks
  • IBM WSTK v2.2 16/02/2001 from Alphaworks
  • Web Services ToolKit (including the toolkit itself, a UDDI implementation and various demos)
  • IBM DB2 UDB PE v7.1 (required for local UDDI)
  • several XML tools (supplied with WSDE)
  • HTTP sniffer (supplied with WSTK)
  • Schema Beans

Client side:

  • Microsoft SOAP Toolkit v2.2
  • Visual Basic 6
  • XMLSPYeditor

See Resources for more information.


A successful solution

The project has been in operation for some months now but over time will evolve to accommodate the more complex situation of all Storebrand's clients in this area. This initial system works with one of the leading benefits processing software package in wide use by Storebrand's client companies from the Scandinavian firm, Tietoenator. However, to get wide adoption across Storebrand's 6500+ customers, they anticipate that they will have at least 30 different popular benefits-processing-packages to deal with. This involves quite a few different platforms on the client side and thus illustrates the real benefit of a system that is truly platform- and language-independent.

Storebrand expects the combination of being able to communicate easily with distributors and clients who are using different systems architectures (using SOAP), being able to make its services known to the industry (using UDDI), and being able to publish details about how to work with Storebrand applications will result in finding new distributors for its financial services, banking, and insurance products, as well as to potentially assimilate offerings of some of its business partners into the Storebrand application portfolio.

Storebrand also expects that web services will be utilized in other business areas within Storebrand Bank and Storebrand Funds business units to reduce internal operating costs there as well.

With Storebrand's web services solution, data maintenance is much more efficient, existing customers and partners are satisfied, and the company considers it's new abilities good for presales. By making use of XML to capture and present data, by modifying business processes between Storebrand and its customers, and by using the SOAP Web standard for program-to-program communications, the company will be able to save thousands of hours in manual information capture and input time -- thus reducing operating costs which pass directly to the company's bottom line.


Resources

About the authors

Natalie Walker Whitlock is the owner of Casaflora Communications, a content service specializing in e-business and technology issues. She writes regularly for developerWorks, along with publications such as PC World, Smart Computing, Office.com, iVillage, Intraware, CBS Marketwatch, and The Tribune Syndicate. Contact her at Casaflora@aol.com.

Information for this article was provided by Anton (Tony) Fricko, European Programme Manager for jStart Emerging Technologies, Java Technology Centre, Winchester, England. You can reach him at anton_fricko@uk.ibm.com.

Rawn Shah provided additional content for this article. He is the editor for developerWorks Web services zone, and has also written over 250 articles for numerous technical magazines as well as several technical books over the years. He can be reached at rawn@us.ibm.com.

Report abuse help

Report abuse

Thank you. This entry has been flagged for moderator attention.


Report abuse help

Report abuse

Report abuse submission failed. Please try again later.


developerWorks: Sign in


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Select information in your developerWorks profile is displayed to the public, but you may edit the information at any time. Your first name, last name (unless you choose to hide them), and display name will accompany the content that you post.

Choose your display name

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


Rate this article

Comments

Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=SOA and web services
ArticleID=11615
ArticleTitle=Web services improves employee benefits processing
publish-date=10012001
author1-email=CASAFLORA@aol.com
author1-email-cc=
author2-email=
author2-email-cc=
author3-email=rawn@us.ibm.com
author3-email-cc=

Tags

Help
Use the search field to find all types of content in My developerWorks with that tag.

Use the slider bar to see more or fewer tags.

For articles in technology zones (such as Java technology, Linux, Open source, XML), Popular tags shows the top tags for all technology zones. For articles in product zones (such as Info Mgmt, Rational, WebSphere), Popular tags shows the top tags for just that product zone.

For articles in technology zones (such as Java technology, Linux, Open source, XML), My tags shows your tags for all technology zones. For articles in product zones (such as Info Mgmt, Rational, WebSphere), My tags shows your tags for just that product zone.

Use the search field to find all types of content in My developerWorks with that tag. Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere). My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Special offers