Past research projects
The goal of this Innoviris-funded TeamUp project is to research and deploy novel pattern mining algorithms in an industrial prototype of an intelligent modernisation assistant for legacy software systems. The assistant pro-actively recommends software engineers source code modernisation actions by comparing their current development efforts with insights gained by treating source code repositories as data . The assistant draws its intelligence from continuously mining for previously unknown patterns in the current state and structure of the system’s source code (programming idioms, coding conventions, library usage protocols) and in changes made to this code (systematic edits, repetitive changes). The proposed modernisation actions appear increasingly informed as the recommendation assistant uncovers and refines more patterns in the code, version and change repositories it mines. The success of the modernisation assistant hinges on the quality of the pattern mining algorithms it incorporates and their ability to improve their results by learning from their interaction with the software engineers.
There is an increasing demand for web-based services that offer collaborative and off-line functionality, and this at unparalleled global scales. Realizing these qualities requires distributing previously centralized application logic and state both vertically and horizontally. Both forms of distribution bring about the essential complexity of maintaining the consistency and safeguarding the security of replicated or shared application assets, along with the accidental complexity of reconciling a myriad of heterogenous tier-specific technology. The Tearless project therefore envisions a future in which multi-tier web applications are developed, tested and maintained as a single artefact that spans all tiers. This tierless programming should relieve developers of distribution, consistency and security concerns. We will not pursue this vision through a new and potentially esoteric programming language. Instead, we will pursue a two-pronged solution of enabling technologies & development tooling. This enables the gradual incorporation of our technology in existing code, and maximizes valorization opportunities for different stakeholders.
The goal of FLAMENCO is to build and valorise an open reusable and reconfigurable citizen observatory platform for Flanders. Through this platform, (ICT-agnostic) stakeholders themselves can instantiate new citizen observatories for the particular application area they have in mind. Web services and mobile apps are generated accordingly. Data gathered involves sensorial data (e.g., noise levels, physical activity) as well as behavioural data (e.g., tolerance for delays in public transportation or sensitivity to public safety). In this scalable approach stakeholders see their concerns translated into procedures for successful participatory campaigning without having to rely on platform engineers. Only in this way can we move away from research-oriented deployments to the full-fledged adoption of citizen observatories as a societally and scientifically relevant method.
MetaConc is a FWO joint project in collaboration with the Institute for System Software at the Johannes Kepler Universität Linz (JKU) in Austria. It aims to explore language support that captures the interaction amongst concurrency models in order to deliver the concepts needed to support tools. In particular, we investigate both language implementation support to capture essential properties of concurrency models (research led by JKU's group), and debugging support built on top of such substrate to assist developers in finding errors, and improving program comprehension of complex concurrent systems (research led by SOFT ).
This strategic research plan has the goal to focus on fundamental research topics to improve the scientific output of the Software Languages Lab. A large part of the research conducted at the Software Languages Lab can be divided over three domains: Ambient Oriented Programming, Parallel Programming and Cloud Computing. The research project aims to simultaneously improve the research in these three domains based on the high degree of congruency between them. Concretely, this proposal will focus on three fundamental questions that apply over the three domains. First, how to harness concurrency and orchestrate the interaction between a large number of computations. Second, how to control the data distribution between a large number of concurrently executing processes. Finally, how to development formally grounded tools to assist the programmer to detect and fix bugs early on in the development process. In order to successfully answer these questions formal methods such as type systems, contracts, symbolic execution and model verification will be applied.
Agent-driven networks, consisting of many collaborating and competing (human and machine) agents, can be found in a wide range of problem areas, such as telecommu- nications, smart grids, smart cities, traffic guidance, and flight control. As the complexity and size of these networks increases, automated techniques for configuring, guiding, and managing them become increasingly important, in order to limit operational costs and guarantee optimality. The SMILE-IT project aims to develop such an automated network management framework, based on multi-agent reinforcement learning (MARL) techniques.
The overall goal of SPICES is to design an open reusable platform specifically targeted towards security process monitoring, based on the notion of complex event processing (CEP). Within SOFT we envision (1) the design of a reactive CEP security language (2) The design of a change language which identifies new threats and attacks while the system is running; and (3) the implementation of a multi-pattern optimizer on top of a scalable (i.e. multicore), distributed (i.e. cloud) execution platform to manage the processing of a vast amount of events.
The purpose of the CartASUR (Représentations Cartographiques de la qualité des Ambiances Sonores Urbaines: acceptabilité des Cartes) research project in which SOFT is a subcontractor is to develop a tool capable of creating sound maps representing the urban soundscape at different spatial scales of the city (such as major roads and neighborhoods) as well as different time scales (such as a time period within a year or the time of day). This tool can help policy makers to enrich noise levels with perceptual and geographic indicators. Hence, soundscapes in urban public space are enriched with sense of pleasure/discomfort perceived by its citizens. Noise level indicators are currently defined on a yearly and national scale and do not incorporate citizen perception. We hypothesise that noise level indicators can be constructed from perceived data (citizen-supplied data transmitted via their mobile phone), from acoustic data (measurements taken of the changing sound level over time), and from other georeferenced data (collected from local authorities). The aggregated data will allow policy makers to better take into account the effect of noise on the quality of life. Additionally, this tool can be used by citizens to govern their own city.
Gradual Verification of Event-driven: More and more, computer applications need to deal with multiple input streams and utilize distributed hardware, to access an ever growing range of consumer and business services in the cloud and in corporate networks. The development of such programs is encumbered by concurrency pitfalls such as race conditions and deadlocks, and distribution hazards such as connection failures and the lack of a single coordinating entity. In this project, we investigate these challenges and develop reasoning principles and tooling strategies to address them.
The constant need for change in software drives the manner in which modern software is developed, as evidenced by the trend towards iterative and agile development processes. Automated testing approaches, bug trackers and static analyses still start from the fundamental assumption that they act upon a single, complete release of the system. As a result, there exists a remarkable disparity between the trend towards embracing change and the tools used by today’s software engineers. The main objective of the Cha-Q (Change-centric Quality Assurance) project is therefore to devise innovative tools that enable change-centric software development.
CT solutions are composed of multiple services and components that are independently developed and deployed on remote service platforms and, therefore, also indepen- dently evolve. To support improved modularization and customization of such composed appli- cations, this project proposes to establish a coherent AOSD-based invasive composition approach in which the fundamental problems of aspect interference and fragility are treated, and in which dynamic metadata plays a central role in dealing with software evolution issues.
The aim of the COGNAC project is to build upon a formal actor-based concurrency model to provide gradual type system support that statically and dynamically reifies the ownership and location information present in remote object designation concepts. This offers coordination abstractions, such as ambient contracts, that simplifies the programmers task of developing and securing applications for devices that cooperate over intermittent network connections.
ExaScience Life is a large interdisciplinary IWT project, set up as a collaboration between the five Flemish universities and two industrial partners: Intel and Janssen Pharmaceutica. The broad topic of ExaScience Life is to explore scientific applications for the next generation of supercomputers. Today, we are building peta-FLOP scale supercomputers, for the next decade we are expecting exascale. Such massive increase in processing power unlocks new types of scientific applications, exascale computing is therefor seen as a new driving force for scientific discoveries.
The latest generation of 3D Urban Information Models (UIM), created from accurate urban-scale geospatial information, can be used to create smart web services based on geometric, semantic, morphological and structural information at urban scale level, which can be used by local governments to: - improve decision-making on issues related to urban planning, city management, environmental protection and energy consumption based on urban pattern and its morphology; - promote inclusion among various users groups (e.g. elder or diversely able citizens) through services which account for barriers at city level; - involve citizens at wider scale by collecting geo-referenced information based on location based services at urban scale.