with Tags: soa X
Service classification is an important step in realizing and creating an effective SOA implementation. .A Good classification system can simplify the task for finding services, promoting re usability and service composition. It is easier to search for services using query like - "find all services serving home loan". In the above query, home loan is a entity, which is part of your classification system.
Classifying the services can describe the capability of services -like "the transaction time for the service ", " security requirements for the service" and other service capabilities , based on your requirements.
In order to create entity and relationships, you can use Ontology Web language and than create taxonomies. Taxonomy is a system of hierarchical types that can be used to describe entities. The types are expressed in a class and subclass system. For instance in the above example - Loan is type of entity, which has sub classes Home Loan and Auto Loan.
The classification system would be typically created in your Service Registry. Service Registry like IBM WebSphere Service Registry and Repository provides you to ability to create a classification system for services either by loading an OWL file or using the user interface which abstracts out the OWL format from the user.
For creating OWL files you can use - IBM Integrated Ontology Development Toolkit, which provides a tooling environment to create OWL or an open source toolkit like Protege.
Service classification is an important concept to realize SOA. In order to classify services, ontology can play a vital role.
To properly model and manage a service-oriented architecture (SOA), enterprise architects must maintain active representations of the services available to the enterprise. Specifically, to discover and organize their services, the architects must use best practices that model and assemble services using metadata, encapsulate business logic in metadata for dynamic binding, and manage with metadata. Ontologies provide a very powerful and flexible way to aggregate, visualize, and normalize this service metadata layer.
Ontology is a network of concepts, relationships, and constraints that provide context for data and information as well as processes. Ontologies enhance service discovery, modeling, assembly, mediation, and semantic interoperability. They improve the way people browse, explore, and interact with complex metadata information spaces. A business ontology is a formal specification of business concepts and their interrelationships that facilitates machine reasoning and inference. A business ontology ties systems together using metadata, much as a database ties together discrete pieces of data. This abstraction provides agility and flexibility, as interfaces can be changed and new resources and subscribers added easily, even while the system is running.
Semantics are the future of service-oriented integration. Semantic technologies provide an abstraction layer above existing IT technologies, one that enables the bridging and interconnection of data, content, and processes across business and IT silos. Finally, from the human interaction perspective, semantic technologies add a new level of semantic portals that provide far more intelligent, relevant, and contextually aware interactions than those available with the traditional point-to-point integration approach for portal-based information delivery.
For SOA and dynamic BPM applications, it a key requirement for making process agile and change based on business contexts without much latency and using semantic web concepts as descried above can aid in realizing effective dynamic BPM solutions.