19
HOW TO FIX A BUG IN PRODUCTION

How to fix a bug in production - Rollout.io

Embed Size (px)

DESCRIPTION

In today's mobile landscape, a lot of resources are directed towards building better quality apps - from beta testing platforms to distribution systems and even app performance monitoring solutions. But none of these solutions help developers while their app is in production. A critical bug can cause a lot of damage to an App company, resulting in lower appstore rating, bad reviews which are difficult to bounce back from, and financial damages of up to $12K/hour of downtime (for a medium sized company). With Rollout.io, developers can quickly react to their users by remote-controlling their app's settings and parameters, as well as fix and contain errors and issues in real time - without waiting for a full release cycle.

Citation preview

Page 1: How to fix a bug in production - Rollout.io

HOW TO FIX A BUG IN PRODUCTION

Page 2: How to fix a bug in production - Rollout.io

John is an app developer

Page 3: How to fix a bug in production - Rollout.io

Wants to update his app

Page 4: How to fix a bug in production - Rollout.io

Develop

#import <SpriteKit/SpriteKit.h>

Page 5: How to fix a bug in production - Rollout.io

QA Process

Page 6: How to fix a bug in production - Rollout.io

Review

4 days on average(can take weeks in some cases)

Page 7: How to fix a bug in production - Rollout.io

Live at the AppStore

Page 8: How to fix a bug in production - Rollout.io

User Downloads the App

Page 9: How to fix a bug in production - Rollout.io

Whoops critical bug!

Page 10: How to fix a bug in production - Rollout.io

Quickly find and fix the problem

Quickly!

Ah! we’re getting bad reviews!

Come on already...

#import <SpriteKit/SpriteKit.h>

1-2 days

Expedited Review

Live at the AppStore

User updates the App

Rush/skip QA

Page 11: How to fix a bug in production - Rollout.io

More issues...

Page 12: How to fix a bug in production - Rollout.io

3-6 DaysAverage for an expedited release cycle

User downloads the app

Expedited Review(1-2 days avg.)

QA Process

V1.1 V1.2

Live at the AppStore

Developer

#import <SpriteKit/SpriteKit.h>

Page 13: How to fix a bug in production - Rollout.io

THE DAMAGES OF DOWNTIME

Source: Crittercism Mobile Experience Benchmark 2013

for a medium sized company

$12,000/hr

Page 14: How to fix a bug in production - Rollout.io

Bad Reviews Sales Lost (ads, IAP...)

App Rating is Hurt

Productivity Loss

User Abandonment

THE DAMAGES OF DOWNTIME

for a medium sized company

$12,000/hr

Source: Crittercism Mobile Experience Benchmark 2013

Page 15: How to fix a bug in production - Rollout.io

Rollout.io enables developers to remote control their production enviornment.

Page 16: How to fix a bug in production - Rollout.io

SDK CAPABILITIES

Bug fixing and containment

SDK toggling

UI Changes (buttons, images, etc)

Advanced logging & debugging

Create analytics events

Messaging

Page 17: How to fix a bug in production - Rollout.io

Light-weight SDK that anlyzes

source code

Secure communication to all access points

created

Creates access points to all

app’s functions

Ability to manipulate

runtime

This tweak is currently pushed to test

devices. Manage test devicesTestSaved.

-[AppDelegate applicationapplication:didFinishLaunchingLaunchin-gLaunchingWithOptions:]

/AppDelegate.m::17

WHEN CATCHED:

Add analytics / message Edit

Return value:

Add analytics / message

Add analytics / message

Add Hot Fix Try / Catch

0

Replace ParameterBEFORE

FUNCTION

AFTER

0

Replace return value 0

+ New Hot FixAll Hot Fixes (3) Search Hi Jake!Help

Hot Fixes (3)

Toggle Parameters

Rollback Version

Rollout Segmentation

Detect & Contain

Tweak UI Elements

Push & Messaging

A/B

V3.4-[AppDelegate applicationapplication:didFinish-LaunchingLaunchingLaunchingWithOptions:]/AppDelegate.m::17

Test

-[AppDelegate applicationapplication:didFinish-LaunchingLaunchingLaunchingWithOptions:]/AppDelegate.m::17

Production

-[AppDelegate applicationapplication:didFinish-LaunchingLaunchingLaunchingWithOptions:]/AppDelegate.m::17

Test

TECHNOLOGY

1 2 3 4

Page 18: How to fix a bug in production - Rollout.io

PRODUCTION CODE IS EVERYWHERE

Internet of Things

Mission-critical code is all around us. Remote production control is crucial for keeping downtime low and quality high.

Wearables

Smart TV

Smart Car

Page 19: How to fix a bug in production - Rollout.io

Thank You.Erez Rusovsky CEO

[email protected]

www.rollout.io