Lean Mobile App Development

Book description

Develop lean iOS and Android apps using industry standard techniques and lean development practices.

About This Book

  • Build ready-to-deploy apps with less iterations and shorter development times
  • Adopt the lean startup methodologies to develop iOS and Android apps that shine in the App Store
  • This hands-on guide puts continuous innovation into practice to develop successful mobile apps

Who This Book Is For

This book is for developers, CTOs, and architects working for a startup or another kind of lean startup environment, such as start-up within a cooperation. It is is ideal for any iOS and Android developer who wants to build successful mobile apps by adopting the lean startup methodology.

What You Will Learn

  • Apply the lean startup methodology to real Android and iOS development
  • Define what your hypotheses are by creating an Minimal Viable Product
  • Validate your idea against the Business Model Canvas
  • Gather feedback through statistics and by getting user comments, learn from it, and adapt your app accordingly
  • Develop skills and devise strategies to build versatile and flexible apps that meet changing business requirements
  • Investigate the possibilities when you need to pivot your start-up idea whether in a startup or an established business.
  • Create a successful app and get tips on how to boostconversion and how to optimize the on boardingprocess.

In Detail

Lean is the ultimate methodology for creating a startup that succeeds. Sounds great from a theoretical point of view, but what does that mean for you as an a technical co-founder or mobile developer?

By applying the Lean Start-up methodology to your mobile App development, it will become so much easier to build apps that take Google Play or the App Store by storm. This book shows you how to bring together smarter business processes with technical know-how.

It makes no sense to develop a brilliant app for six months or longer only to find out later that nobody is interested in it. Build a Minimum Viable Product (MVP) first. Validate your hypotheses early and often. Discover effective product development strategies that let you put Facebook's famous axiom "move fast and break things" into practice.

A great app without visibility and marketing clout is nothing, so use this book to market your app, making use of effective metrics that help you track and iterate all aspects of project performance.

Style and approach

This book takes a hands-on approach to developing apps through the Lean Start-up Methodology. Following a 50% business and 50% tech approach, this book is filled with practical examples and real-world experiments.

Table of contents

  1. Preface
    1. What this book covers
    2. What you need for this book
    3. Who this book is for
    4. Conventions
    5. Reader feedback
    6. Customer support
      1. Downloading the example code
      2. Downloading the color images of this book
      3. Errata
      4. Piracy
      5. Questions
  2. Yes, There Is an App for That
    1. The app ecosystem
      1. Not every app has a flappy ending
    2. An introduction to the Lean Startup methodology
    3. Getting your users hooked on your app
    4. Summary
  3. Lean Startup Primer
    1. The Business Model Canvas
      1. Key partners
      2. Key activities
      3. Value propositions
      4. Customer relationships
      5. Customer segments
      6. Channels
      7. Cost structure
      8. Revenue stream
    2. Example BMC - mobile marketplace app
      1. Summary of the BMC
    3. Lean Canvas
      1. One metric that matters
    4. Agile development and customer development
    5. The MVP
    6. Summary
  4. Challenges in Applying Lean to Building Mobile Apps
    1. Higher design bar
    2. Apple's App Store submission cycles
    3. Inability to dynamically load libraries
    4. Cross-platform releases
    5. Getting users to download an app
      1. Maintaining app ratings
    6. Summary
  5. An Agile Workflow in a Nutshell
    1. An Agile workflow
      1. Kanban
      2. Scrum
    2. Epic, Stories, and Tasks
      1. Scrum team
      2. The daily stand-up
      3. Backlog refinement
      4. Definition of Ready
      5. Sprint planning
      6. Definition of Done
      7. Sprint review, planning, and retrospective
    3. Tools that you can use
    4. Summary
  6. A Pragmatic Approach
    1. Timeboxed programming
      1. Concierge service
      2. Is it crappy or perfect?
      3. Release early and often
    2. How do you get started with nothing?
      1. The chicken and egg problem
      2. Fake it until you make it
      3. Become an expert
      4. Grab and adapt
      5. Offer an app or a service that does not yet exist
    3. How to keep things well structured
      1. Design patterns
      2. Become independent
      3. Data layer
    4. Are there any shortcuts?
    5. Mash-up
    6. Summary
  7. MVP is Always More Minimal Than You Think
    1. What is MVP?
      1. Benefits of MVP
    2. How to define your MVP
      1. Building MVP
      2. Bringing components together to form an MVP
      3. Applying MVP to enterprise
    3. Fail fast – validate everything
      1. Apply agile prototyping - eliminate tech debt
        1. Lean UX cycles – the Build-Measure-Learn feedback loop
        2. Advantages of a feedback-focused development model
        3. Phases of the Build-Measure-Learn feedback loop
          1. Phase I - Build
          2. Phase II - Measure
          3. Phase III - Learn
    4. 10 essential UX testing methods
    5. Iterate and evolve - from viable to lovable
      1. Five tips to go from viable to lovable
    6. Summary
  8. Minimal Viable Product Case Studies
    1. Fun with Charades - Initial vision
      1. The big ifs
        1. Hypothesis 1
        2. Hypothesis 2
        3. Hypothesis 3
        4. Hypothesis 4
        5. Hypothesis 5
      2. The conundrum
        1. What we did well
        2. What we could have done better
      3. Summary
  9. Cloud Solutions for App Experiments
    1. Do you need to create a backend yourself?
      1. Leverage cloud solutions for app experiments
      2. Things to consider
    2. The story of Parse
      1. Strategic considerations
      2. What services are available as MBaaS?
      3. Technical considerations
    3. Canvapp - an Android MVP app using Firebase
    4. Sign up for Firebase
      1. Layout
      2. Dependencies
      3. Models
    5. Firebase dashboard
    6. Summary
  10. Native, Hybrid, or Cross-Platform
    1. Who is your audience?
      1. Measure - don't guess or use intuition
    2. What are your technical requirements?
      1. What are your technical capabilities?
    3. Native versus hybrid - the strengths and weaknesses
      1. Native apps
      2. Hybrid apps
        1. Pros and cons of going native
        2. The biggest benefits of going native
        3. Pros and cons of going hybrid
    4. The ugly truth - a little hybrid doesn't hurt when you have clear goals
    5. Making the final decision - factors to consider
    6. Leveraging cross-platform development tools
      1. Adobe PhoneGap
      2. Xamarin
      3. Appcelerator
    7. How to choose the right tool
    8. Summary
  11. There Is an API for That!
    1. Succeed or fail fast
      1. What is in a mash-up solution?
        1. Publishing an API
      2. Lego or Duplo?
      3. APIs versus SDKs
        1. Dependency management
        2. Android
        3. iOS
    2. Available APIs
      1. An iOS app proving our hypotheses, MoviUber
        1. Hypothesis
        2. Validating the idea through customer interviews
        3. Let's build an app
        4. Movie locations
        5. Uber
        6. IMDB
        7. Displaying locations on a map
        8. Uber integration
        9. Enriching the data
      2. Look! No code. Prove your hypotheses with IFTT
        1. Recipes, channels, and triggers
    3. Summary
  12. Onboarding and Registration
    1. What is user onboarding all about?
      1. Why does it matter?
    2. Pirate metrics (AARRR)
      1. Higher conversion
        1. How to lower the barrier?
      2. Single sign on using a social network like Twitter or Facebook
    3. Show us what you have got
      1. Phone number sign-up - a great alternative
    4. Continuous onboarding - complete the user profile later
    5. Tell a story - an example onboarding app
      1. Onboarding sign-up when needed
    6. Implementation
    7. Summary
  13. Do Things That Do Not Scale
    1. What we mean by "things that do not scale"
      1. Three reasons to do things that do not scale
        1. Improved testing and data collection
        2. Failure that can be controlled
        3. Development of products that are more lovable
    2. How to acquire early adopters and establish a small-scale laboratory
      1. Focusing on a narrow marketplace
      2. Manually recruiting early adopters
      3. Perfecting the user experience
    3. How to transition from an unscalable MVP to scalable code
      1. Focusing on learning with wireframes and prototypes
      2. Zeplin
      3. InVision
      4. UserTesting.com
      5. Focusing on scaling and sustainability
        1. Writing perfect code versus getting the job done
        2. Automation and optimization
        3. How to handle technical debt
    4. Summary
  14. Play Store and App Store Hacks
    1. What is an experiment?
      1. A/B testing as a technique for experimentation
      2. Why perform split testing?
      3. Store listing tests
      4. App testing
        1. Why do you care?
        2. The competition is intense
      5. Experiments work
      6. Why running experiments with Google Play or App Store is hard
        1. Obstacles to testing with store listings
      7. Different app listing requirements
      8. No standard way to measure results
      9. Limited infrastructure for A/B testing
      10. Why it is difficult to run parallel experiments
        1. Hacks to workaround the challenges
          1. Store listing hacks
    2. How do users find apps in the first place?
      1. Use microtesting to collect data
      2. Running app tests
    3. Summary
  15. A/B Testing Your App
    1. Why do statistics matter?
    2. About actionable metrics
      1. Acquisition
      2. Engagement
    3. Conversions and pirate metrics
    4. Get to know your audience
    5. Split testing can help us to improve our apps
      1. Keep the differences between variations subtle
      2. Tools for split testing and getting actionable metrics
      3. Using Firebase for split testing
    6. Summary
  16. Growing Traction and Improving Retention
    1. Traction
      1. Freemium or premium only?
      2. Improving retention
    2. Notifications
      1. Local notifications
      2. Push notifications
      3. In-app notifications
      4. Services for push notifications
        1. Implementation
        2. Setup
    3. Handling an incoming notification
    4. Sending a notification
    5. Summary
  17. Scaling Strategies
    1. Make it scalable but do not scale it right away
      1. A scalable backend
      2. Cloud-based storage and processing
      3. Seen from a client perspective
      4. You should know when you need to scale up or to scale down
      5. A real horror story about an app backend that did not scale
      6. Captain hindsight to the rescue!
      7. To scale up or to refactor? That is the question
    2. Auto-scaling
    3. Summary
  18. Monetization and Pricing Strategy
    1. Monetization strategies
      1. Selling or upselling your app
      2. Selling a product or service in the real world
      3. Offering your app for free and selling your service
      4. Advertisements
      5. Monetizing your data
    2. Pricing strategy
      1. Price perception
      2. Android or iOS first?
      3. In-app purchase product types
      4. In-app billing
    3. See how in-app purchases can be implemented
      1. The case of the Empurror
    4. Applying a pricing strategy to your store listing
    5. Summary
  19. Continuous Deployment
    1. Continuous Deployment = Continuous Integration and Delivery
      1. Continuous Integration
      2. Continuous Delivery
    2. Repository and Git workflow
    3. Automated tests
    4. An example of a continuous workflow for an Android app
    5. Building variants
    6. The Gradle way
    7. productFlavors
    8. sourceSets
    9. buildTypes
    10. signingConfigs
    11. Using TeamCity as build agent
    12. Automated deploy and delivery
    13. Self hosted
    14. HockeyApp or Fabric beta
    15. Fastlane, alpha/beta Play Store, and iTunes beta
      1. DevOps
    16. Summary
  20. Building an Unfair Advantage
    1. Introduction - it's not just about your app
      1. Digging your moat with intangible assets
    2. Protecting your work with IP laws
      1. Why you should care - Business-destroying patent trolls
        1. How IP laws can protect your app and business
        2. How to defend your intellectual property
        3. Going on the legal offensive
    3. The network effect and platforms
      1. The network effect
      2. The platform effect
    4. Making use of vertical markets
      1. Why target vertical markets?
        1. How successful companies exploit vertical control
        2. Switching costs
      2. How to use switching costs to improve user retention
      3. How to decrease competitors' switching costs
    5. Good customer support
      1. The right perspective on customer service
      2. A recipe for great customer service
      3. How successful companies use customer service to improve profits
      4. A look at some great tools to help with customer support
      5. The power of a well-developed brand name
      6. Reasons to brand yourself
      7. How to build your brand
      8. Tools to monitor your brand via social media and app stores
      9. Building a brand on a budget
      10. Branding case studies
    6. Summary
  21. The Flyng Case Study
    1. That sounds awesome, but what is Flyng?
    2. The team
      1. Mitchell Trulli
      2. Daniel Guthrie
      3. Mike van Drongelen
      4. The other contributors
    3. The MVP
      1. A distributed team
      2. Flyng's USPs
      3. Growing a user base
      4. The business model
        1. Customer segments
        2. Value propositions
        3. Customer relationships
        4. Channels
        5. Revenue Streams
        6. Key resources
        7. Key activities
        8. Partners
        9. Cost structure
        10. Unfair advantage
      5. Getting feedback
        1. Unvalidated assumptions
        2. A zombie feature
        3. Feedback and actionable metrics
        4. Split testing
      6. Vision
      7. Technical considerations
        1. Parse server hosted at Back4App
        2. Real-time data
        3. The other dependencies
        4. Queries
        5. Complex operations
        6. Push notifications
        7. Crash reports
        8. Releases
    4. Summary
  22. Appendix
    1. Reading list and references

Product information

  • Title: Lean Mobile App Development
  • Author(s): Mike van Drongelen, Adam Dennis, Richard Garabedian, Alberto Gonzalez, Aravind Krishnaswamy
  • Release date: November 2017
  • Publisher(s): Packt Publishing
  • ISBN: 9781786467041