There are a few different things that it could be. We've had some similar issues with one of our dogs, so I'll share what I have learned about this kind of stuff.
1) Lack of exercise. Playing in a yard, especially for working dog breeds like a collie, is not enough. They need tons of exercise, as well as exercises that keep their minds busy. A quick walk around the block isn't enough. Our dogs get 2-3 miles/day. It sucks to get up at 0'dark early to walk them, but it's what they need, you know? Agility training, plus basic obedience training can also be very helpful. Dogs like yours are extremely smart and constantly need new challenges. We go to 4 training classes a week between our two big dogs, and we're looking to add another one for our PITA frenchie who basically ignores everything we say lol.
2) You probably went through a honeymoon phase with your dog when you first got her, meaning that she was getting to know you, and you her, and you may have unintentionally encouraged behaviors that led to this. Not trying to snark or anything, these are just things we've learned about ourselves when going through this with our own dog.
3) She hasn't been shown her proper place in the pack, and therefore feels the need to step up as an alpha because she hasn't been shown who the real alpha is in your pack. Allowing your dogs on the furniture with you puts them, in their minds, on the same "Level" with you, and therefore confuses their place in the pack. Allowing them to go out any door before you also leads to this confusion. We practice NILIF, and our dogs always, always have to give before they get. They sit and wait patiently to go out, or I turn and walk away and come back after they've calmed down. They sit and wait patiently while I prepare their food, or else I leave and come back after they've calmed down. They lay down for treats, they do not, under any circumstances, initiate tug of war or any other power play type games, and when walking, they walk next to or behind, never in front.
All of this training has taken MONTHS to establish, and required massive amounts of behavior modification on our parts, not on the dogs part. To put things in perspective, our mastiff has a lot of trust and fear issues, which manifest as aggression. When we first got her, we couldn't even rub her belly because she was so mistrustful. With the help of our trainer, it took FORTY MINUTES to get her to relax and lay enough one day to rub her belly. We have to keep doing that every.single.day, and now she will usually give us her belly (for dogs that means they trust you). I wanted to cry the first time she did it, because it was such a huge step for her.
Not knowing her place in the pack can also lead to her feeling insecure, and will kind of give her the tendency to lash out when she feels that her (somewhat uncertain) place in the pack is being challenged, hence the attack on the puppy. Size doesn't really matter much in a pack, it's all about the personality of the dog. Our amazingly happy and outgoing rottweiler, who loves other dogs, and practices good dog manners when greeting, was very intimidated by a pack of Jack Russells that one of our trainers have. She knew it wasn't her pack, her turf, and that she wasn't in charge there. It was interesting to see.
4) Socialization. Get her out into a training class with other dogs, where she has to learn the proper way to greet other dogs, what is acceptable and unacceptable behavior with the other dogs, and you'll be surprised at how much of your own behavior can contribute to unwanted behavior in your own dogs. I recently learned that my own reactions to our dogs fear was encouraging it, instead of comforting her like I thought I was. We have a tendency as compassionate people to humanize our dogs, when really, that's just not how their brain works. Once I stopped even looking at my dog when she would start acting scared or fearful, and just went on with whatever was going on, business as usual, I was amazed at how much her demeanor changed when she saw that raking the yard wasn't scary, nor was me sweeping the floors, and the noise made from me dishing out their food was a good thing, she really changed.
You also have to realize that her behavior isn't really willful disobedience on her part, it's more about her instincts and her learned behavior. You cannot react with anger when she does something bad, you really have to continue on, business as usual. They are not people, and don't understand the concept of punishment like people do, you know?
We still have a lot of work to do, our trainer pretty much laid it out months ago that this was going to be a work in progress, and that if we weren't willing to commit, we needed to rehome ASAP, so we know there's a long road ahead.
If you aren't using a trainer, I highly recommend you find one to help you out. A good trainer is totally worth their weight in gold, at least to us lol.
I hope this giant book of a post was helpful to you.