Exactly - the dog needs to be shown who the Alpha is.
I suggest that when she gets aggressive, you pin her on her side, gently, but firmly leaning your body onto her, while holding her down. DO NOT let her get up or away from you. Assert your dominance. While she is being held down, growl into her ear. Keep holding her down until she stops struggling. That will signify her giving in to you. A few times of you dominating her, she will learn.
I have a breed that is extremely dominant and is always testing the alpha chain. They can also be aggressive. It is very important to socialize, teach them who is the pack leader and that their mouth never touches human skin from a very early age.
Although alpha rolling was popular for this breed long ago, it is now not recommended. As others have said, most people don't do it correctly and you can get hurt doing it.
There are far better ways to establish the pack relationship, including lots of down and sit stays until you release them. Ie; when the doorbell rings, my dogs go into a down stay. They are not allowed to greet the people until after I do. They have to be in a down stay when we are eating. They can watch us from the other side of the room, but they are the bottom of the pack, so they can't 'join' us for dinner. They are put in a sit stay when we exit doors. We go out and then they are released to follow us. It takes a second, but it constantly reinforces that they cannot do anything without our permission first, ie; bottom of the pack.
The biggest one; we never let our dogs sleep in our bed. That is just asking for trouble with a dominant dog. That puts them on the same level as the parents and above the children in the household. They are also never allowed on the "people's" furniture. They have their dog beds in rooms and that is where they have to rest.
OP - the best thing I ever learned from our trainer is that you always have to be consistent. Always use the same command and never let a dog get away with anything, ever, even if you are tired and don't feel like redirecting the behavior. So, if a puppy is nipping, don't let them get away with it just once - always follow through with the redirect and the command you use for no mouth.
Also, never, ever utter a command if you are not sure you can 100% reinforce it. For instance, do not let the puppy out and then say "come." If the dog does not come the first time, you have just taught the puppy that the command "come" is optional. Our trainer always recommended putting a puppy outside (always watched) on a 30ft lead. That way, you have the end of the lead and can enforce the command "come" if they do not come. If you have allowed the puppy to not obey a command, you will need to change the word for the command.