Continuous Delivery: The New Normal. London Event.

485 views
325 views

Published on

Perfo

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

  • Be the first to like this

No Downloads
Views
Total views
485
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
17
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Perforce currently provides the world’s fastest and most scalable Software Configuration Management system.

    Put simply, we let companies track versions, or iterations, of their software assets as they’re developed.

    It’s not just source code we version. Far from it.

    We also do the same thing for binary files and digital assets – pictures, web sites, audio – almost anything you can create.

    Question to ask the audience – (especially executives) – are you familiar with version management – (if not, walk them through a customer example)
    If it’s digital and being developed, refined or changed by individuals or teams, Perforce can capture and version every amendment made.

    Right now, 350,000 users across 5,500 companies trust Perforce Software to safely version their code, assets and intellectual property.


  • Perforce currently provides the world’s fastest and most scalable Software Configuration Management system.

    Put simply, we let companies track versions, or iterations, of their software assets as they’re developed.

    It’s not just source code we version. Far from it.

    We also do the same thing for binary files and digital assets – pictures, web sites, audio – almost anything you can create.

    Question to ask the audience – (especially executives) – are you familiar with version management – (if not, walk them through a customer example)
    If it’s digital and being developed, refined or changed by individuals or teams, Perforce can capture and version every amendment made.

    Right now, 350,000 users across 5,500 companies trust Perforce Software to safely version their code, assets and intellectual property.


  • Our news today is this: Despite a common believe that everyone’s talking about Continuous Delivery but nobody’s doing it, the survey we commissioned from Evans Data Corporation shows just the opposite. In fact, 65% of all companies have implemented Continuous Delivery for at least one project or team. We’re glad for this opportunity to share additional insights into Continuous Delivery

    Here are some of the details on the survey we commissioned.
  • Most everyone in the survey was at least somewhat familiar with Continuous Delivery.

    Executives and managers were more familiar than developers

    Distributed teams were more familiar than organizations with just one team in one place.
  • Continuous Delivery is gaining prominence as a development methodology, however there are many different definitions in the market. It means different things to different organizations.

    We recently instituted a survey to get a better understanding.

    One of the questions we asked was open-ended. “What does Continuous Delivery mean to you?” We had more than 400 responses to this optional question and all but a few were spot on.

    In general, answers fell into 4 buckets: Automation-focused, Time-focuses, Continuity-focused and Process-focused.

    What does Continuous Delivery mean to you?
  • Our survey validates the analyst sentiment. More and more organizations are adopting continuous delivery.

    65% have started using it. 28% use CD across all projects and teams. Another 37% are using it across at least one project/team.

    This is across all types of business and both geographies.

    Where are you in your adoption of continuous delivery practices?
  • Conventional wisdom is that SaaS companies are doing this more. And that’s right. 47% are doing CD across all projects. Another 33% are doing it across some.

    But even non-SaaS companies are starting to practice it. These businesses include Consumer goods and services, boxed or on-premise software, industrial goods, hardware or embedded components.

    18% of those types of businesses are doing CD across all projects and teams. Another 33% are doing it across some projects/teams.
  • Here’s why they’re making the move. These show the tabulated scores of survey participants selecting their top 3 perceived benefits of CD.
  • And while 28% of the survey participants are practicing CD across all projects, a full 46% think their competitors are doing that. There’s a notion of falling behind. Nobody can afford to be the slowest to release or have products that don’t quickly iterate in response to customer feedback.
  • Some would tell you that it takes 10 years to migrate to CD. Not according to our survey.

    53% say it takes less than one year to migrate
    85% say it takes less than 2 years

    Executives are more optimistic than others.

    Of those with >10 years of industry experience, 45% think it takes just a year – perhaps that’s due to reticence to change.

    However, 75% of those who have already started adopting CD say it takes less than 1 year.

    Compare that to those who haven’t yet started practicing CD – 41% of whom think it takes only a year.
  • These are the 4 biggest perceived barriers to moving to CD.

    Notice the difference between SaaS and non-SaaS companies.
  • How ready are companies for CD? Where are they most prepared?

    59% think their staff is ready
    53% think they have the technology

    But only 40% think their corporate culture is ready. And we can tell you from our own experiences in migrating to CD, it’s a real shift.
  • The good news for Perforce is that most everyone sees their version management, build automation and code review tools – their collaboration platform – as important.

    40% think it’s critical
  • To adapt to the market, enterprises are trying to be more nimble. Release more products, more often. Innovate faster.

    Question: Where are you in this progression? What is your goal?
  • In general, we think of Continuous Delivery as a way to delivery products and services at a faster cadence. It is a methodology, and change in culture, not a product. However, this change is massive and does create new challenges for your teams.
  • We surveyed our customer base, and have seen many customers implement continuous delivery as well. These are some of the example from our customer base that practice continuous delivery, across different industries.

    We will dive into some of the details later.
  • The question is – how do you get there? Experts have laid down a few key principles (6 in the case of this book, often considered as the Bible for Continuous Delivery).

    Repeatable processes
    More frequent checkins
    Quality awareness
    Frequent releases
    Peer responsibility
    Continuous feedback and iteration

    Automation is achieved via the notion of a pipeline – a implementation of your release process that takes bits as soon as they are coded, and moves them through a set of stages that qualify them for a release, and then deploys them if appropriate. Every checkin can result in a deployment (in the extreme case).

    To make this repeatable, your automation system needs to work against a version control system to obtain each change, each configuration, each test case, each machine image, the content necessary to make all of this actually work.
  • Perforce is the only platform that addresses these requirements, with proven customer examples for continuous delivery.

    Software versioning
    Flexible branching models
    P4 or Git workflows
    Large binary support
    Massively scalable
    Swarm
    End-to-end code reviews & file collaboration
    Integrates with your tool chain
    Commons
    Extends versioning to non-technical users
    Insights
    Metrics, analytics & reporting
  • Perforce is the only platform that addresses these requirements, with proven customer examples for continuous delivery.

    Software versioning
    Flexible branching models
    P4 or Git workflows
    Large binary support
    Massively scalable
    Swarm
    End-to-end code reviews & file collaboration
    Integrates with your tool chain
    Commons
    Extends versioning to non-technical users
    Insights
    Metrics, analytics & reporting
  • One of the recommendations that we often hear for Continuous Delivery is “use the mainline model.” Interestingly this is far from a new concept. Indeed back in 1998 the former Perforce CTO Laura Wingerd and Christopher Seiwald wrote “90% of SCM ‘process’ is enforcing codeline promotion to compensate for lack of a mainline.”

    More recently Jez Humble & David Farley pointed out that : “version control patterns are central to the way you design your deployment pipeline.” & “poor version control practices are one of the most common barriers to fast, low-risk releases.” (Continuous Delivery, 2011, p416)

    What do I mean by “mainline model”? Essentially there is one long-lived stream of development that contains all code and should be able to be cleanly built for release at any point – i.e. the mainline is always buildable and releasable. Besides being always releasable it also means that everyone can see all the code at any time – there shouldn’t be any surprises in finding conflicting changes late in a development task, sometimes known as “merge hell” or “integration hell”

    Of course, that’s a fairly scary prospect for many projects – it is quite a different approach to traditional development. The temptation is to create many branches, either for each dev team or for each feature. That certainly can help but also defeats some of the benefits of mainline. If you use branches then they have to be carefully managed. One scenario where branching makes sense is to cut a branch for each release that is going into production. In that way hot fixes can be applied to running code while allowing new features to be developed on the mainline but you have to ensure those fixes are retrofitted to the mainline.

    Of course maintaining quality in the mainline is absolutely critical to success. Continuous Integration – where build and test happens on every check-in has already proven itself invaluable in this regard. A trend we’re seeing much more of is the use of peer programming or code review processes to ensure all changes committed to the mainline have been tested and reviewed. We frequently hear of customers who are having great success with this approach although the tooling hasn’t always been as good as they want. As a result Perforce introduced Swarm earlier this year that makes code review and collaboration easy for teams whether they’re split across a building or over continents. All the conversations about the review, which are as important as the code itself, are stored safely with the code.

    A great example of the power of using the mainline model, even at huge scale, is Salesforce.com …
  • In the mobile space, Samsung trusts Perforce.

    One of the largest manufacturers of mobile phones in the world, Samsung uses Perforce to version all of the hardware, firmware and software components powering its leading-edge handheld devices.
  • Continuous Delivery: The New Normal. London Event.

    1. 1. Welcome & Introductions Mike Griffiths Perforce mgriffiths@perforce.com @p4mike
    2. 2. •  Fastest, most scalable, Version Management and Collaboration •  Commonly used for all types of content –  Code –  Binaries –  Movies –  Chip Designs –  Gaming –  Images Perforce Overview Global  Availability  and  Support  
    3. 3. Perforce Solves Critical Issues Versions  Everything   Development The imag e cann Development T h e Manufacturing Headquarters Th e im ag e ca nn ot Massive Scalability From 10 to 10,000+ on a each trunk/mainline Flexibility Distributed or centralized workflows Collaboration Comprehensive review and pre-flight checks Multi-site Teams Enables geographically distributed organizations Big Stuff Efficiently handles large, often binary, data Secure Unified policies, auditing and compliance
    4. 4. Industry Leaders Depend on Perforce 13,000  à     20,000  users   9,500  users   500+  terabytes   5,000+  users   coders  &  designers   Complete  delivery     pipeline   7,000+  releases/year   11,000+  users   10+  sites   2,500  users   10,000,000     Perforce  xact/day   Everything!   11,000+  users   Mobile  ICs   Games     &  AnimaKon   Cloud/SaaS   Electronics   Finance   Enterprise  
    5. 5. Agenda 14:00 Welcome & Introductions 14:15 Keynote: Continuous Delivery: The New Normal - Evans Data Research 15:00 Powering Continuous Delivery Pipelines by Next Generation Configuration Management Joris de Winne, XebiaLabs 15:45 Break 16:00 Customer Success with Continuous Delivery 16:30 Panel Discussion 17:00 Networking Drinks @ The Vintry
    6. 6. Continuous Delivery The New Normal Mark Warren Perforce mwarren@perforce.com @mark_warren
    7. 7. Continuous Delivery Adoption •  Evans Data Corporation surveyed 600 software professionals •  300 in the U.S. & 300 in the U.K. •  1/3rd Developers, 1/3rd Managers and 1/3rd Executives •  Company size > 100 employees
    8. 8. Growing Awareness Not  at  all   Somewhat  familiar   Very  familiar   I  live  and  breath  it   Developers   Managers   ExecuKves   How  Familiar  Are  You  with  the     Term  “Con;nuous  Delivery?”   According  to  a  2013  survey  of  US  and  UK  soSware  professionals,  conducted  by  Evans  Data.  
    9. 9. “What Does CD Mean to You?” “It’s  a  process  to  improve   soSware  performance  on  a   conKnual  basis,  with  the  use  of   automaKc  triggers.”   “It’s  a  process  that     ensures  conKnuous  tweaks,   addiKons  and  improvements   to  our  soSware  systems.”   “The  ability  to  conKnually   adapt  soSware  in  line  with   user  feedback  and  changes  in   business.”   “Releasing  early  and  oSen  so   that  the  act  of  learning  is   accelerated,  risk  is  idenKfied   and  you  can  react  quicker.”   [  Automa;on  ]   [  Time  ]   [  Con;nuity  ]     [  Process  ]    
    10. 10. 65%   28%   User Data: Gaining Traction Fast 65%  of  soSware   developers,  managers  and   execuKves  report     that  their  organizaKons   have  started  down     the  path  to  Con;nuous   Delivery   At  Least     Some  Projects   All  Projects     According  to  a  2013  survey  of  US  and  UK  soSware  professionals,  conducted  by  Evans  Data.  
    11. 11. It’s Not Just for SaaS Anymore 80%  of  SaaS  companies  are  pracKcing     ConKnuous  Delivery   •  47%  across  ALL  projects   •  33%  across  some  projects   All  Projects   At  Least  Some  Projects   18%   51%   Non-­‐SaaS  Companies   According  to  a  2013  survey  of  US  and  UK  soSware  professionals,  conducted  by  Evans  Data.  
    12. 12. What’s Driving the Move? Faster  Time  to  Market   Befer  Quality  Product   CompeKKve  Advantage   Customer  SaKsfacKon   Lower  Costs   According  to  a  2013  survey  of  US  and  UK  soSware  professionals,  conducted  by  Evans  Data.  
    13. 13. Keeping up with the Joneses 46%  think  their  compeKtors     have  fully  embraced   ConKnuous  Delivery   According  to  a  2013  survey  of  US  and  UK  soSware  professionals,  conducted  by  Evans  Data.  
    14. 14. Think There’s a Practical Path to Success More  than  5  years   3-­‐5  years   1-­‐2  years   6-­‐12  months   <  6  months   Developers   Managers   ExecuKves   How  Long  Does  It  Take  to     Migrate  to  Con;nuous  Delivery?   According  to  a  2013  survey  of  US  and  UK  soSware  professionals,  conducted  by  Evans  Data.  
    15. 15. Biggest Barriers •  SaaS companies see lack of skilled people as the biggest barrier •  Non-SaaS companies think the biggest barrier is getting technologies to work together Gekng  Technologies  to  Integrate   Lack  of  Skilled  People   Lack  of  CollaboraKon   Lack  of  Visibility  across  Stages   According  to  a  2013  survey  of  US  and  UK  soSware  professionals,  conducted  by  Evans  Data.  
    16. 16. Ready or Not? Staff   Technology   Process   Corporate  Culture   Ready   Somewhat  ready   Not  ready  at  all   According  to  a  2013  survey  of  US  and  UK  soSware  professionals,  conducted  by  Evans  Data.  
    17. 17. Collaboration is Critical 95%  see  their  collaboraKon     plamorm*  as  important  to   ConKnuous  Delivery   *  Version  management,  build     automaKon,  code  review,  etc.   According  to  a  2013  survey  of  US  and  UK  soSware  professionals,  conducted  by  Evans  Data.  
    18. 18. Analyst Perspective Waterfall   •  Annual  releases   •  Mostly  manual   Agile   •  Release  more  than   once  a  year   •  Some  automaKon   ConKnuous   •  Weekly/daily  updates   •  Massive  automaKon   “The days when a successful organization could release software once every 12 to 18 months are over. Forrester,  “ConKnuous  Delivery  is   reshaping  the  Future  of  ALM,”   Kurt  Bifner,  July  22,  2013  
    19. 19. P I P E L I N E   Continuous Delivery •  Deliver working product to users as quickly as possible •  Every change (check-in) leads to a potential release •  Give business the option to release – what, when, to whom •  A change in process, and culture Con;nuous  Delivery   Reqs   Dev   Test   Integrate   Deploy  
    20. 20. Perforce Customers SoSware   Dev   Code   Review   ConKnuous   IntegraKon   Metrics   QA   Staging  &   Release   HW  Layout   Chip  Rev   Firmware   OS     Apps   SoSware   Dev   ConKnuous   IntegraKon   QA   Analysis   ConKnuous   Delivery   Rollback   SoSware   Dev   ConKnuous   IntegraKon   QA   Staging   Deployed   Binaries   ConKnuous   VerificaKon   Instant   Rollback   Capability   “THE”   Cloud   BeaKng   Apple   ObsoleKng   DVDs   TWTR  Picks   NYSE  
    21. 21. P I P E L I N E   Principles of Continuous Delivery 1   2   3   4   5   6   Automate  almost   everything   Keep     everything  in   version  control   Doc   Code   Libraries   Media   Scripts   Configs   Binaries   “Hardware”   (virtual)   If  it  hurts,     do  it  more   frequently   Build   quality  in   Done  means   released   Everybody  is   responsible   ConKnuous   improvement   Repeatable   process  for   release   Reqs   Dev   Test   Integrate   Deploy  
    22. 22. Massive Impact on Development Con;nuous  Delivery   If  it  hurts,     do  it  more   frequently   Build   quality  in   Done  means   released   Everybody  is   responsible   ConKnuous   improvement   1   2   3   4   5   6   Repeatable   process  for   release   Automate  almost   everything   Keep     everything     in  version     control   Builds: Nightly à Hourly à Every Push Push:  Weekly    à    Daily    à    Hourly    à    Each  Change   Releases: Yearly à Quarterly à Monthly à Daily Artifacts: Code à Content à Binaries Code:  Home  Grown    à    +  3rd  Party    à    +  Open  Source   Teams:  Small    à    Big    à    Distributed    à    Global  
    23. 23. P I P E L I N E   Con;nuous  Delivery   If  it  hurts,     do  it  more   frequently   Build   quality  in   Done  means   released   Everybody  is   responsible   ConKnuous   improvement   1   2   3   4   5   6   Repeatable   process  for   release   Automate  almost   everything   Keep     everything     in  version     control   C O O R D I N A T E   A S S E T S   (code,  scripts,  artwork,  binaries,  etc.)   C O O R D I N A T E   T E A M S   (design,  dev,  release,  devops,  etc.)   Managing Continuous Delivery
    24. 24. C O O R D I N A T E   A S S E T S   (code,  scripts,  artwork,  binaries,  etc.)   C O O R D I N A T E   T E A M S   (design,  dev,  release,  devops,  etc.)   P I P E L I N E   Key Requirements Complete  Visibility   Distributed  Teams   Flexible  Workflow   Scalable  &  Performant  Universal  Security  Unified  Repository  
    25. 25. End-­‐to-­‐end   CollaboraKon   Unified  Asset   Versioning   Perforce Versioning & Collaboration P I P E L I N E   Developer   CollaboraKon   Swarm   Design   CollaboraKon   Commons   Development   AnalyKcs   Insights   Perforce Version Management 100s  of  Terabytes      Globally  Distributed        DVCS        Any  File  Type     P4   Git  DEV   DEV   HQ   MFG  
    26. 26. Integrates With Your Pipeline Developer   CollaboraKon   Swarm   Design   CollaboraKon   Commons   Development   AnalyKcs   Insights   Perforce Version Management 100s  of  Terabytes      Globally  Distributed        DVCS        Any  File  Type     P4   Git  DEV   DEV   HQ   MFG   End-­‐to-­‐end   CollaboraKon   Unified  Asset   Versioning   P I P E L I N E   Req’s   Dev   Test   Integrate   Deploy  
    27. 27. Rich Ecosystem of Partners Agile  ALM   IDEs   Code  Review   Build/CI   Quality   Deployment  
    28. 28. Quantifying the Power of Perforce Forrester Total Economic Impact Study Conducted analysis of 4 Perforce customers across industries/geographies •  A Fortune 500 computer storage and appliance •  A multinational computer software company •  An Asia-Pacific semiconductor manufacturer •  A US-based commercial bank •  Developed a risk-adjusted financial model representing the characteristics & results of the interviewed companies •  Created an adaptive estimator that can be applied to any organization for a customized ROI assessment
    29. 29. Quantifying the Power of Perforce Forrester’s 2014 Total Economic Impact Study shows… •  10% - 15% increase in developer productivity •  Saving on hardware, admin, support & maintenance •  Less custom integration •  25% faster time to market •  Payback in < 4 months •  ROI of 582% .
    30. 30. In Summary: 5 Habits for Success 1.  Think beyond the code 2.  Automate, automate, automate 3.  Make everything fully visible 4.  Track every change 5.  Put it all in one place
    31. 31. Customer Success with Continuous Delivery Mike Griffiths Perforce
    32. 32. Habits of Highly Successful Continuous Delivery Practitioners Expert Panel: Continuous Delivery Best Practices Revealed
    33. 33. About Intuit •  Passion for inventing solutions to solve important problems •  Engineering staff of 4000+ across 6+ sites worldwide •  Must be very nimble to meet ever-changing tax, personal-income and business-regulatory laws
    34. 34. Adoption at Intuit •  TurboTax –  Automatic build and delivery work flow –  Secure and elastic private cloud environment •  QuickBooks –  Reduce build time from several hours to less than a hour –  Optimized build scripts and centralizing build farm. •  Intuit Live Community –  builds, tests, and deploys itself, continuously, in a public cloud infrastructure.
    35. 35. About edmunds.com •  edmunds.com helps you find the Exact Car you want - from Research to Purchase. •  Monthly 18M+ unique visitors, 200M+ page views. •  Presence on Wired, Mobile, Externally exposed APIs •  Progression from Waterfall to Agile to Iterative Scrum and now to Continuous Delivery •  Activities 24x7
    36. 36. Adoption at edmunds.com •  End-to-end continuous delivery •  Fully automated builds, testing and promotion to production environments •  Helped foster Innovation & Rapid Experimentation •  Code Stability {infrastructure, product, configuration, tests} •  Faster resolutions to issues
    37. 37. About Tableau Software •  We help people see and understand their data.
    38. 38. Adoption and Practices •  Distributed, highly parallel development –  Waterfall → Agilefall → Agile –  Release train (sustaining → new development) •  Quality first (QSF) –  Implicit core value → explicit priority •  Infrastructure as code –  Agile development (product functionality → all engineering) –  Configuration management principles (product → all)
    39. 39. Common Themes •  Architectural design is key –  “Move from spaghetti to a layered cake” •  Build in adoption and confidence •  Quality as standard •  Infrastructure as Product –  Submit configurations to Version Management –  Treat systems as products –  Testing as products •  Mainline / trunk
    40. 40. Version at Scale •  First code check in: 1998 •  7800 users (88% of employees) •  80,000,000 transactions/day •  198 instances (55 RW, 14 RO, 4 Brokers and 125 scratch) •  556 Million files comprising 1.3 Billion revisions •  327 TB of data Versioning  enables  massive  growth   “If it’s not in Perforce it doesn’t exist
    41. 41. Version Everything •  Version “absolutely everything” •  Branching – “where it makes sense” •  “Nobody is born a versioning hero” Versioning  is  the  nerve  centre  of  the  organiza;on   “Versioning everything takes an investment, it’s worth it. Halldor  Fannar,     CTO  
    42. 42. Mainline Model •  150 teams, 5,000 testing VMs, 500,000 files. •  Up to 10 million Perforce transactions per day, heading towards 15 – 20 million •  Mainline code model •  Fast feedback is key •  Security, audit, compliance. Easy audit process Mainline  is  cri;cal  to  collabora;on   “Doubling the transactions, no increase in admins
    43. 43. Mainline Branching Strategy Release  1.1.x   Release  1.0.x  R  R   R   R   R   merge   bugfix   merge   bugfix   •  Visibility   •  Always  deployable   •  ConKnuous  IntegraKon,  only   create  branches  for  releases     Mainline   •  Manage  what  gets  into   mainline   •  ConKnuous  IntegraKon   •  Code  Review  
    44. 44. System of Record •  14,000 servers, 6,600 production releases per year, 198+ active projects •  Build artifacts stored in Perforce •  Version management enforces security •  Deploy “bridge” into production & rollback Single  Source  of  Truth   “Perforce is boring!
    45. 45. Versioning Samsung… •  World’s most successful Android company •  13,000 users that version hardware, firmware, software –  mobile, television, semiconductor •  Worldwide development in 12+ countries All  Android  Development  Done   in  Perforce   320  Git  repositories   Perforce   Samsung  

    ×