Final Thesis: Semantikspezifische Visualisierung von baumbasierten Diffs in Wikis

Abstract: Im Rahmen dieser Arbeit werden mögliche Änderungen durch einen Benutzer an einem Artikel eines Wikis spezifiziert und klassifiziert. Anschließend wird eine Visualisierung dieser Änderungen vorgestellt. Statt des textbasierten Vergleichs, der zum Beispiel von Wikipedia verwendet wird, wird hier ein baumbasierter Vergleich als Grundlage genommen werden. Da ein textbasierter Vergleich dem Nutzer überflüssige Informationen anzeigt sowie Zusammenhänge zwischen Textstellen oft nicht erkennt oder unverständlich darstellt, ermöglicht ein baumbasierter Vergleich eine besser verständliche Darstellung der Differenzen zwischen zwei Versionen eines Artikels. Die erarbeitete Darstellung für diese Änderungen wird implementiert und in das existierende Sweble Wiki integriert. Die Vorteile dieser Visualisierung werden dann mithilfe einer Gegenüberstellung mit einem zeilenbasierten Vergleich, wie z.B. in Wikipedia zu finden ist, aufgezeigt.

Keywords: Tree diff, tree diff visualization, wiki, Sweble

PDFs: Bachelor Thesis, Work Description

Reference: Erik Barton. Semantikspezifische Visualisierung von baumbasierten Diffs in Wikis. Bachelor Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2015.

Upcoming Research Talk: When to say NO for Privacy Protection while answering Queries by Johann-Christoph Freytag

The computer science department by way of our research group is hosting a colloquium talk (free and open to the public)

  • by: Prof. Johann-Christoph Freytag, Humboldt University Berlin, Germany
  • about: When to say NO for Privacy Protection while answering Queries
  • on: April 13th, 2015, 16:15 Uhr
  • at: Cauerstr. 11, 91058 Erlangen, Room 01.150-128

Abstract: This talk presents privacy concepts that keep the balance between utility and privacy when returning answers to a sequence of queries. In particular we show how to model the (increasing) knowledge of an adversary resulting from the answers to queries by a sequence of bipartite graphs. Those graphs provide the foundation for algorithms that decide when a privacy breach occurs (might occur) and how to balance the need for accurate responses versus the right for privacy. Examples demonstrate the intricacies of managing this trade-off.

Continue reading Upcoming Research Talk: When to say NO for Privacy Protection while answering Queries by Johann-Christoph Freytag

Final Thesis: Ein Werkzeug zur Beschreibung und Bewertung von Code-Komponenten-Basierten Softwarearchitekturen

Abstract: Die Analyse und Bewertung von komponentenbasierten Softwarearchitekturen ist ein wichtiger Teil der Softwareentwicklung. Entscheidend dabei ist nicht nur die Analyse auf Performanz, Sicherheit etc., sondern auch auf Lizenzkompatibilität zwischen den unterschiedlich lizenzierten Komponenten der Architektur. In dieser Arbeit wurde zunachst eine Architecture Description Language sowie ein Editor für die Modellierung und Visualisierung einer Softwarearchitektur entwickelt. Die Architecture Description Language erlaubt es, eine Architektur formal zu modellieren. Der Editor ermöglicht eine Darstellung und Veränderung der Architektur. Um eine Möglichkeit zu schaffen, die Lizenzen für eine Komponente der Architektur automatisch aus ihrem Source Code zu beziehen, wurde ein FOSSology Server über eine REST-Schnittstelle angebunden. Einen Schwerpunkt der vorliegenden Arbeit bildet die Analyse der Lizenzkompatibilität zwischen den Komponenten. Hierfür wurden bereits existierende Ansatze evaluiert und auf Basis deren zwei Modelle für die maschinenlesbare Darstellung von Softwarelizenzen entwickelt. Die Modelle wurden ergänzt durch Algorithmen, welche die Kompatibilität prüfen. Abschließend wurde die Funktionsweise der entwickelten Modelle und Algorithmen mit Hilfe von Beispielarchitekturen untersucht und ein Vergleich zwischen den Ergebnissen gezogen.

Keywords: Open source, software architecture, code components, license models

PDFs: Master Thesis, Work Description

Reference: Alexander Marx. Ein Werkzeug zur Beschreibung und Bewertung von Code-Komponenten-Basierten Softwarearchitekturen. Master Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2015.

The AMOS Project Summer 2015 Line-up

We are happy to announce the following five AMOS projects for the upcoming semester:

  1. Cloud computing—Porting an existing software to all major cloud computing platforms (with DATEV)
  2. Consumer app—Developing a mobile app for ride sharing including a server component (with Elektrobit)
  3. Software engineering tool—Tracking changes and predicting impact for traceability (with Elektrobit)
  4. Business software—Developing a simple business software with secure communication (with DATEV)
  5. Cross-platform app—Developing a cross-platform app for five major platforms (with Develop Group)

More details can be found in the StudOn section of The AMOS Project (2015). (You need to log in.)

Teaching Time Slots for Summer 2015

For clarification purposes, here are the precise teaching time slots for the upcoming summer semester 2015:

  • AMOS—Wednesdays: Lecture 10:15-11:45 Uhr, Exercise: 12:15-13:45 Uhr, Spotlight: 14:00-15:30 Uhr
  • ARCH—Thursdays: Lecture + exercises 14:00-17:00 Uhr
  • KOLL—Mondays: Seminar 12:15-13:45 Uhr
  • PROD—Tuesdays: Lecture + exercises 14:00-17:00 Uhr

There is still inconsistent information flying around; we hope the systems will have sorted out themselves soon.

Heads-up on TEAM Workshop on 2015-04-10

On April 10, 2015, we will hold the TEAM workshop, a one-day workshop to introduce students to teamwork and its problems and solutions. Specifically, we will teach tools that students will need in AMOS, our course on agile methods and open source. While not mandatory, we strongly recommend to participate in this workshop to be best prepared for upcoming projects.

Heads-up on Summer 2015 Course Organization

During the upcoming summer semester (SS15) we will be teaching our usual courses AMOS, ARCH, and PROD. We will have 10 ECTS projects available for AMOS and ARCH, but not for PROD. We will post the project descriptions soon as we are nearing completion. If you are curious, you can already learn more about available projects on the StudOn sections of the courses.

All three courses are Master-level courses. For this coming summer semester, for the last time we will accept Bachelor students to support backwards compatibility, however, please be advised that these courses require performance on a Master student level. If you are a Bachelor student, you may want to delay participation until you started your Master’s degree.

Also, all our courses are available to all students across the engineering faculty, as well as IIS students. We welcome not only INF and IIS, but also MT, ME, CE, IUK, etc. students. In general, we are open to everyone who wants to take it, we simply may not have been able to figure out how to input this into UnivIS (yet).

Research Paper: From Developer Networks to Verified Communities: A Fine-Grained Approach

Abstract: Effective software engineering demands a coordinated effort. Unfortunately, a comprehensive view on developer coordination is rarely available to support software-engineering decisions, despite the significant implications on software quality, software architecture, and developer productivity. We present a fine-grained, verifiable, and fully automated approach to capture a view on developer coordination, based on commit information and source-code structure, mined from version-control systems. We apply methodology from network analysis and machine learning to identify developer communities automatically. Compared to previous work, our approach is fine-grained, and identifies statistically significant communities using order-statistics and a community-verification technique based on graph conductance. To demonstrate the scalability and generality of our approach, we analyze ten open-source projects with complex and active histories, written in various programming languages. By surveying 53 open-source developers from the ten projects, we validate the authenticity of inferred community structure with respect to reality. Our results indicate that developers of open-source projects form statistically significant community structures and this particular view on collaboration largely coincides with developers’ perceptions of real-world collaboration.

Keywords: Open source, social network analysis, developer networks, developer communities, respository mining, conductance

Reference: Mitchell Joblin, Wolfgang Mauerer, Sven Apel, Janet Siegmund, Dirk Riehle. “From Developer Networks to Verified Communities: A Fine-Grained Approach.” In Proceedings of the 37th International Conference on Software Engineering (ICSE 2015). IEEE Press, to appear.

The paper is available as a PDF file.

Research Paper: How Developers Acquire FLOSS Skills

Abstract: With the increasing prominence of open collaboration as found in free/libre/open source software projects and other joint production communities, potential participants need to acquire skills. How these skills are learned has received little research attention. This article presents a large-scale survey (5,309 valid responses) in which users and developers of the beta release of a popular file download application were asked which learning styles were used to acquire technical and social skills. We find that the extent to which a person acquired the relevant skills through informal methods tends to be higher for free/libre/open source code contributors, while being a professional software developer does not have this effect. Additionally, younger participants proved more likely to make use of formal methods of learning. These insights will help individuals, commercial companies, educational institutions, governments and open collaborative projects decide how they promote learning.

Keywords: Competencies, informal learning, non-formal learning, open source, skills, software developer

Reference: Ann Barcomb, Michael Grottke, Jan-Philipp Stauffert, Dirk Riehle, Sabrina Jahn. “How Developers Acquire FLOSS Skills.” In Proceedings of the 11th International Conference on Open Source Systems (OSS 2015). Springer Verlag, to appear.

The paper is available as a PDF file.

Research Paper: Improving Traceability of Requirements through Qualitative Data Analysis

Abstract: Traceability is an important quality aspect in modern software development. It facilitates the documentation of decisions and helps identifying conflicts regarding the conformity of one artifact to another. We propose a new approach to requirements engineering that utilizes qualitative research methods, which have been well established in the domain of social science. Our approach integrates traceability between the original documentation and the requirements specification and the domain model and glossary and supports adaptability to change.

Keywords: Requirements analysis, requirements traceability, qualitative data analysis

Reference: Andreas Kaufmann, Dirk Riehle. “Improving Traceability of Requirements through Qualitative Data Analysis.” In Proceedings of the 2015 Software Engineering Konferenz (SE 2015). Springer Verlag, to appear.

The paper is available as a PDF file.