Researcher profile

Carsten Kolassa

Carsten Kolassa contributes to research discovery and scholarly infrastructure.

ResearcherAffiliation not importedOpen to collaborate

Trust snapshot

Quick read

Trust 21 - EmergingVerification L1Unclaimed author
7works
0followers
1topics
4close collaborators

Actions

Decide how to stay connected

Follow researcher0

Identity and collaboration

How to connect with this researcher

Claiming links this public author record to a researcher profile and unlocks direct collaboration workflows.

Log in to claim

Direct collaboration

Open a focused conversation when the fit is right

Claim this author entity first to unlock direct invitations.

Research graph

See the researcher in context

Open full explorer

Inspect adjacent work, topics, institutions and collaborators without jumping out to a separate graph page.

Building this graph slice

BZPEER is loading the nearby papers, people, topics and institutions for this page.

Published work

7 published item(s)

preprint2016arXiv

TUnit - Unit Testing For Template-based Code Generators

Template-based code generator development as part of model-drivendevelopment (MDD) demands for strong mechanisms and tools that support developers to improve robustness, i.e., the desired code is generated for the specified inputs. Although different testing methods have been proposed,a method for testing only parts of template-based code generators that can be employed in the early stage of development is lacking. Thus, in this paper we present an approach and an implementation based on JUnit to test template-based code generators. Rather than testing a complete code generator,it facilitates partial testing by supporting the execution of templates with a mocked environment. This eases testing of code generators in early stages of development as well as testing new orchanged parts of a code generator. To test the source code generated by the templates under test, different methods are presented including string comparisons, API-based assertions, and abstract syntax tree based assertions.

preprint2015arXiv

A Comparison of Mechanisms for Integrating Handwritten and Generated Code for Object-Oriented Programming Languages

Code generation from models is a core activity in model-driven development (MDD). For complex systems it is usually impossible to generate the entire software system from models alone. Thus, MDD requires mechanisms for integrating generated and handwritten code. Applying such mechanisms without considering their effects can cause issues in projects with many model and code artifacts, where a sound integration for generated and handwritten code is necessary. We provide an overview of mechanisms for integrating generated and handwritten code for object-oriented languages. In addition to that, we define and apply criteria to compare these mechanisms. The results are intended to help MDD tool developers in choosing an appropriate integration mechanism.

preprint2014arXiv

A Model of the Commit Size Distribution of Open Source

A fundamental unit of work in programming is the code contribution ("commit") that a developer makes to the code base of the project in work. We use statistical methods to derive a model of the probabilistic distribution of commit sizes in open source projects and we show that the model is applicable to different project sizes. We use both graphical as well as statistical methods to validate the goodness of fit of our model. By measuring and modeling a fundamental dimension of programming we help improve software development tools and our understanding of software development.

preprint2014arXiv

Developer Belief vs. Reality: The Case of the Commit Size Distribution

The design of software development tools follows from what the developers of such tools believe is true about software development. A key aspect of such beliefs is the size of code contributions (commits) to a software project. In this paper, we show that what tool developers think is true about the size of code contributions is different by more than an order of magnitude from reality. We present this reality, called the commit size distribution, for a large sample of open source and selected closed source projects. We suggest that these new empirical insights will help improve software development tools by aligning underlying design assumptions closer with reality.

preprint2014arXiv

Objektorientierte Graphendarstellung von Simulink-Modellen zur einfachen Analyse und Transformation

In software and hardware development MATLAB and Simulink are used to model cyber physical systems for many years, , especially in automation technology and the automotive industry. Compliance with the required product quality and project efficiency is facilitated by analyzing and transforming Simulink models. The existing API, provided by MATLAB is only suitable for programmatic changing of Simulink models. We show using our own tool which is used in industry, how such as a Simulink model can be edited more easily. For this purpose the model, is converted to an object-oriented class structure that provides convenient access and editing APIs and allows applying well-known algorithms and analyses from graph theory directly. It is also designed as a bi-directional tool, so it transforms a Simulink model into a graph representation and vice versa. ----- In der Software- und Hardwareentwicklung wird seit Jahren verstärkt MATLAB und Simulink für die Modellierung von cyberphysikalischen Systemen, insbesondere in der Automatisierungstechnik und der Automobilindustrie eingesetzt. Die Einhaltung der notwendigen Produktqualität und Projekteffizienz wird durch Analysen und Transformationen auf Simulink-Modellen erleichtert. Die bestehende, von MATLAB bereitgestellte, API ist für die programmatische Veränderung von Simulink-Modellen nur bedingt geeignet. Wir zeigen deshalb anhand eines eigenen, im industriellen Einsatz befindlichen Werkzeugs, wie ein Simulink-Modell leichter bearbeitet werden kann. Dazu wird es in eine objektorientierte Klassenstruktur überführt, die einen komfortablen Zugang und Bearbeitungs-APIs bietet und es erlaubt bekannte Algorithmen und Analysen aus der Graphentheorie direkt anzuwenden. Das Werkzeug ist bidirektional entworfen, es transformiert also ein Simulink-Modell in eine Graphenrepresentation und umgekehrt.

preprint2014arXiv

The Empirical Commit Frequency Distribution of Open Source Projects

A fundamental unit of work in programming is the code contribution ("commit") that a developer makes to the code base of the project in work. An author's commit frequency describes how often that author commits. Knowing the distribution of all commit frequencies is a fundamental part of understanding software development processes. This paper presents a detailed quantitative analysis of commit frequencies in open-source software development. The analysis is based on a large sample of open source projects, and presents the overall distribution of commit frequencies. We analyze the data to show the differences between authors and projects by project size; we also includes a comparison of successful and non successful projects and we derive an activity indicator from these analyses. By measuring a fundamental dimension of programming we help improve software development tools and our understanding of software development. We also validate some fundamental assumptions about software development.

preprint2014arXiv

The Influence of the Generator's License on Generated Artifacts

Open sourcing modelling tools and generators becomes more and more important as open source software as a whole becomes more important. We evaluate the impact open source licenses of code generators have on the intellectual property (IP) of generated artifacts comparing the most common open source licenses by categories found in literature. Restrictively licensed generators do have effects on the IP and therefore on the usability of the artifacts they produce. We then how how this effects can be shaped to the needs of the licensor and the licensee.