I've said this every time I give tips to beginners, and I'll say it again.
A story is driven by it's characters.
If you have interesting, well written characters, the story will drive itself. Define for them a current state, a goal, an end state, and the method in which they will get there. Ensure that your characters aren't just one dimensional. Don't make them an 'if then' statement. If your character could legitimately react in multiple ways to the same scenario, then you know it's a good character.
Aside from that, I would highly suggest having an antagonist. Not all stories need one, but honestly in my own experience, whenever I am writing a story it's never good unless it has one of two things. Either an antagonist to fight, or a major internal conflict within a character- and if there's both, all the better.