Training for developers of X-Road interfaces Name Date
Service-oriented architecture Software structure where services are made available for the users through computer network. Further regulations, practices and frameworks. Service directory for publishing and finding service descriptions. Requirements to service level are also published in the service directory. Service – separate method realising some certain functionality, which can be repeatedly retrieved through specific interface. Web service – a method retrieved over web, the interface of which is described in a machine- readable format.
Implementation of service-oriented architecture on X-Road Services on X-Road are dataservices. Dataservice is a communication method which enables exchanging data between the parties via public internet. Distributed – parties are connected directly via a P2P model. Status-free – a response follows the request during the same connection. Each party can be a provider as well as a user. Distributed service directory used through metaservices. Superstructure of distributed service directory is RIHA.
Properties of service-oriented architecture Independence of platform Weak coupling Composition of services Self-description Universality
Steps of development of dataservices Determination of business needs Stage of analysis and design Development stage Testing Launching
1. Determination of business needs The objective is to determine business needs and translate them into web service requirements. Result of the stage is specifications of requirements.
2. Stage of analysis and design Identification of suitable available dataservices. If these are lacking: Determination of technological platform of dataservice. Drafting of architectural specification Description of planned dataservices. Drafting of descriptions of dataservice interfaces in XSD/WSDL format Results of the stage are detailed specifications of software architecture and dataservices.
3. Development stage Realisation of software solution Various methods: Source code -> WSDL (Bottom Up) WSDL -> source code (Top Down, Contract-first) Agile method (Meet in the Middle) Results of the stage: validated and commented WSDL and realisation of dataservice.
4. Testing Activities of the stage: Testing of functionality Testing of cooperation ability Testing of performance
5. Launching Activities of the stage: Registration of the service in RIHA system Implementation of the service
Interfacing patterns https://moodle.ria.ee/course/view.php?id=11 Includes design and usage patterns of X-Road. In addition to textual descriptions of problems and solutions, the directory also includes several examples of WSDL descriptions. Patterns are recommended Directory can be supplemented
Division of patterns Primitives – basic elements (PM): Requesting data, sending data, tunnelling protocol Functional patterns – based on primitives (FM): Universal data request service, list and detailed information, CRUD data management, a time-consuming process, etc. Processing patterns: Usage patterns (KM): sequential use of service, alternative workflow, nested retrieval of service, parallel use of service, etc. Consumption patterns (TM): data divisor, data aggregator, header- oriented targeting of data.
Thank You! First name Surname firstname.surname@amet.ee The training materials for developers of X-Road interfaces have been compiled with funding from the structural funds support scheme “Raising Public Awareness about the Information Society” of the European Regional Development Fund.