Prospettive

5 problemi etici nello sviluppo software

Ma gli sviluppatori ce l’hanno un’etica? Le decisioni nel corso dello sviluppo di un software possono avere un impatto enorme, nel bene e nel male. Ecco perché, man mano che il software si radica in ogni aspetto dell’esperienza umana, per gli sviluppatori cresce l’importanza del tema etico

Pubblicato il 13 Apr 2021

sviluppo software

La pratica dell’etica non è mai stata una parte dello sviluppo del software in informatica. Però il software non ha sempre avuto un impatto diretto sulla vita quotidiana delle persone, come invece avviene oggi, e il ritmo di sviluppo era lento. Nella società attuale, le persone incontrano il software in tutti gli aspetti della vita e i big data e l’analisi dei dati hanno conseguenze reali per gli individui.

Sebbene gli sviluppatori di software lavorino principalmente dietro le quinte nelle aziende, le loro decisioni nel corso di un progetto possono avere un impatto enorme nel mondo, nel bene e nel male. Tutti coloro che operano in questo ambito dovrebbero essere consapevoli delle possibili questioni sociali ed etiche legate allo sviluppo del software. Di seguito parliamo di cinque problemi etici, i più ricorrenti, e di come sono stati affrontati in alcuni casi.

Il design avvincente

Ogni sviluppatore desidera creare applicazioni che le persone amino usare. Il problema è che in questo modo si creano app che le persone amano solo perché hanno un buono design UX, cioè sono sviluppate pensando esclusivamente alla user experience. Questo atteggiamento è molto forte nel caso delle piattaforme digitali, come i social media. Secondo l’americano Tristan Harris, ex filosofo di prodotto in Google e fondatore del Center for Humane Technology, “finché le società di social media trarranno profitto da indignazione, confusione, dipendenza e depressione, il nostro benessere e la democrazia saranno a rischio”. Harris, ricordiamo, è diventato virale per via di una relazione sul design tecnologico che crea dipendenza e sulla responsabilità morale delle aziende nella società. In quel periodo lavorava in Google.

Trovare un equilibrio etico tra i prodotti che i consumatori amano e i prodotti che catturano la loro attenzione è più un’arte che una scienza. Per metter in atto tale etica, nello sviluppo e negli aggiornamenti del software in informatica, si potrebbe cominciare da alcune domande:

  • a chi giova?
  • come gli utenti ne traggono vantaggio?
  • in che misura gli utenti ne traggono vantaggio?
  • esistono garanzie per la salute e la sanità mentale degli utenti?
  • quanto sono evidenti la monetizzazione e la raccolta e l’utilizzo dei dati dei clienti, anche tramite intelligenza artificiale e machine learning (ML)? Quanto sono trasparenti queste pratiche?

David K. Bain, vicepresidente degli standard per la Telecommunications Industry Association, esplora il tema del design confrontando due app popolari come Duolingo e TikTok. Entrambe le app generano crescita ed entrate per i loro creatori, ma la natura del loro vantaggio per gli utenti è diversa. I clienti di Duolingo acquisiscono competenze linguistiche e vengono sfidati con attività che migliorano la crescita neuronale e la plasticità cerebrale. Gli utenti di TikTok ricevono conoscenza culturale e gratificazione immediata con contenuti video che inondano il cervello di neurotrasmettitori inebrianti.

Le due app hanno atteggiamenti diversi verso i limiti di utilizzo intesi a salvaguardarsi dall’attaccamento che crea dipendenza. Duolingo incoraggia la coerenza e sostiene con forza che il suo utilizzo è collegato a curve di apprendimento ottimizzate: “afferra” gli utenti e li invita a soddisfare la loro quota giornaliera per mantenere una serie di prestazioni ma, una volta terminate le attività quotidiane, Duolingo “libera” l’utente. Al contrario, TikTok invita gli utenti a rimanere presentando un buffet illimitato di materiali di consumo.

Le app spesso includono manipolazione, metodi di monetizzazione, raccolta dei dati degli utenti per uso aziendale e algoritmi di apprendimento automatico per migliorare l’app: trasparenza è ciò che gli utenti effettivamente sanno e comprendono di queste pratiche. Esaminando questo aspetto etico nelle due app precedenti, Bain afferma: “Gli utenti di Duolingo sono chiaramente vittime volontarie di un regime quotidiano imposto, ma sicuramente non sono consapevoli del fatto che annunci e dati di utilizzo si collegano a un ecosistema pubblicitario molto più ampio. Per quanto riguarda gli utenti di TikTok, specialmente i più giovani, sono abbastanza sicuro che siano in gran parte e felicemente ignari dei metodi e dei risultati delle loro dipendenze”.

La proprietà (discutibile) dei dati personali

L’elaborazione basata sull’intelligenza artificiale di dati biometrici e altri dati contestuali sui clienti è aumentata in modo esponenziale con l’evoluzione di dispositivi e software. Un software può profilare gli utenti e prevedere i comportamenti a un livello di dettaglio spaventoso. La questione etica è: cosa fare con quei dati? Il dilemma riguarda gli sviluppatori di ogni tipo di attività, non i giganti dei social media che fanno notizia.

Un algoritmo dirige la raccolta delle informazioni e la creazione di un profilo, ma le azioni successive sono intenzionali e lo sviluppatore è normalmente consapevole del potere di questi dati nel contesto. Ora, una delle cause profonde delle preoccupazioni etiche riguarda il modo in cui un’azienda genera entrate e incentiva sviluppatori e manager aziendali. In molti casi, le aziende considerano i dati personali degli utenti come una valuta preziosa e desiderano monetizzare i dati che archiviano. Va da sé che questi fattori potrebbero indurre queste organizzazioni a condividere i dati degli utenti in modo non etico.

Gli sviluppatori sono sempre chiamati a prendere una decisione difficile in merito ai dati personali nella progettazione del software. Possono creare sistemi per sfruttare i dati degli utenti con la consapevolezza che la responsabilità ricade sull’organizzazione e non sul singolo, oppure possono sollevare dubbi – a costo di affrontare potenziali penalizzazioni – e mettere in discussione gli obiettivi del progetto. L’ideale sarebbe che la cultura moderna delle aziende tecnologiche consentisse agli sviluppatori di avanzare problemi di proprietà dei dati personali senza avere timore di ritorsioni.

Questo tipo di preoccupazioni etiche ha animato alcune discussioni in Vidyo, che poi ha deciso di non offrire un servizio gratuito: “Abbiamo analizzato le implicazioni e preferito sostenere le nostre operazioni vendendo il servizio invece dei dati degli utenti, ed evitare di sottoporre gli sviluppatori a scelte difficili ” ha affermato Miguel Lopes, vicepresidente della gestione della linea di prodotti. L’azienda ha anche scoperto che la trasparenza, internamente, è un fattore cruciale: “gli sviluppatori dovrebbero essere consapevoli dell’intero contesto del progetto su cui stanno lavorando, non solo del modulo che devono completare”.

Le aziende potrebbero rendere più facile agli sviluppatori sollevare dei dubbi. A questo scopo, il dipartimento delle risorse umane potrebbe creare dei meccanismi in cui gli sviluppatori possano esprimere le loro preoccupazioni etiche senza il timore di ritorsioni, per esempio una hotline anonima. In questo modo l’organizzazione potrebbe identificare in modo indipendente il caso e verificare se viola le politiche sulla privacy, legali o etiche.

Bias algoritmico

La tecnologia può amplificare i pregiudizi esistenti. Secondo Spencer Lentz, responsabile AI e digital customer experience presso la società di consulenza Capgemini, “uno dei problemi etici più urgenti che devono affrontare gli sviluppatori odierni è il pregiudizio”.

Il bias algoritmico, speculare a quello cognitivo, spesso entra nel sistema senza essere rilevato, per questo motivo Lentz lo paragona a un virus. I computer non hanno una struttura morale intrinseca e il software può imparare solo dalla formazione che gli viene fornita. Pertanto, sviluppatori e data scientist devono eliminare i pregiudizi dai dati di addestramento e dagli algoritmi che creano.

Dal punto di vista di uno sviluppatore, i pregiudizi spesso sono nell’eliminazione di opzioni per i motivi sbagliati. Le ricerche negli ultimi anni mostrano come i pregiudizi all’interno dei sistemi software possano perpetuare il razzismo sistemico contro popolazioni specifiche, causando in questo modo la perdita di opportunità di sviluppo, il peggioramento dell’assistenza medica e l’aumento del tasso di criminalità. Ad esempio, nel libro Race After Technology, Ruha Benjamin ha sollevato alcune preoccupazioni su un caso in cui gli sviluppatori non sono riusciti a includere le voci dei neri nell’addestramento degli algoritmi di un software di riconoscimento vocale AI, ritenendo che le persone di colore utilizzerebbero di meno l’app.

Anaconda, una piattaforma di data science, conduce lo “State of Data Science Survey” e nel 2020 ha scoperto che il 27% dei professionisti dei dati riteneva che il problema più grande da affrontare in AI e ML fosse l’impatto sociale derivante da pregiudizi nei dati e nei modelli. “Per ridurre la distorsione nei dati e nei modelli, i professionisti devono essere intenzionali sul loro lavoro, ponendo domande del tipo ‘Come sono stati raccolti questi dati?’ e ‘Quali ipotesi sono state raccolte con essi?’, ha affermato Peter Wang, CEO e co-fondatore di Anaconda. “Se non sai come sono stati raccolti i dati che hanno addestrato i tuoi modelli e in quali condizioni, i tuoi modelli potrebbero inavvertitamente perpetuare i pregiudizi nei loro risultati”.

Dirigenti, data scientist e chi si occupa di sviluppo software dovrebbero contribuire a creare una cultura organizzativa che stabilisca linee guida su etica e informatica e responsabilizzi le persone a qualsiasi livello dell’azienda, spingendole ad esprimersi se vedono qualcosa di problematico. “Queste tecnologie sono ancora relativamente nuove nel contesto aziendale e tutti trarremmo vantaggio da standard etici derivanti ​​da una intelligenza collettiva, piuttosto che lasciare che ogni individuo o organizzazione decida da solo”, ha aggiunto Wang.

Sicurezza debole

La sicurezza delle applicazioni sta diventando sempre più importante poiché il software gioca un ruolo più importante nei nostri ambienti online e offline. Gli sviluppatori spesso affrontano la sicurezza informatica solo dopo il rilascio del codice, piuttosto che durante la creazione del software. Di conseguenza, la software community non dispone di standard di sviluppo sicuri. L’attenzione è tutta incentrata sull’immissione del nuovo prodotto sul mercato e, una volta che il software è disponibile pubblicamente, si sposta subito sulle nuove funzionalità e sull’ottimizzazione delle prestazioni. In tale scenario la sicurezza (e l’etica informatica) dello sviluppo software continua ad avere un rilievo minimo.

Gli hacker e altri malintenzionati causano danni reali a persone reali. Il nostro attuale ecosistema digitale tende ad affrontare la sicurezza delle applicazioni riparando le vulnerabilità non appena vengono rilevate. Questo approccio re-azionario, però, non è né pratico né pragmatico.

Per affrontare la responsabilità etica della sicurezza dei clienti, gli sviluppatori hanno bisogno di istruzione, ma in genere solo i corsi specifici sulla sicurezza informatica affrontano questi argomenti. Il punto di inizio può essere quello di guardare ai “guasti” più famosi del recente passato: nel 2015 ha fatto notizia un caso in cui le informazioni personali di natura medica sono state archiviate come testo normale in un database. Semplicemente, se quelle informazioni fossero state crittografate, non sarebbe stato così facile usarle per scopi sbagliati.

Funzionalità VS effetti

Al centro di molte questioni etiche c’è la decisione che le capacità nelle versioni di un software sono più importanti degli effetti che potrebbero avere. Ma solo perché puoi non significa che dovresti. “Se il team di sviluppo software viene misurato in base al tasso di sviluppo delle funzionalità, c’è un’alta probabilità che l’etica di una data implementazione informatica possa non essere in primo piano, né in fase di progettazione né in fase di implementazione”, ha affermato Tim Mackey, principale stratega della sicurezza presso il Synopsys Cyber ​​Security Research Center. Synopsys è una società di automazione della progettazione elettronica.

Il produttore dovrebbe dare spazio agli standard etici nel suo prodotto. Bisognerebbe considerare le priorità etiche durante tutto il ciclo di vita del software, dalla progettazione al funzionamento. Anche formare il personale sulle scelte etiche legate alle licenze e all’uso del software open source. Bisognerebbe insegnare a sviluppatori, architetti, tester e altri membri del team software le pratiche di gestione dei dati in modo conforme alle normative e alle aspettative dei clienti. Gli sviluppatori non possono essere a conoscenza di tutte le azioni legislative dei Paesi in cui i clienti utilizzano il loro software, ma l’azienda deve assicurarsi di essere informata.

Valuta la qualità di questo articolo

La tua opinione è importante per noi!

Articoli correlati

Articolo 1 di 3