An architecture-centric approach for developing timing-driven self-adaptive software systems by A. Wils