External Versus Internal Web Services : A comparative study


  • Introduction
  • 

Web Services is a set of standards to support interoperability between variety of platforms. The simplest web service consists of a SOAP message for communication and a WSDL for web service description. Web services use XML extensively which are very well understood technology.

WSDL document defines services as collection of network endpoints or ports. There are abstract definition for operation and messages that will be used in services provided. WSDL also define what transport protocol will be used for a particular service endpoint through binding section. The last section is service Here the concrete service endpoint is defined. Endpoint address is tied to location. From WSDL the service input and output can be determined.

To use third party or external web service UDDI can be queried . UDDI (Universal Description discovery and integration) is a directory service where any web services carrier can publish their services. Many companies have implemented UDDI as private or public registry services. It is important for web services carrier to publish their web services on UDDI. The consumer can discover the services by checking the UDDI white pages (which have the carrier name, address etc) ,yellow pages ( which contains industry information ) and green pages ( which contains the technical information about the service).      

Each organization must analyze the risk involved in choosing between implementing their own web services versus consuming third party web services. The risk to be kept in consideration for instance will be accessibility, security ,migration and  implementation.

 

External Web Services

As the web service market continue to grow there are various web services available that can cater many business needs. Depending on functional objectives ,it may be more efficient to use exiting web services that fit the requirement precisely. External web services are easy to use. The only thing need to discover the service, read the technical document if it match the requirement and obtain access to WSDL document. Most organization have secure access to WSDL resources a contract agreement is needed to get the access. Depending on the consumer platform many tools are available to generate code from WSDL. External web services are a lot cheaper and more reliable since the carrier are specialized in the services they provide.

.  Internal Web Services

There are certain requirement that can’t be fulfilled by using external web services. There could be several motive for create internal web services. It could be security the organization can’t allow private data exchange with the third party. If the organization is too big they might have a lot of internal system that need to interact with each other internal web services is the solution in that case. Implementation of internal web services could be very costly creating a new process from scratch from the requirement need a comprehensive study of the requirement.

Evaluation Criteria:

    

.    Requirement and Guideline:

Utilizing external web services could be easy to utilize but since it is very generalized it may not meet organization requirement. External Web services are not specific to a specific customer problem but rather a common solution whereas Internal web services are created from starch conforming the requirement.

.     Implementation Cost:

Using external web services can reduce the cost dramatically. For a small organization it is not beneficial to create their own web services which don’t have many different platforms. The implementation risk will be very high for internal web services.

.    Time and Resources:

Internal web services takes more time compare to External web services Since many stuff need to be created from scratch. For external web services only implementation is needed.

.    Publishing

Internal software doesn’t need to published in any registry .They can be used anytime if you have access to WSDL(web service description language).For external web services publishing is important at any registry for instance UDDI( Universal Description discovery and integration).

.    Existing infrastructure

Internal web services are very useful for larger organization. Information can be gathered from variety of application written on different platforms. For small organization which don’t have that many system external web services is a good option.

.    Security

By using external web services there is potential security risk. Data misuse and reliance on third party with whom there may be no contractual agreement. Any sensitive data should not be exchanged between transaction when using external web services.

.    Change and Update

The problem with external web services is that if there is any new build or release. They need to inform all the consumer of the service regarding that change.

  • Conclusion
  • 

If an organization have general requirement and the information required is only for information gathering then external web services is the best option. If an organization have many different system and to transform it to a unified system in that case internal web service is required. By using third party web services there is security risk any sensitive data should not be exchanged when using external web services.

  • References
  • 

.Webservices architecture  http://www.w3.org/TR/ws-arch/

http://www.ibm.com/developerworks/webservices/library/ws-javaclient/index.html?S_TACT=105AGX04&S_CMP=ART

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: