Try this, stop yelling at the dog.
You seem to be confusing assertion with aggression ( too much time watching Cesar Milan I suspect)
Try positive training and reinforcement.
Positive as in when behavior is bad good things (like treats, attention, or playtime) go away.
Not negative as in wrong behavior makes bad things (yelling, hitting, nose rubbing in, or fear) happen.
Training with negative reinforcement is slower and more difficult.
If a dog is afraid of punishment if he does the wrong thing he will eventually do nothing.
Ask yourself how often you would have tried to answer questions in school if every time you got the answer wrong you got smacked.
And another important issue many people overlook is unless it comes at the moment of misbehavior any kind of correction, positive or negative, it's useless. you can't correct a dog for something she did 10 minutes ago. They do not make the association between the past deed and the present punishment.
Your dog is "almost a year old". Despite the old chestnut about dog years and people years, your dog is just a kid, have a little patience.
Both your dog and you will be better off for it.
Deference Over Dominance - living with your dog in today's world- James Beach, Psychogenic Concepts publications.