4° Anno TEORIA 4. Fondamenti di ingegneria del software
12. Fondamenti di ingegneria del software Vers.1.1 – Marzo 2009
12. FONDAMENTI DI INGEGNERIA DEL SOFTWARE
PREMESSA
La produzione del software non può essere affidata all’improvvisazione: sapere scrivere algoritmi e
programmi non garantisce di per se l’avere un software di buona qualità.
La produzione artigianale del software non sempre è garanzia di efficienza e di qualità: per
ottenerle è necessario utilizzare metodi di produzione che possono essere applicati solo da esperti
del settore.
A partire dagli ani 60 si è avuta una rivoluzione nell’ambito della produzione del software
attraverso l’introduzione di nuove tecniche e metodologie in grado di affrontare e risolvere i
problemi aventi le seguenti finalità:
- la formalizzazione dei metodi di sviluppo e di documentazione del software;
- la realizzazione di prodotti software di buona qualità ed a costi contenuti;
- la riduzione della complessità della tecnologia;
- la facilità di utilizzo dei programmi da parte dell’utente.
In Germania nel 1968 nel corso di una conferenza della NATO si pose l’attenzione sull’esigenza di
disporre di metodi mutuati dall’industria per la produzione del software. Nacque così l’ingegneria
del software (ossia Software Engineering) che applicava al software ed alla sua produzione i
principi dell’ingegneria che permettevano la pianificazione accurata ed il controllo rigoroso di tutto
il processo di sviluppo.
PROGETTAZIONE DI UN SISTEMA
Per sviluppare un sistema ed ottenere un prodotto finito occorre un progetto.
Progettare un sistema significa:
- studiare il progetto ossia comprendere il suo ambito di realizzazione, gli obiettivi che devono
essere raggiunti, la sua fattibilità;
- analizzare i requisiti del progetto per comprenderne le caratteristiche e redigere un piano di lavoro;
- specificare il progetto ossia definire l’architettura del prodotto da realizzare utilizzando modelli;
- realizzare il progetto ossia “costruire” il prodotto.
CICLO DI VITA DEL SOFTWARE
In informatica per quanto detto finora non si opera improvvisando ma seguendo schemi precisi in
grado di assicurare una produzione di un buon software.
Per fare ciò occorre capire che cosa si intende realizzare, se è possibile realizzarlo, come realizzarlo
e con quali strumenti. Solo alora si può passare alla realizzaione.
Riassumendo quindi qualsiasi attività di sviluppo software prevede:
1) un’attività di studio del progetto;
2) un’attività di progetto vero e proprio;
3) un’attività di realizzazione del progetto.
Autore: Rio Chierego (email: [email protected] - sito web: www.riochierego.it)
Pag. 1