SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
Automated Code Reviews with AI and ML - DevOps Next
© 2020 Perforce Software, Inc.
AUTOMATED CODE REVIEWS
USING AI AND ML
B R E N T S C H I E S T L
3 | DevOps Next 2020 perforce.com
Confidentiality Statement
The information contained in this document is strictly confidential, privileged, and
only for the information of the intended recipient. The information contained in this
document may not be otherwise used, disclosed, copied, altered, or distributed
without the prior written consent of Perforce Software, Inc.
ABOUT ME:
Brent Schiestl
• Product Manager for the Version Control portfolio at Perforce Software
• 15+ years of experience in the Business Analysis / Product
Management space (formerly at Target Corp, Infor)
• Enjoy living at the intersection between customers and software
development teams
• Husband to an amazing wife, father of a “sassy” 6-yr old girl and a
“fearless” 3-yr old boy
• Hockey fan who resides in the “state of hockey” (Minnesota)
Pre-pandemic haircut!
Automated Code Reviews with AI and ML - DevOps Next
6 | DevOps Next 2020 perforce.com
Today’s Agenda
1
2
Introduction and Importance of Code Reviews in DevOps
Key Pillars for Valuable Code Reviews
3 How can AI/ML Enhance Automation and Efficiency of Code Reviews
Q&A5
4 Future of Automated Code Reviews
7 | DevOps Next 2020 perforce.com
Introduction to Code Review
According to Wikipedia…
• Code review (sometimes referred to as peer review) is a software quality assurance activity in which one or several people
check a program mainly by viewing and reading parts of its source code, and they do so after implementation or as an
interruption of implementation. At least one of the persons must not be the code's author. The persons performing the
checking, excluding the author, are called "reviewers”.
Code Reviews Goals:
• Better code quality – improve internal code quality and maintainability (readability, uniformity, understandability, ...)
• Finding defects – improve quality regarding external aspects, especially correctness, but also find performance problems,
security vulnerabilities, injected malware, ...
• Learning / knowledge transfer – help in transferring knowledge about the codebase, solution approaches, expectations
regarding quality, etc.; both to the reviewers as well as to the author
• Increase sense of mutual responsibility – increase a sense of collective code ownership and solidarity
• Finding better solutions – generate ideas for new and better solutions and ideas that transcend the specific code at hand
• Complying with external guidelines – Code reviews are mandatory in some contexts, e.g., air traffic software
8 | DevOps Next 2020 perforce.com
Standard Code Review Flow
Linting/static code
review is performed
A new software
build is created (CI)
Unit testing is
performed
Developer submits
pull/merge request
Code review is
created
9 | DevOps Next 2020 perforce.com
Standard Code Review Flow
Linting/static code
review is performed
A new software
build is created (CI)
Unit testing is
performed
Developer submits
pull/merge request
Code review is
created
10 | DevOps Next 2020 perforce.com
Benefits of Human-Based Code Reviews
Transparency
The entire team gets a better picture of what everyone is working on, their “style,” and even their level of productivity
Underscoring and Promoting Shared Values
Drives pride in work, making developers look forward to showing it to their colleagues
Becoming More Cohesive
Such reviews empower more experience developers to meet F2F with their peers, share best practices, praise, and improve
coding activities.
Building Self-Esteem for New Developers
Code reviews can be a great way for everyone to learn more about coding.
11 | DevOps Next 2020 perforce.com
Code Review Checklist
Source: EvokeTechnologies
12 | DevOps Next 2020 perforce.com
Code Review Best Practices
Know What to Look
for in a Code
Review
Build and Test –
Before Review
Don’t Review Code
for Longer than 60
Minutes
Check No More
than 400 Lines at a
Time
Give Feedback that
Helps (Not Hurts)
Communicate Goals
and Expectations
Include Everyone in
the Code Review
Process
Foster a Positive
Culture
Automate to Save
Time
9 Code Review Best Practices: Perforce.com
13 | DevOps Next 2020 perforce.com
• Coping with scale in Agile/DevOps processes (Time/Money)
• Error Prone and subjective when done by humans (LGTM Syndrome)
• Only 13% of pull requests are rejected due to technical reasons (Limitations) 1
• Often leads to personal conflicts and sensitivity by the recipient of feedback
Human Code Reviews – Effective when done Effectively
1 McGill University, El Zanaty, et al.
14 | DevOps Next 2020 perforce.com
Why is There a Need for AI/ML Automated Code Reviews?
15 | DevOps Next 2020 perforce.com
Code Review Process using ML
16 | DevOps Next 2020 perforce.com
Advancements in Code Reviews
“Find your biggest slowdowns by
pinpointing exactly where pull
requests get stuck on the journey
from open to deploy” – Code Climate
1. Automated Code Reviews
2. Code Coverage Analysis
3. Track progress against goals
4. Identify hot spots to focus
17 | DevOps Next 2020 perforce.com
• Time to Open — The time between an engineer’s first commit and when they open a pull request in their version
control system. The Velocity data shows that this metric has the highest correlation with cycle time.
• Time to Review — The time between when a pull request is opened and when it receives its first review. Delays at this
stage incentivize multi-tasking, so Code Climate says you’ll want to minimize the time a merge of pull request is left
waiting for review.
• Time to Approve — The time between when a pull request receives its first review and when it is approved, also
known as the Code Review process. Clearly, as we discussed earlier, this is an area that needs analysis. You don’t want
LGTM reviews, but you also don’t want people avoiding reviews or spending too long on them.
• Time to Deploy — Any additional time following the merge or pull request approval, before the change reaches
production. This seems like it might be hard to measure in some environments, but it is absolutely worth doing.
Productivity Benefits of Automated Code Reviews with AI (Code Climate)
18 | DevOps Next 2020 perforce.com
Advancements in Code Reviews
19 | DevOps Next 2020 perforce.com
Advancements in Code Reviews
• Amazon CodeGuru - Find your most expensive lines of code and improve code quality
• Profiler helps developers find an application’s most expensive lines of code along with specific
visualizations and recommendations on how to improve code to save money
• Reviewer uses machine learning to identify critical issues and hard-to-find bugs during application
development to improve code quality
Open Pull Request
Add Amazon
CodeGuru
Reviewer as
reviewer
Amazon CodeGuru
Provides Intelligent
Suggestions
• Only supports Java (currently)
• Reviewer can be done on a per repository or per pull request basis
• All about willingness to pay!
20 | DevOps Next 2020 perforce.com
• Lines are blurring between “traditional” static analysis and automated code reviews using AI/ML
• Rules and patterns vs. semantic meaning
• AI/ML in code reviews currently in the “early adopter” phase
• Existing tools are already available, integrated into the CI/CD landscape
• Be careful of the code review metrics you are tracking (unforeseen side effects)
• There will always be value in humans performing code reviews
Future of Automated Code Reviews
21 | DevOps Next 2020 perforce.com
Classification of Advanced
AI & ML Testing Tools
COMING UP NEXT…
TRACK
Testing Tools
The Rise and Benefits of Robotic
Process Automation (RPA)
TRACK
Continuous Testing
Moving to Modern DevOps
with Fuzzing and ML
TRACK
DevOps & Code
© 2020 Perforce Software, Inc.
#devopsnext-devops-code
LIVE SLACK Q&A
Thank You!

Más contenido relacionado

Was ist angesagt?

Software engineer가 되기 위한 여정
Software engineer가 되기 위한 여정Software engineer가 되기 위한 여정
Software engineer가 되기 위한 여정Aree Oh
 
나의 이직 이야기
나의 이직 이야기나의 이직 이야기
나의 이직 이야기종립 이
 
Not my RUM: Benchmarking the web for fun and profit with the Chrome UX Report
Not my RUM: Benchmarking the web for fun and profit with the Chrome UX ReportNot my RUM: Benchmarking the web for fun and profit with the Chrome UX Report
Not my RUM: Benchmarking the web for fun and profit with the Chrome UX ReportRick Viscomi
 
TP Git avancé DevoxxFR 2018 (exercices)
TP Git avancé DevoxxFR 2018 (exercices)TP Git avancé DevoxxFR 2018 (exercices)
TP Git avancé DevoxxFR 2018 (exercices)Jérôme Tamborini
 
개발자를 위한 (블로그) 글쓰기 intro
개발자를 위한 (블로그) 글쓰기 intro개발자를 위한 (블로그) 글쓰기 intro
개발자를 위한 (블로그) 글쓰기 introSeongyun Byeon
 
From Product Strategy to Backlog: Best Practices for Integrating Aha! Roadmap...
From Product Strategy to Backlog: Best Practices for Integrating Aha! Roadmap...From Product Strategy to Backlog: Best Practices for Integrating Aha! Roadmap...
From Product Strategy to Backlog: Best Practices for Integrating Aha! Roadmap...Cprime
 
Xp(Xtreme Programming) presentation
Xp(Xtreme Programming) presentationXp(Xtreme Programming) presentation
Xp(Xtreme Programming) presentationMuaazZubairi
 
Product Life Cycle Management
Product Life Cycle ManagementProduct Life Cycle Management
Product Life Cycle Managementchaitanya122
 
Git and Github slides.pdf
Git and Github slides.pdfGit and Github slides.pdf
Git and Github slides.pdfTilton2
 
소프트웨어 공학의 사실과 오해
소프트웨어 공학의 사실과 오해소프트웨어 공학의 사실과 오해
소프트웨어 공학의 사실과 오해한 경만
 
강성훈, 실버바인 대기열 서버 설계 리뷰, NDC2019
강성훈, 실버바인 대기열 서버 설계 리뷰, NDC2019강성훈, 실버바인 대기열 서버 설계 리뷰, NDC2019
강성훈, 실버바인 대기열 서버 설계 리뷰, NDC2019devCAT Studio, NEXON
 
d.ts 만들기
d.ts 만들기d.ts 만들기
d.ts 만들기DaeSeon Jeong
 
ATDD - Acceptance Test Driven Development
ATDD - Acceptance Test Driven DevelopmentATDD - Acceptance Test Driven Development
ATDD - Acceptance Test Driven DevelopmentNaresh Jain
 
Python 테스트 시작하기
Python 테스트 시작하기Python 테스트 시작하기
Python 테스트 시작하기Hosung Lee
 
TDD (Test-Driven Development)
TDD (Test-Driven Development)TDD (Test-Driven Development)
TDD (Test-Driven Development)Renato Groff
 
Dressipi - Personalised recommendation engine for fashion consumers
Dressipi - Personalised recommendation engine for fashion consumersDressipi - Personalised recommendation engine for fashion consumers
Dressipi - Personalised recommendation engine for fashion consumersProject Juno
 
스타트업처럼 토이프로젝트하기
스타트업처럼 토이프로젝트하기스타트업처럼 토이프로젝트하기
스타트업처럼 토이프로젝트하기Sunyoung Shin
 

Was ist angesagt? (20)

Software engineer가 되기 위한 여정
Software engineer가 되기 위한 여정Software engineer가 되기 위한 여정
Software engineer가 되기 위한 여정
 
나의 이직 이야기
나의 이직 이야기나의 이직 이야기
나의 이직 이야기
 
Not my RUM: Benchmarking the web for fun and profit with the Chrome UX Report
Not my RUM: Benchmarking the web for fun and profit with the Chrome UX ReportNot my RUM: Benchmarking the web for fun and profit with the Chrome UX Report
Not my RUM: Benchmarking the web for fun and profit with the Chrome UX Report
 
Integration Testing in Python
Integration Testing in PythonIntegration Testing in Python
Integration Testing in Python
 
TP Git avancé DevoxxFR 2018 (exercices)
TP Git avancé DevoxxFR 2018 (exercices)TP Git avancé DevoxxFR 2018 (exercices)
TP Git avancé DevoxxFR 2018 (exercices)
 
개발자를 위한 (블로그) 글쓰기 intro
개발자를 위한 (블로그) 글쓰기 intro개발자를 위한 (블로그) 글쓰기 intro
개발자를 위한 (블로그) 글쓰기 intro
 
From Product Strategy to Backlog: Best Practices for Integrating Aha! Roadmap...
From Product Strategy to Backlog: Best Practices for Integrating Aha! Roadmap...From Product Strategy to Backlog: Best Practices for Integrating Aha! Roadmap...
From Product Strategy to Backlog: Best Practices for Integrating Aha! Roadmap...
 
Xp(Xtreme Programming) presentation
Xp(Xtreme Programming) presentationXp(Xtreme Programming) presentation
Xp(Xtreme Programming) presentation
 
Product Life Cycle Management
Product Life Cycle ManagementProduct Life Cycle Management
Product Life Cycle Management
 
Git and Github slides.pdf
Git and Github slides.pdfGit and Github slides.pdf
Git and Github slides.pdf
 
01b diseño en ing
01b diseño en ing01b diseño en ing
01b diseño en ing
 
소프트웨어 공학의 사실과 오해
소프트웨어 공학의 사실과 오해소프트웨어 공학의 사실과 오해
소프트웨어 공학의 사실과 오해
 
Red7 Developing Product Requirements: Tools and Process
Red7 Developing Product Requirements: Tools and ProcessRed7 Developing Product Requirements: Tools and Process
Red7 Developing Product Requirements: Tools and Process
 
강성훈, 실버바인 대기열 서버 설계 리뷰, NDC2019
강성훈, 실버바인 대기열 서버 설계 리뷰, NDC2019강성훈, 실버바인 대기열 서버 설계 리뷰, NDC2019
강성훈, 실버바인 대기열 서버 설계 리뷰, NDC2019
 
d.ts 만들기
d.ts 만들기d.ts 만들기
d.ts 만들기
 
ATDD - Acceptance Test Driven Development
ATDD - Acceptance Test Driven DevelopmentATDD - Acceptance Test Driven Development
ATDD - Acceptance Test Driven Development
 
Python 테스트 시작하기
Python 테스트 시작하기Python 테스트 시작하기
Python 테스트 시작하기
 
TDD (Test-Driven Development)
TDD (Test-Driven Development)TDD (Test-Driven Development)
TDD (Test-Driven Development)
 
Dressipi - Personalised recommendation engine for fashion consumers
Dressipi - Personalised recommendation engine for fashion consumersDressipi - Personalised recommendation engine for fashion consumers
Dressipi - Personalised recommendation engine for fashion consumers
 
스타트업처럼 토이프로젝트하기
스타트업처럼 토이프로젝트하기스타트업처럼 토이프로젝트하기
스타트업처럼 토이프로젝트하기
 

Ähnlich wie Automated Code Reviews with AI and ML - DevOps Next

Leveraging AI and ML in Test Management Systems - DevOps Next
Leveraging AI and ML in Test Management Systems - DevOps NextLeveraging AI and ML in Test Management Systems - DevOps Next
Leveraging AI and ML in Test Management Systems - DevOps NextPerfecto by Perforce
 
Capability Building for Cyber Defense: Software Walk through and Screening
Capability Building for Cyber Defense: Software Walk through and Screening Capability Building for Cyber Defense: Software Walk through and Screening
Capability Building for Cyber Defense: Software Walk through and Screening Maven Logix
 
Xen Project Contributor Training - Part 1 introduction v1.0
Xen Project Contributor Training - Part 1 introduction v1.0Xen Project Contributor Training - Part 1 introduction v1.0
Xen Project Contributor Training - Part 1 introduction v1.0The Linux Foundation
 
Peer Code Review An Agile Process
Peer Code Review An Agile ProcessPeer Code Review An Agile Process
Peer Code Review An Agile Processgsporar
 
Code review best practice
Code review best practiceCode review best practice
Code review best practiceOren Digmi
 
Quality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQuality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQASymphony
 
Software Defect Prevention via Continuous Inspection
Software Defect Prevention via Continuous InspectionSoftware Defect Prevention via Continuous Inspection
Software Defect Prevention via Continuous InspectionJosh Gough
 
Technical debt strategy
Technical debt strategyTechnical debt strategy
Technical debt strategyMasas Dani
 
Technical debt management strategies
Technical debt management strategiesTechnical debt management strategies
Technical debt management strategiesRaquel Pau
 
Agile & DevOps - It's all about project success
Agile & DevOps - It's all about project successAgile & DevOps - It's all about project success
Agile & DevOps - It's all about project successAdam Stephensen
 
Improving our Approach Towards Capturing Value in Requirements
Improving our Approach Towards Capturing Value in RequirementsImproving our Approach Towards Capturing Value in Requirements
Improving our Approach Towards Capturing Value in RequirementsOsama M. Khaled
 
How to create a successful proof of concept
How to create a successful proof of conceptHow to create a successful proof of concept
How to create a successful proof of conceptETLSolutions
 
Code Review Best Practices
Code Review Best PracticesCode Review Best Practices
Code Review Best PracticesTrisha Gee
 
Agile Kolkata 2023 I EEBO Metrics in the Times of GenAI - Dinker Charak
Agile Kolkata 2023 I EEBO Metrics in the Times of GenAI - Dinker CharakAgile Kolkata 2023 I EEBO Metrics in the Times of GenAI - Dinker Charak
Agile Kolkata 2023 I EEBO Metrics in the Times of GenAI - Dinker CharakAgileNetwork
 
Software Quality Architecture And Code Audit
Software Quality Architecture And Code AuditSoftware Quality Architecture And Code Audit
Software Quality Architecture And Code AuditXebia IT Architects
 
Expert Code Review best practices
Expert Code Review best practicesExpert Code Review best practices
Expert Code Review best practicesjeetendra mandal
 
Your Open Source Program Office
Your Open Source Program OfficeYour Open Source Program Office
Your Open Source Program OfficeGil Yehuda
 
[DevDay2018] High quality mindset in software development - By: Phat Vu, Scru...
[DevDay2018] High quality mindset in software development - By: Phat Vu, Scru...[DevDay2018] High quality mindset in software development - By: Phat Vu, Scru...
[DevDay2018] High quality mindset in software development - By: Phat Vu, Scru...DevDay.org
 

Ähnlich wie Automated Code Reviews with AI and ML - DevOps Next (20)

Leveraging AI and ML in Test Management Systems - DevOps Next
Leveraging AI and ML in Test Management Systems - DevOps NextLeveraging AI and ML in Test Management Systems - DevOps Next
Leveraging AI and ML in Test Management Systems - DevOps Next
 
Capability Building for Cyber Defense: Software Walk through and Screening
Capability Building for Cyber Defense: Software Walk through and Screening Capability Building for Cyber Defense: Software Walk through and Screening
Capability Building for Cyber Defense: Software Walk through and Screening
 
Xen Project Contributor Training - Part 1 introduction v1.0
Xen Project Contributor Training - Part 1 introduction v1.0Xen Project Contributor Training - Part 1 introduction v1.0
Xen Project Contributor Training - Part 1 introduction v1.0
 
Code Reviews
Code ReviewsCode Reviews
Code Reviews
 
Peer Code Review An Agile Process
Peer Code Review An Agile ProcessPeer Code Review An Agile Process
Peer Code Review An Agile Process
 
Code review best practice
Code review best practiceCode review best practice
Code review best practice
 
Quality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQuality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the Enterprise
 
Software Defect Prevention via Continuous Inspection
Software Defect Prevention via Continuous InspectionSoftware Defect Prevention via Continuous Inspection
Software Defect Prevention via Continuous Inspection
 
Technical debt strategy
Technical debt strategyTechnical debt strategy
Technical debt strategy
 
Technical debt management strategies
Technical debt management strategiesTechnical debt management strategies
Technical debt management strategies
 
Test Policy and Practices
Test Policy and PracticesTest Policy and Practices
Test Policy and Practices
 
Agile & DevOps - It's all about project success
Agile & DevOps - It's all about project successAgile & DevOps - It's all about project success
Agile & DevOps - It's all about project success
 
Improving our Approach Towards Capturing Value in Requirements
Improving our Approach Towards Capturing Value in RequirementsImproving our Approach Towards Capturing Value in Requirements
Improving our Approach Towards Capturing Value in Requirements
 
How to create a successful proof of concept
How to create a successful proof of conceptHow to create a successful proof of concept
How to create a successful proof of concept
 
Code Review Best Practices
Code Review Best PracticesCode Review Best Practices
Code Review Best Practices
 
Agile Kolkata 2023 I EEBO Metrics in the Times of GenAI - Dinker Charak
Agile Kolkata 2023 I EEBO Metrics in the Times of GenAI - Dinker CharakAgile Kolkata 2023 I EEBO Metrics in the Times of GenAI - Dinker Charak
Agile Kolkata 2023 I EEBO Metrics in the Times of GenAI - Dinker Charak
 
Software Quality Architecture And Code Audit
Software Quality Architecture And Code AuditSoftware Quality Architecture And Code Audit
Software Quality Architecture And Code Audit
 
Expert Code Review best practices
Expert Code Review best practicesExpert Code Review best practices
Expert Code Review best practices
 
Your Open Source Program Office
Your Open Source Program OfficeYour Open Source Program Office
Your Open Source Program Office
 
[DevDay2018] High quality mindset in software development - By: Phat Vu, Scru...
[DevDay2018] High quality mindset in software development - By: Phat Vu, Scru...[DevDay2018] High quality mindset in software development - By: Phat Vu, Scru...
[DevDay2018] High quality mindset in software development - By: Phat Vu, Scru...
 

Mehr von Perfecto by Perforce

Is BDD Worth It? Considerations for Advanced Test Automation
Is BDD Worth It? Considerations for Advanced Test AutomationIs BDD Worth It? Considerations for Advanced Test Automation
Is BDD Worth It? Considerations for Advanced Test AutomationPerfecto by Perforce
 
Yoda debunks the top 5 challenges of continuous testing in the cloud
Yoda debunks the top 5 challenges of continuous testing in the cloudYoda debunks the top 5 challenges of continuous testing in the cloud
Yoda debunks the top 5 challenges of continuous testing in the cloudPerfecto by Perforce
 
5 Mobile App Trends & What They Mean for Dev & Testing
5 Mobile App Trends & What They Mean for Dev & Testing5 Mobile App Trends & What They Mean for Dev & Testing
5 Mobile App Trends & What They Mean for Dev & TestingPerfecto by Perforce
 
How to Scale Digital App Testing With Jenkins & Automation You Can Trust
How to Scale Digital App Testing With Jenkins & Automation You Can TrustHow to Scale Digital App Testing With Jenkins & Automation You Can Trust
How to Scale Digital App Testing With Jenkins & Automation You Can TrustPerfecto by Perforce
 
Mastering Cross-Browser Test Automation With Cypress and Selenium
Mastering Cross-Browser Test Automation With Cypress and SeleniumMastering Cross-Browser Test Automation With Cypress and Selenium
Mastering Cross-Browser Test Automation With Cypress and SeleniumPerfecto by Perforce
 
Cloud Testing Has Never Been Easier or More Accessible
Cloud Testing Has Never Been Easier or More AccessibleCloud Testing Has Never Been Easier or More Accessible
Cloud Testing Has Never Been Easier or More AccessiblePerfecto by Perforce
 
Cognitive Engineering - Shifting Right with Gated.AI Testing - DevOps Next
Cognitive Engineering - Shifting Right with Gated.AI Testing - DevOps NextCognitive Engineering - Shifting Right with Gated.AI Testing - DevOps Next
Cognitive Engineering - Shifting Right with Gated.AI Testing - DevOps NextPerfecto by Perforce
 
The Rise and Benefits of Robotic Process Automation (RPA) - DevOps Next
The Rise and Benefits of Robotic Process Automation (RPA) - DevOps NextThe Rise and Benefits of Robotic Process Automation (RPA) - DevOps Next
The Rise and Benefits of Robotic Process Automation (RPA) - DevOps NextPerfecto by Perforce
 
The New Categories of Software Defects in the Era of AI and ML - DevOps Next
The New Categories of Software Defects in the Era of AI and ML - DevOps NextThe New Categories of Software Defects in the Era of AI and ML - DevOps Next
The New Categories of Software Defects in the Era of AI and ML - DevOps NextPerfecto by Perforce
 
Moving to Modern DevOps with Fuzzing and ML - DevOps Next
Moving to Modern DevOps with Fuzzing and ML - DevOps NextMoving to Modern DevOps with Fuzzing and ML - DevOps Next
Moving to Modern DevOps with Fuzzing and ML - DevOps NextPerfecto by Perforce
 
How Does AIOps Benefit DevOps Pipeline and Software Quality? - DevOps Next
How Does AIOps Benefit DevOps Pipeline and Software Quality? - DevOps NextHow Does AIOps Benefit DevOps Pipeline and Software Quality? - DevOps Next
How Does AIOps Benefit DevOps Pipeline and Software Quality? - DevOps NextPerfecto by Perforce
 
Classification of Advanced AI and ML Testing Tools - DevOps Next
Classification of Advanced AI and ML Testing Tools - DevOps NextClassification of Advanced AI and ML Testing Tools - DevOps Next
Classification of Advanced AI and ML Testing Tools - DevOps NextPerfecto by Perforce
 
Advancing the State of The Art in AI and Testing - DevOps Next
Advancing the State of The Art in AI and Testing - DevOps NextAdvancing the State of The Art in AI and Testing - DevOps Next
Advancing the State of The Art in AI and Testing - DevOps NextPerfecto by Perforce
 
How to Prepare Your Apps for iOS 14 - Test Strategy, Coverage, & Best Practices
How to Prepare Your Apps for iOS 14 - Test Strategy, Coverage, & Best PracticesHow to Prepare Your Apps for iOS 14 - Test Strategy, Coverage, & Best Practices
How to Prepare Your Apps for iOS 14 - Test Strategy, Coverage, & Best PracticesPerfecto by Perforce
 
How to Create a Risk Based Testing Strategy With Simulators, Emulators, and R...
How to Create a Risk Based Testing Strategy With Simulators, Emulators, and R...How to Create a Risk Based Testing Strategy With Simulators, Emulators, and R...
How to Create a Risk Based Testing Strategy With Simulators, Emulators, and R...Perfecto by Perforce
 
Fast Data, Fast Delivery: How Smart Analysis Accelerates App Testing
Fast Data, Fast Delivery: How Smart Analysis Accelerates App TestingFast Data, Fast Delivery: How Smart Analysis Accelerates App Testing
Fast Data, Fast Delivery: How Smart Analysis Accelerates App TestingPerfecto by Perforce
 
Best Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility TestingBest Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility TestingPerfecto by Perforce
 
Deliver Flawless Mobile Apps Faster with CI/CD & CT
Deliver Flawless Mobile Apps Faster with CI/CD & CTDeliver Flawless Mobile Apps Faster with CI/CD & CT
Deliver Flawless Mobile Apps Faster with CI/CD & CTPerfecto by Perforce
 
How to Eliminate Escaped Defects With a Proven Test Automation Coverage Strategy
How to Eliminate Escaped Defects With a Proven Test Automation Coverage StrategyHow to Eliminate Escaped Defects With a Proven Test Automation Coverage Strategy
How to Eliminate Escaped Defects With a Proven Test Automation Coverage StrategyPerfecto by Perforce
 
Accelerating Digital Transformation With API Lifecycle & Test Automation
Accelerating Digital Transformation With API Lifecycle & Test AutomationAccelerating Digital Transformation With API Lifecycle & Test Automation
Accelerating Digital Transformation With API Lifecycle & Test AutomationPerfecto by Perforce
 

Mehr von Perfecto by Perforce (20)

Is BDD Worth It? Considerations for Advanced Test Automation
Is BDD Worth It? Considerations for Advanced Test AutomationIs BDD Worth It? Considerations for Advanced Test Automation
Is BDD Worth It? Considerations for Advanced Test Automation
 
Yoda debunks the top 5 challenges of continuous testing in the cloud
Yoda debunks the top 5 challenges of continuous testing in the cloudYoda debunks the top 5 challenges of continuous testing in the cloud
Yoda debunks the top 5 challenges of continuous testing in the cloud
 
5 Mobile App Trends & What They Mean for Dev & Testing
5 Mobile App Trends & What They Mean for Dev & Testing5 Mobile App Trends & What They Mean for Dev & Testing
5 Mobile App Trends & What They Mean for Dev & Testing
 
How to Scale Digital App Testing With Jenkins & Automation You Can Trust
How to Scale Digital App Testing With Jenkins & Automation You Can TrustHow to Scale Digital App Testing With Jenkins & Automation You Can Trust
How to Scale Digital App Testing With Jenkins & Automation You Can Trust
 
Mastering Cross-Browser Test Automation With Cypress and Selenium
Mastering Cross-Browser Test Automation With Cypress and SeleniumMastering Cross-Browser Test Automation With Cypress and Selenium
Mastering Cross-Browser Test Automation With Cypress and Selenium
 
Cloud Testing Has Never Been Easier or More Accessible
Cloud Testing Has Never Been Easier or More AccessibleCloud Testing Has Never Been Easier or More Accessible
Cloud Testing Has Never Been Easier or More Accessible
 
Cognitive Engineering - Shifting Right with Gated.AI Testing - DevOps Next
Cognitive Engineering - Shifting Right with Gated.AI Testing - DevOps NextCognitive Engineering - Shifting Right with Gated.AI Testing - DevOps Next
Cognitive Engineering - Shifting Right with Gated.AI Testing - DevOps Next
 
The Rise and Benefits of Robotic Process Automation (RPA) - DevOps Next
The Rise and Benefits of Robotic Process Automation (RPA) - DevOps NextThe Rise and Benefits of Robotic Process Automation (RPA) - DevOps Next
The Rise and Benefits of Robotic Process Automation (RPA) - DevOps Next
 
The New Categories of Software Defects in the Era of AI and ML - DevOps Next
The New Categories of Software Defects in the Era of AI and ML - DevOps NextThe New Categories of Software Defects in the Era of AI and ML - DevOps Next
The New Categories of Software Defects in the Era of AI and ML - DevOps Next
 
Moving to Modern DevOps with Fuzzing and ML - DevOps Next
Moving to Modern DevOps with Fuzzing and ML - DevOps NextMoving to Modern DevOps with Fuzzing and ML - DevOps Next
Moving to Modern DevOps with Fuzzing and ML - DevOps Next
 
How Does AIOps Benefit DevOps Pipeline and Software Quality? - DevOps Next
How Does AIOps Benefit DevOps Pipeline and Software Quality? - DevOps NextHow Does AIOps Benefit DevOps Pipeline and Software Quality? - DevOps Next
How Does AIOps Benefit DevOps Pipeline and Software Quality? - DevOps Next
 
Classification of Advanced AI and ML Testing Tools - DevOps Next
Classification of Advanced AI and ML Testing Tools - DevOps NextClassification of Advanced AI and ML Testing Tools - DevOps Next
Classification of Advanced AI and ML Testing Tools - DevOps Next
 
Advancing the State of The Art in AI and Testing - DevOps Next
Advancing the State of The Art in AI and Testing - DevOps NextAdvancing the State of The Art in AI and Testing - DevOps Next
Advancing the State of The Art in AI and Testing - DevOps Next
 
How to Prepare Your Apps for iOS 14 - Test Strategy, Coverage, & Best Practices
How to Prepare Your Apps for iOS 14 - Test Strategy, Coverage, & Best PracticesHow to Prepare Your Apps for iOS 14 - Test Strategy, Coverage, & Best Practices
How to Prepare Your Apps for iOS 14 - Test Strategy, Coverage, & Best Practices
 
How to Create a Risk Based Testing Strategy With Simulators, Emulators, and R...
How to Create a Risk Based Testing Strategy With Simulators, Emulators, and R...How to Create a Risk Based Testing Strategy With Simulators, Emulators, and R...
How to Create a Risk Based Testing Strategy With Simulators, Emulators, and R...
 
Fast Data, Fast Delivery: How Smart Analysis Accelerates App Testing
Fast Data, Fast Delivery: How Smart Analysis Accelerates App TestingFast Data, Fast Delivery: How Smart Analysis Accelerates App Testing
Fast Data, Fast Delivery: How Smart Analysis Accelerates App Testing
 
Best Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility TestingBest Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility Testing
 
Deliver Flawless Mobile Apps Faster with CI/CD & CT
Deliver Flawless Mobile Apps Faster with CI/CD & CTDeliver Flawless Mobile Apps Faster with CI/CD & CT
Deliver Flawless Mobile Apps Faster with CI/CD & CT
 
How to Eliminate Escaped Defects With a Proven Test Automation Coverage Strategy
How to Eliminate Escaped Defects With a Proven Test Automation Coverage StrategyHow to Eliminate Escaped Defects With a Proven Test Automation Coverage Strategy
How to Eliminate Escaped Defects With a Proven Test Automation Coverage Strategy
 
Accelerating Digital Transformation With API Lifecycle & Test Automation
Accelerating Digital Transformation With API Lifecycle & Test AutomationAccelerating Digital Transformation With API Lifecycle & Test Automation
Accelerating Digital Transformation With API Lifecycle & Test Automation
 

Último

UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3DianaGray10
 
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedIn
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedInOutage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedIn
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedInThousandEyes
 
Extra-120324-Visite-Entreprise-icare.pdf
Extra-120324-Visite-Entreprise-icare.pdfExtra-120324-Visite-Entreprise-icare.pdf
Extra-120324-Visite-Entreprise-icare.pdfInfopole1
 
TrustArc Webinar - How to Live in a Post Third-Party Cookie World
TrustArc Webinar - How to Live in a Post Third-Party Cookie WorldTrustArc Webinar - How to Live in a Post Third-Party Cookie World
TrustArc Webinar - How to Live in a Post Third-Party Cookie WorldTrustArc
 
The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)codyslingerland1
 
How to release an Open Source Dataweave Library
How to release an Open Source Dataweave LibraryHow to release an Open Source Dataweave Library
How to release an Open Source Dataweave Libraryshyamraj55
 
Top 10 Squarespace Development Companies
Top 10 Squarespace Development CompaniesTop 10 Squarespace Development Companies
Top 10 Squarespace Development CompaniesTopCSSGallery
 
UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2DianaGray10
 
2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdfThe Good Food Institute
 
UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4DianaGray10
 
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024Alkin Tezuysal
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applicationsnooralam814309
 
Explore the UiPath Community and ways you can benefit on your journey to auto...
Explore the UiPath Community and ways you can benefit on your journey to auto...Explore the UiPath Community and ways you can benefit on your journey to auto...
Explore the UiPath Community and ways you can benefit on your journey to auto...DianaGray10
 
Introduction - IPLOOK NETWORKS CO., LTD.
Introduction - IPLOOK NETWORKS CO., LTD.Introduction - IPLOOK NETWORKS CO., LTD.
Introduction - IPLOOK NETWORKS CO., LTD.IPLOOK Networks
 
LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0DanBrown980551
 
CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024Brian Pichman
 
Introduction to RAG (Retrieval Augmented Generation) and its application
Introduction to RAG (Retrieval Augmented Generation) and its applicationIntroduction to RAG (Retrieval Augmented Generation) and its application
Introduction to RAG (Retrieval Augmented Generation) and its applicationKnoldus Inc.
 
Flow Control | Block Size | ST Min | First Frame
Flow Control | Block Size | ST Min | First FrameFlow Control | Block Size | ST Min | First Frame
Flow Control | Block Size | ST Min | First FrameKapil Thakar
 
How to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxHow to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxKaustubhBhavsar6
 
Automation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsAutomation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsDianaGray10
 

Último (20)

UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3
 
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedIn
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedInOutage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedIn
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedIn
 
Extra-120324-Visite-Entreprise-icare.pdf
Extra-120324-Visite-Entreprise-icare.pdfExtra-120324-Visite-Entreprise-icare.pdf
Extra-120324-Visite-Entreprise-icare.pdf
 
TrustArc Webinar - How to Live in a Post Third-Party Cookie World
TrustArc Webinar - How to Live in a Post Third-Party Cookie WorldTrustArc Webinar - How to Live in a Post Third-Party Cookie World
TrustArc Webinar - How to Live in a Post Third-Party Cookie World
 
The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)
 
How to release an Open Source Dataweave Library
How to release an Open Source Dataweave LibraryHow to release an Open Source Dataweave Library
How to release an Open Source Dataweave Library
 
Top 10 Squarespace Development Companies
Top 10 Squarespace Development CompaniesTop 10 Squarespace Development Companies
Top 10 Squarespace Development Companies
 
UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2
 
2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf
 
UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4
 
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applications
 
Explore the UiPath Community and ways you can benefit on your journey to auto...
Explore the UiPath Community and ways you can benefit on your journey to auto...Explore the UiPath Community and ways you can benefit on your journey to auto...
Explore the UiPath Community and ways you can benefit on your journey to auto...
 
Introduction - IPLOOK NETWORKS CO., LTD.
Introduction - IPLOOK NETWORKS CO., LTD.Introduction - IPLOOK NETWORKS CO., LTD.
Introduction - IPLOOK NETWORKS CO., LTD.
 
LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0
 
CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024
 
Introduction to RAG (Retrieval Augmented Generation) and its application
Introduction to RAG (Retrieval Augmented Generation) and its applicationIntroduction to RAG (Retrieval Augmented Generation) and its application
Introduction to RAG (Retrieval Augmented Generation) and its application
 
Flow Control | Block Size | ST Min | First Frame
Flow Control | Block Size | ST Min | First FrameFlow Control | Block Size | ST Min | First Frame
Flow Control | Block Size | ST Min | First Frame
 
How to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxHow to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptx
 
Automation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsAutomation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projects
 

Automated Code Reviews with AI and ML - DevOps Next

  • 2. © 2020 Perforce Software, Inc. AUTOMATED CODE REVIEWS USING AI AND ML B R E N T S C H I E S T L
  • 3. 3 | DevOps Next 2020 perforce.com Confidentiality Statement The information contained in this document is strictly confidential, privileged, and only for the information of the intended recipient. The information contained in this document may not be otherwise used, disclosed, copied, altered, or distributed without the prior written consent of Perforce Software, Inc.
  • 4. ABOUT ME: Brent Schiestl • Product Manager for the Version Control portfolio at Perforce Software • 15+ years of experience in the Business Analysis / Product Management space (formerly at Target Corp, Infor) • Enjoy living at the intersection between customers and software development teams • Husband to an amazing wife, father of a “sassy” 6-yr old girl and a “fearless” 3-yr old boy • Hockey fan who resides in the “state of hockey” (Minnesota) Pre-pandemic haircut!
  • 6. 6 | DevOps Next 2020 perforce.com Today’s Agenda 1 2 Introduction and Importance of Code Reviews in DevOps Key Pillars for Valuable Code Reviews 3 How can AI/ML Enhance Automation and Efficiency of Code Reviews Q&A5 4 Future of Automated Code Reviews
  • 7. 7 | DevOps Next 2020 perforce.com Introduction to Code Review According to Wikipedia… • Code review (sometimes referred to as peer review) is a software quality assurance activity in which one or several people check a program mainly by viewing and reading parts of its source code, and they do so after implementation or as an interruption of implementation. At least one of the persons must not be the code's author. The persons performing the checking, excluding the author, are called "reviewers”. Code Reviews Goals: • Better code quality – improve internal code quality and maintainability (readability, uniformity, understandability, ...) • Finding defects – improve quality regarding external aspects, especially correctness, but also find performance problems, security vulnerabilities, injected malware, ... • Learning / knowledge transfer – help in transferring knowledge about the codebase, solution approaches, expectations regarding quality, etc.; both to the reviewers as well as to the author • Increase sense of mutual responsibility – increase a sense of collective code ownership and solidarity • Finding better solutions – generate ideas for new and better solutions and ideas that transcend the specific code at hand • Complying with external guidelines – Code reviews are mandatory in some contexts, e.g., air traffic software
  • 8. 8 | DevOps Next 2020 perforce.com Standard Code Review Flow Linting/static code review is performed A new software build is created (CI) Unit testing is performed Developer submits pull/merge request Code review is created
  • 9. 9 | DevOps Next 2020 perforce.com Standard Code Review Flow Linting/static code review is performed A new software build is created (CI) Unit testing is performed Developer submits pull/merge request Code review is created
  • 10. 10 | DevOps Next 2020 perforce.com Benefits of Human-Based Code Reviews Transparency The entire team gets a better picture of what everyone is working on, their “style,” and even their level of productivity Underscoring and Promoting Shared Values Drives pride in work, making developers look forward to showing it to their colleagues Becoming More Cohesive Such reviews empower more experience developers to meet F2F with their peers, share best practices, praise, and improve coding activities. Building Self-Esteem for New Developers Code reviews can be a great way for everyone to learn more about coding.
  • 11. 11 | DevOps Next 2020 perforce.com Code Review Checklist Source: EvokeTechnologies
  • 12. 12 | DevOps Next 2020 perforce.com Code Review Best Practices Know What to Look for in a Code Review Build and Test – Before Review Don’t Review Code for Longer than 60 Minutes Check No More than 400 Lines at a Time Give Feedback that Helps (Not Hurts) Communicate Goals and Expectations Include Everyone in the Code Review Process Foster a Positive Culture Automate to Save Time 9 Code Review Best Practices: Perforce.com
  • 13. 13 | DevOps Next 2020 perforce.com • Coping with scale in Agile/DevOps processes (Time/Money) • Error Prone and subjective when done by humans (LGTM Syndrome) • Only 13% of pull requests are rejected due to technical reasons (Limitations) 1 • Often leads to personal conflicts and sensitivity by the recipient of feedback Human Code Reviews – Effective when done Effectively 1 McGill University, El Zanaty, et al.
  • 14. 14 | DevOps Next 2020 perforce.com Why is There a Need for AI/ML Automated Code Reviews?
  • 15. 15 | DevOps Next 2020 perforce.com Code Review Process using ML
  • 16. 16 | DevOps Next 2020 perforce.com Advancements in Code Reviews “Find your biggest slowdowns by pinpointing exactly where pull requests get stuck on the journey from open to deploy” – Code Climate 1. Automated Code Reviews 2. Code Coverage Analysis 3. Track progress against goals 4. Identify hot spots to focus
  • 17. 17 | DevOps Next 2020 perforce.com • Time to Open — The time between an engineer’s first commit and when they open a pull request in their version control system. The Velocity data shows that this metric has the highest correlation with cycle time. • Time to Review — The time between when a pull request is opened and when it receives its first review. Delays at this stage incentivize multi-tasking, so Code Climate says you’ll want to minimize the time a merge of pull request is left waiting for review. • Time to Approve — The time between when a pull request receives its first review and when it is approved, also known as the Code Review process. Clearly, as we discussed earlier, this is an area that needs analysis. You don’t want LGTM reviews, but you also don’t want people avoiding reviews or spending too long on them. • Time to Deploy — Any additional time following the merge or pull request approval, before the change reaches production. This seems like it might be hard to measure in some environments, but it is absolutely worth doing. Productivity Benefits of Automated Code Reviews with AI (Code Climate)
  • 18. 18 | DevOps Next 2020 perforce.com Advancements in Code Reviews
  • 19. 19 | DevOps Next 2020 perforce.com Advancements in Code Reviews • Amazon CodeGuru - Find your most expensive lines of code and improve code quality • Profiler helps developers find an application’s most expensive lines of code along with specific visualizations and recommendations on how to improve code to save money • Reviewer uses machine learning to identify critical issues and hard-to-find bugs during application development to improve code quality Open Pull Request Add Amazon CodeGuru Reviewer as reviewer Amazon CodeGuru Provides Intelligent Suggestions • Only supports Java (currently) • Reviewer can be done on a per repository or per pull request basis • All about willingness to pay!
  • 20. 20 | DevOps Next 2020 perforce.com • Lines are blurring between “traditional” static analysis and automated code reviews using AI/ML • Rules and patterns vs. semantic meaning • AI/ML in code reviews currently in the “early adopter” phase • Existing tools are already available, integrated into the CI/CD landscape • Be careful of the code review metrics you are tracking (unforeseen side effects) • There will always be value in humans performing code reviews Future of Automated Code Reviews
  • 21. 21 | DevOps Next 2020 perforce.com Classification of Advanced AI & ML Testing Tools COMING UP NEXT… TRACK Testing Tools The Rise and Benefits of Robotic Process Automation (RPA) TRACK Continuous Testing Moving to Modern DevOps with Fuzzing and ML TRACK DevOps & Code
  • 22. © 2020 Perforce Software, Inc. #devopsnext-devops-code LIVE SLACK Q&A