Fachveröffentlichungen

Inner Source in Platform-Based Product Engineering 

(Erschienen im Technical Report CS-2015-02 der FAU Erlangen-Nürnberg / Department Informatik)

Inner source is an approach to collaboration across intra-organizational boundaries for the creation of shared reusable assets. Prior project reports on inner source suggest improved code reuse and better knowledge sharing. Using a multiple-case case study research approach, we analyze the problems that three major software development organizations were facing in their platform-based product engineering efforts. We find that a root cause, the separation of product units as profit centers from a platform organization as a cost center, leads to delayed deliveries, increased defect rates, and redundant software components. All three organizations assume that inner source can help solve these problems. The article analyzes the expectations that these companies were having towards inner source and the problems they were experiencing or expecting in its adoption. Finally, the article presents our conclusions on how these organizations should adapt their existing engineering efforts.

Initiates file downloadDownload PDF

MULTI 2014 – Using Multi Level-Modeling Techniques for Managing Mapping Information

(Erschienen in Proceedings of the Workshop on Multi-Level Modelling - co-located with ACM/IEEE 17th International Conference on Model Driven Engineering Languages & Systems (MoDELS 2014))

Traditional modeling approaches support a limited set of instantiation levels (typically one for classes and another adjacent one for objects). Multi-level modeling approaches on the other hand have no such limit to the number of levels. As a consequence, an arbitrary number of levels may be used to define models, and the distinction between class and instance is redefined. 
The paper summarizes the experience gained from applying multi-level modeling techniques to a real application from the domain of development process improvement (DPI). The underlying case study has been conducted in cooperation with a large automotive supplier. We discuss the pros and cons of using multi-level modeling techniques and propose areas that we think would benefit from further research.
Initiates file downloadDownload PDF

Geplanter Inner Source: Ein Weg zur Profit-Center-übergreifenden Wiederverwendung

(Erschienen im Technical Report CS-2012-05 der FAU Erlangen-Nürnberg / Department Informatik)

Wiederverwendung von Softwarekomponenten verspricht, Softwareentwicklung schneller und günstiger zu machen und die Ergebnisqualität zu steigern. Trotz diverser methodischer Ansätze ist es für viele Softwareentwicklungsorganisationen schwierig geblieben, diese Ziele auch nur ansatzweise zu erreichen. Vor diesem Hintergrund bietet „Inner Source“, die Verwendung von Open-Source-Praktiken in der firmeninternen Softwareentwicklung, neue Chancen. Inner-Source-Software ist Software, die innerhalb eines Unternehmens über Profit-Center-Grenzen hinweg in Gemeinschaftsarbeit entwickelt wird und von allen Abteilungen genutzt werden kann. In diesem Artikel stellen wir die bisher gewonnenen Erfahrungen mit Inner-Source-Entwicklung dar, definieren organisatorische Gestaltungsmöglichkeiten und prognostizieren die Entstehung von Inner-Source-Organisationen, einer neuen Form der Organisation für die Wiederverwendung.
Initiates file downloadDownload PDF

An Integrated Tool Chain for Software Process Modeling and Execution

(Erschienen im Tagungsband der ECMFA 2012 co-located Events, Kgs. Lyngby, Dänemark)

The Eclipse Process Framework (EPF) allows for a detailed modeling of software development processes and methods based on the Software and Systems Process Engineering Metamodel (SPEM) standard. A comprehensive electronic process guide may be generated from such a model. However, EPF and SPEM only support a rather coarse description of the behavior of software processes. As there is no support for automated enactment or simulation of these software process models, one cannot benefit from context-sensitive process guidance, automated process conformance checking, or automated progress tracking when enacting detailed software process models.
eSPEM (enactable SPEM) is an extension of the SPEM standard that supports UML activities and state machines for fine-grained behavior modeling. Its operational semantics is based on OMG´s fUML (Semantics of a Foundational Subset for Executable UML Models) and may be used to instantiate, simulate, and enact software process models. However, without a reasonable tooling for eSPEM the benefit for end users is still limited.
This paper presents an integrated tool chain based on eSPEM and Eclipse. The tool chain not only supports process modelers in modeling fine-grained eSPEM-based software processes, but also guides and supports project staff in working according to the process in a context-sensitive manner. It automates repetitive and cumbersome work like checking process conformance or progress tracking. Hence, it lets end users benefit from process modeling and enactment. 
Initiates file downloadDownload PDF

A FUML-based Distributed Execution Machine for Enacting Software Process Models

(Erschienen im Tagungsband der ECMFA 2011 in Birmingham)

OMG’s SPEM standard allows for a detailed modeling of software development processes and methods, but only a rather coarse description of their behavior. This gap can be filled by extending SPEM with a fine-grained behavior modeling concept based on UML activities and state machines. In order to gain full benefit from detailed software process models including behavior, an automated enactment of these software process models is required. In theory, the operational semantics of UML activities as defined by OMG’s FUML (Semantics of a Foundational Subset for Executable UML Models) could be used to instantiate and sequentially simulate software process models on a single computer. However, FUML is insufficient to execute software process models to drive realistic projects with large and geographically spread teams. In this article we present the required FUML extensions to support distributed execution, human interaction, and to weave in user specific extensions of the execution machine. With these FUML extensions it becomes feasible to enact reusable standard software process models in realistic projects. (The original publication is available at www.springerlink.com).
Initiates file downloadDownload PDF

eSPEM – a SPEM Extension for Enactable Behavior Modeling

(Erschienen im Tagungsband der ECMFA 2010 in Paris)

OMG's SPEM – by means of its (semi-)formal notation – allows for a detailed description of development processes and methodologies, but can only be used for a rather coarse description of their behavior. Concepts for a more fine-grained behavior model are considered out of scope of the SPEM standard and have to be provided by other standards like BPDM/BPMN or UML. However, a coarse granularity of the behavior model often impedes a computer-aided enactment of a process model. Therefore, in this paper we present eSPEM, an extension of SPEM, that is based on the UML meta-model and focused on fine-grained behavior and life-cycle modeling and thereby supports automated enactment of development processes.
Initiates file downloadDownload PDF

Stellschrauben – Ein leichtgewichtiger Ansatz zur Softwarekonfiguration

(Erschienen im Entwickler Magazin 03/09)

Wer kennt das nicht: Man ist neu im Projekt und möchte der Konfiguration einfach nur einen zusätzlichen Parameter hinzufügen. Auf die Frage, wie das zu bewerkstelligen sei, drückt einem der altgediente Kollege mit mitleidvollem Blick die zwanzigseitige Anleitung zur projekteigenen Konfigurationslösung in die Hand. Oder er verweist auf ein Verzeichnis mit zwei Dutzend völlig unstrukturierten Property-Dateien. Wie wäre es stattdessen mit einem leichtgewichtigen Framework für einen einheitlichen Zugriff auf strukturiert abgelegte Konfigurationsparameter?
Initiates file downloadDownload PDF

Codegeneratoren: Domänenspezifische Automatisierung in der Praxis industrieller Softwareentwicklung

(Internes Papier, November 2008)

Die Technologien, die die Grundlage zur automatischen Generierung von Programmcode bilden, werden stetig verbessert und sind mittlerweile auf einem Stand angekommen, der einen gewinnbringenden Einsatz im Rahmen industrieller Projekte verspricht. Der Blick in den tatsächlichen Projektalltag zeigt jedoch, dass Modellierung nur vereinzelt betrieben wird und meist nicht auf die Fachdomäne zugeschnitten ist. Generatoren werden – wenn überhaupt – selten durchgängig eingesetzt, und in fast allen Fällen wird das Generat von Hand weiterverarbeitet. Der Artikel zeigt an kleinen Beispielen aus der Projektpraxis, wie Generatoren erfolgreich eingesetzt werden können.
Initiates file downloadDownload PDF

Fallstudie zur Modellierung von Software-Entwicklungsprozessen auf Basis von SPEM 2.0

(Erschienen im Tagungsband der Software-Engineering-Fachtagung SE08 der Gesellschaft für Informatik (München 2008))

Das SPEM (Software Process Engineering Metamodel) der OMG ist ein UML-basiertes Metamodell zur Spezifikation von Software-Entwicklungsprozessmodellen. Die vorliegende Fallstudie beschreibt die Erfahrungen, welche die Autoren beim praktischen Einsatz des SPEM gewonnen haben. Ziel der Fallstudie war es, einen in der Praxis etablierten Entwicklungsprozess aus dem Bereich der Automobilindustrie auf Basis des SPEM 2.0 möglichst präzise zu beschreiben.
Initiates file downloadDownload PDF

Ordnung im Werkzeugzoo: Tool-Unterstützung für die Architekturgetriebene Entwicklung

(Erschienen im OBJEKTSpektrum 03/07)

„Auf welchem Stand befindet sich die Dokumentation des Entwurfs?”, „Stimmen die implementierten Schnittstellen mit den festgelegten überein?”, „In welcher Komponente sind die folgenden Anforderungen realisiert?”. Solche oder ähnliche Fragen häufen sich in der Regel gegen Ende eines Projekts und können nicht immer zufriedenstellend beantwortet werden. Diese Situation ist uns aus Projekten der industriellen Praxis bekannt, die wir als Projektpartner im Bereich Airport-Logistik bzw. Medizintechnik durchgeführt haben. Motiviert durch diese Erfahrungen wollen wir in diesem Artikel unseren Ansatz zur Lösung der skizzierten Probleme darstellen.
Opens external link in new windowDownload PDF

Im Bilderrausch - Konzepte einer performanten Prozessvisualisierung für Web Clients

(Erschienen im Java Magazin 08/04)

Vierzig Kilometer Transporttechnik, dargestellt auf einer Videowand in einem riesigen Übersichtsbild. Details der Anlage, die aberwitzig viele Gepäckstücke verteilt, umfassen knapp 200 Bilder mit dynamischen Eigenschaften, die in einem Applet angezeigt werden. Um dieser Herausforderung gerecht zu werden, sind konzeptuelle Planung, automatisierbare Testverfahren sowie Kenntnisse über das Java 2-D Graphics API unabdingbar.
Initiates file downloadDownload PDF