The Lean Startup methodology has really caught on over the last few years. Key elements of it are experimentation, iterative development, and incorporating customer validation as early as possible. The term Minimal Viable Product (MVP) is often used to describe the first product that is released to test the market.
Now, originally Lean Startup was developed by Eric Ries while working on web products. Web sites can easily be shielded from non-invited users (for private betas) or you can put a beta label on it and users will understand it will be limited. You can instantly deploy new versions and there are lots of tools for all kinds of testing available. For A/B testing there are tools like Optimize.ly, Google analytics for statistics or user feedback via GetSatisfaction or UserVoice.
However, native mobile development has some characteristics that make it hard to apply the Lean Startup methodology:
- Distributing beta versions is hard – in particular for iOS you are limited to 100 devices, you need to get the UDID of all testing devices and create a profile with that information. For Android it is easier, you can create a special version and distribute to anybody.
- Limiting access to published apps is not allowed – everybody has to have access to your app once it is in the Apple iTunes or Google Play store. Secret publication is impossible and you are not allowed to incorporate a login inside your app for a limited set of users.
- Your app needs to be ready for launch – initial launch is a very important moment for your ranking and long term success, so your MVP needs to be pretty if not very good at launch. The store may feature you if you are really outstanding, and initial ratings and reviews will have a profound effect on your subsequent downloads and thus ranking.
- Updating takes time – putting out a new version of your iOS app takes 1-2 weeks for review so quick iterations are hard. It is only 30 minutes for Android fortunately.
So what can you do to follow as much as possible the Lean Startup methodology?
- Develop mockups and test those – use paper and pen, Balsamiq or other prototype tools, get it in the hands of users and get their feedback.
- Create non-native prototypes (i.e. HTML5) – easier to build than native, the product might actually work in a reasonable way and will be better at eliciting feedback from users.
- For your beta use distribution tools – like Mobtest other tools help you with distribution like Testflight or Hockey.
- Focus only on a few features of your native app, but execute these really well – prioritize features and only build those that are required to offer some initial value that is good enough for users to keep on using your app.
- Develop for only one platform first – learn from your first version, improve and once the product is good enough build the same app for other platforms.
- Use A/B tools for native development – recently some tools like Clutch.IO and Switchboard have been released that offer A/B testing for iOS and Android.
iOS or Android first?
iOS still has most of the early adopters, and has users that actually are willing to pay for apps. Android as stated above has no review period and allows for easy beta distribution. So both have advantages, just don’t build two new apps for these two platforms at the same time but learn from one for the other.
So, with a few tricks applying Lean Startup for mobile is certainly possible. Using Lean Startup is important because you want to make sure you are building a product that offers value for your customers and you are going in the right direction.