Continuous Adaptive Requirements Engineering: An Architecture for Self-Adaptive Service-Based Applications