Pratiche e Principi Fondamentali dell'Ingegneria del Software

Classified in Informatica

Written at on italiano with a size of 6,68 KB.

Cos'è la Prassi di Ingegneria del Software?

La prassi di ingegneria del software è una raccolta di concetti, metodi, principi e strumenti che un ingegnere del software utilizza quotidianamente.

A Cosa Serve?

Permette ai manager di coordinare progetti di ingegneria del software e di costruire programmi per computer specializzati.

Come Trasforma un Approccio Casuale in un Progetto Strutturato?

La prassi trasforma un approccio casuale in qualcosa di più organizzato, più efficiente e con maggiori probabilità di successo.

Quali Sono le Attività Generiche del Framework?

Comunicazione, progettazione, modellazione, costruzione e distribuzione.

Qual è l'Essenza della Risoluzione dei Problemi secondo Polya?

  1. Comprensione del problema (comunicazione e analisi).
  2. Pianificazione di una soluzione (modellazione e progettazione software).
  3. Realizzazione del piano (generazione del codice).
  4. Esame dei risultati per verificarne l'accuratezza (test e analisi di qualità).

Cosa Significa Capire il Problema?

Significa chiedersi: chi è interessato alla soluzione del problema? Chi sono i clienti? Il problema può essere suddiviso? È possibile rappresentare graficamente il problema?

Come Pianificare la Soluzione?

Bisogna porsi le seguenti domande: sono stati risolti problemi simili in passato? È possibile definire dei sotto-problemi?

Cosa Significa Attuare il Piano?

Significa rispondere alle seguenti domande: la soluzione è stata avviata nell'ambito del piano? È possibile che la soluzione sia del tutto corretta?

Come Esaminare il Risultato?

  • È possibile testare ogni parte della soluzione del problema?
  • La soluzione produce i risultati attesi?

I Sette Principi di David Hooker

  • Primo principio: La ragione per cui tutto esiste. Un sistema software esiste per un motivo: fornire valore ai propri utenti. Tutte le decisioni devono essere prese tenendo presente questo obiettivo.
  • Secondo principio: Mantenerlo semplice (Keep It Simple, Stupid - KISS). Il design dovrebbe essere il più semplice possibile, ma non più semplice.
  • Terzo principio: Mantenere la visione. Una visione chiara è essenziale per il successo di un progetto software.
  • Quarto principio: Quello che si produce, altri lo consumeranno. Specificare, progettare e realizzare sempre con l'idea che qualcun altro dovrà capire cosa si sta facendo.
  • Quinto principio: Essere aperti al futuro. Non progettare mai in un angolo, ma pensando al futuro.
  • Sesto principio: Pianificare il riutilizzo. Il riutilizzo può essere ottenuto senza compromettere il prodotto finale.
  • Settimo principio: Pensare! Pensare in modo chiaro e completo prima di agire produce quasi sempre risultati migliori.

I Dieci Principi della Comunicazione

  1. Ascoltare: Cercare di comprendere il punto di vista dell'interlocutore.
  2. Prepararsi prima di comunicare: Definire gli obiettivi e i punti chiave della comunicazione.
  3. Facilitare la comunicazione: Assicurarsi che la comunicazione sia chiara e comprensibile.
  4. La comunicazione faccia a faccia è la migliore: Quando possibile, preferire la comunicazione diretta.
  5. Prendere appunti e documentare le decisioni: Tenere traccia delle discussioni e delle decisioni prese.
  6. Ricercare la collaborazione: Lavorare insieme per raggiungere un obiettivo comune.
  7. Mantenere l'approccio, considerare un modulo alla volta: Concentrarsi su un argomento specifico per volta.
  8. Se qualcosa non è chiaro, fare un disegno: Utilizzare schemi e diagrammi per chiarire concetti complessi.
  9. Andare avanti in ogni momento: Se si raggiunge un accordo, procedere. Se non si raggiunge un accordo, chiarire i punti di disaccordo. Se qualcosa non è chiaro e non può essere chiarito al momento, rimandare la discussione.
  10. La negoziazione non è una competizione o un gioco: Cercare soluzioni vantaggiose per entrambe le parti.

I Dieci Principi della Pianificazione

  1. Comprendere la portata del progetto.
  2. Coinvolgere il cliente nelle attività di pianificazione.
  3. Riconoscere che la pianificazione è iterativa.
  4. Fare stime basate sulla conoscenza disponibile.
  5. Considerare il rischio quando si definisce il piano.
  6. Essere realistici.
  7. Regolare la granularità definita nel piano.
  8. Definire come cercare di garantire la qualità.
  9. Discutere di come si intende includere il cambiamento.
  10. Adeguare il piano spesso e apportare le opportune modifiche.

Domande Chiave nella Pianificazione

  • Perché si sta sviluppando questo sistema?
  • Cosa si farà?
  • Quando finirà?
  • Chi è responsabile di una funzione?
  • Come funzionerà il significato tecnico e di gestione?
  • Quanto è necessario per ogni risorsa?

Principi di Modellazione e Analisi

  • Il dominio dell'informazione di un problema deve essere rappresentato e compreso.
  • È necessario definire le funzioni che il software deve eseguire.
  • Si deve rappresentare il comportamento del software (come risultato di eventi esterni).
  • I modelli che rappresentano informazioni, funzionalità e comportamento devono essere sviluppati in modo stratificato, scoprendo i dettagli man mano.
  • Il compito di analisi deve spostarsi dalle informazioni essenziali verso i dettagli implementativi.

Principi di Modellazione e Progettazione

  • Il progetto deve essere riconducibile al modello di analisi.
  • Si deve considerare l'architettura del sistema da costruire.
  • La progettazione dei dati è importante quanto la progettazione delle funzioni di elaborazione.
  • Le interfacce (interne ed esterne) devono essere progettate con attenzione.
  • La progettazione dell'interfaccia utente deve soddisfare le esigenze dell'utente finale.
  • I componenti a livello di progettazione devono essere funzionalmente indipendenti.
  • I componenti devono essere accoppiati in modo minimo e legati all'ambiente esterno.
  • Le rappresentazioni del progetto devono essere facili da capire.
  • La progettazione deve essere sviluppata in modo iterativo. In ogni iterazione, il progettista deve cercare la semplicità.

Entradas relacionadas: