All posts by Hannes Dohrn

Final Thesis: Sweble Security Programming Plugin – Security Rules Engine

Abstract: Within the scope of industry 4.0 and digitalization, there is a growing danger of cyber crime and security attacks, causing huge harm for digital business. Therefore, in nowadays software development, IT-security is regarded as a quality criterion, determining the success of a product or project. Nevertheless, the complexity of security attacks, vulnerabilities and software development as a whole, complicates the reliable protection against and mitigation of security attacks.

To support software engineers to develop more secure software, this thesis shows the concept and presents a prototype of a software security rules methodology called Serum. Serum is designed to help software developers and all other project members in creating a more secure software. A domain-specific language was designed and integrated into a global knowledge management system (Sweble), to allow modeling and describing software assets, associated security attacks as well as known countermeasures. A second component, using the gathered security knowledge, was implemented, focusing on the support of software architects during the creation of a threat- and risk analysis. To facilitate the consideration of security even more a custom test- and dashboard system allows developers and test architects to monitor their contribution towards a more secure system.

The thesis should provide a basis for a holistic security support during all phases of the software development life cycle.

Keywords: IT-Security, threat analysis, DSL, Sweble, structured data

PDFs: Master Thesis

Reference: Florian Gerdes. Sweble Security Programming Plugin – Security Rules Engine. Master Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2017.

Final Thesis: Integration of a Refactoring UI into the Sweble Hub Software

Abstract: Wikis are an essential part of modern internet in order to store knowledge. However, to date, they lack functions which assist on restructuring and transforming the contents of a wiki. The task of maintaining the contents and structure is therefore time-consuming and error-prone. This thesis designs and implements a user interface for restructurings in wikis build on the Sweble Hub software, which is a software similar to most wikis. In contrast to classic wikis, it is able to provide assistance on restructurings. With Sweble Hub and the user interface designed in this thesis, the wiki authors’ efficiency is greatly improved.

Keywords: Wiki, AST, Refactoring, Transformation, UI

PDFs: Master Thesis, Work Description

Reference: Gabriel Bauer. Integration of a Refactoring UI into the Sweble Hub Software. Bachelor Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2017.

Final Thesis: Tree-based, Semantic Article Difference Visualization

Abstract: Die Plattform Sweble Hub ermöglicht es, Wiki-Inhalte auf Basis des Wiki Object Model s kollaborativ zu bearbeiten. Dies findet dadurch nicht, wie normalerweise üblich, auf Wikitext-Ebene statt, sondern nach dem Prinzip ’what you see is what you get’. Ziel ist es, das existierende Projekt um eine übersichtliche Artikel Diff Visualisierung zu erweitern, die es ermöglicht, einen verständlichen Überblick über getätigte Änderungen zu erhalten. Im Rahmen dieser Bachelorarbeit wird eine Lösung vorgestellt, wie man Wikitext-Datei-Versionen anschaulich vergleichen kann. Die Grundlage hierfür sind Baumbasierte Algorithmen und Datenstrukturen, die Wikitext-Dokumente und erfolgte Modifikationen semantisch interpretieren können. Dies erzeugt im Vergleich zu Text-basierten Diffs eine detailliertere Darstellung. Die erarbeitete Ausarbeitung soll in das Sweble Hub eingebettet werden.

Keywords: Wiki, AST, Diff, Tree-based Diff, HD-Diff, Visualization, Web, HTML

PDFs: Master Thesis, Work Description

Reference: Oliver Lutz. Tree-based, Semantic Article Difference Visualization. Bachelor Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2017.

Final Thesis: Integration und Erweiterung eines Visuellen Editors in Sweble Hub

Abstract: Sweble Hub ist eine Kollaborationsplattform, die eine anwendungsneutrale Verwaltung und Bearbeitung von Wiki-Inhalten auf Basis des Wiki Object Models (WOM) ermöglichen soll. Die Bearbeitung von Inhalten mithilfe eines visuellen Editors soll dabei plattformunabhängig innerhalb eines Webbrowsers erfolgen können. Hierfür wurden bereits im Vorfeld verschiedene Basistechnologien evaluiert und dabei der Visual-Editor der Wikimedia Foundation ausgewählt, sowie prototypisch umgesetzt. Im Rahmen dieser Arbeit wird der visuelle Editor um die Unterstützung des gesamten Wiki Object Models erweitert. Außerdem wird das Fundament für eine spätere Erweiterung hin zu einem kollaborativen Editor gelegt. Hierzu wird der aktuelle Stand der Forschung und Technik im Rahmen einer Literaturrecherche zu den verschiedenen Möglichkeiten der Bearbeitung von Inhalten innerhalb von Groupware Systemen untersucht und eine geeignete Methode ausgewählt.

Keywords: Wiki, Visual Editor, Wiki Object Model, Groupware

PDFs: Final thesis, Work description

Reference: Michael Haase. Integration und Erweiterung eines Visuellen Editors in Sweble Hub. Master Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2016.

Final Thesis: Preparing the Sweble Hub Software for the Cloud

Abstract: This master thesis proposes concept and implementation of a microservice-based architecture for the Sweble Hub software. In future, with this microservice-based architecture, Sweble should be deployed in the cloud in order to manage a big workload from many users accessing the wiki. The thesis gives an overview about the microservice architecture pattern and which additional components are necessary because of the distributed setting. A concept is introduced in which way the current architecture of Sweble can be sliced into microservices. From this concept two microservices are implemented. Finally, the concept and implementation of the microservice architecture is evaluated for its suitability. It is shown, that Sweble fits into the microservice pattern. However, microservices are not a silver bullet and with the architecture style some complexities are introduced into the system because of the distributed environment.

Keywords: Sweble, WOM, Wikipedia, Microservice, Scalability

PDFs: Master Thesis, Work Description

Reference: Christian Happ. Preparing the Sweble Hub Software for the Cloud. Master Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2016.

Final Thesis: Wikipedia in times of BigData – Einsatz von NoSQL-Systemen zur Verwaltung und Analyse von Wikipediainhalten

Abstract: This thesis examines the power of modern NoSQL systems in conjunction with WOM to analyse and manage the article’s data of Wikipedia. The Wiki Object Model (WOM) is a machine readable semi-structured representation of markup produced by different wiki engines. The systems studied are native XML databases (Sedna, BaseX, eXist-db, X-Hive, Oracle Berkley DB XML and Apache Xindice), XML-enabled databases (PostgrSQL, MySQL, MariaDB), JSON-based document stores (Couchbase Server, MongoDB), Wide Column Stores (Apache HBase) and multi model databases (ArangoDB, OrientDB). As a foundation for the further analysis of suitability the analytical database’s expected data volume, query profile and workload is investigated. Subsequently, the listed systems are evaluated regarding to their functional and non-functional suitability for the given use case. The functional part is derived by the system’s capability of executing the given query profile – query driven schema design. The non-functional part is dictated by the amount of data which needs to be processed, and the expected workload. The list of potential system candidates is narrowed down to two whose resource consumption and functional suitability for the given use-case is described in further detail. The proposed research is the technical foundation for choosing and deploying the first prototype of an analytical database unlocking the structured data of Wikipedia.

Keywords: Wikipedia analysis, big data, NoSQL, Sweble

PDFs: Master Thesis

Reference: Patrick Kaltenmaier. Wikipedia in times of BigData – Einsatz von NoSQL-Systemen zur Verwaltung und Analyse von Wikipediainhalten. Master Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2016.

Student job: Install of a systems monitoring dashboard

Update 2017-11-23: All student job opening have been moved to a dedicated student jobs page.


We are looking for a student to

  • investigate different open source systems monitoring solutions
  • select the best fit and
  • setup a systems monitoring dashboard for the group’s services

Read more…

Final Thesis: Tree-based Edit Analysis of Wiki Articles

Abstract: With the aim to improve editing support, this thesis examines frequent patterns in the English Wikipedia’s edit history. These patterns are assumed to resemble edit transformations Wikipedia authors had in mind when changing Wikipedia articles and might be of interest to facilitate text refactorings. The transformations are expected to have a complex structure with multiple relations between elements of Wikipedia articles and edit operations, which cannot be trivially modeled. This thesis tackles this problem by encoding the information, which is hidden in the edit history, in graphs, representing edit operations and elements of Wikipedia articles as graph nodes and relations as links between these nodes. The resulting edit script graphs are mined for frequent subgraphs with the intention of retrieving interesting frequent patterns in the form of graphs. As results we list, visualize and analyze the discovered frequent patterns and create pattern clusters, which resemble real-world text transformations at different levels of abstraction.

Keywords: Wikipedia, Wiki, Author Behavior, Edit Pattern, Diff, Mining

PDFs:  Master Thesis, Work Description

Reference: Roland Vallery. Tree-based Edit Analysis of Wiki Articles. Master Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2016.

Final Thesis: Entwurf und Implementierung einer DSL für Benutzungsschnittstellen

Abstract: Diese Masterarbeit entwirft und implementiert eine domänenspezifische Sprache (DSL) für die Sweble Software. Es handelt sich um eine DSL zur Erstellung von Benutzungsschnittstellen durch Fachexperten ohne spezifische Informatikerausbildung (sog. End-user-Programmierer). Wesentliche Eigenschaften der DSL sind Funktionalität für das Layout von Benutzungsschnittstellen, die Definition und Wahrung von Constraints, und die Abbildung in ein oder mehrere Domänenobjekte. Hierzu wird eine konkrete Syntax definiert, ein Parsergenerator mit zusätzlicher händischer Erweiterung zur Erzeugung eines abstrakten Syntaxbaumes (AST) entwickelt und ein Interpreter implementiert, welcher den AST ausführt und den WOM-Baum, die zugrundeliegende Datenstruktur, gemäß Quelltext manipuliert.

Keywords: Sweble, Domain Specific Language (DSL), End-User-Programming (EUP), Benutzungsschnittstellen.

PDFs: Master Thesis, Work Description

Reference: Michael Sandner. Entwurf und Implementierung einer DSL für Benutzungsschnittstellen. Master Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2016.

Final Thesis: Extend and Integrate a Visual Editor into the Sweble Wiki

Abstract: Most wikis today use text blobs written in a wiki markup dialect to store and work with articles. We have developed a formal parser that produces a rich tree-based format of wiki content, called Wiki Object Model (WOM). Around this format we’ve implemented a rudimentary Wiki software and a visual editor (VE). Now we would like to integrate the VE in the wiki software and extend both components to form a fully functional wiki.

Keywords: Wiki, Visual Editor, WOM, Sweble

PDFs: Bachelor Thesis, Work Description

Reference: Markus Wenzel. Extend and Integrate a Visual Editor into the Sweble Wiki. Bachelor  Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2015.