Text this: A comparative evaluation of the three prominent approaches in adaptable software architecture