Improving quality of software reengineering process in non-functional requirements through soft goal interdependency graphs