A methodology for building software-as-a-service apps