Software Engineering and Information Systems Group - Research
The software engineering & information systems group conducts research aimed at addressing the following question: How to cost-effectively build and maintain integrated software systems that are aligned with business goals and business operations? The group works on the following themes:
- Business Process Management: Analyzing, designing and building software systems based on models of how an organization works, also called business process models. Within this field, the group concentrates on process mining, predictive process monitoring, process simulation, and automated process improvement.
- Software Analytics: Quality-oriented software analytics for mobile apps and embedded software. Specific topic areas include:
- Mobile App Development:
- Development and integration of static code analysers for detecting OO smells, Android-specific smells, iOS-smells, in support of education and training
- Detection of architecture anti-patterns with focus on iOS security issues
- Recommendations for energy-efficient development of mobile apps
- Trade-offs between energy efficiency and other non-functional requirements (e.g., performance, maintainability, usability)
- (Semi-)automatic extraction from quality-relevant information from unstructured data (e.g., specifications and user reviews)
- Embedded Software Development:
- Using AI-enhanced methods for improving testing effectiveness and automatic test oracle generation
- Testing of AI Systems:
- Data-driven, (semi-)automatic generation of test suites for assessing the correctness of third party (black-box) AI systems
- Data-Driven Analysis and Improvement of Software Development (incl. Quality Assurance)
- Example datasets and potential research topics for MSc and BSc students can be found here: Datasets
- Mobile App Development:
The group actively contributes to the development of the following open-source tools:
- GraphfyEvolution. GraphifyEvolution is built to analyse evolution of iOS applications in bulk, but it also supports other languages such as java and c++. The tool is built in a modular manner so that it could be easliy extended.
- Caterpillar. A blockchain-based Business Process Management System (BPMS),
- Nirdizati. Nirdizati is a dashboard-based monitoring tool, which is updated periodically based on incoming streams of events. However, unlike classical monitoring dashboards, Nirdizati does not focus on showing the current state of business process executions, but their future state (e.g. when will each case finish). The source code available is at https://github.com/nirdizati/.
- RuM. RuM is a desktop application for declarative process mining based on the Declare modeling language. It integrates multiple well-known algorithms for process discovery, conformance checking, and log generation into a unified toolset. It includes a model editor equipped with a chatbot (Declo) that allows the user to create a process model based on natural language sentences that can be provided both by voice and by text. RuM also supports multi-perspective models that can include the data and time perspective of the process. All of this and more is provided as single application that is specifically designed to be easy to use for both experts and novices of process mining.
- Apromore. Apromore is a business process analytics platform developed by University of Tartu and Queensland University of Technology. The platform supports a range of operations over business process execution logs and process models including: automated process discovery (discovering BPMN process models from event logs), conformance checking (comparing BPMN process models against event logs), log delta analysis (comparing two event logs) and process model comparison (comparing two process models).
- BIMP: A fast and lightweight simulator of business process models, designed for simple simulations and teaching. The BIMP simulator is also integrated with Signavio Academic Edition. Implemented by Madis Abel as part of his Masters thesis.
- BPMN Miner 2.0. Given an event log in XES (or MXML) format, BPMN Miner 2.0 produces a block-structured BPMN model capturing the behavior in the log. Nowadays the tool is part of the Apromore platform (see above).
- ProConformance. Given a process model in BPMN format and a process execution log in XES (or MXML) format, ProConformance provides you with a list of simple statements explaining what behavior is observed in the log but not allowed in the execution log, and vice versa, what behavior is allowed in the process model but never observed in the log. This functionality is also part of the Apromore platform.
- BPStruct This tool converts any BPMN model into an equivalent block-structured BPMN model. If your BPMN models are getting a bit messy and you would like to get cleaner models, this is the tool you need. BPStruct also includes an extension for computing the Quality of Service (QoS) of business process models based on their structured representation.
- LiveBPMN. A tool for step-by-step animation of BPMN process models. Implemented by Octavian Vinteler as part of his Masters thesis.
- BPMN2BPEL Eclipse plugin: This plugin converts BPMN models designed using the SOA Tools BPMN Editor into BPEL code that can be deployed in the Apache ODE orchestration server. The plugin employs the most advanced techniques to generate structured and highly readable BPEL code, even in the case where the input BPMN models are not structured.
The group is (or has been) involved in the following research projects:
- Novel Tools for Analyzing Privacy Leakages (NAPLES). This project will demonstrate how to seamlessly add security analysis and optimization capabilities on top of business process management tools. The main outcome will be a tool that takes as input process models with privacy metadata (which it may compute itself), and analyzes these models to detect unintentional disclosures of private data and to quantify the leakage of private information through the outputs of the process. Where privacy leakages are discovered, the tool will identify possible counter-measures. The tool will generate reports that explain to data owners the maximum extent of possible leakage of their private data, making it easier to certify the system as secure and private. The project is funded by DARPA's BRANDEIS program and is performed in cooperation with Cybernetica.
- Private Banking Customer Analytics at Swedbank. In this collaborative project, we are investigating the application of classification, text analytics and deep learning techniques for micro-segmentation, product recommendation and promotion management within the private customer segment at Swedbank.
- Anomaly Detection in XRoad. We are developing anomaly detection techniques to detect potentially fraudulent behavior at runtime within Estonia's backbone e-government infrastructure, XRoad. The project is conducted in cooperation with the Estonian Information Systems Authority (RIA) and the Software Technology and Applications Competence Centre (STACC).
- Artifact-Centric Service Interoperation (ACSI). This project is developing techniques and tools to simplify the design, deployment and evolution of service collaborations, based on the concept of business artifacts. Our team is contributing to the development of the conformance checking, process mining and adaptation techniques for artifact-centric process models.
- Liquid Publications. This project is developing innovative ways of disseminating scientific knowledge and evaluating the impact of scientific research and researchers. Our team is specifically involved in the application of social network analysis techniques to design algorithms for predicting the future impact of scientific publications and for assessing the reputation of scientific researchers.
- Semantics for Software-as-a-Service and Cloud Computing (SITIO). In this project, we are developing mathematical models and numerical algorithms to estimate the number of servers in a server farm in a way that satisfies specified service-level objectives, while maximizing the net revenue earned by the provider. The proposed models take into account energy costs and penalties paid for unavailability. See the list of publications on this topic and our Cloud Computing economics blog.
- Configurable process modelling. This project aims at developing techniques for representing process models that can be configured to fit different organizations or projects. This research is conducted in collaboration with Queensland University of Technology and is funded by the Australian Research Council.
- Naming the Pain in Requirements Engineering (NaPiRE). This project conducts a distributed, yearly replicated family of surveys that aim at establishing an open and generalisable set of empirical findings about practical problems and needs in RE. In October 2014, 9 Estonian companies participated in the survey - joining more than 100 companies in 12 countries, including Germany, Sweden, Finland, The Netherlands, Spain, Canada, and China. The results of the survey will be used to help focus academic research on those issues in RE that are most important for companies.
- All members of the group have a Google Scholar account.