the difference between "must have + (past participle)" and "should have + (past participle)"
Solution 1:
"Both must and should have the meaning of necessity" - but must have and should have have different meanings.
He must have been very popular = It's extremely likely that he was popular.
He should have been very popular = It seemed likely at the time that he would be popular (with the expected continuation ...but in fact he was not.)