Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DevOps for Mobile Apps - DevOpsDays, NY Ignite ...

DevOps for Mobile Apps - DevOpsDays, NY Ignite session

Sanjeev Sharma

February 26, 2013
Tweet

More Decks by Sanjeev Sharma

Other Decks in Technology

Transcript

  1. DevOps for Mobile Apps: Challenges and Best Practices Sanjeev Sharma

    IBM Software Group DevOpsDays 2013 New York, NY
  2. Me • 18 year in the software industry • 15+

    years he has been a solution architect with IBM • Areas of work: o DevOps o Enterprise Architecture o Agile Transformation o Mobile Development o Software Delivery Platforms o Software Supply Chains. • Blog @ bit.ly/sdarchitect • Twitter: @sd_architect Sanjeev Sharma [email protected] IBM Software Group
  3. DevOps for Mobile ‐ Challenges • Mobile Apps are the

    front-end to a complex(enterprise) back-end system o Mobile Apps are rapidly becoming a critical user interface to enterprise systems Heterogeneous Environments Public Cloud Private Cloud Data Warehouse Mainframe Enterprise Service Bus Directory Identity File systems Collaboration Mobile App Routing Service Third-party Services Portals Content Providers EJB Shared Services Archives Business Partners Messaging Services
  4. DevOps for Mobile ‐ Challenges • Fragmented Platforms o iOS

    forked when iPad came out. Android forked multiple times with each vendor, Kindle Fire, Nook… • HTML5, PhoneGap/ Cordova still cannot fully replace native Apps in every situation
  5. DevOps for Mobile ‐ Challenges • App stores add additional

    asynchronous deployment step o Continuous Delivery becomes ‘deliver and wait’
  6. IBM’s 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
  7. 1. End-to-end Traceability, across all Components Build Deliver App Code

    Automate Library Deployable Artifacts Source Artifacts Fetch Source Control iOS Developer Android Developer Enterprise Services Developer Continuous Integration and Continuous Delivery
  8. 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
  9. 6. Simulate Back-end Services Heterogeneous Environments Mobile App Data Warehouse

    Mainframe Enterprise Service Bus Directory Identity App Under Test Third-party Services Portals Third-party Services Test Environments to Production Test Environments to Production Actual Service Simulated Service Mobile App Continuous Testing and Continuous Monitoring
  10. Mobile Delivery Pipeline Deploy Environment Running System Source Control Management

    Source Artifacts .jsp .java .htm l chef recipe s .sh Deployable Artifacts Build, Package, & Unit Test Application Binaries & Platform Configuration Library Mobile IDE Enterprise Services IDE API keys, Provisioning Profiles…
  11. IBM SmartCloud Continuous Delivery packaging Build -> Publish -> Deploy

    -> Test Extending Agile Development with Continuous Delivery Mobile/Enterprise ALM Suite (Rational Team Concert) Agile Development IBM SmartCloud Provisioning Deployment to Virtual Systems 19
  12. Where to get more information? • My Blog: o http://bit.ly/sdarchitect

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