INGEGNERIA DEL SOFTWARE - SOFTWARE INGEGNERIA

Pagina creata da Letizia Bassi
 
CONTINUA A LEGGERE
INGEGNERIA DEL SOFTWARE - SOFTWARE INGEGNERIA
INGEGNERIA DEL SOFTWARE

    SOFTWARE INGEGNERIA

                     Prof. Aniello Cimitile
INGEGNERIA DEL SOFTWARE - SOFTWARE INGEGNERIA
Abbiamo costruito un mondo
          fondato
 su una selva di pilastri di
         software
INGEGNERIA DEL SOFTWARE - SOFTWARE INGEGNERIA
Il termine Software fu introdotto nella
   Letteratura scientifica nel1958 da
   John Turkey, che aveva, fra l’altro,
   già coniato il termine “bit”

   I primi usi della parola software si
   ritrovano già nel 1953

   Diventa un vocabolo dello “Oxford
   English Dictionary” nel 1960

  In effetti, negli anni ‘50 il termine “software” è poco più di un modo
 divertente (un “prank”) per far riferimento a programmi ed istruzioni;
negli anni ’60 è ormai una Key Word usata nell’industria e nella ricerca;
negli anni ’70 si delinea quella che molti chiamano “ The Software Age”
INGEGNERIA DEL SOFTWARE - SOFTWARE INGEGNERIA
… in poco più di mezzo secolo …
• Il software ha dispiegato caratteristiche di pervasività
  ed ubiquità inedite ed inarrestabili
• E’ stato ed è il componente primario di quel
  paradigma scientifico e tecnologico che ha segnato la
  transizione dalla “società industriale del ‘900” alla
  odierna società della conoscenza e dell’informazione
  ( Manuel Castells: “società informazionale”)
• Il software è ormai presente in ogni aspetto della
  nostra vita ( … un invisibile, silenzioso, permanente e
  ormai irrinunciabile accompagnatore …)
INGEGNERIA DEL SOFTWARE - SOFTWARE INGEGNERIA
IEEE/ACM
                 SOFTWARE ENGINEERING 2004
   Curriculum Guidelines for undergraduate degree program on
                                SE

  “…. software plays a central role in almost all aspects of daily
    life: in government, banking and finance, education,
    transportation, entertainment, medicine, agriculture, and
    law. The number, size, and application domains of computer
    programs have grown dramatically; as a result, hundreds of
    billions are being spent on software development …”

Insufficiente e limitata , e con errori di sottostima
1)… eliminare almost
2)… hundreds of bilions        bisogna aggiungere “ all’anno”
INGEGNERIA DEL SOFTWARE - SOFTWARE INGEGNERIA
Cos’è il SOFTWARE ?
• … molta acqua è passata sotto i ponti dalla definizione dello
   Oxford English Dictionary
      “The programs and procedures required to enable a
        computer to perform a specific task, as opposed to the
        physical components of the system.”
• … e analoghe di dizionari italiani
 “ Il corredo dei linguaggi e dei programmi di cui è munito un
   sistema elettronico per l’elaborazione dei dati .”
      (Devoto, Oli - Dizionario della Lingua Italiana - 1971)

  “ Insieme dei programmi che gestiscono e specializzano il
  funzionamento di un elaboratore .”
  (Sabatini Coletti - Dizionario della Lingua Italiana - 1970)
INGEGNERIA DEL SOFTWARE - SOFTWARE INGEGNERIA
… dal nostro punto di vista …
Standard IEEE 610.12-1990
  software: computer programs, procedures and
  possibly associate documentation and data
  pertaining to the operation of a computer system;
   software product:
 –(1) the complete set of computer programs,
  procedures and possibly associate documentation
  and data designed for delivery to a user.
 –(2) Any of the individual item in 1.

        NB. … non tutto il software è un prodotto …
INGEGNERIA DEL SOFTWARE - SOFTWARE INGEGNERIA
ISO 9000-3
      Software: Creazione dell’intelletto che include
     programmi, procedure, regole e ogni altra
     documentazione relativa al funzionamento di un
     sistema di elaborazione dati
      Prodotto software: Insieme completo di
     programmi, procedure e relativa
     documentazione rilasciato ad un utente
      Componente software: Ogni parte identificabile
     di un prodotto software, sia in uno stadio
     intermedio del processo di sviluppo, che al
     termine di esso

NB. Creazione Intellettuale e Prodotto fatto di diverse Componenti
INGEGNERIA DEL SOFTWARE - SOFTWARE INGEGNERIA
• Non è un “manufatto”, un tipico prodotto industriale
  ma una “creazione dell’intelletto”
  – Trova il suo valore aggiunto non nelle macchine e
    nelle mani (braccia) con cui viene prodotto ma nel
    “brain power”, nel “contributo dell’intelletto”, nell’
    INTELLIGENZA che in esso viene “cristallizzata ed
    incapsulata
  – Campione esemplare di prodotto da lavoro
    immateriale, con enormi conseguenti differenze
    sia nel suo ciclo di produzione che nel suo ciclo di
    vita ( la riproduzione in più esemplari è
    praticamente a costo zero; non si usura e non
    degrada; …)
• Il software può non essere un “prodotto” o un
  componente di un prodotto, ma non è mai solo
  codice

• Un prodotto software è un sistema integrato di
  componenti software, in particolare di tutto ciò che è
  necessario all’utente per poterlo usare e mantenere in
  vita dalla sua installazione al suo ritiro.

• La costruzione/composizione di un prodotto software
  è “confezionata” sulla esigenza dell’utente
 – IEEE: “ …delivery to a user “ ISO: “rilasciato ad un
  utente”
 – ... è implicita la figura di ... un fornitore ...
.

Una vasta gamma di possibili profili di utente:
  – dal “consumer” del digital market ai responsabili
     di sistemi informativi aziendali, dai tecnici di
     assistenza e manutenzione ordinaria ai tecnici (
     anche di reparti e sub-fornitori della stessa
     azienda produttrice) addetti all’evoluzione del
     software ( nuove versioni, ampliamento con
     nuovi componenti, nuove progettazioni, …)

                              Code1                    Doc
•   .        CompSoft1                              Progettuali
                                       Codek
         CompSoftn
                                       Manuali
                                      Assistenza
        Manuali                        Tecnica
         d’Uso                                     Casi Prova
                                 Doc                    e
                  Tabelle e                          Test
                    dati       Funzionali
Punto di vista: Commercializzazione e
                     Distribuzione
• Al prodotto software è associato un diritto di proprietà e come è tutelato?
• Diritto d’Autore ( CopyRight)
    – tutela il software come un’opera dell’ingegno, come una poesia, un
      romanzo, un’opera letteraria, …. una canzone (In Italia: SIAE; Legge
      22 Aprile 1941, N. 633 )
    – Tutela la forma dell’espressione creativa ( a prescindere dal
      contenuto)
• Brevetto per il Software
    – Protegge il contenuto del software, se costituisce una invenzione, una
      soluzione tecnica originale ed inedita rispetto allo stato dell’arte

 Profonde differenze: es. nel primo caso è possibile, attraverso Reverse
 Engineering, estrarre i contenuti ( algoritmi ) e implementarli in un nuovo
 programma ( anche se svolge le stesse funzioni ); se c’è il brevetto ciò è
 vietato.
• … un filone di pensiero ritiene che il software sia di
  rilevanza sociale tale da impattare diritti
  fondamentali che richiedono garanzie di accesso ed
  uso

• Nel 1985 la proposta di Free Software
  con Richard Stallmann, fondata su principi
  etici (garanzie di libertà per l’utente)

• Nel 1991 nasce la proposta di Open
  Source con Linus Torvald, fondata su
  problemi pratici e produttivi
Le libertà del Free software
    • Libertà di eseguire il programma, per qualsiasi scopo (libertà
      0).
    • Libertà di studiare come funziona il programma e di
      modificarlo in modo da adattarlo alle proprie necessità
      (libertà 1).
    • Libertà di ridistribuire copie in modo da aiutare il prossimo
      (libertà 2).
    • Libertà di migliorare il programma e distribuirne
      pubblicamente i miglioramenti apportati (e le versioni
      modificate) (libertà 3).
NB. Le libertà 1 e 3 implicano la disponibilità del “codice” come nell’Open Source,
ma a differenza di quest’ultimo, ogni produzione da free software ( modifiche,
nuove versioni, evoluzioni e nuovo software) deve essere a sua volta free (copyleft)
I SERVIZI SOFTWARE
• La capillare diffusione del software è stata accompagnata da una enorme
  crescita della domanda di SERVIZI collegata alla vita stessa di un prodotto
  software ( dalla sua ideazione fino al suo ritiro)
• Consulenza, Formazione, Assistenza, Manutenzione sono solo una parte
  dei servizi che fanno parte del mondo del software
• Il peso dei servizi che il software richiede lungo la propria vita è cresciuto
  in maniera tale che oggi la spesa in tali servizi è molto più grande di
  quella relativa al solo software
• Ci sono aziende che forniscono non solo software ma anche
    servizi software (*)
  • … e vi sono aziende e professionisti che offrono solo servizi
    software
  • A tale tipologia di servizi vanno aggiunti quelli che vengono
    offerti come “servizi di elaborazione e gestione dati” da
    provider che posseggono tecnologie e software per farlo
  • … e oggi siamo alla esplosione di una nuova famiglia
    di servizi, in cui il software stesso viene offerto
    come servizio ( Software as a Service – SaaS )

(*) molte aziende “proprietarie” di software hanno adottato strategie di
  Open Source, proprio perché il valore aggiunto dei servizi è molto
  più “appetibile” di quello del software e l’open source amplia
  la domanda di servizi.
SETTORE ( INDUSTRIA ) del SOFTWARE
• Con il termine Settore Software o Industria del Software si
  indica il settore della produzione e della
  commercializzazione di beni ( prodotti) e servizi software
• Inizialmente indistinto da quello Hardware, se ne è separato a partire
  dagli anni ’60 del ‘900 (*)
• Il settore è oggi un settore strategico per l’economia ed il
  lavoro ( nel 2013 la spesa mondiale in software, esclusi i
  servizi, ha per la prima volta sfondato la barriera dei 3OO
  Miliardi di Dollari USA, mentre gli sviluppatori di software
  “professionisti” sono più di 11 Milioni)
• Continua a crescere e ad evolvere rapidamente con altissimi ROI da R&D

    (*) La prima azienda di solo software& servizi software fu la
           Computer Usage Company, nata nel 1955 (USA)
DATI 2014
  • Tutti gli analisti del mercato mondiale del software
    prevedono nel prossimo quinquennio ( 2014 – 2018) una
    costante crescita
  • Gartner: 360 Miliardi di Dollari al 2016 ( … una media del 7%
    annuo); Lucintel : 400,6 Miliardi di dollari al 2017

  IDC ha stimato
  (2014) che nel
mondo vi sono 11
     milioni di
    sviluppatori
  software, a cui
vanno aggiunti 7.5
milioni di “hobbyist
    developers”
• Gli sviluppatori sono solo una parte del mondo degli addetti al Software:

    – Pro developers include the following workers, based on the
      U.S. Bureau of Labor Statistics’ classification:
         Develop, create, and modify general computer
         applications software or specialized utility programs.
         Analyze user needs and develop software solutions.
         Design software or customize software for client use
         with the aim of optimizing operational efficiency.
         May analyze and design databases within an application
         area, working individually or coordinating database
         development as part of a team.
         May supervise computer programmers.

                  E’ in questo momento il lavoro
                      più richiesto del mondo
The Top Jobs For 2014 – Forbes:
 “The higher-paying occupation that has produced the most jobs post-
   recession: Software developer (applications and systems software).
   Since 2010, 104,348 jobs have been added (11% growth). In total,
   1,042,402 people are currently employed as software developers in the
   U.S., earning an average hourly pay of $45.06.
   Companies want to go to market first with innovations; they want to capitalize on
   mobile and cloud technologies; they want to extract, parse and apply Big Data to
   make smarter business decisions and create better solutions for clients,’ Ferguson
   says. ‘Software developers play a key role in these initiatives.’
   According to the Bureau of Labor Statistics, most software developers work for
   computer systems design and related services firms or software publishers. Others
   work in computer and electronic product manufacturing industries. They typically
   have a bachelor’s degree in computer science.
   The BLS expects a 30% increase in the number of software developers by
   2020 (from 2010).”

                 Questo negli USA, ed in Italia ?
• Unioncamere e Ministero del lavoro
  – Laureati con Professioni Difficili da reperire ( con
    contratto non stagionale): 4 delle prima dieci
    posizioni riguardano il Corso di Laurea in
    Ingegneria Informatica
        –1° Esperti Software
        –3° Analisti programmatori
        –6° Sviluppatori di Software
        –10° Programmatori Informatici
Una Classificazione di Software e
            Servizi Software
• Il Software viene classificato in diversi modi, per
  esempio in base al tipo di licenza, in base al
  dominio applicativo al quale si rivolge, in base alla
  tipologia di utente ( software generico, software
  specifico, COTS, Custom Written), ……….
• Con riferimento ai prodotti software e seguendo “
  evoluzioni e trend di mercato”, analizziamo una
  classificazione tradizionale, aggiornata con i nuovi
  trend, e adottata da ASSINTEL
SOFTWARE
• SOFTWARE DI SISTEMA
   – Sistemi operativi ( … con upgrade, tool acquisibili anche
     separatamente dalle piattaforme hardware)
   – Sistemi embedded (sistemi operativi o di controllo “a
     bordo” di apparati, es. ATM, POS, etc. )
• MIDDLEWARE
   – Software di intermediazione fra applicazioni e componenti
     diverse ( viene anche detto software di infrastruttura); una
     def. “ Middleware is any software that allows other
     software to interact”
• SOFTWARE APPLICATIVO
   – Tutto il software che non è di Sistema e non è Middleware
   – Es. ERP e Extended ERP, Package Gestionali, Applicazioni
     veticali di industria, Gestione Ciclo di vita Prodotto, BI e
     EPM e Analytics , Software per Workplace, Gestione
     Processi e Contenuto
• Importanti Cambiamenti nel mondo del
  Middleware e del Software Applicativo per la
  crescita della domanda di software richiesto
  da:
  – IoT : Internet of Things
  – MobAPP: Mobile e App relative e più in
    generale di Digital Marketing
  – Big Data
SOFTWARE 2014
• Per la prima volta in Italia il mercato del
  software “tradizionale” arretra sotto i colpi
  della crisi
• Tuttavia le perdite sono di gran lunga inferiori
  a quanto apportato dal mercato software dei
  nuovi trend ( IoT, BigData, Mob&APP Digital
  Market)dove comincia ad essere sensibile
  anche il mercato legato ai BigData.
• Tabelle di Sintesi : dati in Mln di euro

                      SOFTWARE       TRADIZIONALE   NUOVI TREND

       2013           4835           4145           690

       2012           4223           4223           ------

                      S di SISTEMA   MIDDLEWARE      S. APPLICATIVO

       TRADIZIONALE   516            1410            2219

       NUOVI TREND    -----          326             364
SERVIZI SOFTWARE
•   Servizi di Formazione
•   Servizi di Consulenza
•   Servizi di Sviluppo e Manutenzione Software
•   Servizi di Progettazione e System Integration
•   Servizi di Gestione Applicativi
•   Servizi integrati di
    – Gestione Processi
    – Gestione di Infrastrutture e Workplace
• La crisi ha inciso in modo significativo sui servizi tradizionali (
  ricontrattazioni a ribasso e cancellazioni)
• … tuttavia, anche in questo caso, la perdita è stata di gran
  lunga inferiore all’apporto venuto da servizi legati ai nuovi
  trend
• … infine, il calo è anche ascrivibile alla migrazione verso
  servizi Cloud, che sembrano alla vigilia di un “booming”

                             Senza servizi cloud
        In Mln di euro   SERVIZI        TRADIZIONALI   NUOVI
        Per anno

        2013             9049           8482           567

        2012             8863           8863           -----
• Anche nel settore dei servizi crescenti e
  nuove attività connesse a
  – IoT: Internet of Things ( progettazione e sviluppo
    applicazioni)
  – Digital Market ( servizi integrati ed attività svolte
    anche da personale ed aziende non IT, ad
    esempio provider di contenuti, agenzie di
    marketing, etc.)
  – Big Data ( i servizi cominciano ad essere
    significativi)
Servizi di Cloud Computing
• Servizi IT acquisibili via Rete da un Fornitore esterno ( cloud
  provider) dotato di un apposito sistema di tecnologie H/S ( in
  generale distribuite e virtualizzate in rete) per la
  archiviazione, la elaborazione e la trasmissione di dati
• Servizi offerti a costi contenuti ( economie di scala da
  condivisione risorse), in generale pagati a consumo (pay per
  use)
• Tre fondamentali modelli di servizio: IaaS (
  Infrastructure as a Service), PaaS ( Platform as a
  Service), SaaS ( Software as a Service)
• Il mercato registra nel 2013 un deciso
  incremento dei servizi di cloud computing
  IaaS, PaaS, SaaS ( + 43,24 % )

      2012                   2013

      592                    848

                  In Milioni di euro
•… sotto la spinta del mercato si hanno: come
evoluzione da SaaS il BPaaS ( buseness process as a
service), e il Coud Managment and Security
Services

•Fioriscono altri servizi non IT ( es.   Cloud
Advertising) ed addirittura si parla di XaaS (
Everything as a service).

• … in particolare, si registra una fortissima crescita
del BPaaS che raggiunge
                    960 Mln di Euro
        più di tutti i sevices di cloud computing
                «tradizionali» messi insieme
INGEGNERIA del SOFTWARE

     SOFTWARE   INGEGNERIA
La data di nascita della Ingegneria del
    Software può essere sicuramente
  fissata nel 1968 con una Conferenza
NATO tenuta a Garmish in Germania
                                           Software Engineering conference sponsored by
                                              the NATO Science Committee, Garmisch,
                                                      Germany, 7-11 Oct. 1968

                       Fritz Bauer, in quella sede definisce la
                       Software Engineering come:
                          The establishment and use of sound
                        engineering principles in order to obtain
                        economically developed Software that is
                          reliable and works efficiently on real
                                        machine
• Dalla definizione di Bauer emerge che la necessità di
  «ricorrere alla ingegneria» scaturisce dai seguenti fatti:
   – La produzione «artigianale» di software costa
     troppo ( … economically developed software )
   – Il software non è affidabile (… software that is
     reliable)
   – … usa troppe risorse, come tempo CPU e memoria
     ( …works efficiently on real machine)

• … è evidente che il software, che pur                   si diffonde
  pervasivamente presenta rilevanti problemi, che nel 1968 …
  cominciano … ad essere percepiti; percezioni che sono ancora
  valide, anche se quella sull’efficienza risente dei tempi ( …
  oggi le «real Machine», Cpu e Memoria, non mancano e ne
  sono crollati i costi ..) e si pone oggi in altri terminj
•    … una ventina di anni dopo …., una definizione di Stephen Schach,
    che propone la SE come:
    A discipline whose aim is the production of quality
    software, software that is delivered on time, within
    budget, and satisfies its requirements

• …al di la del limite «accademico ( … a discipline..
  ), il bisogno di «Ingegneria» nasce dal fatto che:
    –   Il software non è di buna qualità
    –   La sua produzione non rispetta i tempi previsti
    –   Le previsioni di costo sono sempre superate
    –   e … non soddisfa le esigenze per le quali è nato
• … per quanto riguarda la visione disciplinare,
  ecco una definizione … «professionale»
   A profession dedicated to designing,
implementing and modifying software so that it
is of high quality, affordable, maintenaible and
fast to build
• … a parte l’accento sulla professione di IS :
  – L’ingegneria viene chiamata in causa per tre
    attività fondamentali: la progettazione, la
    realizzazione, la modifica del Software
  – … ai bisogni di ingegneria già emersi se ne
    aggiunge un altro: il software non è
    manutenibile
La definizione IEEE
• La IEEE ha svolto e svolge un ruolo rilevante per la SE;
• Già nel 1972 esce il 1° numero di
   – IEEE TRANSACTION on SOFTWARE ENGINEERING
   – …e oltre a congressi ed altre famose pubblicazioni,
       si caratterizza per una numerosa produzione di
       standard che vengono sistematicamente aggiornati
• La definizione IEEE
   –    (1)Software Engineering is the application
       of a systematic, disciplined, quantifiable
       approach to the development, operation
       and maintenancxe of software: that is the
       application of engineering to software;
       (2) the study of approaches as in (1).
• Talento e creatività pur fondamentali ( il software è il risultato
  di un’azione dell’ingegno …) non bastano, c’è bisogno della
  cultura e del rigore ingegneristico tipico della costruzione di
  soluzioni, macchine, impianti e sistemi complessi
• All’Ingegneria viene dunque richiesto di apportare
  sistematicità, disciplina , approcci quantitativi ( Misure e
  Valutazioni) nella produzione, nella tenuta in esercizio e nella
  manutenzione del Software
• All’Ingegneria viene affidato il compito di garantire il
  fabbisogno necessario di formazione, alta formazione,
  Ricerca Scientifica e trasferimento tecnologico

• All’Ingegneria spetta definire e fare evolvere uno specifico
  complesso ingegneristico di Principi e Teorie, Metodi e
  Modelli, Processi ed Attività produttive, Schemi e Misure,
  Tecniche e Tecnologie
… ma il Software davvero pone tutti
              questi problemi ?
   • …. Purtroppo si !
   • Molti di essi costituiscono per la Ingegneria
     del Software una sfida permanente, nel
     senso che sono caratteristici e strutturali
   • Altre sfide vengono continuamente prodotte
     dalla continua nascita di nuovi filoni nella
     domanda di software e dalla permanente
     evoluzione della conoscenza e delle
     tecnologie
( SOFTWARE CRISIS: la teoria del ciclo decennale nella produzione del software)
SOFTWARE FAILURES

I’ve always been interested in computing project that
   failed. There seems to be a much more indelible
     lesson to be learned from failures than from
                       successes
                     Robert L. Glass

 When you’re failing you’re forced to be creative, to
   dig deep and think hard, night and day. Every
 company needs people who have been trough that
                      Bill Gates
• Sui guai prodotti dal software sono stati scritti
     libri famosi (*) ed esiste una vasta letteratura e
     produzione giornalistica in materia

   • Una famosa società, SQS – Softwrae Quality
     Systems AG, produce un report             che, su
     indicazione di una commissione di esperti,
     definisce la classifica delle
                 TOP TEN SOFTWARE FAILURES
      che si sono verificate nell’ultimo anno.

(*) es. Robert Glass : Software Runaways – Lessons Learned from
            Massive Software Project Failures. Prentice Hall 1998
… famosi …
October 9, 1981

    …Closer inspection revealed the problem occurred in the routine responsible for
    dumping excess fuel in preparation for the early landing – the code contained an
    uninitialized counter used in a "computed GOTO“…
THERAC 25

 Acceleratore Lineare per il rilascio di raggi x e fasci di
 elettroni per il trattamento del cancro
 Rilasciato nel 1985
 Macchina di terza generazione (Therac-6, Therac-20)

Da Giugno 1985 a Gennaio 1987 : 6 Incidenti noti
  emissioni in overdose
5 Morti e numerosi “danni”
I MISSILI PATRIOT
  Diventati famosi per la difesa contro i
  missili SS-1 Scud lanciati dall'Iraq contro
  Israele durante la guerra del Golfo del
  1991

Costo: da 1 a 6 Mln di dollari per unità
E’ attivo; circa 9000 unità prodotte fino ad oggi

Numerosi fallimenti, incluso quello che
provocò la morte di 28 soldati americani
a Dhahran in Arabia Aaudita

 Errore nel calcolo del tempo, piccolo ma
 con effetto cumulativo; l’accumulazione porta al
 disastro ( nell’attacco di Dharan il sistema fu
 operativo per circa 100 ore).                      UNA QUESTIONE PERSONALE
Arian V
 Razzi vettori per uso civile
 European Space Agency:
        7 Miliardi di Dollari
        10 Anni

  4 Giugno 1996
Si disintegrò 39 sec dopo
la partenza

Conversione di un dato da una
Rappresentazione a 64 bit in una
a 16 bit
Overflow error dopo 36,7 sec.
… casi recenti …
    • Dalla Top Ten 2011
        – 1° Classificato
            • Il gigante dei servizi finanziari AXA BOOMBERG pagò una
              multa di 25 Mln di dollari ed un rimborso agli investitori di
              217 Mln di dollari per aver tentato di spacciare come
              perdite dovute alla volatilità del mercato le ingenti perdite
              dovute al software
        – 2° Classificato
            • Una grande banca giapponese, per malfunzionamento
              software, ebbe 5600 terminali offline per 24 ore; i servizi
              bancari via internet furono inerogabili per 3 giorni; … fra
              l’altro 1 Mln di pagamenti non trasformati con una perdita
              di circa 9 Miliardi di dollari

…. Al 6° posto il caso di 22 persone arrestate per sbaglio; errore software nel nuovo
Sistema della corte di giustizia costato 42,7 Mln di dollari ….
• Dalla TOP TEN 2012
  – 1° Classificato
     • Il caso Knight Capital , società che opera in borsa. In 45
       minuti perde 440 Mln di dollari per un algoritmo sbagliato
       implementato nel nuovo software installato:
          acquistava titoli a prezzo di mercato per rivenderli dopo
                     pochi secondi a prezzi più bassi
  – 3° Classificato
     • Sistema di voto nelle elezioni USA 2012 : molti problemi. Il
       più famoso: il software di gestione del touch screen
       spostava il voto da un candidato ad un altro senza
       consentire all’elettore di riselezionare il candidato e
       correggere l’errore
             ( … altro che nominati : … elezione random …)
• Dalla TOP TEN 2013
• … vincendo su clamorose failures di aziende
  specializzate classificate dal 2° al 10° posto (
  Google, BlackBerry, Microsoft, Samsung,
  Yahoo, iOS 7, YouTube)
• … al primo posto si piazza il caso OBAMA
  CARE, che passerà alla storia
OBAMACARE SOFTWARE FAILURES
• La Riforma Sanitaria d OBAMA: fornire assicurazione
  sanitaria ai milioni di americani che non ce l’hanno
• Allestito Megasistema Software con WebSite; solo
  con le ICT si può ragionevolmente affrontare il
  problema
• Deve servire 36 Stati con circa 30 Milioni di persone
  senza assicurazione
• Obiettivo Obama: almeno 7 Milioni di assicurati entro
  la fine del 2014 ( … significa una media di oltre 19000
  persone al giorno che completano la procedura on
  line con successo …
• Il 1° Ottobre del 2013 il Sistema entra in funzione …
• … ed è subito CRASH …, « …a disaster called
  HealthCare.gov …», « … there’s little doubt that this
  debacle will be remembered as the biggest
  government tech failure …»
• Cronache e report tecnici sono la narrazione di una
  epica debacle:
   – … on the back end of the site, data was garbled and in
     some case unusable …
   – … the nightly report … have been riddled with errors,
     including syntax mistake, and transposed or duplicate
     data …
   – … multiple enrollement and cancellations from the same
     person, but since the documents lacked timestamps …

• Persone che pensano di essere assicurati e non lo sono
  ……
• Ad Obama « i tecnici» spiegano che la colpa è della
    popolarità del sito ed Obama il 4 Ottobre rassicura : « The
    website got overwhelmed by the volume»
  • … ma dopo aver resistito per tre settimane ad un
    bombardamento mediatico e politico, Obama decide « … to
    stop sugarcoating the problem …»

   21 Ottobre 2013: Obama al
Rose Garden della Casa Bianca
tiene la conferenza su quanto è
successo

  … nobody’s more frustrated by that than I am …
• … a parte il danno economico valutato in in circa 175
  Milioni di dollari su un sistema software già costato
  500 Milioni di Dollari
• … l’enorme danno politico e sociale : «… nearly 20
  million Americans have now experienced the broken
  Obamacare website …»
• Ancora a Dicembre, un report tecnico cerca di
  sostenere che su 800000 utenti il fatto che ci siano
  state 15000 «applicazioni» andate in fumo ( …
  persone assicurate ma non note agli assicuratori …)
  era un risultato percentualmente confortante …

                    Un caso italiano ?
          Con le dovute differenze dimensionali: Il caso
   del Portale per il Turismo ( … esploso poco dopo il 2007 …)
• Il Portale doveva entrare in funzione per le
   Olimpiadi di Torino 2006 …
 • … Viene presentato con enfasi a BIT 2007 (…
   borsa del Turismo …)
 • Dopo pochi mesi il progetto viene dichiarato
   fallito ed il portale viene ritirato

ESERCITAZIONE 1
CASE STUDY
SOFTWARE FAILURES: il Caso Italia.it e la relazione della
Commissione di Indagine.
… obiettivo finale dell’esercitazione è la discussione delle
cause del fallimento indicate dalla commissione …
Puoi anche leggere