refactoring, redesigning communication