Software Engineering Group - Research
The software engineering 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:
- Management of business process models (model comparison, similarity search, clone detection and model merging).
- Data mining methods to analyze logs of business process executions (process mining), including methods for automated discovery of process models (e.g. BPMN) and business rules from event logs, as well as methods for detecting, explaining and predicting performance in business processes.
- Software Management: Software management puts a management perspective on the engineering and business processes in the rapidly changing software industry. “Management” refers not only to managing products, projects, processes, and people involved in the development of software and systems, but also to the strategic management of issues that arise in a software business. The following aspects are of special interest:
- Product aspect: The core entity of software management is the software product. Issues that need to be addressed from the managerial point of view include, for example, product definition, product-line development, product release planning, product-portfolio management, and product certification.
- Project aspect: Software products are developed in projects. Issues that need to be addressed from the managerial point of view include, for example, planning of cost/effort/schedule/quality, staffing, controlling, and reporting.
- Process aspect: Processes define how to develop software products in projects. Thus, well-defined processes are the key to sustained project success. Issues that need to be addressed from the managerial point of view include, for example, elicitation, modeling, analysis, assessment, and evolution/improvement of software development processes.
- People aspect: People are at the hart of software development. Issues that need to be addressed from the managerial point of view include, for example, skills assessment and evolution, training, motivation, team building, and decision-making.
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.
- 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.
- Apromore: Apromore is a platform for management of repositories of process models developed in cooperation by University of Tartu, Queensland University of Technology, Suncorp and other partners. University of Tartu has specifically contributed to the modules for similarity search, comparison and merging of process models, identification of exact and approximate clones in process models, automated discovery of BPMN process models from event log, business process drift detection and log delta analysis. These tools are available within the Apromore platform but also distributed as separate standalone tools.
- 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.
- 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.
- 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.
- 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.
- 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.
- List of publications (maintained by the Estonian Centre of Excellence in Computer Science).