I'm still planning the features of my Tumblr Photo browser that I'll develop and sell on the App Store. The process of planning the application's features set is important. First, it will help me prioritize my development efforts. Second, I'm sure many features will be interesting to include but a few will be left out altogether or will be part of a subsequent release.
What features goes into 1.0 release? What features are essential to include from day one? Answering these questions is like asking myself: what is the essence of my application and this is critical. Features less important will be part of subsequent releases but I'm still think about them now because it may influence the design of the application, its behaviour and the visual look and placement of user interface elements. It is like thinking about application behavioural extensibility.
Right now I'm using Remember The Milk service to help me write down the application features and classify them in application releases. For this task, I created three to do lists the following way:
MyApp 1.0 feature set
MyApp 1.1 feature set
MyApp 1.2 feature set
For each feature, I put them in the correct release. When describing the features, I find myself pushing further the inclusion of certain features in a subsquent version if I feel the features will take too much time to include in the prior release or if it is not that important to the application.
As you can see, thinking about a mobile application (or any application for that matter) involves many things, not just coding and Photoshopping application's visual elements.