A review of typical thermal fatigue failure models for solder joints of electronic components