Frü­he­re For­schungs­the­men

Contact Person: Florian Rittmeier

Introduction

Business Process Management (BPM) describes a holistic approach to maintain and develop business processes along the entire process life cycle. This ranges from process elicitation and modeling to the analysis, evaluation, identification and implementation of improvement potentials. Thereby, state-of-the-art approaches on process mining and pattern-based process analysis are crucial.

Contribution

In the field of BPM, we collaborate with other disciplines from business economics to business informatics.

Methods of BPM enable firms to advance the digitalization of their business processes and encounter the digital transformation. Thereby, the systematic analysis of processes and business data play an important role. We investigate and further develop methods to identify existing process weaknesses and support the digitalization of business processes with a particular focus on small and medium-sized enterprises. Examples of such digitalization potentials are the improvement of data flow, decision support through the use of assistance systems as well as the closure of media breaks.

Topics

  • Business Process Improvement (BPI)
  • Process Weakness Patterns
  • Business Process Discovery

Selected Papers

  • F. Rittmeier, G. Engels, A. Teetz, Process Weakness Patterns for the Identification of Digitalization Potentials in Business Processes, in: F. Daniel, Quan Z. Sheng, H. Motahari (Eds.), Business Process Management Workshops, Springer International Publishing, Cham, 2019, pp. 531–542. (View in RIS)
  • F. Rittmeier, G. Engels, A. Teetz, Effective and Efficient Identification of Digitalization Potentials in Business Processes, In German, In Modellierung (Workshops), Vol. 2060, CEUR Workshop Proceedings, CEUR-WS.org. 2018, pp. 215-221. (View in RIS)

Contact Person: Florian Rittmeier, Dennis Wolters

Introduction

Requirements engineering provides languages and techniques to bridge the gap between informal, imprecise, and vague user expectations on the one hand and precise formalized specifications on the other hand. These formal specifications are used in succeeding software development steps to realize a software system according to the needs of future users. Typically, requirements engineers support end-users in identifying their needs on a software solution and formalize these into specific requirements. Approaches to improve the step from imprecise to precise descriptions range from domain-specific, structured requirements description languages, over less operational, more descriptive, goal-oriented approaches, up to novel iterative, agile methods.

Contribution

Our research group contributes to four major areas in the field of requirements engineering.

  1. Empowering end-users to produce behavioral requirements specifications on their own. This work is embedded in a multidisciplinary Collaborative Research Center called On-The-Fly (OTF) Computing. The overall objective here is to do research on automating the whole software development and deployment process, within a specific domain, in envisioned future software service markets.
  2. Novel software solutions present the challenge that the exact requirements and problems only become clear when the solution is used. Hence, we are developing requirements elicitation techniques that foster the participation of the end users. With the help of explorative and experimental approaches, we empower the discovery of underlying actual user needs and their possible matching solutions. This increases the likelihood that these software solutions will result in an innovation accepted by end users on the market.
  3. The landscape of computing devices changed rapidly over the last years. Applications for end-users are no longer developed primarily for desktop computer but instead for a wide range of computing devices, like smartphones, tablets, wearables, or digital assistants. In addition, applications shall seamlessly interact over device boundaries. We developed approaches to document the requirements for such systems by taking the device aspect properly into account when modeling requirements.
  4. To succeed in competition with other companies, it is necessary for companies to exploit digitization potentials in their business processes. We develop methods for requirements analysis regarding the use of digital solutions to improve the quality of business processes.

Topics

  • Human-centered software engineering
  • Design Thinking
  • Evolutionary Software Systems
  • Experimentation
  • Artificial Intelligence for Requirements Engineering
  • Business Process Improvement

Selected Publications

  • H. Fischer, F. Rittmeier, T.F. Strothmann, N. Schwenniger, Partizipation von Beschäftigten in der Gestaltung einer digitalisierten Arbeitswelt 4.0 mittels einer Canvas-Methode, in: C.K. Bosse, K.J. Zink (Eds.), Arbeit 4.0 im Mittelstand, Springer Gabler, Berlin, Heidelberg, 2019. (View in RIS)
  • Holger Fischer and Björn Senft and Florian Rittmeier and Stefan Sauer: A Canvas Method to Foster Interdisciplinary Discussions on Digital Assistance Systems. In Proceedings of the 20th International Conference on Human-Computer Interaktion (HCI International 2018). Springer, LNCS, vol. 10918, pp. 711-724 (2018)
  • Lorijn van Rooijen and Frederik Simon Bäumer and Marie Christin Platenius and Michaela Geierhos and Heiko Hamann and Gregor Engels: From User Demand to Software Service: Using Machine Learning to Automate the Requirements Specification Process. In Fourth International Workshop on Artificial Intelligence for Requirements Engineering (AIRE'17), pp. 379-385 (2017) 
  • Marcel Wever and Lorijn van Rooijen and Heiko Hamann: Active Coevolutionary Learning of Requirements Specifications from Examples. In Genetic and Evolutionary Computation Conference (GECCO), pp. 1327-1334 (2017)
  • Wolters D, Gerth C, Engels G. Visual Requirements Modeling for Cross-Device Systems. Computer Science and Information Systems (ComSIS). 2017;14(2):517-536.
  • Björn Senft and Holger Fischer and Simon Oberthür and Nitish Patkar: Assist Users to Straightaway Suggest and Describe Experienced Problems. In Proceedings of the 20th International Conference on Human-Computer Interaktion (HCI International 2018). Springer, LNCS, vol. 10918, pp. 758-770 (2018)
  • Florian Rittmeier and Gregor Engels and Alexander Teetz: Effective and Efficient Identification of Digitalization Potentials in Business Processes. In German. In Modellierung (Workshops). Vol. 2060. CEUR Workshop Proceedings. CEUR-WS.org. 2018, pp. 215-221.

Contact Person: Florian Kraus

Introduction

Self-X systems refer to complex technical systems, which are able to react to different conditions and requirements by hardware and software adaptation. These adaptations include adjustments to the environment and the users or to errors and failures within the system itself. The necessary skills and characteristics, such as Self-Optimization, Self-Configuration or Self-Healing, give these systems their name and provide them with a certain autonomy. Their design often requires an interdisciplinary approach in the fields of computer science, electrical engineering and mechanical engineering.

Our main research areas include

  • Artificial immune systems
  • Adaptive processes
  • Adaptive UIs

Artificial Immune Systems
One way of achieving self-healing properties is through so-called Artificial Immune Systems. These are employed to detect and correct errors in Self-X Systems. Inspired by their biological counterparts and based on the concepts of organic computing, their functional principle is divided into four phases:

  1. Monitoring and error detection
  2. Error evaluation and diagnosis
  3. Planning of countermeasures
  4. Execution of countermeasures

Through the use of different methods of pattern recognition and machine learning, Artificial Immune Systems are even able to learn to detect previously unknown errors and correct them autonomously.

Adaptivity Engineering for Flexible and Adaptive Processes

From a software engineering perspective, the digital transformation and especially its process specifications can be seen as a special kind of self-adaptive systems. Self-adaptive systems are able to check relevant working conditions about their internal and external factors. If any of the conditions is evaluated to be failing (or to be suboptimal), the system may start procedures to adapt own and foreign properties to accommodate.

On top of the Adaptivity Engineering approach Adapt Cases, our research focusses on a redefinition of corresponding concepts regarding four main topics:

  1. Modeling languages for specifying domain-specific process models,
  2. Operations for adaptation of business processes and their environment,
  3. Support-Patterns for flexibility issues in highly interconnected and flexible processes,
  4. Quality Assurances through interdisciplinary and innovative analysis methods

We believe that these four topics build a holistic fundament for a modern Business Process Management within the digital transformation.

Contact Person: Ivan Jovanovikj

Introduction

Testing is an important activity in software engineering as it deals with observing the execution of a software system to validate whether it behaves as intended, i.e., as specified in the requirements. Beyond the basic task of checking a sample of runs, testing encompass a variety of techniques, actors, and activities, and poses a lot of complex challenges.

With the continuous growth of the software systems regarding the complexity, pervasiveness and criticality, ensuring that it behaves according to the specified requirements, from both functional and non-functional perspective, becomes more crucial but also more difficult and expensive. Software models are used in software development for different purposes, e.g. for specifying the requirements, for documenting design aspects or for code generation. Models can also be used for testing purposes, e.g. for generating test cases and test scripts, as test oracles, and for defining test selection criteria. Model-based testing (MBT) advocates the systematic use of models for testing activities. MBT mostly uses both models design phase or explicit test models.

Contribution and Topics

In our research, we study the problem of reusing test cases in software migration projects. Firstly, we assess the quality of the existing test cases in order to decide whether to migrate them or not. We propose test case quality plans for assessment of test case quality. It is a method that relies on GQM (Goal Question Metric) and standardized quality model like ISO 25000 and enables creation of quality plans that are context-specific.

By employing software reengineering techniques and situational method engineering, we enable creation of model-driven migration methods for test case [2]. These methods are context-specific which means they are specially tailored to be executed in a certain environment for specific type of test cases. In the first step test models are extracted out of the existing test cases and then, if needed, restructuring of the test models is applied. The restructured test models are then used as basis for generating test cases for testing the migrated system.  The last step is actually model-based testing or more specifically model-driven testing.

Last but not least, we do research regarding the correctness of the test case migration. Crucial requirement in test case migration is that the migrated test cases test the same functionality of the system as before the migration, i.e., a behavioral equivalence of the test cases must be proved. To address this requirement we apply mutation testing [3], as a technique to identify false positives and false negative among the test cases, i.e., to identify test cases which identify non-existing errors and test cases that fail to identify existing errors in the migrated system.

Publications

[1] Ivan Jovanovikj, Vishwak Narasimhan, Gregor Engels, Stefan Sauer: Context-specific Quality Evaluation of Test Cases, In: Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development (MODELSWARD'18) (2018).

[2] Ivan Jovanovikj, Gregor Engels, Anthony Anjorin and Stefan Sauer: Model-Driven Test Case Migration: The Test Case Reengineering Horseshoe Model, In Proceedings of the CAiSE'18 Forum at the 30th International Conference on Advanced Information Systems Engineering (CAiSE'18) (2018)

[3] Ivan Jovanovikj, Enes Yigitbas, Anthony Anjorin, Stefan Sauer: Who Guards the Guards? On the Validation of Test Case Migration. In Softwaretechnik-Trends, Proceedings of the 20th Workshop Software-Reengineering & Evolution (WSRE) (2018)