Pair programming: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
No2 (discussione | contributi) {{categorizzare|informatica}} |
m Bot: numeri di pagina nei template citazione |
||
(54 versioni intermedie di 32 utenti non mostrate) | |||
Riga 1:
[[File:Pair programming 1.jpg|thumb|Due colleghi che programmano in coppia (2007)]]
{{stub|informatica}}▼
La '''programmazione in coppia''', meglio nota come '''''pair programming''''', è una [[metodologia di sviluppo del software]] di tipologia [[metodologia agile|agile]] nella quale due programmatori lavorano insieme sulla stessa postazione di lavoro.<ref name=":1">{{Cita pubblicazione|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> I due solitamente hanno due ruoli distinti che possono scambiarsi: uno, detto "conducente" (''driver''), ha il compito di scrivere il codice, mentre l'altro, detto "osservatore" (''observer'') o "navigatore" (''navigator''), è incaricato di supervisionare e correggere il codice man mano 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.
== Note ==
<references />
== Voci correlate ==
* [[Metodologia di sviluppo del software]]
* [[Metodologia agile]]
== Altri progetti ==
{{interprogetto|preposizione=sulla}}
[[Categoria:Metodi di sviluppo software]]
▲[[en:Pair programming]]
|