Dipl.-Ing. Dr., BSc, BSc
Cloud&DevOps Engineer,
Researcher, Entrepreneur

Scientific Research Projects


    (January 2014 - ongoing). “SIMPLI-CITY – The Road User Information System of the Future” will foster the usage of full-fledged road user information systems – helping drivers to make their journey safer, more comfortable, and more environmentally friendly.
    Therefore a holistic framework is needed which structures and bundles potential services that could deliver data from the various sources to road user information systems as well as allows road users to make use of the data and to integrate it into their driving experience.

  • Pacific Controls Cloud Computing Lab (PC3L)

    (Oct. 2013 - ongoing). In the Pacific Controls Cloud Computing Lab (PC3L), Pacific Controls and the Distributed Systems Group (DSG) of the TU Vienna are working together to push the frontiers of cloud computing, pervasive computing, data management and Internet of Things. By creating the social and physical environments that are conducive to innovation and knowledge transfer, researchers and practitioners are working in partnership to create novel service platforms and technologies, and continuously transfer them into business values. [pc3l.infosys.tuwien.ac.at]


    (Oct. 2010 - Sept. 2013). Indenica is a 7th Framework Programme EC project, whose aim is to 1) simplify the overall complexity of service platform development, 2) support platform convergence and interoperability, and 3) provide a reusable infrastructure for platform development, in order to support the automatic deployment and the monitoring, governance, and adaptation of services in a Virtual Service Platform. [www.indenica.eu]

  • S-Cube

    S-Cube, the European Network of Excellence in Software Services and Systems, has established an integrated, multidisciplinary, vibrant research community, enabling Europe to lead the software-services revolution and helping shape the software-service based Internet which is the backbone of our future interactive society. [www.s-cube-network.eu]

Research Prototypes & Tools

  • WS-Aggregation: Distributed Aggregation of Web Services Data
  • TeCoS / SeCoS: Reliable and Secure Operation of Service-Based Systems
  • ToASTER: Testing Idempotence and Convergence for Chef Automation Scripts.
  • AUToCLES: Automated Testing of Cloud-based Elastic Systems
  • JAXB-Facets: XSD Facets support for the Java Architecture for XML Binding (JAXB).
  • ScaleDOM: A lazy-loading DOM implementation for processing huge XML documents.

During the last years, the Web has emerged as a vast collection of resources that provide data both in the form of (static) documents and in the form of services. The huge number of available data resources in the Web, as well as ongoing trends of Web-based data processing such as service mashups, Data-as-a-Service or Web content integration portals call for techniques to aggregate (i.e., collect, select and transform) heterogeneous data from distributed sources in a uniform way.

We argue that there is still a lack of generic frameworks that support loosely coupled, distributed aggregation of heterogeneous data published in the Web. We present the WS-Aggregation framework as a generic solution to this problem. WS-Aggregation employs a set of interconnected aggregator nodes, which cooperate with each other to execute client requests. Following the SOA paradigm, WS-Aggregation decouples the aggregation platform from the target data services. The endpoint information of the system participants is stored in the VRESCo service registry and binding takes place dynamically at runtime.

WS-Aggregation makes use of the Web services Aggregation Query Language (WAQL), which is based on XQuery and provides a set of additional convenience features which we deem important in the context of data aggregation on the Web. The WAQL parser and preprocessor have been implemented with the aid of the parser generator JavaCC. A detailed description of the implementation can be found here.

The code of WS-Aggregation is available open-source from the project website.

TeCoS / SeCoS

In recent years, the Service-Oriented Architecture (SOA) has emerged as a means to create loosely coupled distributed cross-organizational applications. Particularly in enterprise environments, service-based applications and business processes operate under specific constraints regarding reliability and security. Therefore, ensuring the correct behavior of service-based systems (SBS) is a key concern, both with regard to functional requirements (Does the SBS operate and process the data correctly?) and non-functional requirements, particularly security and access control (Does the SBS comply with the security constraints imposed by the business application?). In this work, we follow a rigid research approach towards these issues and focus on well-structured and sophisticated methodologies for providing reliable and secure operation of SBSs.

This project embraces two orthogonal efforts that are summarized under the terms TeCoS and SeCoS:

  • TeCoS - Test Coverage for Service-based systems: In this project, we provide a framework for testing SBSs and analyse Verification and Validation (V&V) techniques for different dimensions (API, data flow, dynamic binding) and levels of granularity (single operation, service, service mashup, process-based service composition and choreography).
  • SeCoS - Secure Collaboration in Service-based systems: This project is concerned with identity management and runtime enforcement of complex role-based access control (RBAC) constraints spanning multiple services in cross-organizational business processes.

See more details on the project website.


Due to the competitiveness of the computing industry, software developers are pressured to quickly deliver new code releases. At the same time, operators are expected to update and keep production systems stable at all times. To overcome the development-operations barrier, organizations have started to adopt Infrastructure as Code (IaC) tools to efficiently deploy middleware and applications using automation scripts. These automations comprise a series of steps that should be {\em idempotent} to guarantee repeatability and convergence.

Rigorous testing is required to ensure that the system idempotently converges to a desired state, starting from arbitrary states. We propose and evaluate a model-based testing framework for IaC. An abstracted system model is utilized to derive state transition graphs, based on which we systematically generate test cases for the automation. The test cases are executed in light-weight virtual machine environments. Our prototype targets one popular IaC tool (Chef), but the approach is general. We apply our framework to a large base of public IaC scripts written by operators, showing that it correctly detects non-idempotent automations.

The evaluation results of our paper at Middleware'13 are available here.

We have recently created an effective re-implementation of the tool, integrating docker.io tools and strace-based state change capturing. An open source release can be downloaded from github.


Cloud-based elastic computing systems dynamically change their resources allocation to provide consistent quality of service and minimal usage of resources in the face of workload fluctuations. As elastic systems are increasingly adopted to implement business critical functions in a cost-efficient way, their reliability is becoming a key concern for developers. Without proper testing, cloud-based systems might fail to provide the required functionalities with the expected service level and costs.

We present AUToCLES, our tool for automatic testing of cloud-based elastic systems. Given specifications of the test suite and the system under test, AUToCLES implements testing as a service (TaaS): It automatically instantiates the SUT, configures the testing scaffoldings, and automatically executes test suites. If required, AUToCLES can generates new test inputs. Designers can inspect executions both during and after the tests.

We maintain source code at github, and additional information is available here.


The Java Java Architecture for XML Binding (JAXB, JSR222) is a framework which simplifies the mapping between Java objects and their XML representation. Although an often requested feature, the JAXB reference implementation (JAXB RI, http://jaxb.java.net/) currently does not support XSD facets for simple types (e.g., pattern, maxSize, fractionDigits etc.) in generated XML Schema files.

We therefore provide a simple extension to JAXB RI to define facets for Java class attributes using an @Facets annotation, which are then considered in the the XML Schema generation procedure. Furthermore, our implementation supports @MinOccurs and @MaxOccurs annotations. These features are particularly useful when implementing Web services with JAX-WS (Java API for XML Web Services, JSR224, JAX-WS RI).

The implementation is hosted on github. (The former project website was here.)


ScaleDOM is a Xerces-based XML DOM parser which has a small memory footprint due to lazy loading of XML nodes. It only keeps a portion of the XML document in memory and re-loads nodes from the source file when necessary.

If you run into "OutOfMemoryError" using your standard DOM parser, ScaleDOM may be just the right solution for you.

ScaleDOM is available open-source at github.

<counter> visitors since May 2013
Note: This page uses JavaScript, please activate it in your browser.