Stop the Software Architecture Erosion: controlling and building better software systems

Sun 1:30-5:00 pm - Bonanza B
Bernhard Merkle, SICK AG, Germany

During the evolution of a software system, it becomes more and more difficult to understand the originally planned software architecture. Often a architectural degeneration happens because of various reasons during the development phases.

In this session we will be looking how to avoid such architectural decay and degeneration and how continuous monitoring can improve the situation. (and avoid architectural violations) In addition we will look at "refactoring in the large" and how refactoring can be simulated.

We will also look at some popular open source projects like ant, findbugs and eclipse (CDT/JDT) and see if and how far architectural erosions happens/ed there.

The participants will analyse a system and search with tool support for ersion areas and subsequently simulate virtual refactoring for improving the software. At the end participants will improved the system and have a good feeling how far an automated and tool supported approach can lead to better results.

AudienceResearchers, Practitioners
  • detecting architectural erosion
  • refactoring eroded areas, and avoid this in the future
  • improve software and architecture quality
Class format

This is intended as a hands-on tutorial, 3 hours in length or longer with some presentation and some exercises parts.


2009 Highlights

Brion Vibber

Brion Vibber discusses the challenges of working with user communities, social bottlenecks, the Wikipedia article deletion process, scalability of software vs communities, new approaches to scaling communities, ongoing challenges with MediaWiki community, using git to scale the code commit process, automated Wikipedia edit filtering, flagged protection pages, and remaining challenges to face.

Watch the video on InfoQ.

More Highlights