Perché l'industria IT non può realizzare progetti grandi e impeccabili rapidamente come in altri settori?
https://softwareengineering.stackexchange.com/questions/158640
-
04-11-2019 - |
Domanda
Dopo aver visto National Geographic's Serie di megastrutture, Sono rimasto sorpreso dalla velocità con cui i grandi progetti sono stati completati. Una volta che il lavoro preliminare (design, specifiche, ecc.) Viene eseguito su carta, La realizzazione stessa di enormi progetti richiede solo pochi anni o talvolta alcuni mesi.
Per esempio, Airbus A380 "Lanciato formalmente il 19 dicembre 2000" e "all'inizio di marzo 2005", l'aereo era già stato testato. Lo stesso vale per enormi petroliere, grattacieli, ecc.
Confrontando questo con i ritardi nel settore del software, non posso fare a meno di chiedermi perché la maggior parte dei progetti IT sia così lenti o più precisamente, perché non possono essere così veloci e impeccabili, alla stessa scala, date abbastanza persone?
Progetti come Airbus A380 presentano entrambi:
Grandi rischi imprevisti: sebbene questo non è il primo aereo costruito, spinge ancora i limiti della tecnologia e le cose che hanno funzionato bene per gli aerei di linea più piccoli potrebbero non funzionare per quello più grande a causa di vincoli fisici; Allo stesso modo, vengono utilizzate nuove tecnologie che non erano ancora usate, perché per esempio non erano disponibili nel 1969 quando Boeing 747 fu fatto.
Rischi relativi alle risorse umane e alla gestione in generale: le persone che smettono nel mezzo del progetto, incapacità di raggiungere una persona perché è in vacanza, errori umani ordinari, ecc.
Con quei rischi, Le persone ottengono ancora progetti come quei grandi aerei di linea in un periodo di tempo molto breve, E nonostante i ritardi della consegna, quei progetti hanno ancora enormemente successo e di alta qualità.
Quando si tratta di sviluppo del software, i progetti non sono quasi grandi e complicati come un aereo di linea (sia tecnicamente che in termini di gestione) e hanno rischi leggermente meno imprevisti dal mondo reale.
Ancora, La maggior parte dei progetti IT sono lenti e in ritardo, e l'aggiunta di più sviluppatori al progetto non è una soluzione (passare da un team di dieci sviluppatori a duemila a volte consentirà di consegnare il progetto più velocemente, a volte no, e talvolta danneggerà solo il progetto e aumenterà il rischio di non finirlo affatto).
Quelli che sono ancora consegnati possono spesso contenere molti bug, che richiedono servizi consecutivi e aggiornamenti regolari (Immagina "Installazione di aggiornamenti" su ogni Airbus A380 due volte a settimana per rattoppare i bug nel prodotto originale e impedire a un aeromobile di crash).
Come si possono spiegare tali differenze? È dovuto esclusivamente al fatto che l'industria dello sviluppo del software è troppo giovane per essere in grado di gestire migliaia di persone su un singolo progetto al fine di fornire prodotti su larga scala, quasi impeccabili molto velocemente?
Nessuna soluzione corretta