Code and fix: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Botcrux (discussione | contributi)
m Bot: Aggiungo template {{interprogetto}}
Nessun oggetto della modifica
 
(5 versioni intermedie di 3 utenti non mostrate)
Riga 1:
Nell'ambito dell'[[Ingegneria del software]] il termine '''code and fix''' esprime una pratica molto comune nello sviluppo del software, ovvero il metodo di cominciare a sviluppare una applicazione scrivendo codice informatico, correggendo eventuali errori e tornando a scrivere. Il code and fix non è considerato un vero e proprio [[Metodologia di sviluppo del software|modello di sviluppo del software]], perché è un modello di sviluppo privo di alcuna pianificazione.
{{W|informatica|maggio 2010}}
 
EssoIl code and fix è assimilabile ad un [[Ciclo di vita del software#Modelli iterativi|modello iterativo]] che si alterna in due fasi, ovvero scrittura del codice e correzione errori, ed è quasi totalmente privo di organizzazione del processo. Infatti il lavoro degli sviluppatori inizia senza che essi abbiano un'idea dettagliata di cosa il programma debba fare e di come debba essere implementato<ref name=lenzmo03>Gunther Lenz, Thomas Moeller, .NET-A Complete Development Cycle, Addison-Wesley Professional, 2003, pp.26-27</ref>. Si tratta, di conseguenza, di un modello in cui il software si adatta progressivamente a ciò che il suo progettista desidera. Sostanzialmente l’obiettivol'obiettivo è capire approssimativamente quale sarà la risposta finale del software e di provare ripetutamente a generare codice e correggere gli errori: se la complessità è bassa e l’esperienzal'esperienza del programmatore è buona, allora l’applicazionel'applicazione verrà prodotta in breve tempo.
Il '''Code and Fix''' è una pratica molto comune nello sviluppo del software, non considerato un vero e proprio [[Metodologia di sviluppo del software|modello di sviluppo del software]].
 
Esso è assimilabile ad un [[Ciclo di vita del software#Modelli iterativi|modello iterativo]] che si alterna in due fasi ed è quasi totalmente privo di organizzazione del processo. Infatti il lavoro degli sviluppatori inizia senza che essi abbiano un'idea dettagliata di cosa il programma debba fare e di come debba essere implementato<ref name=lenzmo03>Gunther Lenz, Thomas Moeller, .NET-A Complete Development Cycle, Addison-Wesley Professional, 2003, pp.26-27</ref>. Si tratta, di conseguenza, di un modello in cui il software si adatta progressivamente a ciò che il suo progettista desidera. Sostanzialmente l’obiettivo è capire approssimativamente quale sarà la risposta finale del software e di provare ripetutamente a generare codice e correggere gli errori: se la complessità è bassa e l’esperienza del programmatore è buona, allora l’applicazione verrà prodotta in breve tempo.
 
==Fasi==
LaNella pratica code and fix, la prima fase è essenzialmente di [[Programmazione (informatica)|codifica]] (''code''), a volte preceduta da qualche [[Unified Modeling Language#I diagrammi classici .28UML 1.x.29|diagramma]] molto elementare per schematizzare la complessità del problema ed una primordiale soluzione;
{{vedi anche|Ciclo di vita del software#Fasi del ciclo di vita}}
La prima fase è essenzialmente di [[Programmazione (informatica)|codifica]] (''code''), a volte preceduta da qualche [[Unified Modeling Language#I diagrammi classici .28UML 1.x.29|diagramma]] molto elementare per schematizzare la complessità del problema ed una primordiale soluzione;
successivamente si passa alla fase di mini test che volge ad accertare se il programma funziona correttamente e soddisfa i requisiti (quasi certamente non specificati esplicitamente in qualche documento). In caso contrario si ritorna a codificare per fissare (''fix'') eventuali errori o disturbi.
L’ultimoL'ultimo passo prevede l’uscital'uscita nel caso in cui il programma soddisfi i requisiti.
 
==Contesti in cui viene utilizzato==
Line 25 ⟶ 22:
==Bibliografia==
*{{en}} Gunther Lenz, Thomas Moeller, ''.NET-A Complete Development Cycle'', Addison-Wesley Professional, 2003. ISBN 978-0-321-16882-5
 
== Altri progetti ==
{{interprogetto}}
 
{{portale|informatica}}