[English]
[Deutsch]

Chair of Software Engineering: Dependability
Prof. Dr.-Ing. Liggesmeyer

Home

Research

Teaching

Staff

Job Offers

Publications

Contact


Datenschutzerklärung

Impressum

Seminar Software-Engineering

The SEDA chair offers the joint software engineering seminar for bachelor and master students during the 2018/19 winter semester. The goal of the seminar is the introduction into scientific methods including critical reading, understanding, summarizing and presentation of published scientific papers. Seminar topics are from the software engineering domain with a focus on

Registration

To register for the seminar, please send us a short email with the following information.
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.

Topics

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


T1 (Bachelor/Master): Overview of the Hazard and Operability Analysis (HAZOP)
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

T2 (Bachelor/Master): Automating the Hazard and Operability Analysis (HAZOP)
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 process.
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

T3 (Bachelor/Master): A Practical Comparison of Heuristics to Optimize the Variable Ordering in Binary Decision Diagrams (BDDs)
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

T4 (Bachelor/Master): Openness in Industrial production
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

T5 (Master): Engineering approaches for Self Adaptive Systems (SAS)
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

T6 (Bachelor/Master): Co-operative adaptive Cruise control (CACC) in real world traffic scenarios
Description
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

T7 (Master): Evaluation and categorization of different adaptation techniques for self-adaptive systems
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

T8 (Master): Evaluating different aspects of adaptation control in self-adaptive systems
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

T9 (Master): A Survey of Component Based Software Engineering approaches for self-adaptive systems
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

T10 (Bachelor/Master): Comparison of libraries that support threads in C and C++
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 Jahić
Language English

T11 (Master): Investigation of support for multithreaded software in Java
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 Jahić
Language English

T12 (Bachelor/Master): Survey of open source tools for testing multithreaded software
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 Jahić
Language English

T13 (Bachelor/Master): Team Metrics
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 German/English

T14 (Bachelor/Master): Tools for Virtual Collaboration
Description
Teams are using tools to support their way of working (e.g., chats, meeting tools like Skype or Zoom, online repositories like Redmine or GitLab,…). Especially, in the case of distributed/virtual teams. In such settings, the team is not always co-located and some or all people are working from home, from co-working spaces in different cities or from another local office of the company. The objective of this seminar is to identify, characterize, and compare tools used in virtual/ distributed teams to support their collaboration. This characterization should include (but is not limited to): kind of usage/ benefits, frequency of usage, API description (if available), …
Literature
  • Please contact the supervisor
Supervisor Anna Maria Vollmer
Language German/English

T15 (Bachelor): Virtual Teams versus Distributed Teams
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 German/English

T16 (Bachelor/Master): Challenges of Agile in Safety
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

T17 (Bachelor/Master): SLR towards finding Fault, Error, Failures for WiFi
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. https://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. https://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. https://doi.org/10.1016/j.procs.2017.05.412
Supervisor Emilia Cioroaica
Language English

T18 (Bachelor/Master): SLR towards finding Fault, Error, Failures for LTE
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. https://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. https://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. https://doi.org/10.1016/j.procs.2017.05.412
Supervisor Emilia Cioroaica
Language English

T19 (Bachelor/Master): Survey of methods for deriving trust and reputation
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

T20 (Bachelor/Master): Survey of way of detecting simulation
Description
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

News and Announcements

Timeline

Topic assignment 2018-10-12
Kickoff-Meeting 2018-10-19 - 10:00-10:30 in room 32-439
Annotated table of contents 2018-11-23
First version of written papers 2019-01-18
Final version of written papers 2019-02-08
Presentations 2019-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.

Material

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

Paper

Please use the modified 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, or LaTeX. The presentations must not exceed 15 minutes (bachelor) or 20 minutes (master).

Organizers