SlideShare a Scribd company logo
1 of 29
DevOps Best Practices 
  of cross‐platform 
    Mobile Apps
         Sanjeev Sharma
       IBM Software Group

        MoDevEast 2012
         McLean, VA
Me
• 18 year in the software industry
• 15+ years he has been a solution
  architect with IBM
• Areas of work:
   o   DevOps                           Sanjeev Sharma
   o   Enterprise Architecture       sanjeev.sharma@us.ibm.com
                                          IBM Software Group
   o   Agile Transformation
   o   Mobile Development
   o   Software Delivery Platforms
   o   Software Supply Chains.
• Blog @ sdarchitect.wordpress.com
• Twitter: @sd_architect
What is DevOps?
Addressing delivery challenges
                                     Water-SCRUM-Fall?

                                             Dev & Test                 Operations
Customers         Line of Business
                                              Teams                       Team



                                      Gap                      Gap


Desire for fast
and continuous                                                           Business
                   Requirements             Code & Tests
innovation                                                               Services

                         Addressed by...           Addressed by...




                                 Agile                          Dev
                                 Dev                            Ops

                                                                     http://ibm.co/PRQkWL
Key Concepts
1. Continuous Integration
2. Continuous Delivery
3. Continuous Test
4. Continuous Monitoring
5. Infrastructure as Code
6. Build and Delivery Pipeline
1. Continuous Integration




                  http://bit.ly/PRQ4a7
2. Continuous Delivery




                 http://bit.ly/PRQ4a7
3. Continuous Test




               http://bit.ly/PRQ9dQ
4. Continuous Monitoring




                 http://bit.ly/PRQ9dQ
5. Infrastructure as Code
   package "apache2" do
    package_name node['apache']['package']
   end
   service "apache2" do
    case node['platform_family']
    when "rhel", "fedora", "suse"
     service_name "httpd"
     # If restarted/reloaded too quickly httpd has a habit of failing.
     # This may happen with multiple recipes notifying apache to restart - like
     # during the initial bootstrap.
     restart_command "/sbin/service httpd restart && sleep 1"
     reload_command "/sbin/service httpd reload && sleep 1"
6. Build & Delivery 
      Pipeline
Delivery Pipeline

                          Build, 
                          Package,
                          & Unit Test
 .jsp            .html    Application 
                          Binaries & 
                          Platform                      Deploy
        .java             Configuration



 .sh            chef 
                recipes
                                                                 Environment
                                     Deployable Artifacts        Running System
 Source Artifacts
Source Control                            Library
Management
Four DevOps Principles
1. Collaborate across
   Disciplines
2. Develop and test against
   a production-like system
3. Deploy frequently
4. Continuously validate
   operational quality
   characteristics
Mobile DevOps 
 challenges
Mobile DevOps Challenges
• Fragmented Platforms
   o iOS forked when iPad came out.
     Android forked multiple times with
     each vendor, Kindle Fire, Nook…

• HTML5 / Cordova still cannot
  fully replace native
• Mobile Apps are typically
  the front-end to a
  complex(potentially
  enterprise) back-end system
• App stores add additional
  asynchronous deployment
  step
Cross Platform Mobile Application 
      Architecture: LinkedIn




                http://engineering.linkedin.com/testing/co
                ntinuous‐integration‐mobile
DevOps Best Practices 
 for Cross Platform 
       Apps
Continuous Integration and 
   Continuous Delivery


                 1. End-to-end
               Traceability, across all
    iOS
 Developer
                     platforms
                              Source               Library
                              Control
               Deliver App
               Code                      Build                Fetch   Automate
   Android
  Developer

                             Source              Deployable
                             Artifacts            Artifacts



  Enterprise
   Services
  Developer
Continuous Integration and 
      Continuous Delivery

             2. Practice Continuous
                    Integration
Mobile App
Developent
  Teams




Enterprise
 Services
Developent
  Teams
Continuous Integration and 
   Continuous Delivery

        3. Maintain separate
          build areas for each
               SDK version
 <manifest xmlns:android="http://schemas.android.com/apk/res/android" ... >
          <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="15" />
           ...
 </manifest>
Continuous Integration and 
   Continuous Delivery

   4. Automated Build and
         Deploy scripts
                              Automated 
                               Scripts
Continuous Testing and 
Continuous Monitoring

      5. Test each build on
          each supported
               device
Continuous Testing and 
 Continuous Monitoring


        6. Simulate Back-end
                Services
                                                    Mobile App



                                                      App Under Test         Third-party
                                      Third-party
                                       Services                               Services




Test Environments to Production
                                               Directory    Portals
           Actual Service                       Identity
           Simulated Service
           Mobile App                                                  Enterprise Service
                                  Data Warehouse       Mainframe              Bus

                                      Heterogeneous Environments
Continuous Testing and 
Continuous Monitoring

      7. Monitor deployed
        apps and back end
       services performance
Mobile App Delivery

       8. Governance of
        provisioning profiles,
        certificates and API
                 keys
Mobile App Delivery


   9. Use a ‘Private’ App
      store to test device
          deployment
Mobile App Delivery



   10. Convert App Store
       feedback into user
            stories
The Mobile DevOps Cycle
  Define user      Write app code.     Define app
  experience.        Check in to     build & deploy
 Capture app        shared team      scripts. Place
 requirements        repository       under version
                                         control



  Capture end                          Automatically
user feedback.                        build app. Get
 Filter and feed                      profiles & keys
 back into app                       from governed
 requirements                             source



    Monitor        Run automated     Auto-deploy app
performance of       app testing.     into dev App
 mobile app &       Simulate back         Store.
   back end         end services     Coordinate with
    systems                             test mgmt
Where to get more 
         information?
• My Blog:
  o http://sdarchitect.wordpress.com/understanding-DevOps
  o http://sdarchitect.wordpress.com/mobile



• Leveraging DevOps in a water-SCRUM-fall World
  o http://ibm.co/PRQkWL


• IBM Enterprise DevOps blog
  o http://ibm.co/JrPVGR

More Related Content

What's hot

Ios driver presentation copy
Ios driver presentation copyIos driver presentation copy
Ios driver presentation copy
David O'Dowd
 
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
rsnarayanan
 
How we Test at eBay Europe
How we Test at eBay EuropeHow we Test at eBay Europe
How we Test at eBay Europe
Michael Palotas
 
Five Steps to Add AppUp .NET SDK to Microsoft Visual Studio
Five Steps to Add AppUp .NET SDK to Microsoft Visual StudioFive Steps to Add AppUp .NET SDK to Microsoft Visual Studio
Five Steps to Add AppUp .NET SDK to Microsoft Visual Studio
readwritehack
 

What's hot (20)

DevOps Patterns to Enable Success in Microservices
DevOps Patterns to Enable Success in MicroservicesDevOps Patterns to Enable Success in Microservices
DevOps Patterns to Enable Success in Microservices
 
Ios driver presentation copy
Ios driver presentation copyIos driver presentation copy
Ios driver presentation copy
 
SilverDev / ARCAD Skipper Interface - for Structured Graphic Developments in ...
SilverDev / ARCAD Skipper Interface - for Structured Graphic Developments in ...SilverDev / ARCAD Skipper Interface - for Structured Graphic Developments in ...
SilverDev / ARCAD Skipper Interface - for Structured Graphic Developments in ...
 
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
 
How we Test at eBay Europe
How we Test at eBay EuropeHow we Test at eBay Europe
How we Test at eBay Europe
 
Rajiv Profile
Rajiv ProfileRajiv Profile
Rajiv Profile
 
Automated Testing and Continuous Integration for Mobile Apps: Jenkins & Cloud...
Automated Testing and Continuous Integration for Mobile Apps: Jenkins & Cloud...Automated Testing and Continuous Integration for Mobile Apps: Jenkins & Cloud...
Automated Testing and Continuous Integration for Mobile Apps: Jenkins & Cloud...
 
PowerPoint Presentation
PowerPoint PresentationPowerPoint Presentation
PowerPoint Presentation
 
Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!
Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!
Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!
 
Lean Engineering. Applying Lean Principles to Building Experiences
Lean Engineering. Applying Lean Principles to Building ExperiencesLean Engineering. Applying Lean Principles to Building Experiences
Lean Engineering. Applying Lean Principles to Building Experiences
 
Alliance Successful Selenium Automation
Alliance Successful Selenium AutomationAlliance Successful Selenium Automation
Alliance Successful Selenium Automation
 
Hudson: from build jobs to build pipelines
Hudson: from build jobs to build pipelinesHudson: from build jobs to build pipelines
Hudson: from build jobs to build pipelines
 
Devops interview-questions-PDF
Devops interview-questions-PDFDevops interview-questions-PDF
Devops interview-questions-PDF
 
Accelerating DevOps at the SF DevOps MeetUp
Accelerating DevOps at the SF DevOps MeetUpAccelerating DevOps at the SF DevOps MeetUp
Accelerating DevOps at the SF DevOps MeetUp
 
不只自動化而且更敏捷的Android開發工具 gradle
不只自動化而且更敏捷的Android開發工具 gradle不只自動化而且更敏捷的Android開發工具 gradle
不只自動化而且更敏捷的Android開發工具 gradle
 
Zero to Portlet in 20 minutes or less
Zero to Portlet in 20 minutes or lessZero to Portlet in 20 minutes or less
Zero to Portlet in 20 minutes or less
 
Visual Studio 2017 Release Notes
Visual Studio 2017 Release NotesVisual Studio 2017 Release Notes
Visual Studio 2017 Release Notes
 
Xamarin v.Now
Xamarin v.NowXamarin v.Now
Xamarin v.Now
 
EclipseCon 2010 API Design and Evolution (Tutorial)
EclipseCon 2010 API Design and Evolution (Tutorial)EclipseCon 2010 API Design and Evolution (Tutorial)
EclipseCon 2010 API Design and Evolution (Tutorial)
 
Five Steps to Add AppUp .NET SDK to Microsoft Visual Studio
Five Steps to Add AppUp .NET SDK to Microsoft Visual StudioFive Steps to Add AppUp .NET SDK to Microsoft Visual Studio
Five Steps to Add AppUp .NET SDK to Microsoft Visual Studio
 

Viewers also liked

Enterprise Mobile App UX: Designing from UI to Backend
Enterprise Mobile App UX: Designing from UI to BackendEnterprise Mobile App UX: Designing from UI to Backend
Enterprise Mobile App UX: Designing from UI to Backend
Sanjeev Sharma
 
Aws 201:Advanced Breakout Track on HA and DR
Aws 201:Advanced Breakout Track on HA and DRAws 201:Advanced Breakout Track on HA and DR
Aws 201:Advanced Breakout Track on HA and DR
Harish Ganesan
 

Viewers also liked (18)

Mobile DevOps - Trends and Chellenges
Mobile DevOps - Trends and ChellengesMobile DevOps - Trends and Chellenges
Mobile DevOps - Trends and Chellenges
 
Continuous Delivery for cloud - scenarios and scope
Continuous Delivery for cloud  - scenarios and scopeContinuous Delivery for cloud  - scenarios and scope
Continuous Delivery for cloud - scenarios and scope
 
Scale new business peaks with Amazon auto scaling
Scale new business peaks with Amazon auto scalingScale new business peaks with Amazon auto scaling
Scale new business peaks with Amazon auto scaling
 
Prepare your IT Infrastructure for Thanksgiving
Prepare your IT Infrastructure for ThanksgivingPrepare your IT Infrastructure for Thanksgiving
Prepare your IT Infrastructure for Thanksgiving
 
Cloud Developer Conference May 2011 SiliconIndia : Design for Failure - High ...
Cloud Developer Conference May 2011 SiliconIndia : Design for Failure - High ...Cloud Developer Conference May 2011 SiliconIndia : Design for Failure - High ...
Cloud Developer Conference May 2011 SiliconIndia : Design for Failure - High ...
 
DevOps101 (version 2)
DevOps101 (version 2)DevOps101 (version 2)
DevOps101 (version 2)
 
Enterprise Mobile App UX: Designing from UI to Backend
Enterprise Mobile App UX: Designing from UI to BackendEnterprise Mobile App UX: Designing from UI to Backend
Enterprise Mobile App UX: Designing from UI to Backend
 
Aws 201:Advanced Breakout Track on HA and DR
Aws 201:Advanced Breakout Track on HA and DRAws 201:Advanced Breakout Track on HA and DR
Aws 201:Advanced Breakout Track on HA and DR
 
BPC Configuration and User Guide Ver 10.0
BPC Configuration and User Guide Ver 10.0BPC Configuration and User Guide Ver 10.0
BPC Configuration and User Guide Ver 10.0
 
SAP BPC NW 10.0 Equity Based Consolidation Step by Step Guide
SAP BPC NW 10.0 Equity Based Consolidation Step by Step GuideSAP BPC NW 10.0 Equity Based Consolidation Step by Step Guide
SAP BPC NW 10.0 Equity Based Consolidation Step by Step Guide
 
From Continuous Integration to DevOps - Japan Innovate 2013
From Continuous Integration to DevOps - Japan Innovate 2013From Continuous Integration to DevOps - Japan Innovate 2013
From Continuous Integration to DevOps - Japan Innovate 2013
 
The art of infrastructure elasticity
The art of infrastructure elasticityThe art of infrastructure elasticity
The art of infrastructure elasticity
 
SAP BPC on HANA Environment Security Management Implementation Guide
SAP BPC on HANA Environment Security Management Implementation GuideSAP BPC on HANA Environment Security Management Implementation Guide
SAP BPC on HANA Environment Security Management Implementation Guide
 
Auto scaling using Amazon Web Services ( AWS )
Auto scaling using Amazon Web Services ( AWS )Auto scaling using Amazon Web Services ( AWS )
Auto scaling using Amazon Web Services ( AWS )
 
Chef for DevOps - an Introduction
Chef for DevOps - an IntroductionChef for DevOps - an Introduction
Chef for DevOps - an Introduction
 
Architecting an Highly Available and Scalable WordPress Site in AWS
Architecting an Highly Available and Scalable WordPress Site in AWS Architecting an Highly Available and Scalable WordPress Site in AWS
Architecting an Highly Available and Scalable WordPress Site in AWS
 
Management Consulting
Management ConsultingManagement Consulting
Management Consulting
 
Sap fiori
Sap fioriSap fiori
Sap fiori
 

Similar to Dev ops for cross platform mobile modeveast 12

IBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile AppsIBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile Apps
Sanjeev Sharma
 
Introducing the WSO2 App Factory
Introducing the WSO2 App FactoryIntroducing the WSO2 App Factory
Introducing the WSO2 App Factory
WSO2
 
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
Dynatrace
 
WSO2Con US 2013 - Keynote: Developing Enterprise Apps In the Cloud
WSO2Con US 2013 - Keynote: Developing Enterprise Apps In the CloudWSO2Con US 2013 - Keynote: Developing Enterprise Apps In the Cloud
WSO2Con US 2013 - Keynote: Developing Enterprise Apps In the Cloud
WSO2
 

Similar to Dev ops for cross platform mobile modeveast 12 (20)

IBM Innovate DevOps for Mobile Apps
IBM Innovate DevOps for Mobile Apps IBM Innovate DevOps for Mobile Apps
IBM Innovate DevOps for Mobile Apps
 
IBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile AppsIBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile Apps
 
DevOps for Mobile - DevOpsDays, NY, 2013
DevOps for Mobile - DevOpsDays, NY, 2013DevOps for Mobile - DevOpsDays, NY, 2013
DevOps for Mobile - DevOpsDays, NY, 2013
 
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
 
Transform Digital Business with DevOps
Transform Digital Business with DevOpsTransform Digital Business with DevOps
Transform Digital Business with DevOps
 
DevOps on AWS - Building Systems to Deliver Faster
DevOps on AWS - Building Systems to Deliver FasterDevOps on AWS - Building Systems to Deliver Faster
DevOps on AWS - Building Systems to Deliver Faster
 
Webinar: Automate Your Environment Provisioning for Mobile App Development
Webinar: Automate Your Environment Provisioning for Mobile App Development Webinar: Automate Your Environment Provisioning for Mobile App Development
Webinar: Automate Your Environment Provisioning for Mobile App Development
 
Delivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudDelivering Applications Continuously to Cloud
Delivering Applications Continuously to Cloud
 
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
 
Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)
 
Webcast urbancodemobiltomainframe
Webcast urbancodemobiltomainframeWebcast urbancodemobiltomainframe
Webcast urbancodemobiltomainframe
 
Introducing the WSO2 App Factory
Introducing the WSO2 App FactoryIntroducing the WSO2 App Factory
Introducing the WSO2 App Factory
 
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
 
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
 
Modernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-ArchitectModernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-Architect
 
Devops lifecycle with Kabanero Appsody, Codewind, Tekton
Devops lifecycle with Kabanero Appsody, Codewind, TektonDevops lifecycle with Kabanero Appsody, Codewind, Tekton
Devops lifecycle with Kabanero Appsody, Codewind, Tekton
 
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit session
DevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit sessionDevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit session
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit session
 
WSO2Con US 2013 - Keynote: Developing Enterprise Apps In the Cloud
WSO2Con US 2013 - Keynote: Developing Enterprise Apps In the CloudWSO2Con US 2013 - Keynote: Developing Enterprise Apps In the Cloud
WSO2Con US 2013 - Keynote: Developing Enterprise Apps In the Cloud
 
DevOps at Amazon: A Look at Our Tools and Processes
DevOps at Amazon: A Look at Our Tools and ProcessesDevOps at Amazon: A Look at Our Tools and Processes
DevOps at Amazon: A Look at Our Tools and Processes
 
Dev ops on aws deep dive on continuous delivery - Toronto
Dev ops on aws deep dive on continuous delivery - TorontoDev ops on aws deep dive on continuous delivery - Toronto
Dev ops on aws deep dive on continuous delivery - Toronto
 

More from Sanjeev Sharma

More from Sanjeev Sharma (20)

Democratizing security
Democratizing securityDemocratizing security
Democratizing security
 
My code, my environment, and yes, my data
My code, my environment, and yes, my dataMy code, my environment, and yes, my data
My code, my environment, and yes, my data
 
Cloud expo 2018: From Apollo 13 to Google SRE - When DevOps meets SRE
Cloud expo 2018: From Apollo 13 to Google SRE - When DevOps meets SRECloud expo 2018: From Apollo 13 to Google SRE - When DevOps meets SRE
Cloud expo 2018: From Apollo 13 to Google SRE - When DevOps meets SRE
 
The Muda, Mura and Muri of DevOps
The Muda, Mura and Muri of DevOpsThe Muda, Mura and Muri of DevOps
The Muda, Mura and Muri of DevOps
 
DeliverAgile2018 - from Apollo 13 to Google SRE
DeliverAgile2018 - from Apollo 13 to Google SREDeliverAgile2018 - from Apollo 13 to Google SRE
DeliverAgile2018 - from Apollo 13 to Google SRE
 
From Apollo 13 to Google SRE
From Apollo 13 to Google SREFrom Apollo 13 to Google SRE
From Apollo 13 to Google SRE
 
From DevOps to DevSecOps: 2 Dimensions of Security for DevOps
From DevOps to DevSecOps: 2 Dimensions of Security for DevOpsFrom DevOps to DevSecOps: 2 Dimensions of Security for DevOps
From DevOps to DevSecOps: 2 Dimensions of Security for DevOps
 
How NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsHow NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOps
 
Unicorns on an Aircraft Carrier: CDSummit London and Stockholm Keynote
Unicorns on an Aircraft Carrier: CDSummit London and Stockholm KeynoteUnicorns on an Aircraft Carrier: CDSummit London and Stockholm Keynote
Unicorns on an Aircraft Carrier: CDSummit London and Stockholm Keynote
 
DevOps Thinking for the Line of Business
DevOps Thinking for the Line of BusinessDevOps Thinking for the Line of Business
DevOps Thinking for the Line of Business
 
A DevOps adoption playbook- achieving business value at scale
A DevOps adoption playbook- achieving business value at scaleA DevOps adoption playbook- achieving business value at scale
A DevOps adoption playbook- achieving business value at scale
 
IBM InterConnect 2016: Security for DevOps in an Enterprise
IBM InterConnect 2016: Security for DevOps in an Enterprise IBM InterConnect 2016: Security for DevOps in an Enterprise
IBM InterConnect 2016: Security for DevOps in an Enterprise
 
DevOps adoption in the enterprise
DevOps adoption in the enterpriseDevOps adoption in the enterprise
DevOps adoption in the enterprise
 
dev@InterConnect workshop - Lean and DevOps
dev@InterConnect workshop - Lean and DevOpsdev@InterConnect workshop - Lean and DevOps
dev@InterConnect workshop - Lean and DevOps
 
OpenTechSummit InterConnect2015 DevOps
OpenTechSummit InterConnect2015 DevOpsOpenTechSummit InterConnect2015 DevOps
OpenTechSummit InterConnect2015 DevOps
 
DTS-1778 Understanding DevOps - IBM InterConnect Session
DTS-1778 Understanding DevOps - IBM InterConnect SessionDTS-1778 Understanding DevOps - IBM InterConnect Session
DTS-1778 Understanding DevOps - IBM InterConnect Session
 
Mobile to Mainframe - En-to-end transformation
Mobile to Mainframe - En-to-end transformationMobile to Mainframe - En-to-end transformation
Mobile to Mainframe - En-to-end transformation
 
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecksUsing Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
 
DevOps 101 - IBM Impact 2014
DevOps 101 - IBM Impact 2014 DevOps 101 - IBM Impact 2014
DevOps 101 - IBM Impact 2014
 
Enabling DevOps in the cloud - Federal Cloud Innovation Center
Enabling DevOps in the cloud - Federal Cloud Innovation CenterEnabling DevOps in the cloud - Federal Cloud Innovation Center
Enabling DevOps in the cloud - Federal Cloud Innovation Center
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Recently uploaded (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Dev ops for cross platform mobile modeveast 12

  • 1. DevOps Best Practices  of cross‐platform  Mobile Apps Sanjeev Sharma IBM Software Group MoDevEast 2012 McLean, VA
  • 2. Me • 18 year in the software industry • 15+ years he has been a solution architect with IBM • Areas of work: o DevOps Sanjeev Sharma o Enterprise Architecture sanjeev.sharma@us.ibm.com IBM Software Group o Agile Transformation o Mobile Development o Software Delivery Platforms o Software Supply Chains. • Blog @ sdarchitect.wordpress.com • Twitter: @sd_architect
  • 4. Addressing delivery challenges Water-SCRUM-Fall? Dev & Test Operations Customers Line of Business Teams Team Gap Gap Desire for fast and continuous Business Requirements Code & Tests innovation Services Addressed by... Addressed by... Agile Dev Dev Ops http://ibm.co/PRQkWL
  • 5. Key Concepts 1. Continuous Integration 2. Continuous Delivery 3. Continuous Test 4. Continuous Monitoring 5. Infrastructure as Code 6. Build and Delivery Pipeline
  • 6. 1. Continuous Integration http://bit.ly/PRQ4a7
  • 7. 2. Continuous Delivery http://bit.ly/PRQ4a7
  • 8. 3. Continuous Test http://bit.ly/PRQ9dQ
  • 9. 4. Continuous Monitoring http://bit.ly/PRQ9dQ
  • 10. 5. Infrastructure as Code package "apache2" do package_name node['apache']['package'] end service "apache2" do case node['platform_family'] when "rhel", "fedora", "suse" service_name "httpd" # If restarted/reloaded too quickly httpd has a habit of failing. # This may happen with multiple recipes notifying apache to restart - like # during the initial bootstrap. restart_command "/sbin/service httpd restart && sleep 1" reload_command "/sbin/service httpd reload && sleep 1"
  • 12. Delivery Pipeline Build,  Package, & Unit Test .jsp .html Application  Binaries &  Platform  Deploy .java Configuration .sh chef  recipes Environment Deployable Artifacts Running System Source Artifacts Source Control  Library Management
  • 13. Four DevOps Principles 1. Collaborate across Disciplines 2. Develop and test against a production-like system 3. Deploy frequently 4. Continuously validate operational quality characteristics
  • 15. Mobile DevOps Challenges • Fragmented Platforms o iOS forked when iPad came out. Android forked multiple times with each vendor, Kindle Fire, Nook… • HTML5 / Cordova still cannot fully replace native • Mobile Apps are typically the front-end to a complex(potentially enterprise) back-end system • App stores add additional asynchronous deployment step
  • 16. Cross Platform Mobile Application  Architecture: LinkedIn http://engineering.linkedin.com/testing/co ntinuous‐integration‐mobile
  • 18. Continuous Integration and  Continuous Delivery 1. End-to-end Traceability, across all iOS Developer platforms Source Library Control Deliver App Code Build Fetch Automate Android Developer Source Deployable Artifacts Artifacts Enterprise Services Developer
  • 19. Continuous Integration and  Continuous Delivery 2. Practice Continuous Integration Mobile App Developent Teams Enterprise Services Developent Teams
  • 20. Continuous Integration and  Continuous Delivery 3. Maintain separate build areas for each SDK version <manifest xmlns:android="http://schemas.android.com/apk/res/android" ... > <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="15" /> ... </manifest>
  • 21. Continuous Integration and  Continuous Delivery 4. Automated Build and Deploy scripts Automated  Scripts
  • 22. Continuous Testing and  Continuous Monitoring 5. Test each build on each supported device
  • 23. Continuous Testing and  Continuous Monitoring 6. Simulate Back-end Services Mobile App App Under Test Third-party Third-party Services Services Test Environments to Production Directory Portals Actual Service Identity Simulated Service Mobile App Enterprise Service Data Warehouse Mainframe Bus Heterogeneous Environments
  • 24. Continuous Testing and  Continuous Monitoring 7. Monitor deployed apps and back end services performance
  • 25. Mobile App Delivery 8. Governance of provisioning profiles, certificates and API keys
  • 26. Mobile App Delivery 9. Use a ‘Private’ App store to test device deployment
  • 27. Mobile App Delivery 10. Convert App Store feedback into user stories
  • 28. The Mobile DevOps Cycle Define user Write app code. Define app experience. Check in to build & deploy Capture app shared team scripts. Place requirements repository under version control Capture end Automatically user feedback. build app. Get Filter and feed profiles & keys back into app from governed requirements source Monitor Run automated Auto-deploy app performance of app testing. into dev App mobile app & Simulate back Store. back end end services Coordinate with systems test mgmt
  • 29. Where to get more  information? • My Blog: o http://sdarchitect.wordpress.com/understanding-DevOps o http://sdarchitect.wordpress.com/mobile • Leveraging DevOps in a water-SCRUM-fall World o http://ibm.co/PRQkWL • IBM Enterprise DevOps blog o http://ibm.co/JrPVGR