Be the first to like this
Research on methods and applications in Computer Science in general and in Information Systems specifically often entails the need to realize ideas and concepts in software implementations to demonstrate applicability and evaluate claimed contributions. This gives researchers the dual roles of scientist and software engineer that ideally form a symbiotic relation: realizing research ideas in software clarifies ideas and helps communicate findings, experimenting with software reveals open problems and shortcomings that stimulate further research and open new research topics.
The underlying assumption in this symbiosis is that the exchange between research and software is not hindered in significant way. In reality, many obstacles turn up. Even when published as open-source software with all source code available, the developed software is not designed with reuse and maintainability in mind, can often handle only specific inputs and fails on other inputs, is often poorly documented, and has dependencies on other software packages and environments which becomes unavailable after just a few years' time. This "technical debt" accrues over time. As researchers leave groups and projects, software gets abandoned, and the knowledge to run, maintain, and integrate it with other software gets lost. As a consequence, research results become hard or impossible to reproduce and existing realizations cannot be used in further research.
In this talk, I will present and discuss two fundamentally different cases of research software and how the research groups dealt with the above challenges that I experienced firsthand. The first case is a large collection of software tools on the analysis of services and their behavioral correctness in the area of Service-Oriented Architectures developed in a joint project between HU Berlin, TU Eindhoven, and University of Rostock (http://service-technology.org/, https://github.com/nlohmann/service-technology.org). The second case is the Process Mining research platform ProM developed and maintained by TU Eindhoven with contributions from dozens of research groups worldwide (http://www.promtools.org/). I will briefly explain the research behind both cases, the objectives of the software implementation, discuss the organizational circumstances and technical decisions that were made in each project, and shed light on the difficulties faced and what lessons can be learned from these.