Improve classes responsabilities design