On Feb 7, 2008, at 3:55 PM, Java wrote: > Toh... compare un linguagigo di modellazione per specifiche hardware. > Per l'hardware va bene e per il software no?
E' chiara la differenza fra hardware e software con annessi e connessi? Chiedo perché se lo fosse, dovresti renderti conto che in primo luogo quello che va bene per il software non va bene per l'hardware (aggiungo che, anche se forse nei corsi universitari di Ing Sw non lo dicono spesso che ci sono *grosse* differenze anche nel modo in cui approcciare diversi tipi di progetti software, costi accettabili, defect rate accettabili, tipi di difetti accettabili, tipi e quantità di ritardo accettabile). In aggiunta il punto è che essere 'contrari' ad un dato linguaggio di modellizzazione voglia essere contrario a *tutti*, al concetto di 'modellizzazione' (ivi inclusa quella per ambiti non informatici etc etc etc). Tipicamente l'hardware ha in se e per se un livello di astrazione bassino; viceversa il software non necessariamente. Tipicamente Python ha un livello di astrazione non certamente più basso di UML (per quanto ovviamente un linguaggio di programmazione come Python è adattissimo per esprimere determinati tipi diagrammi UML, mentre altri no -- al che bisogna chiedersi se questi altri diagrammi sono o meno utili, per cui vedere se usare UML per quelli, se usare un altro formalismo oppure se si possono non fare e basta --). Poi si pongono problemi di *costo* di realizzazione. Un prototipo software è direttamente eseguibile (un diagramma UML no). *Costruire* dell'hardware, disfarlo, cambiarlo è costosissimo: con il software molto meno (specie se in un linguaggio in cui i cambiamenti sono facili). Tipicamente fai prima a scrivere un programma in verilog che a bruciarti un PLA (ammesso che il problema che stai risolvendo sia proprio semplice, se no con un PLA vai poco lontano). Etc etc. Comunque io fossi in te mi chiederei se pensi *davvero* che hw e sw siano la stessa cosa. > C'è una grossa azienda che produce software molto grosso e ha sedi di > tutto il mondo. Essa vende un programma fantastico che però quasi > subito > accusa dei malfunzionamenti. Fatti gli accertamenti del caso, si > scopre > che c'è un pezzo di codice che non si comporta a dovere. > Supponiamo poi che il progettista e lo sviluppatore siano persone > diverse (che non è una roba così poco diffusa come potreste pensare) > come fa il progettista a discolparsi? Con dei fogli di stampante su > cui > ha scritto degli appuntini per lo sviluppatore? O magari affermando > "che > lui gliel'aveva detto al programmatore come si faceva"? Scusa, ma questa è stra-fuffa. E' una situazione ipotetica in primo luogo, sufficientemente generica da voler dire tutto e nulla. Aggiungo che in un caso del genere, i primi a saltare sono quelli del reparto qualità (se esiste), poi quelli del testing (che evidentemente hanno cazzeggiato). Questo sempre nel mondo fantastico dei ruoli distinti e del 15 teste e un senior e 10 neolaureati. Comunque, tornando a noi, dopo averti ringraziato dei tuoi insights sul mondo del software, non posso che ribadire quello che ti fa notare anche Antonio. _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python