[[File:Pair programming 1.jpg|thumb| 200px|ProgrammazioneDue dicolleghi che programmano in coppia (2007)]] ▼
{{spostare|Pair programming|Non c'è nessuna evidenza che la denominazione "programmazione di coppia" sia attestata nella letteratura in italiano. Persino su google una ricerca precisa rimanda a due sole pagine non classificabili come "fonti" (viceversa, una ricerca di pagine in italiano con l'espressione "pair programming" produce numerosi risultati, fra cui diversi di natura accademica). A mio parere l'espressione "programmazione di coppia" dovrebbe essere proposta solo come traduzione esplicativa ma non indicata come effettiva denominazione italiana.}}
▲[[File:Pair programming 1.jpg|thumb|200px|Programmazione di coppia]]
IlLa '''pairprogrammazione programmingin coppia''', (letteralmentemeglio "programmazionenota income coppia")'''''pair programming''''', è una tecnica [[metodologia agile|agiledi sviluppo del software]] di tipologia [[sviluppometodologia del softwareagile|agile]] nella quale due programmatori lavorano insieme asulla unastessa postazione di lavoro.<ref name=":1">{{Cita Unopubblicazione|nome=L.|cognome=Williams|data=2001|titolo=Integrating pair programming into a software development process|rivista=Proceedings 14th Conference on Software Engineering Education and Training. 'In search of a software engineering profession' (Cat. No.PR01059)|editore=IEEE Comput. Soc|pp=27-36|accesso=2023-01-23|doi=10.1109/CSEE.2001.913816|url=http://ieeexplore.ieee.org/document/913816/}}</ref><ref name=":0">{{Cita web|url=https://www.codecademy.com/resources/blog/what-is-pair-programming/|titolo=What Is Pair Programming?|data=2021-09-24|lingua=en|accesso=2023-01-23}}</ref> deiI due, indicatosolitamente comehanno due ruoli distinti che possono scambiarsi: uno, detto "conducente" ("''driver"''), scriveha il compito di scrivere il codice;, mentre l'altro, detto "osservatore" ("''observer"'') o "navigatore" ("''navigator"''), svolge unè ruoloincaricato di supervisionesupervisionare e dicorreggere revisioneil simultaneacodice delman codicemano che viene scritto.<ref name=":1" /><ref name=":0" /> Il conducente ha l'obiettivo principale di portare a termine una soluzione funzionante del problema in considerazione, mentre al navigatore è lasciato il compito di segnalare errori del conducente o proporre strategie alternative di soluzione.<ref name=":1" />
Il pair programming è in genere applicato insieme ad altri concetti tipici delle metodologie agili e dell'''[[extreme programming]]''. Per esempio, l'attività di sviluppo viene in genere suddivisa in brevi cicli di sviluppo vincolati temporalmente (''[[timeboxing]]''), e ciascun ciclo si conclude con un rilascio del codice sviluppato ([[integrazione continua]]). In molti casi, i due programmatori si scambiano di ruolo al termine di ciascun ciclo di sviluppo.
==Voci correlateNote ==
<references />
== Voci correlate ==
* [[Metodologia di sviluppo del software]]
* [[Metodologia agile]]
* [[Extreme programming]]
== Altri progetti ==
{{interprogetto|preposizione=sulla}}
[[Categoria:Metodologie di sviluppo]] ▼
▲[[Categoria: MetodologieMetodi di sviluppo software]]
[[ar:البرمجة الزوجية]]
[[bg:Програмиране по двойки]]
[[da:Parprogrammering]]
[[de:Paarprogrammierung]]
[[en:Pair programming]]
[[es:Programación en pareja]]
[[fa:برنامهنویسی دونفره]]
[[fr:Programmation en binôme]]
[[he:תכנות בזוגות]]
[[ja:ペアプログラミング]]
[[lt:Programavimas poromis]]
[[nl:Pair programming]]
[[pt:Programação pareada]]
[[ru:Парное программирование]]
[[uk:Парне програмування]]
[[vi:Lập trình đôi]]
[[zh:结对编程]]
|