Best practices for developing customizations for Microsoft ...