I hate the stop/start way of teaching heel work. I get really frustrated and usually so does the dog. It obviously does work for some dogs as stated above but it does my head in! The dog wants to get somewhere and so do you and you have to keep stopping. You often see dogs shut down with this type of training, they start off looking forward, reluctantly come back to you, then after time start sniffing or staring but not coming back. It also teaches clever dogs that I can pull forward, we stop I go back, then I pull forward again. It does not reward the dog for being in the correct position.
Get a clicker and take off the dogs lead
Obviously do this in a safe secure area your garden or sitting room.
The reason I teach loose lead walking without a lead is that as owners we are usually pretty rubbish with the lead and tend to pull on it. What would you do if someone pulled on your clothes - you would pull away, so get rid of the lead for training purposes.
Hold a smelly lovely treat in your left hand and walk away - most dogs will follow you click and treat. More smelly treats in your hand and take one step, the dog will follow you click and treat. Do this several times a day at home until you can do a couple of steps and then click and treat. Gradually you can take more steps but do click and treat often. When the dog knows this game you can give a command, I would use a new command if you have been working on this in the stop and go way.
Then you can take this on the road, be prepared to click and treat more when you are in exciting areas, so build up to this gradually.