Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Christian Köppe

dblp:130/3677 · DBLP profile ↗
← Back
8ranked-venue papers
4as first author
0since 2021 · last 2020
0000-0003-0326-678XORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 7 · 3 first-authorHuman-computer interaction and ubiquitous computing · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Requirements engineering and software design · 43% Program analysis · 43% Empirical software engineering · 15%
Interdisciplinary, comprehensive, and emerging computing
1 paper
Computing education · 100%

Topics — the 4 heaviest of 4, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Computing education
software engineering education
0.212015
Improving Student Group Work with Collaboration Patterns: A Case Study · ICSE (2) 2015
Requirements engineering and software design
software architecture
0.212014
HUSACCT: architecture compliance checking with rich sets of module and rule types · ASE 2014
Program analysis
static analysis
0.212014
HUSACCT: architecture compliance checking with rich sets of module and rule types · ASE 2014
Empirical software engineering › developer studies › developer collaboration
collaboration patterns
0.112015
Improving Student Group Work with Collaboration Patterns: A Case Study · ICSE (2) 2015

Methods — techniques the papers use, named apart from their topics

case study · 0.4static analysis · 0.2
YearPublicationVenuePosition
2020 Program a Hit - Using Music as Motivator for Introducing Programming Concepts
abstract
People with no prior experience or a low self-efficacy in computing are less likely to choose Computer Science (CS) as a study subject. This especially has an impact on young women and is therefore one of the reasons for the prevalent gender imbalance in CS student populations. We designed a workshop that addresses this issue and uses music as motivating context. It introduces a variety of essential programming concepts in a fun and engaging way and results in creative artifacts programmed by the participants. First experiences show that this approach leads to promising results and might therefore contribute in the longer term to a more diverse CS student population.
Christian Köppe
ITiCSE1
2017 The accuracy of dependency analysis in static architecture compliance checking
abstract
Architecture compliance checking (ACC) is an approach to verify conformance of implemented program code to high-level models of architectural design. Static ACC focuses on the modular software architecture and on the existence of rule violating dependencies between modules. Accurate tool support is essential for effective and efficient ACC. This paper presents a study on the accuracy of ACC tools regarding dependency analysis and violation reporting. Ten tools were tested and compared by means of a custom-made benchmark. The Java code of the benchmark testware contains 34 different types of dependencies, which are based on an inventory of dependency types in object oriented program code. In a second test, the code of open source system FreeMind was used to compare the 10 tools on the number of reported rule violating dependencies and the exactness of the dependency and violation messages. On the average, 77% of the dependencies in our custom-made test software were reported, while 72% of the dependencies within a module of FreeMind were reported. The results show that all tools in the test could improve the accuracy of the reported dependencies and violations, though large differences between the 10 tools were observed. We have identified 10 hard-to-detect types of dependencies and four challenges in dependency detection. The relevance of our findings is substantiated by means of a frequency analysis of the hard-to-detect types of dependencies in five open source systems. © 2016 The Authors. Software: Practice and Experience Published by John Wiley & Sons, Ltd.
Leo Pruijt, Christian Köppe, Jan Martijn E. M. van der Werf, Sjaak Brinkkemper
Softw. Pract. Exp.2
2015 Improving Student Group Work with Collaboration Patterns: A Case Study
abstract
Group work skills are essential for Computer Scientists and especially Software Engineers. Group work is included in most CS curricula in order to support students in acquiring these skills. During group work, problems can occur related to a variety of factors, such as unstable group constellations or (missing) instructor support. Students need to find strategies for solving or preventing such problems. Student collaboration patterns offer a way of supporting students by providing problem-solving strategies that other students have already applied successfully. In this work we describe how student collaboration patterns were applied in an interdisciplinary software engineering project, and show that their application was generally experienced as helpful by the students.
Christian Köppe, Marko C. J. D. van Eekelen, Stijn Hoppenbrouwers
ICSE (2)1
2014 HUSACCT: architecture compliance checking with rich sets of module and rule types
abstract
Architecture Compliance Checking (ACC) is an approach to verify the conformance of implemented program code to high-level models of architectural design. Static ACC focuses on the module views of architecture and especially on rules constraining the modular elements. This paper presents HUSACCT, a static ACC tool that adds extensive support for semantically rich modular architectures (SRMAs) to the current practice of static ACC tools. An SRMA contains modules of semantically different types, like layers and components, which are constrained by rules of different types. HUSACCT provides support for five commonly used types of modules and eleven types of rules. We describe and illustrate how basic and extensive support of these types is provided and how the support can be configured. In addition, we discuss the internal architecture of the tool.
Leo Pruijt, Christian Köppe, Jan Martijn E. M. van der Werf, Sjaak Brinkkemper
ASE2
2013 Architecture Compliance Checking of Semantically Rich Modular Architectures: A Comparative Study of Tool Support
abstract
Architecture Compliance Checking (ACC) is an approach to verify the conformance of implemented program code to high-level models of architectural design. ACC is used to prevent architectural erosion during the development and evolution of a software system. Static ACC, based on static software analysis techniques, focuses on the modular architecture and especially on rules constraining the modular elements. A semantically rich modular architecture (SRMA) is expressive and may contain modules with different semantics, like layers and subsystems, constrained by rules of different types. To check the conformance to an SRMA, ACC-tools should support the module and rule types used by the architect. This paper presents requirements regarding SRMA support and an inventory of common module and rule types, on which basis eight commercial and non-commercial tools were tested. The test results show large differences between the tools, but all could improve their support of SRMA, what might contribute to the adoption of ACC in practice.
Leo Pruijt, Christian Köppe, Sjaak Brinkkemper
ICSM2
2013 On the accuracy of Architecture Compliance Checking support Accuracy of dependency analysis and violation reporting
abstract
Architecture Compliance Checking (ACC) is useful to bridge the gap between architecture and implementation. ACC is an approach to verify conformance of implemented program code to high-level models of architectural design. Static ACC focuses on the modular software architecture and on the existence of rule violating dependencies between modules. Accurate tool support is essential for effective and efficient ACC. This paper presents a study on the accuracy of ACC tools regarding dependency analysis and violation reporting. Seven tools were tested and compared by means of a custom-made test application. In addition, the code of open source system Freemind was used to compare the tools on the number and precision of reported violation and dependency messages. On the average, 74 percent of 34 dependency types in our custom-made test software were reported, while 69 percent of 109 violating dependencies within a module of Freemind were reported. The test results show large differences between the tools, but all tools could improve the accuracy of the reported dependencies and violations.
Leo Pruijt, Christian Köppe, Sjaak Brinkkemper
ICPC2
2011 A pattern language for teaching design patterns (part 2)
abstract
Pedagogical Patterns help in general with teaching. But the teaching of design patterns introduces a few specific problems like e.g. ensuring that the purpose of patterns is understood and that patterns are applied in the appropriate and correct way. This pattern language for teaching design patterns addresses these problems and offers solutions for teachers and trainers to solve them.
Christian Köppe
PLoP1
2010 Observations on the observer pattern
abstract
A group of students who should have been familiar with basic design principles and MVC all failed to implement the Observer design pattern correctly while at the same time violating several design principles. This paper discusses what went wrong and why it probably went wrong. Possible suggestions are given for teaching the Observer pattern and for teaching design patterns in general.
Christian Köppe
PLoP1