In the case of web service technology as a Web based
implementation of Service Computing, each service
interface is described by means of a WSDL or WADL
document.
Service Domains: The stereotype “Service
Domains “ represents some logical or physical
boundary of the system. In fact, the specificity of
SOA is the integration of application both intra an
inter-enterprises, so it is necessary to distinguish
between the different collaborating domains.
ServiceCollaboration: The stereotype
“ServiceCollaboration” allows the specification of a
set of atomic services in order to create more complex
added value service in a high level of abstraction.
3 DLS CASE STUDY:
ABSTRACTION LAYERS
Our case study is a simplified version of a DLS
(Distance Learning System). Our objective is to use
this simplified version in order to validate and illustrate
our approach. The DLS interacts mainly with three
actors: Students, Teachers and Administrators. For
each actor, the DLS must provide only the
functionalities corresponding to its needs. It allows
students to apply for courses, access to documentation
(slides, web pages, text, etc.), make exercises,
communicate with teachers, and take exams. The DLS
provides for students runtime sequences, such as
getting the next item in a sequence. DLS can be
distributed over several sites, and is managed by a
responsible whose job consists in: Student registration
(registering students for available courses); Resource
management (creating, updating and removing
resources, their availability and their interactions) and
Content management (creating, updating, organizing
and publishing information resources). Teachers use
the DLS in order to propose and update their own
courses; plan learning experiences and units of work
for delivery on or off line; access curriculum outcomes
and record student assessments. They are in charge of
writing exam subjects.
In order to develop an adaptable service oriented
DLS, we have defined several abstraction layers to
master the complexity associated to such systems.
Globally, we have defined three abstraction layers: the
business layers, the logical layer and the physical layer.
The Business Layer: The business layer is defined
on the basis of a set of models in order to describe the
business requirements. In this layer, we have used the
formalism of use cases allowing the formalization of
user requirements.
The Logical Layer: The objective of the logical
layer is the description of the services which will
compose the system at a high level of abstraction. In
our approach, the logical layer is mainly composed of
a collection of REST multiview services. In the context
of our case study, we have identified some relevant
DLS REST multiview services. The identification of
these multiview services is based on the development
process defined in (Kenzi et al., 2009). Such
development process allows the transformation of the
business models into multiview services models.
The multiview service model of the DLS is
composed mainly of the REST multiview services:
Registration, Course, Documentation and Exam.
Such services are multiview since they interact with
many actors: Teacher, Student and Administrator. For
example, Registration service provides the student
with the required functionalities in order to register
while it enables an administrator to manage the
registration of students, to fix the registration fees to
given courses and to make decisions about the
registration of students. The Course service provides
functionalities permitting students to apply for
courses. They can have access to exercises, ask
questions, consult projects, take quizzes and post
messages to discussion forums relating to a specific
course. It also enables Teacher to create courses, to
answer to students’ questions, to propose exercises
and to reply to messages of discussion forums. The
administrator uses course service in order to fix
course fees, to manage the calendar of courses, to
affect courses responsible. The Documentation
service allows Teacher to upload documents
concerning specific course, to update/delete the
content. It permits students to download the required
documentation (pdf file, ppt files, audio/video, etc).
The Exam Service enables students to take exams, to
download exam subjects, to ask questions, to consult
their marks. It also permits to Teacher to add exams,
to answer students’ questions. Figure 2 illustrates
examples of multiview services, specially, the
multiview service Course. Each Multiview Service
provides a set of viewServiceInterface and a
baseServiceInterface that specifies the function-
alities of the service required by all types of actors.
The viewServiceInterface highlights the service
capabilities required by a specific type of actor.
The physical layer consists of various Service
based applications artifacts. It is primarily composed
from the multiview service descriptions, multiview
service implementations with a given programming
language (e.g., Java, C#, etc), the BPEL code as well
as various non-functional properties such as XACML
policies for the management of access control.