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