Requirements Engineering for Adaptive Service Based Applications