Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1
01/10/18
e la b o r a z io n e ( s m a r t p h o n e , c o n s o le , n a v ig a t o r i s a t e llit a r i e c o s ì v ia )
– 2 0 1 8 : S o f t w a r e è u n t e r m in e g e n e r ic o c h e p u ò r if e r ir s i a lle is t r u z io n i
m e m o r iz z a t e s u u n o o p iù s u p p o r t i in f o r m a t ic i e c h e p o s s o n o e s s e r e
r a p p r e s e n t a t e d a u n o o p iù p r o g r a m m i, o p iù im p r o p r ia m e n t e a l s e m p lic e
d a t o o in f o r m a z io n e
2
01/10/18
a s s o c ia t e d o c u m e n t a t io n a n d d a t a d e s ig n e d f o r d e liv e r y t o a u s e r .
2. A n y o f t h e in d iv id u a l it e m s in 1 .
3
01/10/18
Manutenzione
1965 1985
4
01/10/18
– c o s t o f in a le 3 . 2 0 0 . 0 0 0 $ .
• …costo finale circa 10 volte la stima iniziale !!
• …e con notevole ritardo rispetto alla stima iniziale
schedule stimato)
5
01/10/18
N ecessità di un approccio
ingegneristico
• Necessità di applicare principi ingegneristici
alla produzione software per sviluppare:
– il giusto prodotto
– al giusto costo
– nel tempo giusto
• a d a t t a m e n t o a n u o v i a m b ie n t i
• m ig lio r a m e n t i e n u o v e f u n z io n a lit à
6
01/10/18
7
01/10/18
M etodi e M etodologie
• Metodo (o tecnica): procedimento generale per risolvere
classi di problemi specificati di volta in volta
– linee guida o regole che governano le attività
– il metodo dei minimi quadrati, il metodo di Montecarlo, il metodo
di Newton, come fare il brodo di carne, come fare il lesso, ...
• Metodologia: insieme di principi, di metodi, degli
elementi di cui una o più discipline si servono per
garantire la correttezza e l’efficacia del proprio
procedere
– e.g., la metodologia della macerazione carbonica permette di
ottenere vini novelli, freschi, profumati, …
Processo
Un processo è un particolare metodo per fare qualcosa
costituito da una sequenza di passi che coinvolgono attività,
vincoli e risorse (Pfleeger)
8
01/10/18
S m a ll 2000 1 -2 4 -5
I n t e r m e d ia t e 8000 2 -6 8 -9
M e d iu m 32000 6 -1 6 14
L a rg e 128000 1 6 -5 1 24
V e ry L a rg e 512000 6 0 -1 5 7 4 1 -4 2
... … … …
9
01/10/18
C ASE (C om puter-Aided
Softw are Engineering)
• Sistemi Software che intendono fornire un supporto
automatico per le attività di un processo software
• Upper-CASE
– Strumenti che supportano le attività delle fasi di analisi e
specifica
Includonodei requisiti
editor graficie per
progettazione
svilupparedi un processo
modelli sosftware.
di sistema,
dizionari dei dati per gestire entità del progetto
• Lower-CASE
– Strumenti che supportano le attività delle fasi finali del processo,
come programming, testing e debugging. Includono generatori di
graphical UI perlalaricerca
per supportare costruzione di interfacce
di program utente, debuggers
fault, traduttori automatici
per generare nuove versioni di un programma
D om ande???
10