'
Modern software system exist often in fast changing environments. To remain useful in such environments, software must be configurable at runtime to adapt to such changing environments. This tutorial will present practical guidelines and directly reusable design solutions to build the architecure for such runtime-configurable systems.'