A BDM programmer. A commercial one like old USB-ML-12 Multilink Adapter from PEmicro (my favourite one) or a cheaper open-source one like Wytek USBDM-1-JS16 or whatelse newer. Another good solution is to buy a DEMO9S08SH8 (or -SH32) which permits to make esperiments and include an USB BDM programmer which may be used to program all processor of MC9S08SH famyly either on board or externally on your application board or on simple adapter
An application board with the MC9S08SH8 and its small 6pin programming port. It may also be a breadboard with a socket and few other components. An simple example of this latter may be this one which is a part of a small application board of my own: