1) refactoring 2) validating messages against XSD 3) system and user validation at dispatcher level, and building responses at the processor level