Daniel Atzberger's research while affiliated with Hasso Plattner Institute and other places

Publications (11)

Chapter
For various program comprehension tasks, software visualization techniques can be beneficial by displaying aspects related to the behavior, structure, or evolution of software. In many cases, the question is related to the semantics of the source code files, e.g., the localization of files that implement specific features or the detection of files...
Conference Paper
The number of software projects developed collaboratively on social coding platforms is steadily increasing. One of the motivations for developers to participate in open-source software development is to make their development activities easier accessible to potential employers, e.g., in the form of a resume for their interests and skills. However,...
Conference Paper
Based on the assumption that semantic relatedness between documents is reflected in the distribution of the vocabulary, topic models are a widely used class of techniques for text analysis tasks. The application of topic models results in concepts, the so-called topics, and a high-dimensional description of the documents. For visualization tasks, t...
Conference Paper
The number of publicly accessible software repositories on online platforms is growing rapidly. With more than 128 million public repositories (as of March 2020), GitHub is the world’s largest platform for hosting and managing software projects. Where it used to be necessary to merge various data sources, it is now possible to access a wealth of da...
Conference Paper
Full-text available
In order to detect software risks at an early stage, various software visualization techniques have been developed for monitoring the structure, behaviour, or the underlying development process of software. One of greatest risks for any IT organization consists in an inappropriate distribution of knowledge among its developers, as a projects' succe...
Presentation
Full-text available
Presentation of research paper "Visualization of Knowledge Distribution across Development Teams using 2.5D Semantic Software Maps".
Conference Paper
Full-text available
Software visualization uses metaphors to depict software and software development data that usually has no gestalt. The choice of a metaphor and visual depiction is researched broadly, but deriving a layout based on similarity is still challenging. We present a novel approach to 3D software visualization called Software Galaxy. Our layout is based...
Conference Paper
Full-text available
Software visualization techniques provide effective means for program comprehension tasks as they allow developers to interactively explore large code bases. A frequently encountered task during software development is the detection of source code files of similar semantic. To assist this task we present Software Forest, a novel 2.5D software visua...
Conference Paper
In many predictive maintenance scenarios, the costs for not accurately detecting or anticipating faults can be considerably higher than the cumulative costs for inspections or premature maintenance. However, conventional symmetric loss functions widely used in machine learning cannot reflect such different costs. In this paper, we propose a method...

Citations

... Similarly, the frequency of regular expressions determines the level of experience in using a programming language. By training a Labeled Latent Dirichlet Allocation (LLDA) model, a variant of Latent Dirichlet Allocation (LDA), on an automatically generated corpus, the specific vocabulary for a higher-level concept in comments and identifier names is extracted, allowing the computation of an expertise score for higher-level concepts as presented by Atzberger et al. [7]. The corpus consists of GitHub projects together with their associated GitHub topics 4 and is generated automatically. ...
... Using this layout, the authors introduced the tree metaphor for software visualization, resulting in the so-called Software Forest. In a later work, Atzberger et al. discussed the use of pawns and chess figures as 3D glyphs for visualizing the knowledge distribution across software development teams [3]. In this case, the layout reflects the semantic similarity between developers, additional information about the expertise of each developer can then be mapped on the visual variables of the representing glyph. ...
... Such tasks can become intensively time-consuming with long-lasting software systems and with an increasing number of different developers. In order to support such tasks, various layouts exist that can reflect semantic similarities between files, i.e., by placing files with a similar semantic closer to one another [27,28,2,4]. Using 2D or 3D glyphs to represent files with a semantic positioning and additional data mapping, e.g., software metrics mapped to the glyphs' visual variables, facilitates the comprehension of the semantic structure of a software project. ...
... Such tasks can become intensively time-consuming with long-lasting software systems and with an increasing number of different developers. In order to support such tasks, various layouts exist that can reflect semantic similarities between files, i.e., by placing files with a similar semantic closer to one another [27,28,2,4]. Using 2D or 3D glyphs to represent files with a semantic positioning and additional data mapping, e.g., software metrics mapped to the glyphs' visual variables, facilitates the comprehension of the semantic structure of a software project. ...
... A problem linked to these methods is that assessing the exact cost of a given error is highly domain-dependent and not straightforward [10]. Other methods include the optimization of an asymmetric loss function in standard learning algorithms [21,9]. In the context of regression, few contributions have been made regarding optimization techniques. ...