Great question. I’m really keen to hear from others what they do to keep themselves on track.
What we at Itchybeards try to do is making everything we add to the project justify it’s existence. Whether it’s an element on screen, or a new feature, everything is discussed pretty heavily as we want to keep our apps simple and focused. And we say no a lot: “when in doubt, leave it out”.
A way for us to measure whether an element, feature, policy, etc. should be in our app is by setting ourselves real life goals. For the app we’re currently working on, Rallypoint, just a while a go our goal was “get it ready for tech savy people to try it”. Hand in hand with that went “make the app slightly more useful than broken”. Now that we’ve passed that mark we took some time, actually using Rallypoint (using your own app to develop your own app… awesome right? ), to come to a proper new goal, which is something around the lines of “get X amount of active users”, with the idea that this should focus on making the core experience of the app better and only adding what needs to be added.
Hopefully these vague, ill described ideas will help you.