Text this: Proactive Self-Adaptation for Improving the Reliability of Mission-Critical, Embedded, and Mobile Software.