Continuous delivery for mobile

20
Con$nuous Delivery for Mobile Deliver be2er apps,faster, con$nuously Rahul Krishnan P @rahulkrish Attinad Software http://attinadsoftware.com

description

Deliver better apps, faster, continuously

Transcript of Continuous delivery for mobile

Page 1: Continuous delivery for mobile

!

Con$nuous  Delivery  for  Mobile

Deliver  be2er  apps,faster,  con$nuously

!!Rahul Krishnan P

@rahulkrish!!Attinad Software http://attinadsoftware.com

Page 2: Continuous delivery for mobile

Agenda• Intro  to  Con$nuous  Delivery  • Implemen$ng  Con$nuous  Delivery  for  Mobile  

• Overview  of  Mobile  Build  Tools  • Quality  Assurance    

• Sta$c  Analysis  • Automated  Acceptance  Tes$ng  (Demo)  

• Packaging,  Archiving  &  Deployment  • Con$nuous  Improvement  through  Analy$cs  

• Build  Orchestra$on  using  Jenkins  (Demo)

Page 3: Continuous delivery for mobile

What  is  Con$nuous  Delivery?

Page 4: Continuous delivery for mobile

“Con$nuous  Delivery  is  a  soMware  development  discipline  where  you  build  soMware  in  such  a  way  that  the  soMware  can  be  released  to  produc$on  at  any  $me.”  -­‐    Mar$n  Fowler,  ThoughtWorks

Page 5: Continuous delivery for mobile

Mobile  Applica$on  Development  Lifecycle

Obtain'Insights''

Manage'

Deploy'

Instrument'

Integrate'

Test'

Scan'&'Cer;fy'

Design'&'Develop'

Page 6: Continuous delivery for mobile

Implemen$ng  Con$nuous  Delivery  for  Mobile

Page 7: Continuous delivery for mobile
Page 8: Continuous delivery for mobile
Page 9: Continuous delivery for mobile

Build  Scripts  -­‐>

Pla1orm  Tools  -­‐>

Dependency  Management  -­‐>CocoaPods!

Packaging,  Archiving,  Signing  -­‐>

codesign jarsigner

Page 10: Continuous delivery for mobile

Code  Quality  Analysis

Clang Lint

Page 11: Continuous delivery for mobile
Page 12: Continuous delivery for mobile

Test  Specs  -­‐>

Test  Scripts  -­‐>

Frameworks  -­‐>

Pla1orm  tools  -­‐>

UI  Automator Instrumenta$on  Framework

Page 13: Continuous delivery for mobile
Page 14: Continuous delivery for mobile

TestFlight

Page 15: Continuous delivery for mobile
Page 16: Continuous delivery for mobile

Usage  &  Crash  Analysis

Flurry Crashly$cs

Page 17: Continuous delivery for mobile

!17

Build  Orchestra$on  using  Jenkins

Page 18: Continuous delivery for mobile

any branch

Tag qa-int/v1.0.0_1

Tag qa-ext/v1.0.0_1

Tag rel/v1.0.0_1

Sour

ce C

ode

Man

agem

ent

testflight crashlytics

Internal QA

External QA

Release

Page 19: Continuous delivery for mobile

!19

Page 20: Continuous delivery for mobile

THANK  YOUContact me at: !@rahulkrish [email protected] !!Slides at: !http://www.slideshare.net/rahulkrishnanp