Beispiele für Bachelor- und Master-Arbeiten, sowie für Praktika, die am Lehrstuhl durchgeführt wurden

Utilization of Deep Learning for the Automatic Classification of Software Aspects

Betreuer

Barbara Paech, Michael Anders

Bearbeiter

Eileen Dickson

Beschreibung

Context and Motivation: Users give natural language feedback for software in online forums, which can be used by developers to create requirements. In order to categorize user feedback into categories which are relevant for requirements engineering, feedback can be classified into different categories. One such approach is the classification into dif- ferent software aspects. The TORE framework provides a basis for such a classification. The classification can be done manually by creating codes containing TORE categories for tokens, which can be done by one or multiple raters on the same documents. In order to limit mistakes stemming from the raters, the classifications can be compared by creating inter-rater agreements. This comparison can be supported by tools, which can simplify the process of resolving disagreements. However, manual classification is cost- and time-intensive. Therefore an algorithm is needed for the automatic classification of natural language user feedback into TORE-categories.
Contributions: This thesis contains three major contributions. Firstly, a tool support is provided for the comparison of an arbitrary number of annotations of the same dataset. Disagreements can be resolved by accepting or declining codes assigned to words. Ad- ditionally, agreement overviews as well as statistics are provided. Secondly, a literature review is conducted on automatic deep-learning-based classification of natural language user feedback from online forums. The review shows that many approaches use binary classification as a basis, although some use multi-class classification. Most of them use some kind of pre-processing, Word2Vec for word embeddings, and a neural network for the classification. Lastly, a classifier is implemented, based on a Bi-LSTM model for the automatic classification of natural language texts into TORE-categories. The classifier is trained on a manual annotation of forum data, and subsequently evaluated.
Results: A tool for the comparison of annotations is developed and implemented in Feed.UVL, and the quality is assured through extensive system tests and an informal usability test. The tool reuses existing views and functionalities, and is user-friendly in design, due to the use of multiple tool-tips and standardized icons. The underlying microservice architecture simplifies possible future extension of the algorithm. The automatic classification tool, based on a deep learning algorithm, is also implemented into Feed.UVL, and reuses the existing views and functionalities for the classification results. The accuracy achieved over all classes is about 52.74%, with a recall of 53.47%, precision of 54.59% and F1-score of 53.78%, which is mainly due to the small amount of training data, as well as a poorly chosen test dataset.

Download

 

Tool Support for the Automatic Analysis of Natural Language User Statements

Arbeit Masterarbeit, 2021

Betreuer

Barbara, PaechMichael Anders

Bearbeiter

Johannes Daub

Beschreibung

[Kontext und Motivation] Entwickler müssen die Anforderungen von Software-Nutzern, die
ihr Feedback meist in Form von Aussagen in natürlicher Sprache geben, kennenlernen. Die Verarbeitung
dieser Aussagen durch manuelle Kodierung ist jedoch eine aufwändige Aufgabe und
für große Datenmengen ungeeignet. Durch die Extraktion von Konzepten aus diesen Aussagen
können Entwickler Einblicke in die Sichtweise der Software-Nutzer gewinnen. Ein Software-
Werkzeug, das eine automatische Verarbeitung ermöglicht, kann bei diesem Prozess helfen.
[Beiträge] Diese Arbeit untersucht den Stand der Technik von Methoden zur Themenmodellierung
für Benutzerforen und wendet geeignete Methoden im Kontext der Konzepterkennung
auf einen manuell erhobenen und annotierten Interviewdatensatz an. Es wird ein Software-
Werkzeug zur automatischen Sprachverarbeitung mit dem Namen "Feed.UVL" erstellt und die
ausgewählten Methoden in dieses Werkzeug integriert. Das erstellte Software-Werkzeug bietet
eine Datensatzverwaltung, d. h. Datensätze können mit der Software gespeichert, überprüft
und gelöscht werden. Mit den implementierten Methoden können diese Datensätze auf
Konzepte hin analysiert werden. Mit der Ergebnisvisualisierung können die Analyseergebnisse
überprüft und die Leistung über den F1-Score auf einer Ground Truth bewertet werden.
Feed.UVL verwendet eine Microservice-Architektur, d. h. es kann leicht um neue Methoden
oder Funktionen erweitert werden. Die integrierten Methoden werden dann für die Aufgabe der
Konzepterkennung evaluiert. Eine Reihe von Qualitätssicherungsmaßnahmen, einschließlich
statischer Code-Analyse, Komponenten- und Systemtests, wurden ebenfalls mit dem erstellten
Werkzeug durchgeführt.
[Schlussfolgerung] Der Hauptteil der Arbeit war die Entwicklung eines neuartigenWerkzeugs
für die Verarbeitung natürlicher Sprache. DasWerkzeug hat ein klares und benutzerfreundliches
Design und unterstützt Forscher bei ihrer Analyse. Es können automatische Analyseaufgaben
durchgeführt werden, und die Benutzeroberfläche bietet eine umfangreiche Ergebnisanzeige,
einschließlich der Metriken false positives, false-negatives, Precision, Recall und F1-Score. Das
aktuelle Design und die Microservice-Architektur stellen sicher, dass das Werkzeug leicht für
weitere Analysemethoden und zukünftige Forschungsziele erweitert werden kann. Derzeit sind
zwei moderne Methoden zur Themenmodellierung (LDA und SeaNMF) integriert, die für die
Verwendung in der Konzepterkennung angepasst wurden. Die Evaluierung hat gezeigt, dass
ihre Präzision zwar relativ hoch ist (0,84 für LDA und 0,83 für SeaNMF), ihr Recall im Vergleich
zu einer manuell annotierten Ground Truth für den Einsatz in der Konzepterkennung
jedoch eher gering ist, was Raum für Verbesserungen und zukünftige Arbeiten lässt.

Download

Automated deployement of machine learning applications to the cloud

Arbeit Masterarbeit, 2020

Betreuer

Barbara Paech

Bearbeiter

Leon Radeck

Beschreibung

The use of machine learning (ML) as a key technology in artificial intelligence (AI) is becoming more and more important in the increasing digitalization of business processes. However, the majority of the development effort of ML applications is not related to the programming of the ML model, but to the creation of the server structure, which is responsible for a highly available and error-free productive operation of the ML application. The creation of such a server structure by the developers is time-consuming and complicated, because extensive configurations have to be made. Besides the creation of the server structure, it is also useful not to put new ML application versions directly into production, but to observe the behavior of the ML application with respect to unknown data for quality assurance. For example, the error rate as well as the CPU and RAM consumption should be checked. The goal of this thesis is to collect requirements for a suitable server structure and an automation mechanism that generates this server structure, deploys the ML application and allows to observe the behavior of a new ML application version based on real-time user data. For this purpose, a systematic literature review is conducted to investigate how the behavior of ML applications can be analyzed under the influence of real-time user data before their productive operation. Subsequently, in the context of the requirements analysis, a target-performance analysis is carried out in the department of a management consulting company in the automotive sector. Together with the results of the literature research, a list of user stories for the automation tool is determined and prioritized. The automation tool is implemented in the form of a Python console application that enables the desired functionality by using IaC (Infrastructure as code) and the AWS (Amazon Web Services) SDK in the cloud. The automation tool is finally evaluated in the department. The ten participants independently carry out predefined usage scenarios and then evaluate the tool using a questionnaire developed on the basis of the TAM model. The results of the evaluation are predominantly positive and the constructive feedback of the participants includes numerous interesting comments on possible adaptions and extensions of the automation tool.

Download

Comprehensive and Targeted Access to and Visualization of Decision Knowledge

Arbeit

Betreuer

Masterarbeit, 2020

Anja Kleebaum

Bearbeiter

Michael Anders

Beschreibung

[Context and Motivation] Developers need to document decisions and related decision knowledge during the software development process. This ensures that future decisions can be assessed in the right context and past decisions can be retraced and understood. The documentation of decision knowledge encompasses all aspects that comprise a decision, including the problem, alternatives, arguments for and against these alternatives, and the selected solution. Since the value of the documentation is not immediately apparent, it is important to provide tools that allow easy documentation and coherent visualization of the documented knowledge. It also demands maintenance of the documentation to ensure consistency and completeness.

[Contributions] This thesis provides a problem investigation, a treatment design, and an evaluation concerning the management and visualization of documented decision knowledge. The problem investigation was done in the form of a literature review on current approaches towards the grouping of decision knowledge. The results of the review show that decision grouping is often merely a small part of larger frameworks. These frameworks either use predefined labels for their groups or allow the users to freely select group names. The practical contributions in this thesis are the extension of the Jira ConDec plug-in, which provides features for the documentation and visualization of decision knowledge within Jira. In particular, a grouping possibility for decisions as well as respective views and filters were added to this plug-in. To keep the necessary time spent on the documentation process as low as possible, it was decided to use a mix of fixed groups, in the form of different decision levels and custom groups, which the user is free to assign. New views were implemented which allow users to see relationships between source code and Jira issues and a dashboard is built, which can be used to assess the completeness of decision knowledge within a Jira project. The implementation was preceded by a specification of requirements and a design phase. Extensive testing, including system and component tests, were part of the quality assurance phase. Lastly, an evaluation was done by creating and analysing a gold standard of decision knowledge documentation and a survey with developers who provided feedback on the plug-in extension.

[Conclusions] The main focus of the thesis was to improve the visualization of relationships between knowledge elements. The evaluation showed that especially those views, creating connections between Jira elements and code classes were highly anticipated by ConDec users, as support for this form of visualization did not exist. The newly implemented features were almost uniformly evaluated positively. Some concerns were expressed about a need for even more information to be displayed within the views. This was a result of the compromise between a wealth of information and a possible overload in individual views. Evaluation of the responsiveness and time behaviour of the newly implemented features also showed that loading times were passable but require more focus in future works to improve the user experience thoroughly.

Download  

Platform to Assist Medical Experts in Training, Application, and Control of Machine Learning Models Using Patient Data from a Clinical Information System

Arbeit

Betreuer

Masterarbeit, 2019

Anja Kleebaum

Bearbeiter

Matthias Greiner

Beschreibung

In recent years, clinical data scientists achieved major breakthroughs advancing machine learning models for the medical domain, which have great potential assisting medical experts. Machine learning models can be leveraged to assist medical experts in tasks such as analyzing and diagnosing patient data, for example, from computed tomography scans. However, it is a challenge to translate the latest advancements in academic research fields such as computer sciences and physics into clinical practice. For this purpose, clinical data scientists and medical experts need to closely collaborate. This thesis tackles challenges of accessibility and usability of state-of-the-art machine learning models as well as designing a scalable computing architecture. Hence, conceptual ideas of possible strategies, as well as a prototype of such a machine learning platform, are presented. A systematic literature review was conducted on the current approaches to create medical machine learning platforms, the management of machine learning models, and the version management of large data sets. Afterward, the functional and nonfunctional requirements of the new machine learning platform were elicited as part of the requirements analysis. Two streamlined workflows for clinical data scientists and medical experts were derived from the requirement analysis. The workflow for the clinical data scientists includes steps to define, train, and share machine learning methods, including pre- and postprocessing modules, and management of data sets. Medical experts are able to analyze patient data using pre-defined machine learning methods. Building on the result of these analyses, the architecture of the platform was derived. The architecture consists of a scalable infrastructure stack, a lightweight and easy-to-use web interface, as well as a backend component to provide the required functionalities. The final design decisions solve the issue of efficiently standardizing, parallelizing, and applying machine learning workflows within a scalable computing infrastructure. The proposed platform was evaluated with 22 participants, consisting of clinical data scientists (N=12) and medical experts (N=10). Both groups were asked to rate specific workflows of the platform, as well as the platform as a whole, and to provide additional ideas and feedback. 92% of the medical experts and 90% of the clinical data scientists rated their overall impression of the platform as very good. Furthermore, medical experts and clinical data scientists strongly agreed that the platform facilitates method development and collaborations with 92% and 90%, respectively. The conducted expert survey suggests that the here proposed platform could be used to develop, optimize, and apply machine learning methods in the medical domain and beyond, thereby easing the collaboration between medical experts and clinical data scientists.

Download  

 

DecXtract: Dokumentation und Nutzung von Entscheidungswissen in JIRA-Issue-Kommentaren

Arbeit Masterarbeit, 2018

Betreuer

Anja Kleebaum

Bearbeiter

Jochen Clormann

Beschreibung

[Kontext und Motivation] Zur Entwicklung eines Softwaresystems benötigen EntwicklerInnen Wissen über die Evolution der zugehörigen Softwareartefakte. EntwicklerInnen müssen beispielsweise vorangegangene Quellcodeänderungen verstehen, um eine neue Anforderung bzw. eine Änderung an einer bestehenden Anforderung zu implementieren. Dabei spielt Entscheidungswissen eine zentrale Rolle für die erfolgreiche Evolution eines Softwaresystems: EntwicklerInnen benötigen Wissen zu bereits getroffenen Entscheidungen, um eigene Entscheidungen zu treffen. Um neuen EntwicklerInnen in einem Softwareprojekt den Zugriff auf dieses Entscheidungswissen zu ermöglichen, ist es wichtig, dass Projektbeteiligte Entscheidungen dokumentieren. Dafür nutzen sie verschiedene Dokumentationsmöglichkeiten und halten Entscheidungswissen häufig informell in Commitnachrichten, Chatnachrichten oder Kommentaren fest.

[Beiträge] Diese Masterarbeit umfasst eine systematische Literaturrecherche, die Entwicklung des JIRA-Plug-Ins DecXtract sowie einen Datensatz als Goldstandard zur Evaluation. Die systematische Literaturrecherche beantwortet die Frage, welches Wissen EntwicklerInnen für das Verständnis von Quellcodeänderungen benötigen und welche Rolle Entscheidungswissen dafür spielt. Neben einer Liste mit konkreten Fragen, die EntwicklerInnen zu einer Quellcodeänderung stellen, zeigt die Literaturrecherche, dass EntwicklerInnen explizites Entscheidungswissen benötigen, dieses aber nicht dokumentiert oder auffindbar ist. Um Entscheidungswissen in Kommentaren explizit zu machen und seine Auffindbarkeit zu verbessern, wird das Entscheidungsdokumentationstool ConDec für JIRA um die Komponente DecXtract erweitert. DecXtract ermöglicht EntwicklerInnen, Text in Kommentaren von JIRA-Issues automatisch als Entscheidungswissen zu klassifizieren sowie eigene Kommentare manuell als explizites, klassifiziertes Entscheidungswissen zu dokumentieren. EntwicklerInnen können Entscheidungswissen in Kommentaren zu bestehenden Softwareartefakten wie Anforderungen, Entwicklungsaufgaben oder anderem Entscheidungswissen verlinken. So entsteht ein integriertes Wissensmodell mit explizit dokumentiertem Entscheidungswissen. Dieses integrierte Modell wird als Graph visualisiert und bietet NutzerInnen verschiedene Möglichkeiten zur Verwaltung. Eine Befragung von EntwicklerInnen, die ebenfalls am ConDec-Projekt beteiligt sind, zeigt die Eignung von DecXtract zur Dokumentation von Entscheidungswissen. Zur Evaluation wird ein JIRA-Projekt mit 90 JIRA-Issues des Apache LUCENE Projektes erzeugt. Mit Hilfe von DecXtract wird informelles Entscheidungswissen aus den JIRA-Issue-Kommentaren explizit angelegt und miteinander verlinkt. Anhand der identifizierten Fragen von EntwicklerInnen an eine Quellcodeänderung wird das von DecXtract bereitgestellte Wissen genutzt um das Verständnis von Quellcodeänderungen zu evaluieren.

[Schlussfolgerung] DecXtract verbessert die Entscheidungsdokumentation durch die Klassifikation von Entscheidungselementen in JIRA-Issue-Kommentaren. Durch das präsentierte Entscheidungswissen können EntwicklerInnen immer den aktuellen Stand einer Diskussion und des dazugehörigen Entscheidungsproblems beobachten. Wenn eine Quellcodeänderung mit einem JIRA-Issue verlinkt ist, können EntwicklerInnen das Entscheidungswissen zu einer Quellcodeänderung betrachtet. Dieses Wissen unterstützt EntwicklerInnen beim Verständnis der Quellcodeänderung.

Download  

Entwicklung und Umsetzung eines Konzepts zur Modellierung von Qualitätsinformationen in einem Geschäftsprozessmodell

Arbeit Masterarbeit, 2011

Betreuer

Robert Heinrich

Bearbeiter

Alexander Kappe

Beschreibung

Das CASE Werkzeug UNICASE umfasst seit einiger Zeit eine Komponente zur Geschäftsprozessmodellierung. Die Komponente ermöglicht die Erstellung von Geschäftsprozessmodellen in der Business Process Modelling Notation (BPMN) und das Verknüpfen der Modellelemente mit anderen Elementen in UNICASE. Mithilfe dieser Komponente können bequem funktionale Anforderungen dokumentiert werden, jedoch fehlt zurzeit noch die Möglichkeit Qualitätsinformationen (QI) im Geschäftsprozessmodell zu modellieren.
In dieser Master Thesis soll ein Konzept zur Modellierung von QI in Geschäftsprozessmodellen erstellt und prototypisch in dem bereits in UNICASE vorhandenen Editor umgesetzt werden (der Begriff Modellierung umfasst die Erfassung und Auswertung von QI in einem Modell). Zuvor soll der aktuelle Stand der Literatur zur Modellierung von QI in Geschäftsprozessmodellen untersucht werden, sowie die QI aus Geschäftsprozessen eines aktuellen Forschungsprojekts ausgewertet und auf die Möglichkeit geprüft werden diese in Geschäftsprozessmodellen darzustellen. Im Rahmen der Arbeit ist eine Erweiterung des Werkzeugs UNICASE zur Modellierung von Geschäftsprozessen in der Business Process Modeling Notation (BPMN) zu entwickeln. Darüber hinaus soll ein Konzept für die Verknüpfung der Elemente in einem BPMN-Modell mit anderen Anforderungselementen in UNICASE entwickelt werden.

Download  

 

Nachvollziehbare Entscheidungsprozesse in der industriellen Softwareentwicklung durch Rationale Management

Arbeit

Masterarbeit, 2007

Betreuer

Barbara Paech

Bearbeiter

Philipp Häfele

Beschreibung

Die Anwendung von Rationale Management ist in der Praxis noch nicht weit verbreitet und geht über die prototypische Anwendung kaum hinaus. Das Ziel der Arbeit ist es, die in der Wissenschaft diskutierten Konzepte auf die Anforderungen eines in der Praxis etablierten Softwareprozessmodells zu übertragen und die dabei gewonnenen Erkenntnisse festzuhalten.
Die Arbeit liefert in diesem Zusammenhang eine Zusammenstellung der Konzepte des Rationale Management, um

  • die Grundlagen für die weiteren Ausführungen zu schaffen und auf Basis dieser Grundlagen eine Anwendung zu diskutieren,
  • dem interessierten Leser aus der industriellen Praxis die Ideen und Intentionen von Rationale Management näher zu bringen, um diese mit deren Erfahrung und Expertise anwenden zu können und
  • die Konzepte dann auf das Umfeld des Softwareprozessmodells übertragen zu können.
Anwendungsgegenstand für die Übertragung bildet das in einer Teilorganisation der SAP AG entwickelte und eingesetzte Softwareprozessmodell, welches die dort verwendeten Prozesse der Produktentwicklung bündelt.
Download  

 

 

Documentation of Decisions During the Implementation Phase Through Code Annotations

Arbeit Bachelorarbeit, 2014

Betreuer

Tom-Michael Hesse

Bearbeiter

Arthur Kühlwein

Beschreibung

Many decisions which are made during the implemetation phase of software projects are documented either not at all or through unstructured comments within the source code. This makes the rationale, i.e. the underlying issue with its context, alternative solutions and criteria behind the decision implicit. As a consequence, reproducing the decision later on becomes very difficult. It is thus necessary to make as much of this decision knowledge as possible explicit, since decisions made during the earlier stages are frequently reevaluated, changed or discarded during the evolution of a software project.
This thesis investigates the possibilities and limitations of documenting decision knowledge through annotations in the source code within the Eclipse IDE. For this, an annotation schema is developed and implemented as an Eclipse plug-in. It is investigated, how this schema can be made flexible in the sense that project-specific adjustments to the structure of the decision knowledge should be possible with as less time and effort as possible. Also, annotated decisions are mapped to and kept consistent with an external
UNICASE documentation.

Download  

 

Entwurf eines agilen Requirements Engineering Vorgehens mit Fokus auf Gebrauchstauglichkeit für das Allianz Business System

Arbeit

Bachelorarbeit, 2010

Betreuer

Barbara Paech

Bearbeiter

Andreas Fay

Beschreibung

Um einen agilen Requirements Engineering-Prozess mit Fokus auf Gebrauchstauglichkeit für das Allianz Business System zu etablieren, erläutert diese Arbeit zunächst den IST-Zustand. Dabei sticht vor allem die ungenügende Einbindung von Benutzerinnen und Benutzern hervor. Bisher werden diese erst am Ende des Prozesses eingebunden. Um dies zu beheben, werden zwei bekannte Ansätze aus der Literatur näher betrachtet und deren "Best Practices" vereint. Auch für die Integration von klassischem Requirements Engineering und agilen Methoden werden aus der Literatur die Praktiken extrahiert. Diese beiden Sammlungen an Praktiken sind die Grundlage für die Behebung der identifizierten Defizite, um das Ziel eines agilen Require­ments Engineering-Prozesses mit Fokus auf Gebrauchstauglichkeit für das Allianz Business System zu erreichen.

Download  

Softwareentwicklung mit dem TRAIN-Prozess

Arbeit

Bachelorarbeit, 2005

Betreuer

Lars Borner

 

Bearbeiter

Philipp Häfele

Beschreibung

Ziel dieser Arbeit war es, die Ziele, Inhalte und Vorgehensweisen der Übung zur Lehrveranstaltung Software Engineering I im Sommersemester 2004 zusammenzufassen. Dabei entstand ein übersichtlicher Leitfaden für künftige TeilnehmerInnen dieser Lehrveranstaltung, der ihnen einen Überblick über die typischen Modellierungstechniken der einzelnen Softwareentwicklungsphasen bietet.
Download TRAIN-Prozess

 

 

Visualisierung von Wissen zu Code in Jira

Arbeit Fortgeschrittenen-Praktikum, 2021

Betreuerin

Anja Kleebaum

Bearbeiter

Marvin Ruder

Beschreibung

Zur Dokumentation und Verwaltung von Entscheidungswissen stehen die am Lehrstuhl für Software Engineering entwickelten ConDec-Plug-ins für das Issue Tracking System Atlassian Jira, die Entwicklungsumgebung (IDE) Eclipse sowie weitere bei der Entwicklung von Software häufig verwendete Tools (Atlassian Confluence, Slack, Atlassian Bitbucket ) zur Verfügung. Sie erlauben die Dokumentation von Entscheidungswissen an verschiedenen Orten wie in eigenständigen Issues oder in Beschreibungstexten oder Kommentaren anderer Issues in Jira, aber auch in Code-Kommentaren oder Commit-Nachrichten des Versionskontrollsystems git. Das auf diese Weise dokumentierte Entscheidungswissen kann gemeinsam mit anderen Wissenselementen wie Anforderungen, Entwicklungsaufgaben oder Code auf verschiedene Arten visualisiert werden, wozu alle Wissenselemente in eine Graphstruktur innerhalb des ConDec-Jira-Plug-ins eingelesen und dort geeignet verlinkt werden. Jedoch ist das Auslesen und Verlinken von Codedateien sowie dem Entscheidungswissen aus Code-Kommentaren bisher nur ansatzweise implementiert und bietet Raum für Verbesserungen und Erweiterungen. In diesem Praktikum wurden die ConDec-Plug-ins in diesem Bereich um Funktionalitäten erweitert.

Download  

Automatische Erkennung von Entscheidungswissen in der Beschreibung und den Kommentaren von Jira-Issues und Commit-Nachrichten

Arbeit Fortgeschrittenen-Praktikum, 2019

Betreuerin

Anja Kleebaum

Bearbeiter

Philipp de Sombre

Beschreibung

Während des Softwareenwicklungsprozesses müssen EntwicklerInnen eine Vielzahl an Entscheidungen treffen. Diese Entscheidungen können sich auf verschiedenste Teile des Prozesses beziehen. Das hierbei erzeugte Wissen wird Entscheidungswissen genannt. Neben der Entscheidung ist es für EntwicklerInnen auch wichtig das Entscheidungsproblem, das hinter der Entscheidung steht, sowie alternative Lösungsmöglichkeiten und Argumente bzw. Begründungen zu kennen. Studien haben gezeigt, dass EntwicklerInnen Entscheidungswissen häufig nicht explizit dokumentieren. Es ist stattdessen nur implizit in Kommunikationsartefakten vorhanden. Als Grund für dieses Phänomen gilt das capture problem. Das Problem beschreibt, dass der kurzfristige Nutzen, den einE EntwicklerIn aus der expliziten Dokumentation zieht gering, der Aufwand jedoch relativ dazu gesehen hoch ist. Um implizites Entscheidungswissen explizit zu machen wird maschinelles Lernen genutzt. Durch eine Literaturrecherche werden verschiedene Ansätze der automatischen Klassifizierung von Entscheidungswissen verglichen. Die Erkenntnisse werden dann in Experimenten geprüft und erweitert. Die Erkenntnisse aus den Experimenten fließen dann in die programmatische Umsetzung in dem Entscheidungsdokumentationstool ConDec für Jira ein. Zusätzlich werden Git-Commit-Nachrichten als weitere mögliche Quelle für Entscheidungswissen in das Tool integriert. Die Umsetzung wird nach dem Technology-Acceptance-Model durch ConDec-EntwicklerInnen evaluiert. Die Entscheidungsdokumentation kann durch die automatische Klassifizierung von Entscheidungselementen verbessert werden. Implizites Wissen wird explizit und kann somit genutzt werden. Die Integration von Git-Commit-Nachrichten als weitere Wissensquelle erlaubt EntwicklerInnen die Dokumentation von Entscheidungswissen ohne einen Kontextwechsel und senkt somit den Aufwand der Dokumentation.

Download  

Automatisierung von Feature-Datenerkennung und Extraktion mit dem Text-Mining-Werkzeug Gate

Arbeit Fortgeschrittenen-Praktikum, 2014

Betreuer

Paul Hübner

Bearbeiter

Viktor Bersch

Beschreibung

Die Erkennung und Extraktion von Feature Daten wird auch als Feature Mining bezeichnet. Durch Feature Mining sollen die Features einer Software ermittelt werden. Diese dienen als Charakterisierung und Beschreibung der gesamten Software und finden zahlreiche Anwendungen. So werden entwickelte Anwendungssysteme beispielsweise häufig anhand ihrer Features beworben. Anhand Untersuchungen geht hervor, dass die Features in Open Source Entwicklungsprojekten nicht explizit dokumentiert werden und dass dies auch für Entwicklungsprojekte in der Industrie gilt. So werden bei der Entwicklung von Teilen der Software mit dem Namen des zugehörigen Features bezeichnet. Daraus folgt, dass die Informationen über Features eines Systems nicht einfach aufgelistet werden können. Die Informationen über die Feature eines Systems sind auf viele Quellen verteilt, wie zum Beispiel Issue Tracker, User Dokumentationen, Code und weitere Entwicklungsartefakte wie z.B Sprint Backlog.
Diese Arbeit beschreibt eine Anwendung, die zum Ziel hat semi-automatisch die Feature relevanten Daten aus der User Dokumentation einer Software zu extrahieren. Dabei beschränkt sie sich zunächst auf User Dokumentation im Html Format. Konzept und Implementierung ermöglichen jedoch durch die Architektur, dass sehr leicht weitere Formate hinzugefügt werden können. Eine der Rahmenbedingungen des Praktikums war die Verwendung von Gate.

Planung und Durchführung eines Software Engineering Projektes am Beispiel eines Internetportals aus dem Bereich Sport

Arbeit Zulassungsarbeit, 2010

Betreuerin

Barbara Paech

Bearbeiter

Thomas Hahn

Beschreibung

Die vorliegende Arbeit thematisiert und erschließt den an der Universität Heidelberg gelehrten Software Engineering Prozess (TRAIN Prozess) im praktischen Einsatz.
Nach einer Einführung erfolgt eine detaillierte Durchführung des Prozesses anhand eines Internet Portalprojektes aus dem Bereich Sport. Als Resultat entsteht eine multi-Tier Anwendungskomponente, die das Registrierungsmanagement für Sportveranstaltungen bereitstellt. Nach einer kritischen Betrachtung des durchgeführten Prozesses werden Vorschläge zur Modifikation von TRAIN für den schulischen Einsatz erarbeitet. Darauf aufbauend wird der Prozess in einer angepassten Version anhand einem thematisch verwandten aber technisch völlig unterschiedlichen Projekt erneut bis zur Implementierungsphase durchlaufen. Das Ergebnis dient als Grundlage für weitergehende Vorschläge, die besonders den Einsatz von Szenarien und systematischen Test berücksichtigen. Das Ergebnis stützt die These, dass ein umfassendes Software Engineering an allgemeinbildenden Gymnasien realisierbar ist.

Download  

Konzept für die Verwendung von GameMaker zur Vermittlung von Programmierkompetenz im Schulunterricht

Arbeit Zulassungsarbeit, 2009

Betreuerin

Barbara Paech

Bearbeiter

David Grünbeck

Beschreibung

Ziel dieses Praktikums war die Entwicklung mehrerer Lehreinheiten zur Vermittlung von Programmierkompetenz, die statt einer konkreten Programmiersprache das Programm Game Maker (YoYo Games) verwenden. Dazu wurde zunächst in einer Literaturrecherche zusammengestellt, was wichtige Programmierkonzepte sind und wie sie typischerweise vermittelt werden. Daraufhin wurde eine Auswahl einiger Konzepte, auf denen die Lehreinheiten basieren sollen, getroffen. Schließlich wurde die Klassenstufe festgelegt, in der diese Konzepte vermittelt werden sollen. Die Ergebnisse dieser Recherche- und Auswahltätigkeit finden sich im ersten Teil der Arbeit.
Im weiteren Verlauf des Praktikums wurde dann ein Vorschlag für mehrere aufeinander abgestimmte Lehreinheiten erarbeitet, die die zuvor ausgewählten Programmierkonzepte mithilfe von Game Maker vermitteln sollen. Diese finden sich im zweiten Teil der Arbeit. Bei der Ausarbeitung wurde darauf geachtet, die Darstellung des Vorgehens im Unterricht detailliert zu gestalten, um auch Lehrern mit einem geringen Einarbeitungsgrad in die Entwicklungsumgebung Game Maker die Durchführung des hier vorgestellten Konzepts zu ermöglichen. Um dies weiterhin zu unterstützen, finden sich zudem zwei Anhänge: Der erste Anhang beschreibt mögliche technische Stolperfallen in der Benutzung von Game Maker und wie diese umgangen werden können. Der zweite Anhang beschreibt die im Zuge dieses Praktikums erstellten und gesammelten Materialen, die Schülern wie Lehrern sowohl das Verständnis des hier vorgestellten Konzepts als auch die Erweiterung ihrer eigenen Projekte erleichtern sollen.

Download  

 


Das Gesamtverzeichnis der am Lehrstuhl durchgeführten Arbeiten finden Sie im Archiv.

Contact | Travel Info

News

CrowdRE'23: Keynote 'Reflections on Human Values in Crowd-based Requirements Engineering' held by Barbara Paech

REFSQ 2023: Keynote 'Explicit and Implicit Values in and of Requirements Engineering Practice and Research' held by Barbara Paech

Our paper 'Empirical Research Design for Software Architecture Decision Making: An Analysis' was selected for the JSS Happy Hour. You can watch it on YouTube

2020-2023 Barbara Paech member of DFG review board "software engineering and programing languages"

Anja Kleebaum et al. 'Continuous Design Decision Support'. Chapter published in 'Managed Software Evolution' (2019)