
Interoperability of information systems
- Class 30
- Practice 30
- Independent work 90
Course title
Interoperability of information systems
Lecture type
Obligatory
Course code
23-11-532
Semester
6
ECTS
5
Lecturers and associates
Course overview
The aim of the module is to acquaint the student with the basic integration concepts, tools and technologies necessary to achieve the interoperability of different information systems.
This is the central module within the study program and represents the basis for selecting appropriate technologies for the integration of two or more information systems, regardless of the programming language of implementation. Acquired skills significantly contribute to the professional development of students in related professional fields.
The module is taught in the programming language C
. The final evaluation is based on independent student projects and solving a series of small practical tasks using the given programming language. As part of independent projects, students must create applications and integrate them with REST API interfaces according to given specifications.
Content
Students will learn:
• conceptual foundations of interoperability
• integration technologies and data formats used as part of integration communication (HTTP, REST API, SOAP, XML, XSD, RNG, XQuery, JAXM, RPC and RabbitMQ, etc.)
• service-oriented architecture (SOA) concepts
• microservice architecture concepts
• norms and principles of communication
• details on security aspects with an emphasis on possible attacks and appropriate protection, in order to acquire knowledge crucial for the remediation of system vulnerabilities during the development phase.
Literature
1. Dikmans, L. and Luttikhuizen, R. (2012) SOA Made Simple. Birmingham: Packt Publishing
Additional reading
1. Josuttis, N.M. (2007) SOA in Practice: The Art of Distributed System Design (Theory in Practice). 1st edn. Sebastopol: O’Reilly.
Minimal learning outcomes
- Assess the justification for introducing interoperability in private and public business organizations in terms of e-business, legal frameworks, strategies and interoperability frameworks.
- Compare and explain the performance of markup languages as part of the interoperability of information systems.
- Choose and justify the choice of technology for use in services on more complex cases of integration of distributed information systems.
- Recommend the use of appropriate security aspects in web services in order to achieve interoperability of information systems.
- Choose the possibility of introducing new services in a service-oriented architecture (SOA) or microservice architecture or the possibility of reusing existing services.
- Propose standards of communication and formats for the exchange and storage of information that are important for achieving interoperability.
- Determine security mechanisms that should be used in existing interoperable services to optimize protection.
Preferred learning outcomes
- Choose the appropriate approach for creating an information system in accordance with the principles of the Croatian and European framework for interoperability.
- Implement a module that uses data transformation or validation using markup languages.
- Implement a multi-layered application that includes a presentation layer, a business logic layer, and a database access layer.
- Implement security aspects of applications that use symmetric and asymmetric algorithms and the hashing algorithms.
- Implement a reusable web service.
- Introduce an identifier in the data model of the web application that will enable integration with services in other information systems at the national level.
- Implement optimal protection in the information system to prevent the most common forms of security threats.