Your SlideShare is downloading. ×
0
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Jenkins User Conference - Continuous Delivery on Mobile

1,347

Published on

SmartPhones have revolutionised the way we think and write software: how can you take an additional step and actually have your SmartPhone drive development? With Jenkins, you can drive and integrate …

SmartPhones have revolutionised the way we think and write software: how can you take an additional step and actually have your SmartPhone drive development? With Jenkins, you can drive and integrate every step of your development with your SmartPhone, end-to-end: CI and delivery - Application install - Test execution - Issue tracking. See how to implement mobile plugins for Jenkins on mobile

Published in: Education, Technology
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,347
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
65
Comments
0
Likes
6
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Mobile Application Lifecycle Luca Milanesio www.gerritforge.com @jenkinsconf
  • 2. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf About GerritForge Founded in 2009 in London UK (previously known as LMIT Software Ltd) Mission: Agile Application Lifecycle for the Enterprise Innovator with Enterprise Agile products Technology partner of Copyright © 2013 –
  • 3. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf About the speaker Luca Milanesio Director and co-founder of GerritForge Over 20 years of experience in Agile Development Management, SCM and ALM in large Enterprises worldwide Contributor to Jenkins since 2007 (and previously Hudson) Git SCM mentor for the Enterprise since 2009 Contributors to Gerrit Code Review community since 2011 Copyright © 2013 –
  • 4. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Agenda Introduction and concepts Roots of Android OS development from Git and Gerrit Today's Mobile ALM in the Enterprise without Continuous Delivery Real life [un]success story Jenkins as an Integration and Delivery Engine Tell us your story ! Copyright © 2013 –
  • 5. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Concepts The most successful Version Control Tool of the last 5 years. World's #1 Open Source continuous integration engine Mobile Application platform for accessing Jenkins continuous integration API from Android or iOS World's #1 Open Source Mobile Operating System, powering over 900M of devices world wide Copyright © 2013 –
  • 6. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Where is Apple iOS ? Source: http://www.gartner.com/newsroom/id/2482816 Copyright © 2013 – Android = world's mobile platform leader Android historically linked to the Open Source community Concepts explored may be applied to iOS as well
  • 7. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Why Android on Git ? Google's internal VC not suitable for external contributors OpenSource VC needed – Scalable and distributed – Widely used by Linux community – Strong branch and merge capabilities Linux kernel was on Git since 2005 Copyright © 2013 –
  • 8. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Git, Gerrit and Android workflow CI Build: OK CI Build: OK A1 C2* Verified: -1 (build failed) C2* C2 clone push Verified: +1 (build OK) refs/for/master Reviewed: +2 push amend A1 Android OS master C2 Contributor master C2* Copyright © 2013 –
  • 9. Jenkins User Conference Palo Alto , Oct 23 2013 Putting all together with Jenkins Work Sprint Burndown Days Copyright © 2013 – @jenkinsconf
  • 10. Jenkins User Conference Palo Alto , Oct 23 2013 Real life [un]success story The challenge: developing a preembedded Mobile App for a Global Mobile Operator in 10 European Countries to over 2,000,000 customers Copyright © 2013 – @jenkinsconf
  • 11. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Scrum sprints timeline Sprint N Scope Sprint execution Sprint N+1 Scope Accept Pub Sprint execution Sprint N+2 Feedback Accept Scope Sprint execution Copyright © 2013 – Pub Feedback Accept Pub
  • 12. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Ver 1.0 / 2.0 Sprint lifecycle Development Code complete without feedback Feedback Without feedback Sprint N+1 start Start Code committed Day#10 Client release Ver. N+1 Day#13 Publish & review Day#15 Copyright © 2013 – Discovery Upgrade Day#18
  • 13. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Product's feedback Low Google Play rating Problems over Wi-Fi reported too late for the current Sprint Impact on other Operators' customers Copyright © 2013 –
  • 14. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf ALM on Mobile needs change Managing Project aspiration Dive into users' real world • Prescriptive, PO and stories • Adaptive, feedback at 360° • Time-boxed, 1 month cycle • Limit WIP, release daily / weekly • Locked Sprint scope • Adaptive scope with features and bug-fixes Copyright © 2013 –
  • 15. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Organise the process with Jenkins Monitor the SCM changes Build the software App & Backend Run unit-tests + emulator tests Deploy backend to QA Real-time notify and update App to handsets with JenkinsMobi Copyright © 2013 –
  • 16. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Continuous delivery on Mobile Client discovery and upgrade Story picked up from backlog Start Code committed Day-2 Feedback Client in-App Discovery Upgrade Day-3 Copyright © 2013 – Publish & review
  • 17. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Mobile ALM pipeline Push Build Unit Tests Failed Push Automated Unit Tests Failed Push Build Tests Build Automated Beta Users Unit Tests Tests Tests User's feedback Copyright © 2013 – Publish to all Users
  • 18. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Building blocks Private Network 1. Get a Mobile Phone 2. JenkinsMobi on board 3. Connect to JenkinsMobi API Copyright © 2013 – 4. Plug to Jenkins and ALM Tools
  • 19. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Jenkins plugins for Mobile ALM Run Android emulator during build Execute Monkeyrunner Validate changes before Review Orchestrate with TeamForge Issue planning, Build and Test feedback loop Fetch code from Git Trigger build on changes Progress Continuous Delivery phase Build Android Gradle Projects Copyright © 2013 –
  • 20. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Mobile App build in Jenkins Build on Jenkins - Git + Gradle plugin Archive **/*-debug-*.apk Test with Monkeyrunner - Develop Python test scripts - Run with Android emulator - Monkeyrunner plugin Acceptance test on real devices (i.e. Test-cloud services on real handsets) Copyright © 2013 –
  • 21. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Deliver on Mobile 1. Build status 2. Build artifacts 3. Download Copyright © 2013 – 4. Upgrade
  • 22. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Inform Beta adopters on what's new Copyright © 2013 –
  • 23. Jenkins User Conference Palo Alto , Oct 23 2013 Bring teams together Copyright © 2013 – @jenkinsconf
  • 24. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Share kanban with stakeholders 1. Sprint progress 2. Cards status 3. Cards list Copyright © 2013 – 4. Cards details
  • 25. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Notify problems in real-time 1. Test progress 2. Test results 3. Defects progress Copyright © 2013 – 4. Defects list
  • 26. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Overall deployment Platform Backend Pre-embedded Mobile App Jenkins CI Jenkins Mobi API Trello Plugin CollabNet Plugin HP-QC PlugIn JenkinsMob i v4 Beta Git Plugin Private Network Copyright © 2013 –
  • 27. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Challenges Private vs Public network Jenkins and other ALM hardened in Local Net Public gateway for JenkinsMobi API Provisioning to JenkinsMobi clients Application upgrade (outside Google Play) In-App notification and steps Managing feedback loop to tickets In-App feedback request with JenkinsMobi API Education for high level stakeholders Copyright © 2013 –
  • 28. Jenkins User Conference Palo Alto , Oct 23 2013 Q&A – share your experience Copyright © 2013 – @jenkinsconf
  • 29. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Additional resources Luca Milanesio mail: luca@gerritforge.com twitter:@gitenterprise Mobile Application Lifecycle slides: slideshare.net/lucamilanesio Continuous Agile e-book from A.Singleton: www.continuousagile.com/unblock JenkinsMobi OpenSource Project: github.com/jenkinsci/jenkinsmobi-plugin JenkinsMobi v4 Beta: jenkins-ci.mobi/#v4beta Copyright © 2013 –
  • 30. Jenkins User Conference Palo Alto , Oct 23 2013 @jenkinsconf Plus exclusively for the JUC 2013 + = Continuous agile on a stick gerritforge.com/contagile.vm.zip Copyright © 2013 –
  • 31. Jenkins User Conference Palo Alto , Oct 23 2013 Thank You To Our Sponsors Platinum Gold Silver @jenkinsconf

×