I made a thread about this, and my suggestions are as follows:
- Shoving should be an Athletics check versus the higher score of the target's Acrobatics or Athletics.
- Display the check in the combat log.
- The attacker rolls with advantage if the attacker is one size category larger that the target. If the attacker is two categories larger than the target, the shove automatically succeeds.
- The attacker rolls with disadvantage if the target is one size category larger than the attacker. If the target is two categories larger than the attacker, the shove automatically fails.
- The attacker rolls with advantage if the target has the surprised condition.
- If the target is completely unaware, the shove is an automatic success, if the attacker is the same size category or larger than the target.
- If the target is completely unaware, the shove is a contested roll if the attacker is one size category SMALLER than the target. (A straight roll, as the advantage from the target being unaware is cancelled by the target being a larger size than the attacker.)
- Shove should be a bonus action for Fighters and Barbarians only, and a full action for every other class.