Bridging the gap between requirements engineering and software architecture : a problem-oriented and quality-driven method (2017)