Assignment Rules are easy to create and maintain in Salesforce. But if you’ve got complex routing requirements, or if you want to use assignment rules for objects other than Leads or Cases, you’re going to have to build something very custom and very complicated. Instead of trying to build and maintain a bunch of custom code to manage your assignment rules, check out the powerful Distribution Engine! The Distribution Engine features weighting, skill routing, load balancing, and more.
Distribution Engine is an easily configurable, intelligent, rules-based lead assignment engine that ensures your Leads, Opportunities, Contacts (any standard or custom SFDC object) are automatically distributed to the right team member at the right time.