How to Do Code Reviews at Massive Scale For DevOps
JOHAN KARLSSON & ROBERT COWHAM
perforce.com2 | © Perforce Software, Inc.
Who We Are
Robert Cowham
Principal Consultant
Professional Services
Perforce Software
Johan Karlsson
Product Manager
Perforce Software
perforce.com3 | © Perforce Software, Inc.
Digital Code Review for DevOps @ Scale
What We Will Talk About
perforce.com4 | © Perforce Software, Inc.
Where Does Code Review Fit in the Overall Process?
Requirements Management
Project & Portfolio Management
Version & Asset
Management
Code Review
Static Code Analysis
Test Case Management
Issue
Management
Automated Test
Management
Development Tools &
Components
perforce.com5 | © Perforce Software, Inc.
Code Review Process Models
Review
Commit
perforce.com6 | © Perforce Software, Inc.
• Pre-commit build (& test) / pre-commit review
• Highest quality, but slows developers down
• Pre-commit build / post-commit review
• Pragmatic balance between speed and quality
• Build doesn't get broken – not waiting for humans!
• Post-commit build / post-commit review
• Risks breaking build which impacts other team members
When to Review / When to Commit
Speed
Quality
perforce.com7 | © Perforce Software, Inc.
When Are We @ Scale?
People Projects Branches Paths Complexity score
Small 300 100 3 3 900
Medium 1,000 300 10 3 9,000
Large 3,000 300 30 10 90,000
Extra large 5,000 1,000 30 30 900,000
Massive 5,000+ 3,000+ 300+ 100+ 90,000,000+
perforce.com8 | © Perforce Software, Inc.
• Mistakes can be VERY expensive.
• Including a lot of variant management
and traceability across variants.
• Tape-out dates, etc.: very low
acceptance of any bugs in the product.
Use Code Review to Drive Quality
perforce.com9 | © Perforce Software, Inc.
Use Code Review to Comply
• Very big mixture of projects. Some
small, some very large.
• Component-based development,
always starts from certain base layers.
• Regulations and industry standards
defines most of the process (AUTOSAR,
Automotive SPICE).
• Products and components stay around
for many, many years.
perforce.com10 | © Perforce Software, Inc.
Agility @ Scale
Economy of scale
Diseconomy of scale
COSTPERUNIT
S C A L E
perforce.com11 | © Perforce Software, Inc.
Distributed @ Scale
perforce.com12 | © Perforce Software, Inc.
How to Do It With Helix Swarm
p4d Xp4d 3p4d 2p4d 1
Projects
Workflows
Users & groups
Integrations with CI/CD
Extensions
Projects
Workflows
Users & groups
Integrations with CI/CD
Extensions
perforce.com13 | © Perforce Software, Inc.
Options for Code Review
API / Extendibility
In-depth p4d/p4v integration (users, process, features etc.)
Multi-p4d Support
Extended e-mail notifications
Workflows
Included with Helix Core license at no extra cost
perforce.com14 | © Perforce Software, Inc.
Summary
Digital Code Review for DevOps @ Scale
Questions?

How to Do Code Reviews at Massive Scale For DevOps

  • 1.
    How to DoCode Reviews at Massive Scale For DevOps JOHAN KARLSSON & ROBERT COWHAM
  • 2.
    perforce.com2 | ©Perforce Software, Inc. Who We Are Robert Cowham Principal Consultant Professional Services Perforce Software Johan Karlsson Product Manager Perforce Software
  • 3.
    perforce.com3 | ©Perforce Software, Inc. Digital Code Review for DevOps @ Scale What We Will Talk About
  • 4.
    perforce.com4 | ©Perforce Software, Inc. Where Does Code Review Fit in the Overall Process? Requirements Management Project & Portfolio Management Version & Asset Management Code Review Static Code Analysis Test Case Management Issue Management Automated Test Management Development Tools & Components
  • 5.
    perforce.com5 | ©Perforce Software, Inc. Code Review Process Models Review Commit
  • 6.
    perforce.com6 | ©Perforce Software, Inc. • Pre-commit build (& test) / pre-commit review • Highest quality, but slows developers down • Pre-commit build / post-commit review • Pragmatic balance between speed and quality • Build doesn't get broken – not waiting for humans! • Post-commit build / post-commit review • Risks breaking build which impacts other team members When to Review / When to Commit Speed Quality
  • 7.
    perforce.com7 | ©Perforce Software, Inc. When Are We @ Scale? People Projects Branches Paths Complexity score Small 300 100 3 3 900 Medium 1,000 300 10 3 9,000 Large 3,000 300 30 10 90,000 Extra large 5,000 1,000 30 30 900,000 Massive 5,000+ 3,000+ 300+ 100+ 90,000,000+
  • 8.
    perforce.com8 | ©Perforce Software, Inc. • Mistakes can be VERY expensive. • Including a lot of variant management and traceability across variants. • Tape-out dates, etc.: very low acceptance of any bugs in the product. Use Code Review to Drive Quality
  • 9.
    perforce.com9 | ©Perforce Software, Inc. Use Code Review to Comply • Very big mixture of projects. Some small, some very large. • Component-based development, always starts from certain base layers. • Regulations and industry standards defines most of the process (AUTOSAR, Automotive SPICE). • Products and components stay around for many, many years.
  • 10.
    perforce.com10 | ©Perforce Software, Inc. Agility @ Scale Economy of scale Diseconomy of scale COSTPERUNIT S C A L E
  • 11.
    perforce.com11 | ©Perforce Software, Inc. Distributed @ Scale
  • 12.
    perforce.com12 | ©Perforce Software, Inc. How to Do It With Helix Swarm p4d Xp4d 3p4d 2p4d 1 Projects Workflows Users & groups Integrations with CI/CD Extensions Projects Workflows Users & groups Integrations with CI/CD Extensions
  • 13.
    perforce.com13 | ©Perforce Software, Inc. Options for Code Review API / Extendibility In-depth p4d/p4v integration (users, process, features etc.) Multi-p4d Support Extended e-mail notifications Workflows Included with Helix Core license at no extra cost
  • 14.
    perforce.com14 | ©Perforce Software, Inc. Summary Digital Code Review for DevOps @ Scale
  • 15.