Sono parole d'ordine che significano cose diverse per persone diverse. Mi aspetto che in pratica significhi poco, e varieranno molto in base a chi parli.
Detto questo, come esercizio di confronto e contrasto:
-
Ingegneria del software spinge per la qualità del codice disponendo di specifiche, riutilizzando componenti standardizzati ben noti e disponendo di processi che guidano il lavoro degli sviluppatori.
-
L'artigianalità del software spinge per la qualità del codice affidandosi all'orgoglio del programmatore che realizza il software, utilizzando più componenti personalizzati personalizzati per l'attività in corso e avendo un feedback cliente stretto per guidare il lavoro degli sviluppatori.