Your SlideShare is downloading. ×
  • Like
03-Lezione PON BAITAH Dott. Suma - Software Engineering - cenni
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

03-Lezione PON BAITAH Dott. Suma - Software Engineering - cenni

  • 36 views
Published

 

Published in Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
36
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. INGEGNERIA DEL SOFTWARE Fondamenti alla progettazione di un software
  • 2. 2 Ingegneria del software  Progettare:     Soluzioni from-scratch; Soluzioni Off-The-Shelf. Modularità; Coesione ed Accoppiamento: quanto costano queste scelte per la realizzazione di un software e per lo sviluppo futuro?
  • 3. 3 Ingegneria del software Off-The-Shelf (OTS) componente software disponibile sul mercato per l'acquisto da parte di aziende di sviluppo interessate a utilizzarli nei loro progetti
  • 4. 4 Ingegneria del software from-scratch From the beginning, starting with no advantage or prior preparation.
  • 5. 5 Ingegneria del software Ciclo di vita di un Software • Quanto costa realizzare un software?
  • 6. 6 Ingegneria del software Bisogna tenere conto delle stesse problematiche note in tutti i processi di sviluppo…
  • 7. 7 Ingegneria del software …. una casa …. • definizione di requisiti e vincoli del prodotto da realizzare (vorrei un casa su 2 piani, con autorimessa e cantina …) - Requisiti • definizione di un modello della soluzione (planimetrie, piante assonometrie, ...) - Progetto (architetturale) descrizione di dettaglio di come effettuare la costruzione (progetto dell’infrastruttura elettrica, idrica, calcoli statici travi...) - Progetto (di Dettaglio) • • • • • realizzazione fisica del prodotto (pilastri, muri, impianto idrico …) - Costruzione verifica che il prodotto rispetti i requisiti definiti, nonché norme e/o standard - Collaudo consegna del prodotto al committente (ci vado a vivere) – Rilascio operazioni successive al rilascio atte a che il prodotto continui a soddisfare i requisiti (vecchi e nuovi) dell’utente (riverniciatura delle pareti, riparazione del tetto, sopraelevazione, …) Manutenzione / Evoluzione
  • 8. 8 Ingegneria del software Processo di sviluppo… MONDO ASTRAZIO REALE NE COSA Requisiti Specifich e COME Implemen tazione Progetto
  • 9. 9 Ingegneria del software Fasi tipiche di un modello di CVS:  Specifica;  Design;  Implementazione;  Validazione;  Evoluzione.
  • 10. 10 Ingegneria del software Software Specification • Feasibility study; • Requirements elicitation and analysis; • Requirements specification; • Requirements validation.
  • 11. 11 Ingegneria del software Software Specification Quanto è importante capire i requisiti funzionali e i requisiti non funzionali? E quanto contano nelle scelte finali di realizzazione del software?
  • 12. 12
  • 13. 13 Ingegneria del software
  • 14. 14 Ingegneria del software Software design and implementation • Convertire le specifiche del sistema in un sistema eseguibile; • Software design: • Progettare una struttura software che descriva come implementare le specifiche; Implementation: • • Tradurre quella struttura in un sistema di programmi eseguibili; Ci può essere un interlacciamento tra le due attività.
  • 15. 15 Ingegneria del software
  • 16. 16 Ingegneria del software Software validation Mostrare che un sistema è conforme alle specifiche e ai requisiti richiesti dall’end-user. • Validation; • Verification; • Si utilizzano test case, model checking
  • 17. 17 Ingegneria del software Software evolution Un software necessita sempre di evoluzioni…
  • 18. 18 Modelli di processi software A seconda di quanto sono esperto, sceglierò… • Modello a cascata; • Modello evolutivo; • Component Based Software Engineering (CASE).
  • 19. 19 Ingegneria del software Diagrammi di Gantt è uno strumento di supporto alla gestione dei progetti