+(requisitidiprogettazionegestionedelsistema,implementazionelimitazionesurisorsee
linguaggi,interfacciasistemiesterni,fisiciedimensionihwlegalilicenze)utilizzatoper
semplificareilprocessodiidentificazionedellemisurepiidoneeperlediversefasidelciclodi
vitadiunsoftware.Lecaratteristichediqualitsonodivisein27sottocaratteristicaacui
associataunaopimisure.
8. UP
UPunprocessoiterativomoltodiffusoperlosviluppodelsoftwareperlacostruzionedisistemi
orientatiaglioggetti.Datochealgiornodoggineiprogettisoftwarevisonocostanticambiamenti
sistaaffermandosemprepilosviluppoiterativodoveilrisultatodiciascunaiterazioneun
sistemaeseguibile,testato,integratomaparziale.IlmotivopercuiUPparticolarmente
apprezzatoproprioperilfattocheiterativo,evolutivoeadattivoespecialmentequestultimo
puntovaadinfluire,nelcasodisceltanonadatta,aridurrelaqualitolutilitdelprodottoins.
AttraversoUPpossibileaffrontareallinizioleproblematichemaggioriesipuavereuncostante
feedbackdalclienteconcuisiincontatto.LusomoltoampiodiUMLnepermettedigestirepi
facilmenteirequisitieleeventualirichiestedicambiamentoe/oconfigurazioni.Qualisonolefasi
diUP?IDEAZIONE(visioneapprossimativa,studioeconomico,stimetempi/costi),
ELABORAZIONE(visioneraffinata,implementazioneiterativanucleoerisoluzionerischi
maggiori,stimepiaccurate),COSTRUZIONE(implementazioneiterativadeglielementi
rimanentiearischiominore)eTRANSIZIONE(betatestconrilascioagliutenti).
9.
COCOMOII
Lastimadeicostiedellatempisticadelprogettosonodueattivitchesolitamentevengono
eseguiteallunisono.Icostidisvilupposonoicostidellosforzorichiestoelestimeinizialisono
importantialfinedideterminareunbudgetperilprogettoestabilireilprezzoperilcliente.Non
semplicefareunastimaaccuratadellosforzorichiestoapartiredaiprimistadidelprogetto,alle
voltequasiimpossibileperquestomotivosidecide,spesso,diusareilCOCOMOcheunmodello
bendocumentato,pubblicamenteaccessibileesupportatodastrumentipubbliciecommercialicon
unsolidobackground.Tuttaviaessorappresentaunmodelloempiricodatochestatorealizzato
partendodaunagrandequantitdidatietrovandodellerelazioni.Larelazionequellaclassica:
B x M
conprecisiindiciperdeterminareiparametri:A
Effort= A x
fissataa2,94inmodoempiricoSize
espressainKSLOC(migliaiadirighedicodice)stimateattraversoipuntifunzioneedipendenti
dallinguaggiodiprogrammazione;B
rappresentalaumentodelcostoallaumentaredelladimensionedelprogetto(tra1.1e1.24)
Milprodottodisetteindicibasatisullaffidabilitecomplessitdelprodotto,sulriusorichiesto
sulladifficoltdellapiattaformaesullacapacitdelpersonale:
PERSxRCPXxRUSExPDIFxPREXxFCILxSCED
10. Tecnicheformali
Sesupponiamodivolercreareunsoftwarechecontrollailtrafficoaereoelosivuoletestarenon
avrebbesensofarlipartireeaccorgersisolamentedopocheviqualcheerrore.Perquestomotivo
siricorreametodipiaffidabiliequindinonbasarsiunicamentesultestmaprocederecon
simulazionioconmetodipirigorosicheassicuranolassenzadierrori.Questimetodisonodetti
formaliesonoutilizzatidailinguaggiformalichesonoqueilinguaggilacuisintassievocabolario
sonolimitatieutilizzadelleregolemoltorigoroseeprecise.Spessovengonoutilizzatetecniche
matematicheperlanalisidiappositialgoritmi.Nelcasodiutilizzoditeoriematematichela
verificaavvieneattraversolapplicazionediunatecnicamanualeoautomatica(nonsempre
facileautomatizzareilprocesso)chepossaaiutareastabilireseunsistemasoddisfaunadata
proprietosicomportainaccordoaunaspecificadata.
11. Modelchecking
Usaisistemiatransizioni(LTS)permodellareisistemimafaancheusodellalogicatemporale
perverificarelepropriet.Ilproblemadellaverificavienespessoridottoaproblemidiricercasu
grafiinpipresentaungrandevantaggiocheconsistenelpoteresserecompletamente
automatizzatoeabbiamovistocheinalcunicasi,comeadesempioneimetodiformali,
lautomatizzazioneimpossibileanchealivelloteorico.Selaproprietnonverificataviene
generatouncontroesempioeinfine,esoprattuttocihapermessounsuosviluppo,relativamente
faciledausare.