SlideShare a Scribd company logo
1 of 54
Download to read offline
Scaling Mobile 
Development 
Stephanie Shupe 
@steph_shupe 
Software Engineer, Lookout 
October 10, 2014 
2014 
#GHC14 
2014
Development Team Evolution 
2014
Development Team Evolution 
2014
Development Team Evolution 
2014
Development Team Evolution 
2014
Development Team Evolution 
2014
Outline 
§ Lookout Case Study 
§ Tools to scale mobile development 
§ Key Recommendations 
2014
Lookout iOS App Case Study 
§ New Product ~2011 
§ Team grew from 1 to 6 developers 
§ Processes developed as team grew in size 
2014
Lookout iOS App Versions 
2014 
3 
2.5 
2 
1.5 
1 
0.5 
0
App Versions v. Developers 
2014 
7 
6 
5 
4 
3 
2 
1 
0 
Sep-11 Jun-12 Mar-13 Dec-13 Sep-14 
iOS App Version Developers
App Versions v. Developers 
2014 
7 
6 
5 
4 
3 
2 
1 
0 
Sep-11 Jun-12 Mar-13 Dec-13 Sep-14 
iOS App Version Developers
Tools for any size team 
Process / Tool 1 dev 2-4 devs 5+ devs 
Version Control l l l 
Planning Tool m m l 
Unit Testing l l l 
Code Review Tool m l 
Integration Testing m l 
Automated UI Testing m m l 
Continuous Integration m l 
Localization Tool m 
Code Style Guideline l 
Release Process l 
2014
Workflow 
2014 
New 
Task 
Write 
Code 
• Write 
Tests 
• Localize* 
Verify 
Code 
• Build 
Project 
• Run Tests 
Peer 
Review 
Commit 
Code 
Release 
to Market 
• Quality 
Assurance
Workflow 
2014 
New 
Task 
Write 
Code 
• Localize* 
• Write 
Tests 
Verify 
Code 
• Build 
Project 
• Run Tests 
Peer 
Review 
Commit 
Code 
Release 
to Market 
• Quality 
Assurance
Planning Tool 
2014 
§ Lightweight 
− Whiteboard 
− To-Do Lists 
§ Heavyweight 
− Task Managing Software / Website
Planning Tool 
https://www.atlassian.com/software/jira 
2014
Planning Tool 
2014
Workflow 
2014 
New 
Task 
Write 
Code 
• Write 
Tests 
• Localize* 
Verify 
Code 
• Build 
Project 
• Run Tests 
Peer 
Review 
Commit 
Code 
Release 
to Market 
• Quality 
Assurance
Writing Code… 
My project 
no longer 
compiles?! 
2014
Version Control 
git-scm.com github.com 
2014
Version Control 
2014 
github.com
Writing Code… 
What’s the 
style? 
2014
Code Style Guideline 
2014
Writing Code… 
Wir haben 
andere 
Sprachen? 
2014
Localization Management 
2014 
§ Lightweight 
− Email strings files back and forth 
§ Heavyweight 
− Localization Tool
Localization Tool 
2014
Localization Tool 
§ Command line tool 
§ Graphical interface for translators 
§ Cross-project translation database 
2014
Writing Code… 
Something 
is broken, 
but I don’t 
know why! 
2014
Unit Testing 
2014 
describe(@"+isExpired:", 
^{ 
context(@"when 
date 
occurred 
in 
past", 
^{ 
beforeEach(^{ 
subject 
= 
[NSDate 
dateWithTimeIntervalSinceNow:-­‐10]; 
}); 
it(@"should 
return 
expired", 
^{ 
[[theValue([NSDate 
isExpired:subject]) 
should] 
beYes]; 
}); 
}); 
context(@"when 
date 
occurs 
in 
future", 
^{ 
beforeEach(^{ 
subject 
= 
[NSDate 
dateWithTimeIntervalSinceNow:1000000]; 
}); 
it(@"should 
return 
not 
expired", 
^{ 
[[theValue([NSDate 
isExpired:subject]) 
should] 
beNo]; 
}); 
}); 
});
Integration Testing 
context(@"when 
a 
request 
is 
made 
with 
malformed 
data", 
^{ 
it(@"should 
return 
an 
error", 
^AsyncBlock 
{ 
Request 
*request 
= 
[Request 
new]; 
2014 
... 
expect(error).toNot.beNil(); 
expect(httpResponse.statusCode).to.equal(500); 
[client 
enqueueRequest:request]; 
}); 
});
Automated User Interface Testing 
§ Automates Manual Tests 
§ Test the same app you submit to the 
marketplace 
2014
Automated User Interface Testing 
Run Tests 
Generate 
Screen shots 
Linguistic 
Verification 
2014 
Quality 
Assurance
Automated User Interface Testing 
§ Open Source 
§ Interacts with UI Elements 
§ Tests can be written in Ruby, Java, ObjC 
2014 
https://saucelabs.com/appium
2014
Automated User Interface Testing 
2014 
Language 
English 
Japanese 
Russian 
German 
Spanish 
French 
Device Resolution (px) 
480x320 
960x640 
1024x768 
1136x640 
1334x750 
1920x1080 
2048x1536 
OS Version 
iOS 6 
iOS 7 
iOS 8
Automated User Interface Testing 
6 languages 
x 
7 supported device resolutions 
x 
3 supported OS Versions 
126 Combinations 
2014
iOS App Crashes v. Automated Tests 
2014
Workflow 
2014 
New 
Task 
Write 
Code 
• Write 
Tests 
• Localize* 
Verify 
Code 
• Build 
Project 
• Run Tests 
Peer 
Review 
Commit 
Code 
Release 
to Market 
• Quality 
Assurance
Verifying Code 
2014 
§ Lightweight 
− Manually compile project 
− Manually run tests 
− Minimal Continuous Integration 
§ Heavyweight 
− Continuous Integration
Continuous Integration 
− pre- or post- code check in 
§ Run test suites 
§ Report back status 
§ Code Review plugin support 
2014 
§ Build project 
http://jenkins-ci.org/
Continuous Integration 
2014 
http://jenkins-ci.org/
Workflow 
2014 
New 
Task 
Write 
Code 
• Write 
Tests 
• Localize* 
Verify 
Code 
• Build 
Project 
• Run Tests 
Peer 
Review 
Commit 
Code 
Release 
to Market 
• Quality 
Assurance
Reviewing Code… 
How do I 
know that 
this code is 
any good? 
2014
Code Review Tool 
https://code.google.com/p/gerrit/ 
2014
Code Review Tool 
Push 
Code • git push gerrit HEAD:refs/publish/master 
Gerrit • Kick off Jenkins Build* 
• Code review interface 
Jenkins 
2014 
• Task number? 
• Project builds? 
• Tests pass?
Workflow 
2014 
New 
Task 
Write 
Code 
• Write 
Tests 
• Localize* 
Verify 
Code 
• Build 
Project 
• Run Tests 
Peer 
Review 
Commit 
Code 
Release 
to Market 
• Quality 
Assurance
Committing Code… 
I’ve 
committed, 
so I’m done. 
2014
Workflow 
2014 
New 
Task 
Write 
Code 
• Write 
Tests 
• Localize* 
Verify 
Code 
• Build 
Project 
• Run Tests 
Peer 
Review 
Commit 
Code 
Release 
to Market 
• Quality 
Assurance
Releasing Code… 
There isn’t 
a magical 
‘Release’ 
button? 
2014
Release Process 
2014
Tools for any size team 
Process / Tool 1 dev 2-4 devs 5+ devs 
Version Control l l l 
Planning Tool m m l 
Unit Testing l l l 
Code Review Tool m l 
Integration Testing m l 
Automated UI Testing m m l 
Continuous Integration m l 
Localization Tool m 
Code Style Guideline l 
Release Process l 
2014
Lookout’s Mobile Dev Toolbelt 
Process / Tool What Lookout Uses 
Version Control Git 
Planning Tool JIRA 
Unit Testing JUnit, Kiwi 
Code Review Tool Gerrit 
Integration Testing Robotium, Specta 
Automated User Interface Testing Appium 
Continuous Integration Jenkins 
Localization Tool Web Translate It (WTI) 
Code Style Guideline Google / Apple code style guidelines 
Release Process Wiki documents 
2014
Additional tools to consider 
§ Code coverage 
§ Code guideline enforcement 
§ Automated releases 
§ Automated builder setup 
§ Crash tooling 
§ Error logging 
§ Agile Processes 
§ Performance testing 
§ Code Modularization 
§ Dependency Manager 
2014
Got Feedback? 
Rate and Review the session using the 
GHC Mobile App 
To download visit www.gracehopper.org 
2014

More Related Content

What's hot

Mobile Automation Using Appium - vodQA Bangalore 2015
Mobile Automation Using Appium - vodQA Bangalore 2015Mobile Automation Using Appium - vodQA Bangalore 2015
Mobile Automation Using Appium - vodQA Bangalore 2015Thoughtworks
 
How to configure monkey talk android agent
How to configure monkey talk android agentHow to configure monkey talk android agent
How to configure monkey talk android agentDasun Eranthika
 
CLI, SDK, Doc... What if we generate them?
CLI, SDK, Doc... What if we generate them?CLI, SDK, Doc... What if we generate them?
CLI, SDK, Doc... What if we generate them?Scaleway
 
Windows 10 UWP Development Overview
Windows 10 UWP Development OverviewWindows 10 UWP Development Overview
Windows 10 UWP Development OverviewDevGAMM Conference
 
Selenium and Open Source Advanced Testing
Selenium and Open Source Advanced TestingSelenium and Open Source Advanced Testing
Selenium and Open Source Advanced TestingAustin Marie Gay
 
SauceCon19: Fashionable XCUITest for iOS App
SauceCon19: Fashionable XCUITest for iOS App SauceCon19: Fashionable XCUITest for iOS App
SauceCon19: Fashionable XCUITest for iOS App Shashikant Jagtap
 
The operational side of Mobile Apps
The operational side of Mobile AppsThe operational side of Mobile Apps
The operational side of Mobile AppsMobile Delivery Days
 
Mobile DevOps - Get faster release cycles & higher quality android & ios apps
Mobile DevOps - Get faster release cycles & higher quality android & ios appsMobile DevOps - Get faster release cycles & higher quality android & ios apps
Mobile DevOps - Get faster release cycles & higher quality android & ios appsMayur Tendulkar
 
4 Ways to Speed Up Your Mobile App Dev Daily Grind
4 Ways to Speed Up Your Mobile App Dev Daily Grind4 Ways to Speed Up Your Mobile App Dev Daily Grind
4 Ways to Speed Up Your Mobile App Dev Daily GrindPerfecto by Perforce
 
3x3: Speeding Up Mobile Releases
3x3: Speeding Up Mobile Releases3x3: Speeding Up Mobile Releases
3x3: Speeding Up Mobile ReleasesDrew Hannay
 
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...Profesia Srl, Lynx Group
 
apidays LIVE New York - API Code First vs Design First by Phil Sturgeon
apidays LIVE New York - API Code First vs Design First by Phil Sturgeonapidays LIVE New York - API Code First vs Design First by Phil Sturgeon
apidays LIVE New York - API Code First vs Design First by Phil Sturgeonapidays
 
Appium an introduction
Appium   an introductionAppium   an introduction
Appium an introductionVivek Shringi
 
Automated Testing and Continuous Deployment for Mobile Apps with Jenkins
Automated Testing and Continuous Deployment for Mobile Apps with Jenkins Automated Testing and Continuous Deployment for Mobile Apps with Jenkins
Automated Testing and Continuous Deployment for Mobile Apps with Jenkins CloudBees
 
Samsung Indonesia: Tizen Web Apps
Samsung Indonesia: Tizen Web AppsSamsung Indonesia: Tizen Web Apps
Samsung Indonesia: Tizen Web AppsRyo Jin
 
How to Talk about APIs
How to Talk about APIsHow to Talk about APIs
How to Talk about APIsAndrew Seward
 
Building android apps using xamarin
Building android apps using xamarinBuilding android apps using xamarin
Building android apps using xamarinNitesh Luharuka
 

What's hot (20)

Mobile Automation Using Appium - vodQA Bangalore 2015
Mobile Automation Using Appium - vodQA Bangalore 2015Mobile Automation Using Appium - vodQA Bangalore 2015
Mobile Automation Using Appium - vodQA Bangalore 2015
 
How to configure monkey talk android agent
How to configure monkey talk android agentHow to configure monkey talk android agent
How to configure monkey talk android agent
 
CLI, SDK, Doc... What if we generate them?
CLI, SDK, Doc... What if we generate them?CLI, SDK, Doc... What if we generate them?
CLI, SDK, Doc... What if we generate them?
 
Windows 10 UWP Development Overview
Windows 10 UWP Development OverviewWindows 10 UWP Development Overview
Windows 10 UWP Development Overview
 
Selenium and Open Source Advanced Testing
Selenium and Open Source Advanced TestingSelenium and Open Source Advanced Testing
Selenium and Open Source Advanced Testing
 
Monkey Talk
Monkey TalkMonkey Talk
Monkey Talk
 
SauceCon19: Fashionable XCUITest for iOS App
SauceCon19: Fashionable XCUITest for iOS App SauceCon19: Fashionable XCUITest for iOS App
SauceCon19: Fashionable XCUITest for iOS App
 
The operational side of Mobile Apps
The operational side of Mobile AppsThe operational side of Mobile Apps
The operational side of Mobile Apps
 
Mobile DevOps - Get faster release cycles & higher quality android & ios apps
Mobile DevOps - Get faster release cycles & higher quality android & ios appsMobile DevOps - Get faster release cycles & higher quality android & ios apps
Mobile DevOps - Get faster release cycles & higher quality android & ios apps
 
4 Ways to Speed Up Your Mobile App Dev Daily Grind
4 Ways to Speed Up Your Mobile App Dev Daily Grind4 Ways to Speed Up Your Mobile App Dev Daily Grind
4 Ways to Speed Up Your Mobile App Dev Daily Grind
 
3x3: Speeding Up Mobile Releases
3x3: Speeding Up Mobile Releases3x3: Speeding Up Mobile Releases
3x3: Speeding Up Mobile Releases
 
Visual studio 2019 launch
Visual studio 2019 launch Visual studio 2019 launch
Visual studio 2019 launch
 
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...
 
apidays LIVE New York - API Code First vs Design First by Phil Sturgeon
apidays LIVE New York - API Code First vs Design First by Phil Sturgeonapidays LIVE New York - API Code First vs Design First by Phil Sturgeon
apidays LIVE New York - API Code First vs Design First by Phil Sturgeon
 
Appium an introduction
Appium   an introductionAppium   an introduction
Appium an introduction
 
Automated Testing and Continuous Deployment for Mobile Apps with Jenkins
Automated Testing and Continuous Deployment for Mobile Apps with Jenkins Automated Testing and Continuous Deployment for Mobile Apps with Jenkins
Automated Testing and Continuous Deployment for Mobile Apps with Jenkins
 
Samsung Indonesia: Tizen Web Apps
Samsung Indonesia: Tizen Web AppsSamsung Indonesia: Tizen Web Apps
Samsung Indonesia: Tizen Web Apps
 
BCS Selenium Workshop
BCS Selenium WorkshopBCS Selenium Workshop
BCS Selenium Workshop
 
How to Talk about APIs
How to Talk about APIsHow to Talk about APIs
How to Talk about APIs
 
Building android apps using xamarin
Building android apps using xamarinBuilding android apps using xamarin
Building android apps using xamarin
 

Viewers also liked

TRA infographic on Australian tourism 2014
TRA infographic on Australian tourism 2014TRA infographic on Australian tourism 2014
TRA infographic on Australian tourism 2014TourismAustralia
 
Prinsip dasar dan peran koperasai
Prinsip dasar dan peran koperasaiPrinsip dasar dan peran koperasai
Prinsip dasar dan peran koperasaiNenengYuyuRohana
 
Branding Bootcamp: Developing an Authentic Brand That Connects With Your Cust...
Branding Bootcamp: Developing an Authentic Brand That Connects With Your Cust...Branding Bootcamp: Developing an Authentic Brand That Connects With Your Cust...
Branding Bootcamp: Developing an Authentic Brand That Connects With Your Cust...Stone Soup Creative
 
Presentationv1 Part1
Presentationv1 Part1Presentationv1 Part1
Presentationv1 Part1Abhishek Mago
 
We Are Museums 2016 workshop: Introduction to usability testing
We Are Museums 2016 workshop: Introduction to usability testingWe Are Museums 2016 workshop: Introduction to usability testing
We Are Museums 2016 workshop: Introduction to usability testingTiana Tasich
 
C7ce6e79 9653-42fb-9ee7-ac0cd1f8c1b5-150827185257-lva1-app6891
C7ce6e79 9653-42fb-9ee7-ac0cd1f8c1b5-150827185257-lva1-app6891C7ce6e79 9653-42fb-9ee7-ac0cd1f8c1b5-150827185257-lva1-app6891
C7ce6e79 9653-42fb-9ee7-ac0cd1f8c1b5-150827185257-lva1-app6891Vera Kovaleva
 
Verifiable, linked open knowledge that anyone can edit
Verifiable, linked open knowledge that anyone can editVerifiable, linked open knowledge that anyone can edit
Verifiable, linked open knowledge that anyone can editDario Taraborelli
 
The Public Opinion Landscape: Election 2016
The Public Opinion Landscape: Election 2016The Public Opinion Landscape: Election 2016
The Public Opinion Landscape: Election 2016GloverParkGroup
 

Viewers also liked (15)

TRA infographic on Australian tourism 2014
TRA infographic on Australian tourism 2014TRA infographic on Australian tourism 2014
TRA infographic on Australian tourism 2014
 
13 Ways to Spook Your Audience
13 Ways to Spook Your Audience13 Ways to Spook Your Audience
13 Ways to Spook Your Audience
 
Kewirausahaan
KewirausahaanKewirausahaan
Kewirausahaan
 
Neider
NeiderNeider
Neider
 
Keynote & on stage interview (carbo)
Keynote & on stage interview (carbo)Keynote & on stage interview (carbo)
Keynote & on stage interview (carbo)
 
Prinsip dasar dan peran koperasai
Prinsip dasar dan peran koperasaiPrinsip dasar dan peran koperasai
Prinsip dasar dan peran koperasai
 
Conférence bpi identité numérique - 24 fév 2012
Conférence bpi   identité numérique - 24 fév 2012Conférence bpi   identité numérique - 24 fév 2012
Conférence bpi identité numérique - 24 fév 2012
 
Branding Bootcamp: Developing an Authentic Brand That Connects With Your Cust...
Branding Bootcamp: Developing an Authentic Brand That Connects With Your Cust...Branding Bootcamp: Developing an Authentic Brand That Connects With Your Cust...
Branding Bootcamp: Developing an Authentic Brand That Connects With Your Cust...
 
Presentationv1 Part1
Presentationv1 Part1Presentationv1 Part1
Presentationv1 Part1
 
Zone IDA Proc
Zone IDA ProcZone IDA Proc
Zone IDA Proc
 
We Are Museums 2016 workshop: Introduction to usability testing
We Are Museums 2016 workshop: Introduction to usability testingWe Are Museums 2016 workshop: Introduction to usability testing
We Are Museums 2016 workshop: Introduction to usability testing
 
C7ce6e79 9653-42fb-9ee7-ac0cd1f8c1b5-150827185257-lva1-app6891
C7ce6e79 9653-42fb-9ee7-ac0cd1f8c1b5-150827185257-lva1-app6891C7ce6e79 9653-42fb-9ee7-ac0cd1f8c1b5-150827185257-lva1-app6891
C7ce6e79 9653-42fb-9ee7-ac0cd1f8c1b5-150827185257-lva1-app6891
 
Dalton Sample Sheets
Dalton Sample SheetsDalton Sample Sheets
Dalton Sample Sheets
 
Verifiable, linked open knowledge that anyone can edit
Verifiable, linked open knowledge that anyone can editVerifiable, linked open knowledge that anyone can edit
Verifiable, linked open knowledge that anyone can edit
 
The Public Opinion Landscape: Election 2016
The Public Opinion Landscape: Election 2016The Public Opinion Landscape: Election 2016
The Public Opinion Landscape: Election 2016
 

Similar to Scaling Mobile Development

QA Fest 2017. Диана Пинчук. Разработка мульти- платформенного мобильного SDK:...
QA Fest 2017. Диана Пинчук. Разработка мульти- платформенного мобильного SDK:...QA Fest 2017. Диана Пинчук. Разработка мульти- платформенного мобильного SDK:...
QA Fest 2017. Диана Пинчук. Разработка мульти- платформенного мобильного SDK:...QAFest
 
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsTYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsMichael Lihs
 
Understanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliveryUnderstanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliverySwapnil Jain
 
CI/CD for mobile at HERE
CI/CD for mobile at HERECI/CD for mobile at HERE
CI/CD for mobile at HEREStefan Verhoeff
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsAmazon Web Services
 
Practical DevOps & Continuous Delivery – A Webinar to learn in depth on DevO...
Practical DevOps & Continuous Delivery –  A Webinar to learn in depth on DevO...Practical DevOps & Continuous Delivery –  A Webinar to learn in depth on DevO...
Practical DevOps & Continuous Delivery – A Webinar to learn in depth on DevO...Hugo Messer
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsAmazon Web Services
 
SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612SOASTA
 
5 Best Automation Testing Tools to Speed up Testing.pdf
5 Best Automation Testing Tools to Speed up Testing.pdf5 Best Automation Testing Tools to Speed up Testing.pdf
5 Best Automation Testing Tools to Speed up Testing.pdfSerena Gray
 
Dev ops for cross platform mobile modeveast 12
Dev ops for cross platform mobile   modeveast 12Dev ops for cross platform mobile   modeveast 12
Dev ops for cross platform mobile modeveast 12Sanjeev Sharma
 
Unicom DevCon - CI/CD for Asp.net core apps using Docker
Unicom DevCon - CI/CD for Asp.net core apps using DockerUnicom DevCon - CI/CD for Asp.net core apps using Docker
Unicom DevCon - CI/CD for Asp.net core apps using DockerSwaminathan Vetri
 
Abhishek Tomar_9.5 Years_Localization Testing
Abhishek Tomar_9.5 Years_Localization TestingAbhishek Tomar_9.5 Years_Localization Testing
Abhishek Tomar_9.5 Years_Localization TestingAbhishek Tomar
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsAmazon Web Services
 
Application Lifecycle Management
Application Lifecycle ManagementApplication Lifecycle Management
Application Lifecycle ManagementAmazon Web Services
 
DevOps: Continous Delivery - Como os feedbacks são importantes
DevOps: Continous Delivery - Como os feedbacks são importantesDevOps: Continous Delivery - Como os feedbacks são importantes
DevOps: Continous Delivery - Como os feedbacks são importantesErik Etsushi Miyashita
 
Engineering at bbc kl hpsd
Engineering at bbc kl   hpsdEngineering at bbc kl   hpsd
Engineering at bbc kl hpsdGavin Barton
 
Our DevOps Journey: 6 Month Waterfalls to 1 Hour Code Deploys
Our DevOps Journey: 6 Month Waterfalls to 1 Hour Code DeploysOur DevOps Journey: 6 Month Waterfalls to 1 Hour Code Deploys
Our DevOps Journey: 6 Month Waterfalls to 1 Hour Code DeploysDynatrace
 

Similar to Scaling Mobile Development (20)

QA Fest 2017. Диана Пинчук. Разработка мульти- платформенного мобильного SDK:...
QA Fest 2017. Диана Пинчук. Разработка мульти- платформенного мобильного SDK:...QA Fest 2017. Диана Пинчук. Разработка мульти- платформенного мобильного SDK:...
QA Fest 2017. Диана Пинчук. Разработка мульти- платформенного мобильного SDK:...
 
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsTYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
 
Understanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliveryUnderstanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous Delivery
 
CI/CD for mobile at HERE
CI/CD for mobile at HERECI/CD for mobile at HERE
CI/CD for mobile at HERE
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
 
niyati_kaduskar_CV
niyati_kaduskar_CVniyati_kaduskar_CV
niyati_kaduskar_CV
 
Practical DevOps & Continuous Delivery – A Webinar to learn in depth on DevO...
Practical DevOps & Continuous Delivery –  A Webinar to learn in depth on DevO...Practical DevOps & Continuous Delivery –  A Webinar to learn in depth on DevO...
Practical DevOps & Continuous Delivery – A Webinar to learn in depth on DevO...
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
 
SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612
 
5 Best Automation Testing Tools to Speed up Testing.pdf
5 Best Automation Testing Tools to Speed up Testing.pdf5 Best Automation Testing Tools to Speed up Testing.pdf
5 Best Automation Testing Tools to Speed up Testing.pdf
 
Introduction to PowerShell at Chicago Code Camp 2014
Introduction to PowerShell at Chicago Code Camp 2014Introduction to PowerShell at Chicago Code Camp 2014
Introduction to PowerShell at Chicago Code Camp 2014
 
Dev ops for cross platform mobile modeveast 12
Dev ops for cross platform mobile   modeveast 12Dev ops for cross platform mobile   modeveast 12
Dev ops for cross platform mobile modeveast 12
 
Unicom DevCon - CI/CD for Asp.net core apps using Docker
Unicom DevCon - CI/CD for Asp.net core apps using DockerUnicom DevCon - CI/CD for Asp.net core apps using Docker
Unicom DevCon - CI/CD for Asp.net core apps using Docker
 
Abhishek Tomar_9.5 Years_Localization Testing
Abhishek Tomar_9.5 Years_Localization TestingAbhishek Tomar_9.5 Years_Localization Testing
Abhishek Tomar_9.5 Years_Localization Testing
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
 
Application Lifecycle Management
Application Lifecycle ManagementApplication Lifecycle Management
Application Lifecycle Management
 
DevOps: Continous Delivery - Como os feedbacks são importantes
DevOps: Continous Delivery - Como os feedbacks são importantesDevOps: Continous Delivery - Como os feedbacks são importantes
DevOps: Continous Delivery - Como os feedbacks são importantes
 
Engineering at bbc kl hpsd
Engineering at bbc kl   hpsdEngineering at bbc kl   hpsd
Engineering at bbc kl hpsd
 
Our DevOps Journey: 6 Month Waterfalls to 1 Hour Code Deploys
Our DevOps Journey: 6 Month Waterfalls to 1 Hour Code DeploysOur DevOps Journey: 6 Month Waterfalls to 1 Hour Code Deploys
Our DevOps Journey: 6 Month Waterfalls to 1 Hour Code Deploys
 

More from Lookout

The New Assembly Line: 3 Best Practices for Building (Secure) Connected Cars
The New Assembly Line: 3 Best Practices for Building (Secure) Connected CarsThe New Assembly Line: 3 Best Practices for Building (Secure) Connected Cars
The New Assembly Line: 3 Best Practices for Building (Secure) Connected CarsLookout
 
Looking Forward and Looking Back: Lookout's Cybersecurity Predictions
Looking Forward and Looking Back: Lookout's Cybersecurity PredictionsLooking Forward and Looking Back: Lookout's Cybersecurity Predictions
Looking Forward and Looking Back: Lookout's Cybersecurity PredictionsLookout
 
5 Ways to Protect your Mobile Security
5 Ways to Protect your Mobile Security5 Ways to Protect your Mobile Security
5 Ways to Protect your Mobile SecurityLookout
 
Feds: You have a BYOD program whether you like it or not
Feds: You have a BYOD program whether you like it or notFeds: You have a BYOD program whether you like it or not
Feds: You have a BYOD program whether you like it or notLookout
 
What Is Spyware?
What Is Spyware?What Is Spyware?
What Is Spyware?Lookout
 
Mobile Security: The 5 Questions Modern Organizations Are Asking
Mobile Security: The 5 Questions Modern Organizations Are AskingMobile Security: The 5 Questions Modern Organizations Are Asking
Mobile Security: The 5 Questions Modern Organizations Are AskingLookout
 
2015 Cybersecurity Predictions
2015 Cybersecurity Predictions2015 Cybersecurity Predictions
2015 Cybersecurity PredictionsLookout
 
The New NotCompatible
The New NotCompatibleThe New NotCompatible
The New NotCompatibleLookout
 
Relentless Mobile Threats to Avoid
Relentless Mobile Threats to AvoidRelentless Mobile Threats to Avoid
Relentless Mobile Threats to AvoidLookout
 
Visualizing Privacy
Visualizing PrivacyVisualizing Privacy
Visualizing PrivacyLookout
 
Hiring Hackers
Hiring HackersHiring Hackers
Hiring HackersLookout
 
How to (Safely) Cut the Cord With Your Old iPhone
How to (Safely) Cut the Cord With Your Old iPhoneHow to (Safely) Cut the Cord With Your Old iPhone
How to (Safely) Cut the Cord With Your Old iPhoneLookout
 
3 Ways to Protect the Data in Your Google Account
3 Ways to Protect the Data in Your Google Account3 Ways to Protect the Data in Your Google Account
3 Ways to Protect the Data in Your Google AccountLookout
 
3 Ways to Protect the Data in Your Apple Account
3 Ways to Protect the Data in Your Apple Account3 Ways to Protect the Data in Your Apple Account
3 Ways to Protect the Data in Your Apple AccountLookout
 
The Back to School Smartphone Guide
The Back to School Smartphone GuideThe Back to School Smartphone Guide
The Back to School Smartphone GuideLookout
 
Mobile Security at the World Cup
Mobile Security at the World CupMobile Security at the World Cup
Mobile Security at the World CupLookout
 
Spring Cleaning for Your Smartphone
Spring Cleaning for Your SmartphoneSpring Cleaning for Your Smartphone
Spring Cleaning for Your SmartphoneLookout
 
Mobile Threats, Made to Measure
Mobile Threats, Made to MeasureMobile Threats, Made to Measure
Mobile Threats, Made to MeasureLookout
 
Security & Privacy at the Olympics
Security & Privacy at the OlympicsSecurity & Privacy at the Olympics
Security & Privacy at the OlympicsLookout
 
5 Types of Shady Apps
5 Types of Shady Apps5 Types of Shady Apps
5 Types of Shady AppsLookout
 

More from Lookout (20)

The New Assembly Line: 3 Best Practices for Building (Secure) Connected Cars
The New Assembly Line: 3 Best Practices for Building (Secure) Connected CarsThe New Assembly Line: 3 Best Practices for Building (Secure) Connected Cars
The New Assembly Line: 3 Best Practices for Building (Secure) Connected Cars
 
Looking Forward and Looking Back: Lookout's Cybersecurity Predictions
Looking Forward and Looking Back: Lookout's Cybersecurity PredictionsLooking Forward and Looking Back: Lookout's Cybersecurity Predictions
Looking Forward and Looking Back: Lookout's Cybersecurity Predictions
 
5 Ways to Protect your Mobile Security
5 Ways to Protect your Mobile Security5 Ways to Protect your Mobile Security
5 Ways to Protect your Mobile Security
 
Feds: You have a BYOD program whether you like it or not
Feds: You have a BYOD program whether you like it or notFeds: You have a BYOD program whether you like it or not
Feds: You have a BYOD program whether you like it or not
 
What Is Spyware?
What Is Spyware?What Is Spyware?
What Is Spyware?
 
Mobile Security: The 5 Questions Modern Organizations Are Asking
Mobile Security: The 5 Questions Modern Organizations Are AskingMobile Security: The 5 Questions Modern Organizations Are Asking
Mobile Security: The 5 Questions Modern Organizations Are Asking
 
2015 Cybersecurity Predictions
2015 Cybersecurity Predictions2015 Cybersecurity Predictions
2015 Cybersecurity Predictions
 
The New NotCompatible
The New NotCompatibleThe New NotCompatible
The New NotCompatible
 
Relentless Mobile Threats to Avoid
Relentless Mobile Threats to AvoidRelentless Mobile Threats to Avoid
Relentless Mobile Threats to Avoid
 
Visualizing Privacy
Visualizing PrivacyVisualizing Privacy
Visualizing Privacy
 
Hiring Hackers
Hiring HackersHiring Hackers
Hiring Hackers
 
How to (Safely) Cut the Cord With Your Old iPhone
How to (Safely) Cut the Cord With Your Old iPhoneHow to (Safely) Cut the Cord With Your Old iPhone
How to (Safely) Cut the Cord With Your Old iPhone
 
3 Ways to Protect the Data in Your Google Account
3 Ways to Protect the Data in Your Google Account3 Ways to Protect the Data in Your Google Account
3 Ways to Protect the Data in Your Google Account
 
3 Ways to Protect the Data in Your Apple Account
3 Ways to Protect the Data in Your Apple Account3 Ways to Protect the Data in Your Apple Account
3 Ways to Protect the Data in Your Apple Account
 
The Back to School Smartphone Guide
The Back to School Smartphone GuideThe Back to School Smartphone Guide
The Back to School Smartphone Guide
 
Mobile Security at the World Cup
Mobile Security at the World CupMobile Security at the World Cup
Mobile Security at the World Cup
 
Spring Cleaning for Your Smartphone
Spring Cleaning for Your SmartphoneSpring Cleaning for Your Smartphone
Spring Cleaning for Your Smartphone
 
Mobile Threats, Made to Measure
Mobile Threats, Made to MeasureMobile Threats, Made to Measure
Mobile Threats, Made to Measure
 
Security & Privacy at the Olympics
Security & Privacy at the OlympicsSecurity & Privacy at the Olympics
Security & Privacy at the Olympics
 
5 Types of Shady Apps
5 Types of Shady Apps5 Types of Shady Apps
5 Types of Shady Apps
 

Recently uploaded

Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 

Recently uploaded (20)

Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 

Scaling Mobile Development

  • 1. Scaling Mobile Development Stephanie Shupe @steph_shupe Software Engineer, Lookout October 10, 2014 2014 #GHC14 2014
  • 7. Outline § Lookout Case Study § Tools to scale mobile development § Key Recommendations 2014
  • 8. Lookout iOS App Case Study § New Product ~2011 § Team grew from 1 to 6 developers § Processes developed as team grew in size 2014
  • 9. Lookout iOS App Versions 2014 3 2.5 2 1.5 1 0.5 0
  • 10. App Versions v. Developers 2014 7 6 5 4 3 2 1 0 Sep-11 Jun-12 Mar-13 Dec-13 Sep-14 iOS App Version Developers
  • 11. App Versions v. Developers 2014 7 6 5 4 3 2 1 0 Sep-11 Jun-12 Mar-13 Dec-13 Sep-14 iOS App Version Developers
  • 12. Tools for any size team Process / Tool 1 dev 2-4 devs 5+ devs Version Control l l l Planning Tool m m l Unit Testing l l l Code Review Tool m l Integration Testing m l Automated UI Testing m m l Continuous Integration m l Localization Tool m Code Style Guideline l Release Process l 2014
  • 13. Workflow 2014 New Task Write Code • Write Tests • Localize* Verify Code • Build Project • Run Tests Peer Review Commit Code Release to Market • Quality Assurance
  • 14. Workflow 2014 New Task Write Code • Localize* • Write Tests Verify Code • Build Project • Run Tests Peer Review Commit Code Release to Market • Quality Assurance
  • 15. Planning Tool 2014 § Lightweight − Whiteboard − To-Do Lists § Heavyweight − Task Managing Software / Website
  • 18. Workflow 2014 New Task Write Code • Write Tests • Localize* Verify Code • Build Project • Run Tests Peer Review Commit Code Release to Market • Quality Assurance
  • 19. Writing Code… My project no longer compiles?! 2014
  • 20. Version Control git-scm.com github.com 2014
  • 21. Version Control 2014 github.com
  • 22. Writing Code… What’s the style? 2014
  • 24. Writing Code… Wir haben andere Sprachen? 2014
  • 25. Localization Management 2014 § Lightweight − Email strings files back and forth § Heavyweight − Localization Tool
  • 27. Localization Tool § Command line tool § Graphical interface for translators § Cross-project translation database 2014
  • 28. Writing Code… Something is broken, but I don’t know why! 2014
  • 29. Unit Testing 2014 describe(@"+isExpired:", ^{ context(@"when date occurred in past", ^{ beforeEach(^{ subject = [NSDate dateWithTimeIntervalSinceNow:-­‐10]; }); it(@"should return expired", ^{ [[theValue([NSDate isExpired:subject]) should] beYes]; }); }); context(@"when date occurs in future", ^{ beforeEach(^{ subject = [NSDate dateWithTimeIntervalSinceNow:1000000]; }); it(@"should return not expired", ^{ [[theValue([NSDate isExpired:subject]) should] beNo]; }); }); });
  • 30. Integration Testing context(@"when a request is made with malformed data", ^{ it(@"should return an error", ^AsyncBlock { Request *request = [Request new]; 2014 ... expect(error).toNot.beNil(); expect(httpResponse.statusCode).to.equal(500); [client enqueueRequest:request]; }); });
  • 31. Automated User Interface Testing § Automates Manual Tests § Test the same app you submit to the marketplace 2014
  • 32. Automated User Interface Testing Run Tests Generate Screen shots Linguistic Verification 2014 Quality Assurance
  • 33. Automated User Interface Testing § Open Source § Interacts with UI Elements § Tests can be written in Ruby, Java, ObjC 2014 https://saucelabs.com/appium
  • 34. 2014
  • 35. Automated User Interface Testing 2014 Language English Japanese Russian German Spanish French Device Resolution (px) 480x320 960x640 1024x768 1136x640 1334x750 1920x1080 2048x1536 OS Version iOS 6 iOS 7 iOS 8
  • 36. Automated User Interface Testing 6 languages x 7 supported device resolutions x 3 supported OS Versions 126 Combinations 2014
  • 37. iOS App Crashes v. Automated Tests 2014
  • 38. Workflow 2014 New Task Write Code • Write Tests • Localize* Verify Code • Build Project • Run Tests Peer Review Commit Code Release to Market • Quality Assurance
  • 39. Verifying Code 2014 § Lightweight − Manually compile project − Manually run tests − Minimal Continuous Integration § Heavyweight − Continuous Integration
  • 40. Continuous Integration − pre- or post- code check in § Run test suites § Report back status § Code Review plugin support 2014 § Build project http://jenkins-ci.org/
  • 41. Continuous Integration 2014 http://jenkins-ci.org/
  • 42. Workflow 2014 New Task Write Code • Write Tests • Localize* Verify Code • Build Project • Run Tests Peer Review Commit Code Release to Market • Quality Assurance
  • 43. Reviewing Code… How do I know that this code is any good? 2014
  • 44. Code Review Tool https://code.google.com/p/gerrit/ 2014
  • 45. Code Review Tool Push Code • git push gerrit HEAD:refs/publish/master Gerrit • Kick off Jenkins Build* • Code review interface Jenkins 2014 • Task number? • Project builds? • Tests pass?
  • 46. Workflow 2014 New Task Write Code • Write Tests • Localize* Verify Code • Build Project • Run Tests Peer Review Commit Code Release to Market • Quality Assurance
  • 47. Committing Code… I’ve committed, so I’m done. 2014
  • 48. Workflow 2014 New Task Write Code • Write Tests • Localize* Verify Code • Build Project • Run Tests Peer Review Commit Code Release to Market • Quality Assurance
  • 49. Releasing Code… There isn’t a magical ‘Release’ button? 2014
  • 51. Tools for any size team Process / Tool 1 dev 2-4 devs 5+ devs Version Control l l l Planning Tool m m l Unit Testing l l l Code Review Tool m l Integration Testing m l Automated UI Testing m m l Continuous Integration m l Localization Tool m Code Style Guideline l Release Process l 2014
  • 52. Lookout’s Mobile Dev Toolbelt Process / Tool What Lookout Uses Version Control Git Planning Tool JIRA Unit Testing JUnit, Kiwi Code Review Tool Gerrit Integration Testing Robotium, Specta Automated User Interface Testing Appium Continuous Integration Jenkins Localization Tool Web Translate It (WTI) Code Style Guideline Google / Apple code style guidelines Release Process Wiki documents 2014
  • 53. Additional tools to consider § Code coverage § Code guideline enforcement § Automated releases § Automated builder setup § Crash tooling § Error logging § Agile Processes § Performance testing § Code Modularization § Dependency Manager 2014
  • 54. Got Feedback? Rate and Review the session using the GHC Mobile App To download visit www.gracehopper.org 2014