On Feb 8, 1:19 pm, lowcost <***@invalid.com> wrote:
> il virgolettato che riporti non corrisponde a quello che ho scritto.
Non ho riportato paro paro quello che hai detto ma il senso.
> io ho scritto che "se ogni singola funzione viene testata al 100%, con
Cosa che non e' possibile fare con qualsiasi funzione e anche cosi'
non tiene conto delle necessita' del sistema, che puo' dare o
richiedere valori che la funzione non e' progettata per fare.
Ovvero, il fatto che una funzione sia testata per ogni possibile
condizione (cosa gia' non applicabile nel mondo reale) non implica la
funzione sia esente da bachi. Guarda che non si parla solo di bachi a
livello formale.
UNa funzione puo' essere formalmente corretta e contenere bachi di
progettazione.
Sempre bacata rimane.
Ovvero quel test, come gia' detto, non garantisce la funzione sia
esente da bachi.
> e il fatto incontrovertibile che "esistono intorno a noi apparecchi
> safety critical che funzionano bene, senza farsi notare, senza difetti,
Provo a rispiegare.
Il fatto che non si manifestino bachi non e' assolutamente prova
della loro assenza.
Si adottano policy di uso e limiti nell'interfaccia per "ridurre" il
campo di funzionamento, limitando cosi' la possibilita' che il SW
operi in zone non testate o critiche. Ma devi sempre assumere il SW
possa avere problemi.
> senza causare danni o perdita di vite umane" e' la dimostrazione che e'
Tanto per rimanere nel tema del post, ad esempio la Prius (uno dei
modelli incriminati) e' in giro da un bel po' di anni e solo ora salta
fuori questo "problema".
Problema, nota bene, che non e' pandemico. Ovvero di proprietari di
Prius che hanno sperimentato il problema, ce ne saranno una decina si
e no su "milioni" di vetture.
Fino a un paio di settimane fa saresti stato uno dei tanti a dire che
"il SW delle Prius non ha bachi" ... e invece.
La soluzione finora adottata da Toyota e' di cambiare il pedale
dell'acceleratore, ma non perche' sia un problema "meccanico".
Cambiano quello per dare un migliore feedback al sensore controllato
dal pedale.
La modifica consiste nel montare una molla extra per garantire un
migliore feedback .. ovvero agiscono sulle condizioni di contorno, non
cambiano il SW.
> possibile scrivere software senza difetti, "costruito sulla base di
> normative, che definiscono esattamente i metodi per ottenere software
> sicuro" ; "in modo indipendente dal linguaggio" nel senso che non sono
> necessari linguaggi specializzati.
Questa, perdonami, ma e' la tipica frase di un commerciale.
La realta' se ne fotte dei regolamenti e normative, ovvero ci sono
sempre troppe variabili e incognite perche' una normativa "garantisca"
una qualsiasi cosa.
E ci lavoro ogni giorno con normative. C'e' sempre spazio per
interpretazione.
Prendi una normativa, prendi 3 persone e avrai 3 interpretazioni.
> beh, se scrivi software, stai ammettendo che tutti i tuoi software sono
> bacati.
Scrivo software da 25 anni e non sono cosi' stupido o arrogante
(spesso le due cose vanno di pari passo) da dire che non commetto mai
errori.
Si', mi capita di inserire bachi nel codice, come TUTTI su questo
pianeta.
E spendo un bel po' di tempo per cercarli e risolverli.
Non esiste l'essere perfetto e superiore, nemmeno se segue alla
lettera qualche normativa di qualita'.
E nella mia carriera non ho mai (MAI) trovato qualcuno che non facesse
errori.
Mai.
> forse non sai che esistono software certificati: e' un organismo
> notificato indipendente (ed ente omologante) che lo analizza e lo
> certifica.
Come no.
Hai mai omologato qualche sw ? Io si', spesso. Lasciamo perdere va',
che gli enti che devono certificare sono fatti da esseri umani, mica
da superuomini.
Hai idea delle volte che un SW certificato nella realta' non
funziona ?
E' pratica comune in tutto il mondo (ho certificato in tutto il mondo)
avere codici diversi, uno certificato e uno che funziona davvero.
Tra il dire e il fare c'e' di mezzo .. di tutto :)
> devi avere qualche problema con i novelli_ingenui e con i commerciali.
Indubbiamente. Mai fatto mistero.
> > Un baco HA per definizione effetti negativi, ovvero effetti non
> > previsti nel progetto del sistema.
> per definizione di chi ?
Evidentemente non la tua.
Per te i bachi sono una feature ? O un problema ?
Per me e tutti quelli che conosco (nel nostro campo lavorativo), un
baco e' un problema, un comportamento non previsto e deleterio.
Un difetto, un problema.
Se per ne non e' cosi', mi dai gentilmente la tua definizione di
baco ?
> "e' come se non ci fosse" e' diverso da "non c'e' ".
Uhm ok ... e allora ?
> un software pieno zeppo di bachi "dormienti" (nessun effetto negativo)
> e' completamente diverso da un software senza bachi, non credi ?
Concordo, ma rimane il fatto che un SW con bachi dormienti NON e'
esente da bachi, ovvero non puoi assumere sia "sicuro".
C'e' il rischio il baco si manifesti, in genere quando meno te lo
aspetti, per definizione (mia, contento ?).
> > Sei un mio cliente ?
> direi di no, e a questo punto non vorrei esserlo.
Ditto. Di clienti come te che vivono nel mondo dei sogni ne faccio a
meno, ne ho gia' troppi :-)
Noi si lavora nella realta' e si risolvono problemi reali, non
nascondendosi dietro un dito o una definizione.
Niente fuffaware dalle mie parti e abbastanza umilta' da ammettere che
si sbaglia.
> > ????
> "aiuta e non poco" = aiuta tanto = tanto ma non tutto = manca poco.
Non mi torna il significato rispetto la discussione .. va beh, lasa'
sta'
> tu hai detto che "l'unica garanzia [...] e' l'esperienza dello
[...]
> nonostante tutto questo, non esistono software senza bachi; insomma
> dici che non esistono progettisti all' altezza della situazione.
Per nulla.
Ho detto che l'unica garanzia (condizione necessaria MA NON
sufficiente) e' l'esperienza e bravura del progettista.
Non ho assolutamente detto che non esistono progettisti all'altezza
della situazione.
Se applichi le normative come interpreti quello che scrivo, stiamo
freschi.
> io invece dico che un buon progettista (si, ne esistono) ha gli
> strumenti per scrivere software senza bachi.
Sicuramente sono troppo attento alla realta', non ho mai, MAI,
riscontrato quanto tu dici.
Anche perche' nel mondo reale servono risultati non in tempo infinito.
Puoi avere tutti gli strumenti del mondo, ma in genere manca sempre il
tempo.
Avendo strumenti adatti, specifiche chiare e tempo infinito, ammetto
che FORSE si potrebbe produrre un SW senza bachi.
Ma anche solo avere UNA delle tre condizioni soddisfatte (nel mondo
reale, non in quello immaginario) e' un terno al lotto.
Ergo produrre SW senza bachi lo ritengo altamente improbabile.
> se per "tua" intendi la "mia", ci ho provato qualche volta, ma spesso
> l'interlocutore non capisce, ed ho la sgradevolissima sensazione di
> essere inadeguato.
Andiamo bene :)
C'ya
STeve