Service Creation for All: Initial Results of the TOSCA Project
by Richard Sinnott
The TOSCA (TINA Open Service Creation Architecture) project aims
to develop an open service creation environment that can be used
to expedite the creation and subsequent validation of multimedia-based
telecommunication services. In particular, the project is attempting
to widen the audience of would-be service creators. This article
gives an overview of how this is being achieved in TOSCA.
The TOSCA project which began in September 1996, has recognised
the need to differentiate between the different creators of telecommunication
services that might exist in the modern marketplace. For example,
service designers as might be employed by public network operators
are likely to create services using a detailed knowledge of the
expected service behaviour. Business consultants or telecommunication
managers on the other hand, are more likely to create services
based on an understanding of the end user requirements, as opposed
to a detailed knowledge of the service specification and low-level
service construction. Regarding this latter point, a lack of understanding
of technologies such as C++, SDL (Specification and Description
Language), or distributed platform technologies such as Orbix
etc. should not be prohibitive to the service creation process.
As well as providing different levels of abstraction at which
services might be developed, a key factor on the success of a
service creation environment is the speed at which a multitude
of services can be created. This includes integration with their
service surround as might be the case in the usage of an existing
accounting service say, by a newly created tele-learning service.
To accommodate these requirements on rapid service creation and
the potentially wide spectrum of would-be users, TOSCA has taken
an approach based upon object-oriented frameworks in accompaniment
with graphical (and intuitive) service design tools - so called
Paradigm tools. A framework may be considered as a mostly complete
model of a service with some pre-defined flexibility points where
the developer can intervene (either manually or through a paradigm
tool) to specialise the behaviour of the service.
Currently frameworks in C++/Orbix and SDL have been completed.
These were based around an existing implementation of a TINA based
multimedia conferencing service (TIMMAP). Both of these frameworks
started from a TINA ODL (Office Document Language) and IDL (Interface
Definition Language) description accompanied by informal behavioural
descriptions and use cases. We note that tool support (Y.SCE)
was used to convert these ODL/IDL descriptions to SDL stubs and
skeletons whose behaviour was added (and checked) using the SDL
Design Tool of the Telelogic TAU toolset.
Different paradigm abstractions have been considered in TOSCA.
Two of those which resulted in prototype implementations were:
functional block paradigm: here the design of the service is
based on architecting a collection of building blocks representing
particular functional decompositions of the overall service behaviour
movies paradigm: here the design of the service is based on
considering the service behaviour as a whole through a sequence
of snapshots of its expected functionality.
The following highlights how the functional block paradigm tool
(Cadenza) is used to create the different roles that might exist
in a multimedia conference.
Specifying the Roles in a Multimedia Conference
The functionality associated with these roles is achieved through
inserting behaviour into specific framework flexibility points.
For example, enabling a chairman to invite other participants
(the default functionality is that the party may terminate or
suspend their participation in a session) is achieved through
specialising the framework flexibility point related to starting
user sessions so that a chairman has an invite window created.
Other flexibility points related to stopping, suspending or resuming
user sessions and starting, stopping, suspending and resuming
or service sessions have also been identified.
Specialising the Start-Up of the Chairman Role
More complex building block scenarios are also possible. The output
of these tools is the specialising C++ or SDL necessary to complete
the service implementation or SDL model from the respective frameworks.
An example of the kind of (service-session) user application (for
interacting with the service implementation and the service model
once a service session has started) that might be generated for
a chairman from the framework using the paradigm tool is shown
in the figure.
Example of Resultant Chairman Control Window
Once the SDL model of the service is complete, it is used as a
basis for deriving test cases to run against the C++/Orbix implementation
of that service. Tool support (a CORBA/TTCN gateway; Common Object
Request Broker Architecture/Tree and Tabular Combined Notation)
has also been developed to allow for these test cases to be executed
directly against the service implementation.
The TOSCA project is funded under ACTS (Advanced Communications
Technologies and Services). Further information on the TOSCA work
can be found at: http://www.teltec.dcu.ie/tosca
Please contact:
Richard Sinnott - GMD
Tel: +49 30 3463 7298
E-mail: sinnott@fokus.gmd.de