Refactoring project architecture: creation of viewmodel layer