Development Tools for Distributed Services
by Marc Born and Linda Strick
The increasing complexity of distributed telecommunication services has lead to a requirement for powerful methods and tools to support the design and specification process. The GMD Institute for Open Communication Systems has developed a methodology covering the whole development life-cycle. Case Tools that support the design process have the Y.SCE tool (Y.Service Creation Environment) developed by GMD and the commercially available TAU toolset from Telelogic. Both tools are connected to perform a tool chain which has been successfully used in several national and international projects for the development of distributed services. This article gives a brief overview of the methodology, the tools and further work.
The methodology developed by GMD scientists provides notations and guidelines to cover all stages of the development life-cycle for arbitrary (telecommunication) services. It describes all activities that are necessary to define a distributed service and is a complete description of both, stages and steps involved in the analysis, design and implementation plane.
The Reference Model for Open Distributed Processing (RM-ODP) [ODP] has been used as a general framework for the tool supported design methodology as it provides object-oriented concepts and principles for structuring the system design. The design process itself is not a pure top-down approach, but is an iterative usage of each of the stages from an abstract level down to the detailed specification and implementation. Repetition of steps is needed if errors are detected either by validation on the design plane or by testing the implementation.
Different languages and techniques are used to support the specification of the models. These techniques include OMT (Object Modelling Technique), TINA ODL (Telecommunication Information Networking Architecture/Object Definition Language) and SDL [Z.100] (Specification and Description Language).
In order to get acceptance for new software development methods it is not enough to propose the method from a theoretical perspective only. Tools have to be provided to enable the usage of the method.
For the Analysis Plane the Y.SCE tool provides graphical notations for defining the Enterprise Model. A Use Case Model and an Organisational Model can be defined which are stored in an information repository. For the behaviour, high level Message Sequence Charts (MSCs) can be captured using the TAU toolset from Telelogic. Both tools are connected to allow that MSCs can be attached to the Use Cases and a navigation between them is possible.
To support the Design & Validation Plane the Y.SCE tool provides a graphical notation for the Object Description Language (ODL) and is able to import and export textual ODL files. To support CORBA (Common Object Request Broker) based systems, IDL files (Interface Definition Language) can also be imported and exported. The ODL information is stored in the repository. It is possible to establish links between the Use Cases and ODL entities to navigate along these links. In order to describe the functional behaviour, the Y.SCE tool generates SDL skeletons which can be imported into the TAU tool. The behaviour information will be added there. The TAU tool provides functionality for simulation and validation of the specification models defined in the different planes.
To support the Implementation and Testing Plane automatic generation of implementation language code (currently C and C++) is possible either directly from Y.SCE or from TAU. Depending on the behaviour model the generated code is more or less abstract.
In order to test, whether the final implementation is conform to its specification the ITEX tool, a Telelogic tool, which is also part of the TAU toolset, is used for the derivation of test cases. To bridge the gap between abstract test suites and executable test cases the GMD Institute for Open Communication Systems has developed an additional tool to perform testing in a distributed CORBA environment.
The application of the described methodology to the design of distributed services ensures a higher quality of the resulting service and a shorter time to market. Further work will be done to support automated deployment of the services to appropriate middleware by tools.
Marc Born - GMD
Tel: +49 30 3463 7235
Linda Strick - GMD
Tel: +49 30 3463 7224