Research Group for Applied Software Engineering
Forschungsgruppe für Angewandte Softwaretechnik

Masters Thesis

  • Theses_Tobias_Röhm_Behavioural_Patterns

    Masterthesis
    Detecting Behavioural Patterns in User Actions
    Advisor
    Tobias Röhm
    Author
    Iulia Gaina
    Date
    DD.MM.YYYY
    DESCRIPTION MISSING
  • Theses_Tobias_Röhm_Classification_User_Feedback

    Masterthesis
    Classification of User Feedback for Software Evolution
    Advisor
    Tobias Röhm
    Author
    Muhammad El-Halaby
    Date
    DD.MM.YYYY
    DESCRIPTION MISSING
  • Theses_Tobias_Röhm_Intelligent_System_Construction_UI_Webapp

    Masterthesis
    An Intelligent System for Constructing User Interfaces for Web Applications
    Advisor
    MISSING
    Author
    Bardh Lohaj
    Date
    DD.MM.YYYY
    DESCRIPTION MISSING
  • Theses_Tobias_Röhm_Mining_Visualizing_Feedback

    Masterthesis
    Mining and Visualizing User Feedback for Software Evolution
    Advisor
    MISSING
    Author
    Padma Bhuvanagiri
    Date
    DD.MM.YYYY
    DESCRIPTION MISSING
  • Theses_Tobias_Röhm_Recommending_Automating_Frequently_Patterns

    Masterthesis
    Recommending and Automating Frequently Occurring Action Patterns of Software End Users
    Advisor
    MISSING
    Author
    Nadeem Ahmed
    Date
    DD.MM.YYYY
    DESCRIPTION MISSING
  • Theses_Tobias_Röhm_Towards_Systematic_User_Involvement

    Masterthesis
    Towards Systematic User Involvement in Software Engineering
    Advisor
    Dennis Pagano
    Author
    Rana Alkhadi
    Date
    2012
     
  • Theses_Tobias_Röhm_User_Context_Information_Bug_Fixing

    Masterthesis
    Presenting User and Context Information to Developers during Bug Fixing
    Advisor
    Tobias Röhm
    Author
    Nigar Gurbanova
    Date
    DD.MM.YYYY
    DESCRIPTION MISSING
  • Theses_Yang_Li_Brick_Pattern_Energy_Management

    Masterthesis
    Applying the Brick Pattern in the Development of a Framework for Energy Management
    Advisor
    Yang Li
    Author
    Marko Lalic
    Date
    15.09.2015
     
  • Theses_Yang_Li_Semiformal_Requirements_Specification_Language

    Masterthesis
    Application and Evaluation of s Semiformal Requirements Specification Language: a Case Study
    Advisor
    Yang Li and Stephan Krusche
    Author
    David Frey
    Date
    15.06.2015
     Many software projects suffer from low customer acceptance levels, late change requests and development cost overruns. A main cause of these problems is a lack of shared understanding among stakeholders. Traditional requirements specification languages and methods face difficulties to create and maintain shared understanding. For example by representing requirements in several different models and transferring information from one model to another information is lost. Each transformation introduces errors and stakeholders are not capable of correcting those mistakes, because the models are not easy to understand. Projects without shared understanding between stakeholders are bound to fail. We propose a semiformal behavior-driven specification language that is derived from methods developed by practitioners over the last 10 years. Behavior-driven specification uses ubiquitous language to describe system behavior as acceptance criteria from a user perspective. These semiformal models are easy to understand for stakeholders and form a basis for communication across domains, thereby enabling shared understanding. We apply the behavior-driven specification language in an industrial case study with a small development team on a mobile application development project. In a survey we show that lack of shared understanding is a root cause of problems in the development team and in an experimental setup we show that behavior-driven specification establishes shared understanding of requirements. Moreover in another survey we observe the explanatory value of shared understanding as well as better acceptance and better team performance as outcomes of shared understanding in a real world project.
  • Theses_Zardosht_Hodaie_Context_aware_Assistance_System_for_Manual_Assembly

    MA-BA
    TUMA: Intelligent Tutoring System for Manual-Procedural Activities
    Advisor
    Zardosht Hodaie
    Author
     
    Date
    2017/2018

    A manual-procedural activities (MPA) involves following the steps of a given workflow for manipulating the physical world. Examples include manual assembly, repair and maintenance, different crafts, cooking, etc. To learn an MPA the trainee needs to master both the steps of the procedure and the hand skills required for manipulating physical objects and the using the tools. TUMA: An Intelligent Tutoring System for Manual-Procedural Activities supports trainees in learning an MPA. 

    Multiple topics available in context of the TUMA project. For details of the topics please see my chair web page

  • Theses_Zardosht_Hodaie_Gesture_Recognition_Conducting_Symphony_Orchestra

    Master's thesis
    Using Gesture Recognition Techniques for Conducting a Virtual Symphony Orchestra
    Advisor
    Zardosht Hodaie
    Author
    Alba Xhani
    Date
    2015
    Design and development of a virtual symphony orchestra that reacts to conducting gestures performed using a smart baton. The recognition of the gestures is based motion data sent from the baton.
  • Thesis - Paul Schmiedmayer - APIKit - A Declarative Framework for Defining Web Interfaces in Swift

    Bachelor's Thesis 
    APIKit - A Declarative Framework for Defining Web Interfaces in Swift
    Advisor
    Author
    Thomas Raith
    Date
    March 15, 2020 - July 15, 2020
    Abstract This thesis is exploring the creation of a domain-specific language (DSLs) for describing interfaces of web services. We investigate the possibility of a Swift language based definition language that allows Swift developers defining their web service interfaces by using Swift syntax and concepts independent of the concrete communication protocol. Therefore we compare different communication approaches and investigate their similarities and differences. As additional goal we want to explore possibilities that allow developers the usage of ORM functionalities (e.g. database connection and access, model definition, relations) of traditional Swift powered frameworks. You can find the open source implementation at https://github.com/Apodini/APIKit.
  • Thesis - Paul Schmiedmayer - Swift Based Web Development with WebAssembly

    Master's Thesis 
    Swift Based Web Development with WebAssembly
    Advisor
    Author
    Manuel Burghard
    Date
    December 15, 2019 - June 15, 2020
    Abstract WebAssembly is a new abstract instruction set primarily designed to target web browsers from higher level programming languages. To enable full stack web development in Swift, the Swift compiler should support targeting WebAssembly. This thesis will try to extend the Swift compiler to support WebAssembly and to compile the Swift Standard Library. Furthermore, the interaction with a web browser’s JavaScript API and the Document Object Model should be possible from Swift. Finally, the results will be evaluated by building a web application in Swift, including the client side code that runs in the browser. You can find the open source implementation at https://github.com/Apodini/webidl2swift.
  • Thesis - Stephan Krusche - Bachelor and Master Theses

    Master / Bachelor
    Step-wise exercises with interactive help tutorials in Artemis
    Advisor
     
    Many exercises include multiple tasks that depend on each other. Then it is impossible, difficult and/or demotivating for students to continue with the 2nd or 3rd task if they were not able to solve the 1st task. It is also misleading if the 1st task is finished and the student gets the feedback that e.g. 8 out of 12 test cases still fail. In this thesis, you will extend Artemis so that student can receive automatic help in form of live tutorials for exercise parts that they don't understand or cannot solve. Based on a template/solution diff, test coverage analysis and the connection between tasks, tests and code, Artemis will be able to automatically propose hints for tasks which can be further refined by instructors and linked to relevant lecture content. (Master thesis only) The thesis should also evaluate if these improvements help and motivate students to achieve a better learning experience. Artemis is open source and available on https://github.com/ls1intum/Artemis

     

    Master / Bachelor
    Further Development of Apollon (https://github.com/ls1intum/Apollon
    Advisor
      Apollon is an online modeling editor written in React. It offers an easy to use and lightweight experience to learn UML and other notations in an interactive environment. It runs as standalone version on https://apollon.ase.in.tum.de offering a collaborative modeling experience without accounts. It is also integrated into Artemis to enable modeling exercises. Students create models, tutors assess those models and provide feedback which students can then see in order to improve their modeling skills. In this thesis, Apollon should be enhanced with new features such as an improved live collaboration, new diagram types, and an improved experience when assessing UML models.

     

    Master / Bachelor
    Further Development of the IntelliJ Plugin Orion (https://github.com/ls1intum/Orion
    Advisor
      Orion already works for students to participate in programming exercises and for instructors to setup programming exercises, but not yet for the code review of programming exercises by tutors. Inline hints, the support for team based exercises and automatic conflict resolution would be other possible enhancements. 

      

    Master / Bachelor
    Development of an Eclipse Plugin for Artemis
    Advisor
      There is already an IntelliJ plugin for Artemis called Orion (https://github.com/ls1intum/Orion), it would also be interesting to develop an Eclipse plugin with the same feature set.

     

    Master / Bachelor
    Further Development of the Gitlab / Jenkins Integration in Artemis
    Advisor
      Programming exercises in Artemis can be realized with Bitbucket and Bamboo or with Gitlab and Jenkins. Currently, the integration with Gitlab and Jenkins is limited and does not offer all functionality. In this thesis, the missing features would be implemented. In addition, the concept of build agents and dockerized builds should be realized within Jenkins.

     

    Master / Bachelor
    Communication and Discussions on Artemis
    Advisor
      Discussions on Artemis are already context sensitive in Artemis, however their functionality is still limited. In this thesis, the features would be enhanced based on new functionility. Users should be able to link Artemis content (e.g. videos scenes, exercise tasks, specific lecture slides) in questions. There should be dedicated channels for tutor groups and internal communication (e.g. between instructors and tutors). In addition, the mechanism to prevent post duplication should be enhanced and the search for posts within a course should be improved.

     

    Master / Bachelor
    Templates for all Programming Languages in Artemis
    Advisor
      With its VCS and CI architecture, Artemis supports any programming language for programming exercises. Currently, it includes templates for many popular languages, however templates for a couple of languages is still missing. In this thesis, new templates for programming exercises will be developed and tested with the Bitbucket/Bamboo and Gitlab/Jenkins. In addition, static code analysis should be integrated into more programming exercise templates.

     

     
    Master / Bachelor
    Learning Paths in Artemis
    Advisor
      In this thesis, the learning analytics should be enhanced in Artemis to provide learning paths for students. It should be possible for instructors to define dependencies (prerequisite, conists of, duplicate) between learning goals. This information should be used to build individual paths based on the existing experiences of students and will provide first steps into adaptive learning.

     

    Master / Bachelor
    Improving the Communication with External Systems in Artemis
    Advisor
      The communication with the external systems (Bamboo, Bitbucket, Jenkins, Gitlab) in Artemis can be further improved. Artemis should store the console log of failed builds in the database and not always fetch it from the CI system. It should be possible to sync all build plans of an exercise in case the template build plan is changed. Tutors should be able to download the student repository including the tests to simplify the local setup. The build queue and the history of all build times of an exercise should be used to indicate students and instructors how long they need to wait for the next build.