Reflective and adaptive middleware for software evolution of information systems. - Ahmed Mohamed Ali Ghoneim (2007)