I'm going to agree with hubby. The anti bark products are just a quick fix. Just to get your dog to shut it, and in turn you will not know or understand why he is barking. Those products I feel don't train them to stop barking, they scare them to stop barking, which IMO is never good. Don't bark b/c I'm gonna get a face full of spray, or a shock on the neck.
Dogs bark b/c they are trying to tell you something, mom there's a squirrel over there, mom why is a man climbing our fence? mom I'm bored why aren't you playing with me?
You need to train your dog to bark to alert you when something is odd, etc. and to not bark for any old darn reason. The training is hard, I'm not gonna lie. We have successfully trained Uni to "not bark" when she just wants attention or something. She will stop barking and growl instead. But in certain situations, such as someone comes to the door late at night, she will bark like crazy, letting us know why in the heck is someone ringing our bell at this hour?
I guess what I am trying to say is, when your sheperd is barking at something, instead of just shushing her, go out and take a look (even if you are just pretending to look) at what is going on outside, and tell her, oh thank you I see that, ok let's go in now, or something like that. Then distract her with something to do or a toy or something. This is what we did with Uni and it worked great.