SlideShare a Scribd company logo
Name : JAFAR MULLA
Class : SYBCA
Roll no : 2105014
Subject : Software
Engineering
Pair
Programming
● Introduction
● Benefits
● Roles
● Techniques
● Best Practices
● Challanges
● Emergence of Remote pair programming
● Conclusion
● Reference
Outline
● Introduction
Pair programming is a collaborative programming
technique where two programmers work together on one
computer. It has become popular due to its benefits,
including improved code quality, better collaboration, and
shared knowledge development.
● Benefits of Pair Programming
I. Improved code quality.
II. Better collaboration and communication.
III. Shared knowledge and skill development.
IV. Enhanced productivity.
v. Reduced technical debt.
● Driver-Navigator Technique:
One person writes the code (the driver) while the other
reviews the code and provides guidance (the navigator).
Roles can be switched regularly to prevent fatigue.
● Ping-Pong Technique:
One person writes a failing test case, and the partner
writes the code needed to make the test pass, then
writes a new failing test case. Roles switch regularly for
continuous feedback.
Techniques
● Strong-Style Pairing:
Both people actively work together on each line of code,
discussing and refining the code as they go, resulting in
high-quality code that is thoroughly reviewed and
optimized.
● Establish clear goals and expectations.
● Choose the right partner.
● Rotate pairs regularly.
● Take breaks as needed.
● Use appropriate tools and equipment.
Best Practices
● Communication barriers
● Different skill levels
● Time management
● Unequal participation
● Disagreements
Challanges
● The COVID-19 pandemic accelerated the adoption of remote
pair programming as many companies shifted to remote work.
● Remote pair programming allows developers to work
together in real-time from different locations, which can
increase collaboration and productivity.
● Some common remote pair programming tools include Zoom,
VS Code Live Share, CodePen, and Tandem
Emergence of Remote Pair
Programming
Pair programming is a valuable technique for improving
code quality, collaboration, and knowledge sharing
among developers. By following best practices and
overcoming common challenges, developers can
achieve these benefits and become more productive.
Thera are many highly successful projects build on Pair
Programming like, Microsoft Windows, Github, Ruby on
rails, Google Chrome, Google maps etc.
Conclusion
● https://www.techtarget.com/
● https://kb.vex.com/
● https://chisellabs.com/
References

More Related Content

Similar to Pair Programming in software engineering.pptx

Indy meetup#7 effective unit-testing-mule
Indy meetup#7 effective unit-testing-muleIndy meetup#7 effective unit-testing-mule
Indy meetup#7 effective unit-testing-mule
ikram_ahamed
 
java internshijnkjgkyhjytrctgjngp ppt.pdf
java internshijnkjgkyhjytrctgjngp ppt.pdfjava internshijnkjgkyhjytrctgjngp ppt.pdf
java internshijnkjgkyhjytrctgjngp ppt.pdf
ramkishun1711
 
No-Code vs. Low-Code vs. High-Code
No-Code vs. Low-Code vs. High-CodeNo-Code vs. Low-Code vs. High-Code
No-Code vs. Low-Code vs. High-Code
philipthomas428223
 
Why golang
Why golangWhy golang
Why golang
Why golangWhy golang
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
International Islamic University Islamabad
 
What Programming Language Do You Require for Your Next Project & How to Hire ...
What Programming Language Do You Require for Your Next Project & How to Hire ...What Programming Language Do You Require for Your Next Project & How to Hire ...
What Programming Language Do You Require for Your Next Project & How to Hire ...
Programmers.io
 
Six Steps to Conversation Driven Development
Six Steps to Conversation Driven DevelopmentSix Steps to Conversation Driven Development
Six Steps to Conversation Driven Development
Rasa Technologies
 
Golang Vs NodeJS: Which One To Choose For Your 2023
Golang Vs NodeJS: Which One To Choose For Your 2023Golang Vs NodeJS: Which One To Choose For Your 2023
Golang Vs NodeJS: Which One To Choose For Your 2023
SofiaCarter4
 
Clean application development tutorial
Clean application development tutorialClean application development tutorial
Clean application development tutorial
Adam Culp
 
presentation about internship project details
presentation about internship project detailspresentation about internship project details
presentation about internship project details
rajwork2
 
CODE REVIEW AND COOPERATIVE PAIR PROGRAMMING BEST PRACTICE
CODE REVIEW AND COOPERATIVE PAIR PROGRAMMING BEST PRACTICECODE REVIEW AND COOPERATIVE PAIR PROGRAMMING BEST PRACTICE
CODE REVIEW AND COOPERATIVE PAIR PROGRAMMING BEST PRACTICE
ijseajournal
 
[2015/2016] Mobile thinking
[2015/2016] Mobile thinking[2015/2016] Mobile thinking
[2015/2016] Mobile thinking
Ivano Malavolta
 
How to Become a Front-End Developer? Step-by-Step Guide by Careervira
How to Become a Front-End Developer? Step-by-Step Guide by CareerviraHow to Become a Front-End Developer? Step-by-Step Guide by Careervira
How to Become a Front-End Developer? Step-by-Step Guide by Careervira
Careervira
 
Software development. xp, agile, etc.
Software development. xp, agile, etc.Software development. xp, agile, etc.
Software development. xp, agile, etc.
Phil Rukin
 
PMI-ACP Lesson 06 Quality
PMI-ACP Lesson 06 QualityPMI-ACP Lesson 06 Quality
PMI-ACP Lesson 06 Quality
Thanh Nguyen
 
How Much Does It Cost To Hire Golang Developer.pdf
How Much Does It Cost To Hire Golang Developer.pdfHow Much Does It Cost To Hire Golang Developer.pdf
How Much Does It Cost To Hire Golang Developer.pdf
Katy Slemon
 
Portable Code Compiler
Portable Code CompilerPortable Code Compiler
Portable Code Compiler
ijtsrd
 
Copy of Seven Peaks Team Profiles 2023 - Mobile.pptx
Copy of Seven Peaks Team Profiles 2023 - Mobile.pptxCopy of Seven Peaks Team Profiles 2023 - Mobile.pptx
Copy of Seven Peaks Team Profiles 2023 - Mobile.pptx
MohammedUD
 
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
 

Similar to Pair Programming in software engineering.pptx (20)

Indy meetup#7 effective unit-testing-mule
Indy meetup#7 effective unit-testing-muleIndy meetup#7 effective unit-testing-mule
Indy meetup#7 effective unit-testing-mule
 
java internshijnkjgkyhjytrctgjngp ppt.pdf
java internshijnkjgkyhjytrctgjngp ppt.pdfjava internshijnkjgkyhjytrctgjngp ppt.pdf
java internshijnkjgkyhjytrctgjngp ppt.pdf
 
No-Code vs. Low-Code vs. High-Code
No-Code vs. Low-Code vs. High-CodeNo-Code vs. Low-Code vs. High-Code
No-Code vs. Low-Code vs. High-Code
 
Why golang
Why golangWhy golang
Why golang
 
Why golang
Why golangWhy golang
Why golang
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
What Programming Language Do You Require for Your Next Project & How to Hire ...
What Programming Language Do You Require for Your Next Project & How to Hire ...What Programming Language Do You Require for Your Next Project & How to Hire ...
What Programming Language Do You Require for Your Next Project & How to Hire ...
 
Six Steps to Conversation Driven Development
Six Steps to Conversation Driven DevelopmentSix Steps to Conversation Driven Development
Six Steps to Conversation Driven Development
 
Golang Vs NodeJS: Which One To Choose For Your 2023
Golang Vs NodeJS: Which One To Choose For Your 2023Golang Vs NodeJS: Which One To Choose For Your 2023
Golang Vs NodeJS: Which One To Choose For Your 2023
 
Clean application development tutorial
Clean application development tutorialClean application development tutorial
Clean application development tutorial
 
presentation about internship project details
presentation about internship project detailspresentation about internship project details
presentation about internship project details
 
CODE REVIEW AND COOPERATIVE PAIR PROGRAMMING BEST PRACTICE
CODE REVIEW AND COOPERATIVE PAIR PROGRAMMING BEST PRACTICECODE REVIEW AND COOPERATIVE PAIR PROGRAMMING BEST PRACTICE
CODE REVIEW AND COOPERATIVE PAIR PROGRAMMING BEST PRACTICE
 
[2015/2016] Mobile thinking
[2015/2016] Mobile thinking[2015/2016] Mobile thinking
[2015/2016] Mobile thinking
 
How to Become a Front-End Developer? Step-by-Step Guide by Careervira
How to Become a Front-End Developer? Step-by-Step Guide by CareerviraHow to Become a Front-End Developer? Step-by-Step Guide by Careervira
How to Become a Front-End Developer? Step-by-Step Guide by Careervira
 
Software development. xp, agile, etc.
Software development. xp, agile, etc.Software development. xp, agile, etc.
Software development. xp, agile, etc.
 
PMI-ACP Lesson 06 Quality
PMI-ACP Lesson 06 QualityPMI-ACP Lesson 06 Quality
PMI-ACP Lesson 06 Quality
 
How Much Does It Cost To Hire Golang Developer.pdf
How Much Does It Cost To Hire Golang Developer.pdfHow Much Does It Cost To Hire Golang Developer.pdf
How Much Does It Cost To Hire Golang Developer.pdf
 
Portable Code Compiler
Portable Code CompilerPortable Code Compiler
Portable Code Compiler
 
Copy of Seven Peaks Team Profiles 2023 - Mobile.pptx
Copy of Seven Peaks Team Profiles 2023 - Mobile.pptxCopy of Seven Peaks Team Profiles 2023 - Mobile.pptx
Copy of Seven Peaks Team Profiles 2023 - Mobile.pptx
 
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
 

Recently uploaded

Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
Philip Schwarz
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
kalichargn70th171
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
mz5nrf0n
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
pavan998932
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 

Recently uploaded (20)

Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 

Pair Programming in software engineering.pptx

  • 1. Name : JAFAR MULLA Class : SYBCA Roll no : 2105014 Subject : Software Engineering Pair Programming
  • 2. ● Introduction ● Benefits ● Roles ● Techniques ● Best Practices ● Challanges ● Emergence of Remote pair programming ● Conclusion ● Reference Outline
  • 3. ● Introduction Pair programming is a collaborative programming technique where two programmers work together on one computer. It has become popular due to its benefits, including improved code quality, better collaboration, and shared knowledge development. ● Benefits of Pair Programming I. Improved code quality. II. Better collaboration and communication. III. Shared knowledge and skill development. IV. Enhanced productivity. v. Reduced technical debt.
  • 4.
  • 5. ● Driver-Navigator Technique: One person writes the code (the driver) while the other reviews the code and provides guidance (the navigator). Roles can be switched regularly to prevent fatigue. ● Ping-Pong Technique: One person writes a failing test case, and the partner writes the code needed to make the test pass, then writes a new failing test case. Roles switch regularly for continuous feedback. Techniques
  • 6. ● Strong-Style Pairing: Both people actively work together on each line of code, discussing and refining the code as they go, resulting in high-quality code that is thoroughly reviewed and optimized.
  • 7. ● Establish clear goals and expectations. ● Choose the right partner. ● Rotate pairs regularly. ● Take breaks as needed. ● Use appropriate tools and equipment. Best Practices
  • 8. ● Communication barriers ● Different skill levels ● Time management ● Unequal participation ● Disagreements Challanges
  • 9. ● The COVID-19 pandemic accelerated the adoption of remote pair programming as many companies shifted to remote work. ● Remote pair programming allows developers to work together in real-time from different locations, which can increase collaboration and productivity. ● Some common remote pair programming tools include Zoom, VS Code Live Share, CodePen, and Tandem Emergence of Remote Pair Programming
  • 10. Pair programming is a valuable technique for improving code quality, collaboration, and knowledge sharing among developers. By following best practices and overcoming common challenges, developers can achieve these benefits and become more productive. Thera are many highly successful projects build on Pair Programming like, Microsoft Windows, Github, Ruby on rails, Google Chrome, Google maps etc. Conclusion