Fork me on GitHub
Cette page en français
Barre Verte !

Architecture Refactoring - Dramatical changes

Keys to go through the next important step in your application lifecyle



All materials of this session are distributed under Creative Commons


Refactoring allows the code to evolve incrementally, thus enabling the design of an application to adapt itself to its context, while tests guaranty its functionalities. It is necessary to continue to deliver value at the same pace with a growing code base. This is the kaizen of code.

Developers are more and more working on aging software. To cope with an important need for scalability, new features, or organizational changes within little time, refactoring the structure of your software is much needed, while keeping it shippable at the same time. You need radical changes. This is kaikaku.

We will talk about how we inverted a dynamic call routing application from a kernel centric logic to a client/server voicexml architecture in one month, with 100 KLOC of java. Or change all the home made statistic layer of a 160 java KLOC mobile video service with an AMQP broker, continuing to deliver other features with a 5M statistic events per day traffic.

In this session, we will see together :

We kept an empiric, test based and teamwork based vision and we think it’s worth sharing with the community.


You can see the slides online here (javascript on)

You can get the source code of this session on github: bamthomas/remaniement_architecture.