Selecting Services for Web Applications:
The Open Hypermedia Case
Nikos Karousos, Manolis Tzagarakis, Nicolas Koumbarou
Dept. of Computer Engineering & Informatics
University of Patras &
Computer Technology Institute
HT04: International Workshop on Web Engineering
Popularity of the Web
The need for effective information
management systems proportionally increases.
Web development, requires services like
information organization, authoring, versioning,
annotation, sophisticated backtracking, information
restructuring and similar services.
The deployment of a variety of
hypermedia functionality into web
projects will be valuable.
08/06/2010 HT04: International Workshop on Web Engineering 2
Web engineers have already paid great attention
to the web application development procedure.
The Open Hypermedia Community has not yet:
A standardized a methodology.
A set of tools that can provide web developers to a quick
and simple way to include Hypermedia functionality into
their web applications
Moreover, OHSs have not reached a satisfactory
level of publicity and the Hypermedia service
discovery issue still remains unaddressed
08/06/2010 HT04: International Workshop on Web Engineering 3
This paper proposes a framework for enabling
web developers to use hypermedia services into
We study the design of both a Hypermedia Service
Discovery Mechanism and a set of tools, in order to
create a web developer support framework.
We address the web developers’ needs and
requirements concerning searching, selecting and
using hypermedia services.
A, B, C Levels of Work: Focus on C Level.
08/06/2010 HT04: International Workshop on Web Engineering 4
Service Oriented Web
The network-intensive nature of web applications
means that these applications rely heavily on services
that provide the required functionalities.
The creation of a Web application usually demands the
remote usage, or the integration of foreign services
into the specified Web Project.
Researchers in the area of WE have already
approached this requirement from multiple scientific
sides, including system architecture, productivity,
economics, security and performance
08/06/2010 HT04: International Workshop on Web Engineering 5
Service Oriented Web
From the developer’s perspective: When a developer
intends to use foreign services to his
a) searches for the appropriate service through the
b) understands the exported interface and the way the
c) implements the required communication protocol into
the application in order to be able to request
d) encapsulates the adopted service as a set of
functions that can be used by his application.
08/06/2010 HT04: International Workshop on Web Engineering 6
1. A methodology for easy discovering services should be
2. The service should carry self-descriptive meta-information.
3. Trust, security & reliability
4. The existence of a driver that makes the usage of the
service into the application, as simple as possible.
5. The simplicity of the functions (of the service).
6. Low maintenance cost, since a simple change of a
complicated function will require large amount of changes in
the integrated application.
a web developer needs to have a support framework
which will provide easy-to-find, easy-to-understand
and easy-to-use 3rd party services into his
08/06/2010 HT04: International Workshop on Web Engineering 7
Open Hypermedia Systems and the
Service oriented approach
Component Based Open Hypermedia Systems (CB-OHSs) &
service oriented systems, Multiple Open Services project,
Widely adopted concept of Structural Computing.
Web Integration efforts
Microcosm, with the Distributed Link Service (DLS), DHM,
with DHM/WWW, Chimera etc.
Web service aproach
Babylon Web Service, SoFAR
08/06/2010 HT04: International Workshop on Web Engineering 8
Why hypermedia systems are not used
efficiently in the web development?
1. Low publicity
2. High complexity of using a hypermedia system
3. A web developer who wants to use only one hypermedia service is
indebted to get and have access (and to pay) for all the OHS
usability. That, is ought in high connectedness between all
components of the Hypermedia system
4. Web integrations are usually ad-hoc implementations
5. There aren’t any established methodologies or mechanisms for
finding services in order to help web developers locating and
using Hypermedia services into their applications.
The Hypermedia community creates diverse services
and the web community benefits from these
services and the structuring facilities offered by
08/06/2010 HT04: International Workshop on Web Engineering 9
Service Discovery: Definition
The procedure of locating (inside or outside the
network) the sources where information about
servers can be found, querying these sources for
available servers and matching the providing
services of these servers with the user needs.
Service discovery is completed when the
requester is provided with the required server
08/06/2010 HT04: International Workshop on Web Engineering 10
Service Discovery: Related Work
Server Information Management (SIM).
Hypermedia Resource Descriptors (HRD).
Web Services: Universal Description, Discovery
and Integration of Web Services – (UDDI)
CORBA: internal naming and discovery
Open Hypermedia Protocol (OHP) contains
aspects of functionality, that can help a client
to discover all the services of a specified
08/06/2010 HT04: International Workshop on Web Engineering 11
Service Discovery: Architecture
Centralized Service Discovery
Fully dependent on one server
Distributed Service Discovery
Complexity, security, latency of response time, etc.
Maintenance of information distributed from a
server directory to other directories.
P2P Service Discovery
Hybrid approach of Service Discovery
08/06/2010 HT04: International Workshop on Web Engineering 12
Service Discovery: Architecture
Choosing the Appropriate Hypermedia Service
Open Hypermedia Systems do not consist of a
large set of structure/link servers.
No hypermedia service discovery mechanism
has yet been adopted.
Simple Centralized Hypermedia Service Discovery
This mechanism has to be extendable in order to be able to
support a future transformation to a distributed or a
hybrid service discovery system
08/06/2010 HT04: International Workshop on Web Engineering 13
Introspection Capabilities of OHSs
A hypermedia system should be aware of all
provided hypermedia services and how those can
A Hypermedia Service Description Language (HSDL)
should be defined.
This language can be based on emerging standardized
markup languages, such as the Web Service Description
Language (WSDL) and the Resource Description
Framework (RDF), or it can be a new XML-based ad-
08/06/2010 HT04: International Workshop on Web Engineering 14
Introspection Capabilities of OHSs
HSDL should be structured in a standard way and should include the
Service General Information. Service name, Service
provider, Service scope, Structural specific information such
as the Hypermedia domain (e.g. spatial) etc.
Service Location and Access Information. Host and Port (or
other location information), Communication Protocol(s)
between client and Hypermedia server.
Service Interface Information. Available Operations:
Functions that can be called remotely from a client and can
return a result. Data types that are passed or returned as
Service Behavior Information. Behavior of the Hypermedia
server, after each request, Dependences between the server
Service Comments. By the developer
08/06/2010 HT04: International Workshop on Web Engineering 15
Hypermedia Service Registry
Hypermedia Owner InformationRegistry
Owner Name, Address, URL, etc.
OHS Name, OHS Description
OHS Access Point
Service Name, Service Description
Required Communication Protocol
Service Status - Service Location - HSDL Location
Registry Unique Name / ID
Register Date, Duration, Description, etc.
08/06/2010 HT04: International Workshop on Web Engineering 16
Hypermedia Service Query
A developer, who wants to use a hypermedia service
into his application, must be able to search and
locate services using a service query language.
This language should be based on a common used communication
protocol and must be able to be used by both humans and
Then, the hypermedia directory system will be a service by itself
that will respond to searching requests in a standard common
The query result could be a list of hypermedia service registries
that matches all the requested criteria.
08/06/2010 HT04: International Workshop on Web Engineering 17
Hypermedia Service Discovery
Aiming to the growing usage of the OHSs, the
discovery mechanism has to be available and
easy to use by both humans and computers.
One or more hypermedia directory web interfaces should be
Visual representation tools. - Service classification. - Tree-views
with multiple perspectives.
08/06/2010 HT04: International Workshop on Web Engineering 18
Discovering Hypermedia services:
a step-by-step example
Web Developer Service Communication
(Getting HSDL File) 1. Requesting
Services HS Directory Registration
3. Results in XML
Hypermedia Service Discovery Mechanism
08/06/2010 HT04: International Workshop on Web Engineering 19
Hypermedia Services Exploring Tools
Giving an OHS access point to the developers, an application that
allows the visual exploration of available services of a particular
hypermedia system should be available.
A more complicated tool, which allows the navigation through all
the available services of the hypermedia systems should be
Facilitates the understanding of the entire hypermedia
08/06/2010 HT04: International Workshop on Web Engineering 20
Communication Protocol Awareness
The developer should not worry about the communication protocol that
has to be used in order to communicate with a specific hypermedia
approaches such as the Simple Object Access Protocol (SOAP)
should be adopted, or
the ability of dynamically locating and loading protocols – at run
time -should be investigated.
When the discovery mechanism returns a list of matched registry records,
for each selected service that uses a well-known communication
protocol, the required protocol access information will also be
08/06/2010 HT04: International Workshop on Web Engineering 21
Automatic Client Skeleton Creation
Tools for automatic generation of the client communication layer should
Some significant propositions have been made in this issue.
In “Construct”, the developer is able to use tools for the automatic
creation of skeleton code from a UML diagram or an IDL
specification of a service.
If a standardized hypermedia service description language was
available then some more sophisticated and effective automatic
client creation tools could be created.
08/06/2010 HT04: International Workshop on Web Engineering 22
Below are presented the future steps that must be
followed in order to achieve the target goal:
Definition of the service registry record.
Implementation of the first registry directory.
Web – based directory interface creation.
Definition of the HSDL.
Applying Web Service in association with SOAP.
08/06/2010 HT04: International Workshop on Web Engineering 23
Hypermedia community can help and
offer services that emerge as a result
from system and domain research.
Rethinking the design of Hypermedia
systems from the developer’s perspective
can both help the the web development
community and the growth of the OHSs’
08/06/2010 HT04: International Workshop on Web Engineering 24
08/06/2010 HT04: International Workshop on Web Engineering 25