Skip to main content

Cos'è l'evoluzione del software?

L'evoluzione del software è un processo in base al quale un programma per computer commerciale richiede un aggiornamento continuo, una manutenzione e un miglioramento nel tempo per far sì che rimanga un prodotto praticabile.A questo proposito, l'evoluzione del software è guidata dalle esigenze aziendali e dei consumatori esterne che cambiano man mano che altri software e tecnologie avanzano attorno ad esso.Il fattore trainante alla base dell'evoluzione del software, tuttavia, è spesso interno incentrato sul team di ingegneria che ha prodotto il prodotto e la società che dipende dal suo successo per la redditività.L'Imperial College di Londra, in Inghilterra, ha promulgato per la prima volta tre leggi fondamentali dell'evoluzione del software nei primi anni '70, che da allora sono state ampliate a un totale di otto leggi a partire dal 2011. Sono stati anche fatti altri tentativi per quantificare il processo utilizzando modelli comeIl modello sequenziale lineare e il modello prototipo, ma il paradigma che sembra adattarsi meglio al software Entropy Life Cyles è quello di una simile a quello che ricorda l'evoluzione darwiniana per gli esseri viventi.

I fattori di base di base dietro l'architettura del software assomigliano alle stesse forze che motivano le imprese aAggiornare macchinari industriali o procedure operative standard man mano che la società ha bisogno di cambiamento.Man mano che il software viene sempre più utilizzato, diventano evidenti nuove esigenze o funzioni per esso che devono essere elaborate in rilasci successivi del prodotto.Tutto il software viene inoltre rilasciato con errori precedentemente sconosciuti, quindi le patch periodiche e le procedure di manutenzione devono essere eseguite per correggere situazioni come scappatoie di sicurezza che potrebbero rendere un'azienda vulnerabile all'attacco attraverso il software stesso.Una chiave per l'evoluzione del software è anche il fatto che tali programmi devono essere sempre più adattati a lavorare su diversi tipi di apparecchiature informatiche emergenti e all'interno di varie architetture del sistema operativo in modo che il programma abbia un fascino più ampio.

Soddisfare tutte queste esigenze è fondamentale per determinare se un programma software rimane praticabile e, poiché le risorse software sono un aspetto così cruciale dell'economia dell'informazione a partire dal 2011, l'evoluzione del software è diventata un aspetto fondamentale dell'adattamento e della crescita delle imprese.Meir Lehman, un informatico dell'Imperial College di Londra, è attribuita la creazione di leggi Lehmans, che ha definito succintamente il processo di evoluzione del software e guidato gli sviluppatori nel pensiero previsto della visualizzazione del software.Le leggi di Lehmans si basano sulla premessa che il software si evolve all'aumentare del feedback sulle sue prestazioni e che la sua inevitabile tendenza è quella di diventare sempre più complesse.

Lehman ha affermato che la natura dell'evoluzione del software rispecchia i cambiamenti naturali come la mutazione nelle mosche della frutta, la viache le città si espandono nel tempo e come le strutture militari migliorano in modo incrementale sui sistemi di armi.Le prime tre leggi del processo emulano queste tendenze nel dettaglio del continuo cambiamento, aumentando la complessità e ciò che è noto come grande evoluzione del programma.Il continuo cambiamento si riferisce al fatto che il programma deve essere adattato per soddisfare le attuali condizioni aziendali del mondo reale e ciò riflette una crescente complessità poiché il programma deve soddisfare una diversità in continua crescita di esigenze inaspettate.L'evoluzione del grande programma si riferisce alla necessità di correzione degli errori e alle nuove versioni del programma che sono legate inesorabilmente alle esigenze del mercato.

delle cinque leggi rimanenti nell'evoluzione del software, il numero quattro è stabilità organizzativa e si riferisce al fatto che ilLa crescita di un programma assume una vita propria indipendentemente dal livello di risorse intenzionalmente dedicate ad esso, e il numero cinque è la conservazione della familiarità che afferma che la crescita incrementale del programma è inevitabile.Il numero sei nelle otto leggi di Lehman sta continuando la crescita, che è necessaria per soddisfare la domanda dei consumatori, e il numero sette sta diminuendo la qualità, il che sottolinea il fatto che tutto il software alla fine affronta limiti alle funzionalità che non può soddisfare.La legge finale di Lehman per l'evoluzione del software è il sistema di feedback stesso, che unisce tutte le forze che incidono sulla fattibilità di un programma software per guidarlo rapidamente a un maggiore successo o inevitabile obsolescenza e morte.