I know that it is hard to program to reflect a fair and reasonable achievement to avoid getting sacked and so that it reflects real life.
I guess the only fair way is to maintain a success percentage. Winning games, reaching goals, getting promoted and loyalty should all cause the % to go up and losing games, failing to reach goals, poor money management etc should cause the % to go down.
And once your % goes down past a certain score then you get the sack.
It is hard to swallow it when your teams comes 2nd and you get sacked.
In a football management game - I had taken a national side to World and European cup glory and then lost to Brazil 1-0 in the final of the Confederation's Cup and got sacked. What the!?
But I guess that this unpredictability reflects real life - I mean Eddie Jones got sacked after his team only lost a tiny eight out of a huge nine games. WTF? Go figure?