Seminar Software-Engineering

The chair SEDA organizes the joint Software Engineering Seminar for Bachelor and Master students in winter semester 2019/20. The goal of the seminar is to introduce students to the critical reading, understanding, summarizing, and presentation of scientific papers. Contents are selected topics from the field of software and systems engineering, in particular:

  • Systems Engineering for Cyber-Physical Systems
  • Safety, Security, Reliability and Availability
  • Risk-Assessment and -Minimization
  • Model-Based Safety Analysis

News and Announcements

  • The topic assignment was announced by e-mail on 2018-10-12.
  • The kick-off meeting will take place on Friday 19 October, 10:00-10:30 in room 32-439.
  • The slides of the kick-off meeting can be downloaded as PDF.
  • The presentations are expected to take place on two dates. The first block is scheduled for 13 March and the second for 18 March (both in the morning 9-12 am).

Topics Overview

Note: Click on a topic to open the detailed view.

Description :

The identification of hazards is of fundamental importance for the safe design and operation of safety-critical systems. A popular technique in this area is the Hazard and Operability Analysis (HAZOP). The aim of this work is to give an overview of the technique as well as efforts in the literature to improve it, and to demonstrate the process with a small demo system.

Literature :

  • 1. Lawley, H. G. "Operability studies and hazard analysis." Chem. Eng. Prog. 70.4 (1974): 45-56.
  • 2. Dunjó, Jordi, et al. "Hazard and operability (HAZOP) analysis. A literature review." Journal of hazardous materials 173.1-3 (2010): 19-32.

Supervisor:

Felix Möhrle

Language:

English/German

Description :

The identification of hazards is of fundamental importance for the safe design and operation of safety-critical systems. A popular technique in this area is the Hazard and Operability Analysis (HAZOP). The aim of this work is to search and summarize efforts in the literature to automate the HAZOP proces.

Literature :

  • 1. Lawley, H. G. "Operability studies and hazard analysis." Chem. Eng. Prog. 70.4 (1974): 45-56.
  • 2. Dunjó, Jordi, et al. "Hazard and operability (HAZOP) analysis. A literature review." Journal of hazardous materials 173.1-3 (2010): 19-32.

Supervisor:

Felix Möhrle

Language:

English/German

Description :

Binary Decision Diagrams (BDDs) are a modern data structure for handling Boolean functions. They are also an efficient means of analyzing fault trees. Since the order of variables has a large influence on the complexity of the resulting BDD, good heuristics are required to ensure efficient analysis. The aim of this work is to summarize a small collection of heuristics and apply them to an exemplary fault tree to compare their effectiveness.

Literature :

  • 1. Bouissou, M., F. Bruyere, and A. Rauzy. "BDD based fault-tree processing: A comparison of variable ordering heuristics." Proceedings of European Safety and Reliability Association Conference, ESREL’97. 1997.
  • 2. Jung, Woo Sik, Sang Hoon Han, and Jaejoo Ha. "A fast BDD algorithm for large coherent fault trees analysis." Reliability Engineering & System Safety 83.3 (2004): 369-374.

Supervisor:

Felix Möhrle

Language:

English/German

Description :

Description Openness is defined in several ways in various fields. Openness with respect to systems engineering, is a scenario where in different systems can integrate with each other during operation to share information or exchange important certificates to achieve a common goal. Similarly, openness is defined in different way in case of industrial production. The ever changing market trends, customer specific requirements for various products have triggered the need of new production systems which are flexible and adaptable to these. But openness is another step further, in Production systems. Openness can be a solution to handle this ever changing market needs and make manufacturer a competent player in today’s economy.

Literature :

  • 1. Redlich, Tobias, et al. "The Strategy of Openness in industrial production." Management of Engineering and Technology (PICMET), 2015 Portland International Conference on. IEEE, 2015.
  • 2. Redlich, Tobias, et al. "The impact of openness on value co-creation in production networks." Procedia CIRP 16 (2014): 44-49.
  • 3. Wulfsberg, Jens Peter, Tobias Redlich, and Franz-Ludwig Bruhns. "Open production: scientific foundation for co-creative product realization." Production Engineering 5.2 (2011): 127-139.
  • 4. Propris, Lisa De, Stefano Menghinello, and Roger Sugden. "The internationalisation of production systems: embeddedness, openness and governance." Entrepreneurship and regional development 20.6 (2008): 493-515.

Supervisor:

Nishanth Laxman

Language:

English

Description :

Description Modern embedded systems are getting complex day by day, more connected and particularly complex and highly uncertain is the environment in which they are being deployed. System developers are not completely aware of where and how their systems will be deployed. This might result in operational uncertainties which might cause improper and sometimes accident prone functioning of the systems. Self-Adaptive systems (SAS) are expected to adapt to unanticipated events which occur during operation (Runtime) using imperfect information (uncertainty) about their environment. SASs provide functionalities like Self – Configuration, self – protection against threats and so on. Engineering such systems which will be self-aware and context aware is quite difficult. It will be useful to have a look into present approaches for engineering such systems and understand them.

Literature :

  • 1. Krupitzer, Christian, et al. "A survey on engineering approaches for self-adaptive systems." Pervasive and Mobile Computing 17 (2015): 184-206.
  • 2. De Lemos, Rogério, et al. "Software engineering for self-adaptive systems: A second research roadmap." Software Engineering for Self-Adaptive Systems II. Springer, Berlin, Heidelberg, 2013. 1-32.
  • 3. Macías-Escrivá, Frank D., et al. "Self-adaptive systems: A survey of current approaches, research challenges and applications." Expert Systems with Applications 40.18 (2013): 7267-7279.
  • 4. Elkhodary, Ahmed, Naeem Esfahani, and Sam Malek. "FUSION: a framework for engineering self-tuning self-adaptive software systems." Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering. ACM, 2010.

Supervisor:

Nishanth Laxman

Language:

English

Beschreibung :

Description CACC is extended version of Adaptive cruise control in cars. Systems / Vehicles with CACC are being used to form platoons on highways and claim to improve Performance, fuel efficiency while considering the safety of own and other vehicles, and humans involved as well. It will be interesting to know, exactly to what extent is it advantageous and feasible in actual traffic scenarios, which are highly dynamic in nature and also see if such systems can be reliable.

Literature :

  • 1. Naus, Gerrit, et al. "Cooperative adaptive cruise control." IEEE automotive engineering symposium Eindhoven, The Netherlands. Vol. 6. 2009.
  • 2. Van Arem, Bart, Cornelie JG Van Driel, and Ruben Visser. "The impact of cooperative adaptive cruise control on traffic-flow characteristics." IEEE Transactions on Intelligent Transportation Systems 7.4 (2006): 429-436.
  • 3. Milanés, Vicente, et al. "Cooperative Adaptive Cruise Control in Real Traffic Situations." IEEE Trans. Intelligent Transportation Systems 15.1 (2014): 296-305.
  • 4. Shladover, Steven, Dongyan Su, and Xiao-Yun Lu. "Impacts of cooperative adaptive cruise control on freeway traffic flow." Transportation Research Record: Journal of the Transportation Research Board 2324 (2012): 63-70.

Supervisor:

Nishanth Laxman

Language:

English

Description :

The growing complexity of modern information systems has lead to self-adaptive systems (SAS). These systems are capable of automatically modifying themselves in response to change in their ownselves or the operating environment. This modification is known as adaptation which is performed in multiple ways like: changing the parameters or the system structure. The objective of this seminar is to understand SAS, evaluate and categorize their adaptation techniques based on the type and domains in which SAS are used. The literature mentioned below is highly recommended but, is not limited to it.

Literature :

  • A Survey on Engineering Approaches for Self-Adaptive Systems (Extended Version)
  • A Taxonomy of Compositional Adaptation
  • Component-Based Modeling and Verification of Dynamic Adaptation in Safety- Critical Embedded Systems
  • models@run.time to support dynamic adaptation
  • System Support for Adaptive Pervasive Applications
  • 3PC: System Support for Adaptive Peer-to-Peer Pervasive Computing

Supervisor:

Nikita Haupt

Language:

English

Description :

The growing complexity of modern information systems has lead to self-adaptive systems (SAS). These systems are capable of adaptation in response to change in their ownselves or the operating environment. SAS is composed of adaptation logic and managed resources. The former controls the adaptation based on a metric. There exist multiple aspects to controls of adaptation for SAS. The objective of this seminar is to understand SAS and evaluate different adaptation controls based on their type and application domains of SAS. The literature mentioned below is highly recommended but, is not limited to it.

Literature :

  • Self-Adaptive Software: Landscape and Research Challenges
  • A Survey on Engineering Approaches for Self-Adaptive Systems (Extended Version)
  • On Patterns for Decentralized Control in Self-Adaptive Systems
  • Using Architecture Models for Runtime Adaptability
  • Self-Organising Software Architectures for Distributed Systems
  • Autonomic Computing

Supervisor:

Nikita Haupt

Language:

English

Description :

The growing complexity of modern information systems has lead to self-adaptive systems (SAS). These systems are capable of adaptation in response to change in their ownselves or the operating environment. For parameter and structural adaptation purposes, differt programming paradigms like: component based (CBSE), aspect oriented etc. can be used. The objective of this seminar is to understand the concepts of SAS w.r.t different programming paradigms and specially assess the pros and cons of CBSE for SAS based on their application domains. The literature mentioned below is highly recommended but, is not limited to it.

Literature :

  • A Survey on Engineering Approaches for Self-Adaptive Systems (Extended Version)
  • Supporting the Model Driven Development of Reflective, Component-based Adaptive Systems
  • Composing Adaptive Software
  • Engineering Adaptation: A Component-based Model
  • A Component-Based Architecture Template for Adaptive System Design

Supervisor:

Nikita Haupt

Language:

English

Description :

Instead of running software faster (i.e., with higher frequency), now days processors are being manufactured with the increasing number of cores that run software threads concurrently. Development of multithreaded software is complex and requires an appropriate support from programming languages. This seminar topic aims at investigating available libraries that support threads in C and C++, and their comparison. Comparison should investigate native thread support available in recent C/C++ standards (e.g., C++11, C++14), as well as other libraries (e.g., POSIX), and categorize capabilities introduced with every revision of standards. The comparison criteria shall focus on available synchronization mechanisms, portability, thread manipulation, sharing data, performance, support by IDE and compilers, annotations, operating system and bare metal support, etc. The topic also aims to investigate how functions offered by these libraries propagate to the operating system kernel functions.

Literature :

  • The Problem with Threads, Edward A. Lee, 2006
  • Pthreads Programming, Nichols Bradford, Buttlar Dick, Farrell Jacqueline Proulx, Sebastopol, CA, USA:O’Reilly & Associates, Inc.; 1996.
  • An Empirical Study on C++ Concurrency Constructs, Di Wu ; Lin Chen ; Yuming Zhou ; Baowen Xu, Oct. 2015
  • LC/DC: Lockless Containers and Data Concurrency a Novel Nonblocking Container Library for Multicore Applications, Damian Dechev ; Pierre Laborde ; Steven D. Feldman, 2013
  • NSTX-U Advances in Real-Time C++11 on Linux, Keith G. Erickson, 2015
  • https://www.youtube.com/watch?v=GNw3RXr-VJk
  • https://www.youtube.com/watch?v=paK38WAq8WY

Supervisor:

Jasmin Jahic

Language:

English

 Description :

Instead of running software faster (i.e., with higher frequency), now days processors are being manufactured with the increasing number of cores that run software threads concurrently. Development of multithreaded software is complex and requires an appropriate support from programming languages. This seminar topic aims at investigating available libraries that support threads in Java, and their evolution through time. The comparison criteria shall focus on available synchronization mechanisms, thread manipulation, sharing data, performance, support by IDE, annotations, etc. During the investigation, it is required to compare memory models of C++ and Java. The topic also aims to investigate how functions offered by these libraries propagate to the operating system kernel functions.

Literature :

  • The Problem with Threads, Edward A. Lee, 2006
  • Foundations of the Cpp concurrency memory model, Hans-J. Boehm, Sarita V. Adve, 2008
  • The Java Memory Model, Jeremy Manson and William Pugh, Sarita V. Adve, 2005
  • https://www.youtube.com/watch?v=TnCWTPuWzIk

Supervisor:

Jasmin Jahic

Language:

English

Description :

Instead of running software faster (i.e., with higher frequency), now days processors are being manufactured with the increasing number of cores that run software threads concurrently. Development of multithreaded software is complex and prone to bugs. This seminar topic aims at investigating available open source tools for finding concurrency bugs. The focus will be on ThreadSanitizer and Helgrind tools, but it is expected to add more tools to the list. The comparison criteria is identified by our FERA framework (execution Monitoring, supported synchronization primitives, concurrency bugs, software synchronization intentions, test case generation, coverage, precision, performance, programming language, benchmark). The topic shall also investigate support for the tools in different operating systems and IDEs.

Literature :

Supervisor:

Jasmin Jahic

Language:

English

Description :

Considering measured information about team performance provides an objective view of a Software Engineering team’s productivity. With data analyses, the measurements can be used to improve a team’s performance as well as social cohesion being substantial for the quality of a later product. Further, when developing new software that should support software development teams, such metrics with corresponding data can be used to evaluate the system. The goal of this seminar topic is to conduct a literature review about team metrics and compare existing approaches regarding their focus (e.g. team creativity, team cohesion) and the corresponding required data.

Literature :

Supervisor:

Lena Sembach

Language:

English/German

Description :

The identification of hazards is of fundamental importance for the safe design and operation of safety-critical systems. A popular technique in this area is the Hazard and Operability Analysis (HAZOP). The aim of this work is to give an overview of the technique as well as efforts in the literature to improve it, and to demonstrate the process with a small demo system.

Literature :

  • Please contact the supervisor

Supervisor:

Anna Maria Vollmer

Language:

English/German

Description :

Provide definitions of the terms „virtual teams“ and „distributed teams“, characterize their way of working based on literature and compare both concepts.

Literature :

  • Please contact the supervisor

Supervisor:

Anna Maria Vollmer

Language:

English/German

Description :

Identify and consolidate the challenges when using Agile in the development of safety-critical systems. Knowledge of Process Modeling is recommended for this topic.

Literature :

  • Safety-Critical Systems and Agile Development: A Mapping Study
  • Challenges and Opportunities in Agile Development in Safety Critical Systems – A Survey
  • Agile Usage in Embedded Software Development in Safety Critical Domain–A Systematic Review

Supervisor:

Sven Theobald

Language:

English/German

Description :

A guided Systematic Literature Review will be performed by the student with the scope of finding published faults, errors and failures for Wifi. The findings will be filled in a given taxonomy.

Literature :

  • Azizienis Algirdas, L. J.-C. R. B. L. C. (2004). Basic Concepts and Taxonomy of\nDependable and Secure Computing. IEEE Transactions on Dependable and Secure Computing, 1(1), 11–33. doi.org/10.1109/TDSC.2004.2
  • Cauffriez, L., Ciccotelli, J., Conrard, B., & Bayart, M. (2004). Design of intelligent distributed control systems: A dependability point of view. Reliability Engineering and System Safety, 84(1), 19–32. doi.org/10.1016/S0951-8320(03)00174-1
  • Tool-supported design of data aggregation processes in cloud monitoring systems
  • Cai, S., Gallina, B., Nyström, D., Seceleanu, C., & Larsson, A. (2017). Design of Cloud Monitoring Systems via DAGGTAX: A Case Study. Procedia Computer Science, 109(2016), 424–431. doi.org/10.1016/j.procs.2017.05.412

Supervisor:

Emilia Cioroaica

Language:

English

Description :

A guided Systematic Literature Review will be performed by the student with the scope of finding published faults, errors and failures for Wifi. The findings will be filled in a given taxonomy.

Literature :

  • Azizienis Algirdas, L. J.-C. R. B. L. C. (2004). Basic Concepts and Taxonomy of\nDependable and Secure Computing. IEEE Transactions on Dependable and Secure Computing, 1(1), 11–33. doi.org/10.1109/TDSC.2004.2
  • Cauffriez, L., Ciccotelli, J., Conrard, B., & Bayart, M. (2004). Design of intelligent distributed control systems: A dependability point of view. Reliability Engineering and System Safety, 84(1), 19–32. doi.org/10.1016/S0951-8320(03)00174-1
  • Tool-supported design of data aggregation processes in cloud monitoring systems
  • Cai, S., Gallina, B., Nyström, D., Seceleanu, C., & Larsson, A. (2017). Design of Cloud Monitoring Systems via DAGGTAX: A Case Study. Procedia Computer Science, 109(2016), 424–431. doi.org/10.1016/j.procs.2017.05.412

Supervisor:

Emilia Cioroaica

Language:

English

Description :

A guided Systematic Literature Review will be performed by the student in the field of trust and reputation computing

Literature :

  • Trust and Reputation Model in Peer-to-Peer Networks (2003 Paper)
  • Towards pre-standardization of trust and reputation models for distributed and heterogeneous systems
  • Computational models of trust and reputation: agents, evolutionary games, and social networks
  • .. more will be given

Supervisor:

Emilia Cioroaica

Language:

English

 Description :

A guided Systematic Literature Review will be performed by the student with the scope of identifying ways in which a sw component can detect it is under evaluation

Literature :

  • Detecting System Emulators Thomas Raffetseder, Christopher Kruegel, and Engin Kirda, Secure Systems Lab, Technical University of Vienna, Austria {tr,chris,ek}@seclab.tuwien.ac.at
  • VERIFICATION AND VALIDATION OF SIMULATION MODELS, Robert G. Sargent
  • .. more will be given

Supervisor:

Emilia Cioroaica

Language:

English

Timeline

Topic assignment2018-10-12
Kickoff-Meeting2018-10-19 - 10:00-10:30 in room 32-439
Annotated table of contents2018-11-23
First version of written papers2019-01-18
Final version of written papers2019-02-08
Presentations2019-03-13 and 2019-03-18 - 9:00-12:00 in room 46-267


During the kick-off meeting, the organization of the seminar is discussed and contact with the supervisors is established. After 5 weeks, the participants are to submit an annotated table of contents with key points on the planned content. In the following, all participants will prepare a written paper on their topic. The first draft version is due in mid-January and serves as the basis for final feedback from the supervisors. The final version is due in February. After submission of the written work, the topics will be presented at a concluding meeting. präsentiert.

Registration

To register for the seminar, please send us a short email with the following information.

  • Name
  • Course of studies
  • Matriculation number
  • Bachelor or master

Die deadline for registration is 2018-09-28. A final confirmation can only be given after the registration deadline. Due to the high demand, topics will only be available to registered students.

Material

The seminar will be held in English. Bachelor students are free to choose between German or English.

Paper

Please use themodified LNCS template   for your paper. Your paper should be about 10 pages (bachelor) or 15 pages (master) long (not including figures).

Presentations

Please use our templates for PowerPoint, LibreOffice und LaTeX . The presentations must not exceed 15 minutes (bachelor) or 20 minutes (master).

Organizers