Definition of a hybrid programming language for interoperability of heterogeneous software systems at the semantic level (2015)
In Information Technology, interoperability is the ability of different software systems to communicate, exchange data, and work together. At the semantic level, interoperability can be used for analyzing, sharing, and comparing data with intended meaning, from different data sources in different domains. Several models, architectures, data structures, and programming languages may be used for developing software applications for a company; such diversity usually leads those heterogeneous systems to be incompatible for carrying out some tasks related to semantic interoperability, such as data comparison. In order to complete those tasks, several applications, standards, and languages are used. However, some problems still remain: the need to build one-to-one system solutions, the impediment of converting existing systems into new standardized ones, the complexity of the existing solutions, and the difficulties of the reading/writing process into both the source and the target systems guaranteeing data consistency. For these reasons, in this Thesis we propose the definition and formalization of a hybrid programming language which includes the The main contributions of this Thesis are summarized as follows: • The definition of a set of rules for managing common data from different systems, in particular domains, from XML documents. • The capability of defining correspondences of records from different data sources, based on specific domains, considering the data semantics. • The simplicity of analyzing similar data for determining inconsistencies among heterogeneous software systems, by using a domain-specific programing language. • The specification of a hybrid programming language for achieving interoperability at the semantic level. • The implementation of the above defined elements into the Semantic Interoperability Language—SIL—a new interoperability programming language applicable to different domains at the semantic level. We make these contributions in order to: • Define equivalencies of records in different data sets within specific domains, to compare and analyze common data among heterogeneous software systems from XML documents. • Facilitate inconsistency identification among common data sets stored in different information systems, taking into account the data semantics. • Give the user the possibility of using a hybrid programming language to interoperate between two heterogeneous software systems at the semantic level. The hybrid programming language is intended to be used instead of the combination of several programming languages to achieve the desired results, making the process easier. The results of this Thesis lead to the following future work: • Automated identification of data inconsistencies, made by means of SIL. • Addition of new data structures and rules to the SIL specification, in order to make it widely used. • Direct modification of data sources in heterogeneous software systems