There is no single word replacement for "should have" as it expresses a past obligation or expectation.
Here are some phrases you could use depending on the context:
* Ought to have: This is a more formal way of saying "should have".
* Was supposed to: This emphasizes the planned or expected action.
* Had to: This highlights the necessity of the action.
* Might have: This suggests a possibility or a missed opportunity.
Ultimately, the best alternative will depend on the specific situation and the intended meaning.