Modeling and Analyzing Architectural Diversity of Open Platforms - Schwichtenberg, Bahar; Schwichtenberg, Simon; Küster, Jochen; Zimmermann, Olaf; Engels, Gregor (Advanced Information Systems Engineering)

Poster: CrossEcore: An Extendible Framework to Use Ecore and OCL across Platforms - Schwichtenberg, Simon; Jovanovikj, Ivan; Gerth, Christian; Engels, Gregor (Proceedings of the 40th International Conference on Software Engineering, ICSE 2018 - Companion Volume)
Today, model-driven approaches are a cornerstone in modern software development. The Eclipse Modeling Framework (EMF) is highly adopted in practice and generates Java code from platform-independent models with embedded Object Constraint Language (OCL) expressions. However, applications that target multiple platforms like Android, iOS, Windows, web browsers usually need to be implemented in different programming languages. Feature-complete Ecore and OCL runtime APIs are not available for all these platforms, such that their functionality has to be re-implemented. In this paper, we present CrossEcore: A multi-platform enabled modeling framework that generates C#, Swift, TypeScript, and JavaScript code from Ecore models with embedded OCL. An OCL compiler translates OCL expressions into expressions of the target language. The Ecore and OCL API can be consistently used across platforms, which facilitates application portability. CrossEcore is also extendible and can be easily adopted for new programming languages.

On-The-Fly Computing Meets IoT Markets - Towards a Reference Architecture - Jazayeri, Bahar; Schwichtenberg, Simon (Proceedings of the International Conference on Software Architecture (ICSA) IoT-ASAP Workshop)
The Internet of Things (IoT) connects the things of our everyday life and supports usin our common activities.Several markets for IoT services have been created. These markets enable IoT users to search and compose services in order to support an IoT activity.However, existing IoT markets like IFTTT (If This Then That) are not convenient for users with respect to service discovery and composition.The objective of On-the-fly (OTF) computing is to configure and provide software markets that fulfill individual users' wishes by the automatic on-the-fly composition of single services.The architecture framework of On-the-fly computing markets helps architects to systematically develop these systems in different domains.In this paper, we use our OTF architectural framework to examine the requirements of a reference architecture for IoT markets.Furthermore, we perform a comparison between the architecture of IFTTT as an existing IoT market with this reference architecture. The results show how existing IoT markets can be improved. In return, the practical knowledge of IFTTT is taken to the reference architecture.This knowledge helps to overcome the limitations of today's IoT markets or creating new markets in the future.

On the Necessity of an Architecture Framework for On-The-Fly Computing - Jazayeri, Bahar; Schwichtenberg, Simon (Proceedings of Softwaretechnik-Trends Workshops)

From Open API to Semantic Specifications and Code Adapters - Schwichtenberg, Simon; Gerth, Christian; Engels, Gregor (Proceedings of the 24th IEEE International Conference on Web Services (ICWS))
Today, modern IT-systems are often an interplay of third-party web services. Developers in their role as requesters integrate existing services of different providers into new IT-systems. Providers use frameworks like Open API to create syntactic service specifications from which requesters generate code to integrate services. Proper service discovery is crucial to identify usable services in the growing plethora of third-party services. Most advanced service discovery approaches rely on semantic specifications, e.g., OWL-S. While semantic specification is crucial for a precise discovery, syntactical specification is needed for service invocation. To close the gap between semantic and syntactic specifications, service grounding establishes links between the semantic and syntactic specifications. However, for a large number of web services still no semantic specification or grounding exists. In this paper, we present an approach that semi-automates the semantic specification of web services for service providers and additionally helps service requesters to leverage semantic web services. Our approach enables a higher degree of automation than other approaches. This includes the creation of semantic specifications and service groundings for service providers as well as the integration of services for requesters by using our code generator. As proof-of-concept, we provide a case study, where we derive a sophisticated semantic OWL-S specification from a syntactic Open API specification.

Automatized Derivation of Comprehensive Specifications for Black-box Services - Schwichtenberg, Simon (Proceedings of the 38th International Conference on Software Engineering Companion (ICSE))
Today, cloud vendors host third party black-box services, whose developers usually provide only textual descriptions or purely syntactical interface specifications. Cloud vendors that give substantial support to other third party developers to integrate hosted services into new software solutions would have a unique selling feature over their competitors. However, to reliably determine if a service is reusable, comprehensive service specifications are needed. Characteristic for comprehensive in contrast to syntactical specifications are the formalization of ontological and behavioral semantics, homogeneity according to a global ontology, and a service grounding that links the abstract service description and its technical realization. Homogeneous, semantical specifications enable to reliably identify reusable services, whereas the service grounding is needed for the technical service integration. In general, comprehensive specifications are not availableand have to be derived. Existing automatized approaches are restricted to certain characteristics of comprehensiveness. In my PhD, I consider an automatized approach to derive fully-fledged comprehensive specifications for black-box services. Ontological semantics are derived from syntactical interface specifications. Behavioral semantics are mined from call logs that cloud vendors create to monitor the hosted services. The specifications are harmonized over a global ontology. The service grounding is established using traceability information. The approach enables third party developers to compose services into complex systems and creates new sales channels for cloud and service providers.

RSDL workbench results for OAEI 2015 - Schwichtenberg, Simon; Engels, Gregor (Proceedings of the 10th International Workshop on Ontology Matching collocated with the 14th International Semantic Web Conference (ISWC 2015), Bethlehem, PA, USA, October 12, 2015.)

Normalizing Heterogeneous Service Description Models with Generated QVT Transformations - Schwichtenberg, Simon; Gerth, Christian; Huma, Zille; Engels, Gregor (Proceedings of the 10th European Conference on Modelling Foundations and Applications (ECMFA))
Service Oriented Architectures (SOAs) enable the reuse and substitution of software services to develop highly flexible software systems. To benefit from the growing plethora of available services, sophisticated service discovery approaches are needed that bring service requests and offers together. Such approaches rely on rich service descriptions, which specify also the behavior of provided/requested services, e.g., by pre- and postconditions of operations. As a base for the specification a data schema is used, which specifies the used data types and their relations. However, data schemas are typically heterogeneous wrt. their structure and terminology, since they are created individually in their diverse application contexts. As a consequence the behavioral models that are typed over the heterogeneous data schemas, cannot be compared directly. In this paper, we present an holistic approach to normalize rich service description models to enable behavior-aware service discovery. The approach consists of a matching algorithm that helps to resolve structural and terminological heterogeneity in data schemas by exploiting domain-specific background ontologies. The resulting data schema mappings are represented in terms of Query View Transformation (QVT) relations that even reflect complex n:m correspondences. By executing the transformation, behavioral models are automatically normalized, which is a prerequisite for a behavior-aware operation matching.

RSDL workbench results for OAEI 2014 - Schwichtenberg, Simon; Gerth, Christian; Engels, Gregor (Proceedings of the 9th International Workshop on Ontology Matching collocated with the 13th International Semantic Web Conference (ISWC 2014), Riva del Garda, Trentino, Italy, October 20, 2014.)

Ontology-based Normalization and Matching of Rich Service Descriptions - Schwichtenberg, Simon