In the following I've put together a list of articles that I have published over the last couple of years. They address different topics around software development.
Some of the articles are available for download.
Evolutionstheorie — Historie der agilen Entwicklung
A retrospective (in German language) of how agile methods evolved. Included in a special issue on agile development of a German IT magazine.
Von agilen Verfahren lernen: Auf dem Weg zu bedarfsgerechter Dokumentation
Written for a German IT magazine, this article (in German language) gives an overview of how agile principles can be applied to software documentation. The article explains how the amount of documentation can be reduced to reasonable proportions and also addresses process issues, such as when (during the overall development process) documentation should be tackled.
in OBJEKTspektrum 03/2011, SIGS DATACOM, 2011.
Conference and Book Contributions
When an existing application is replaced by a new one, its data has to be transferred from the old world to the new. This process, known as data migration, faces several important requirements. Data migration must be accurate, otherwise valuable data would be lost. It must be able to handle legacy data of poor quality. It must be efficient and reliable, so as not to jeopardise the launch of the new application. This paper presents a collection of patterns for handling a data migration effort, focusing on both the design of the migration code and on process issues.
in James Noble, Ralph Johnson (Eds.): Transactions on Pattern Languages of Programming, Vol. 3, Springer, 2013.
The original publication is available on Springer's website.
Patterns for Successful Framework Development
Database access, GUI programming, transaction management: there are plenty of things that keep popping up in development projects. Since reuse is one of the big goals of software engineering, the idea of developing a framework springs to mind. Nonetheless, many projects are reluctant to develop a framework. For very good reasons, since a framework's complexity can easily turn using the framework into a hassle. This book chapter shows you how to develop small, well-targeted frameworks in a project context.
in Dragos Manulescu, James Noble, Markus Völter (Eds.): Pattern Languages of Program Design, Vol. 5, Addison-Wesley, 2006.
Making decisions can be difficult, yet is has do be done. There's often some tension between the desire for flexibility on the hand and the desire for a stable process on the other. This paper elaborates on several principles that can help you keep the balance.
in Proceedings of EuroPLoP 2004 (Eds. Klaus Marquardt, Dietmar Schütz).
Two-dimensional history is a versioning concept that makes a difference between when application data become effective and when they become known. This concept allows you to model things such as retro-active changes which are actually quite common in financial information systems. The paper contains five patterns that introduce the concept as well as implementation techniques.
in Proceedings of EuroPLoP 2002 (Eds. Alan O'Callaghan, Jutta Eckstein, Christa Schwanninger).
Managing Class Dependencies in Frameworks
Frameworks offer a huge degree of flexibility. This, however, can have its drawbacks too, for instance if several hot spots aren't independant of each other and constraints lead to an increased complexity. This paper offers a classification for the techniques that can be used to manage such constraints.
in Mohamed Fayad, Ralph Johnson, Douglas Schmidt (Eds.): Building Application Frameworks. John Wiley & Sons, 1999.
Andreas Rüping, Jutta Eckstein, Christa Schwanninger (Eds.).
Martine Devos, Andreas Rüping (Eds.).
Copyright Andreas Rüping, 2004 - 2018. I cannot accept responsibility for materials on other web sites to which external links from my web site may point. The owners of those sites hold the sole responsibility for their content.
Imprint: Dr. Andreas Rüping, Sodenkamp 21 A, 22337 Hamburg, Germany, Tax Id 26/225/34412 (Tax office Hamburg-Nord), VAT identification number DE235918641