Attività: Perfezionamento dell'architettura
Questa attività completa l'architettura per un'iterazione.
Estende: Perfezionamento dell'architettura
DescrizioneElemento di interruzione del lavoroAssegnazione teamUtilizzo del prodotto di lavoro
Relazioni
Attività parent
Descrizione

Questa attività:

  • Fornisce le naturali attività di transizione dall'analisi per progettare attività, identificando:
    • gli appropriati elementi di progettazione dagli elementi dell'analisi
    • gli appropriati meccanismi di progettazione dai meccanismi di analisi correlati
  • Descrive l'organizzazione dell'architettura run-time e della distribuzione del sistema
  • Organizza il modello di implementazione in modo da eseguire la transizione tra il progetto e l'implementazione in modo continuo
  • Gestisce la coerenza e l'integrità dell'architettura, assicurando che:
    • i nuovi elementi del progetto identificati per l'iterazione corrente siano integrati con elementi del progetto preesistente.
    • il massimo riutilizzo di componenti disponibili e di elementi di progettazione venga raggiunto quanto prima possibile nell'impegno di progettazione.
Proprietà
Attivato da evento
Ricorrenze multiple
In corso
Facoltativo
PianificatoYes
Ripetibile
Personale

queste attività sono attuate al meglio da un piccolo team composto da membri di un team a funzionalità incrociata. Le problematiche tipicamente significative da un punto di vista dell'architettura includono l'utilizzabilità, le prestazioni, la scalabilità, la sincronizzazione del processo e del thread e la distribuzione. Il team deve anche includere membri con esperienza di dominio in grado di identificare le astrazioni chiave. Il team deve avere esperienza anche con la strutturazione a livelli e l'organizzazione del modello. Il team dovrà essere in grado di tirare fuori tutti questi disparati processi in un'architettura coesiva e coerente (quantunque preliminare).

Poiché il punto focale dello sforzo dell'architettura è lo slittamento verso problematiche di implementazione, è necessario porre maggior attenzione alle problematiche specifiche riguardanti la tecnologia. Ciò forzerà il team dell'architettura a spostare i membri o ad espandere fino ad includere persone con competenze di distribuzione (se significative da un punto di vista dell'architettura). Per poter comprendere l'impatto potenziale della struttura sul modello di implementazione e sulla facilità di integrazione, è utile avere esperti del processo di gestione della costruzione del software.

Allo stesso tempo, è essenziale che il team dell'architettura non sia grande ed esteso. Una strategia per contrastare questa tendenza è quella di mantenere un nucleo relativamente piccolo di persone con un gruppo satellite di membri estesi del team da tenere come "consulenti" su problematiche chiave. Questa struttura funziona bene anche per piccoli progetti, dove la competenza specifica può essere presa in prestito da altre organizzazioni; queste possono essere portate all'interno in presenza di problematiche specifiche.

Utilizzo
Guida all'uso

Il lavoro viene meglio eseguito in diverse sessioni, eseguite in diversi giorni (o settimane e mesi per i sistemi di grosse dimensioni). L'attenzione iniziale sarà posta sui compiti Identificazione dei meccanismi di progettazioneIdentificazione degli elementi di progettazione, con molte iterazioni con il compito Inclusione di elementi di progettazione esistenti per verificare che i nuovi elementi non duplichino la funzionalità di elementi esistenti.

Quando la progettazione emerge, i problemi di concorrenza e distribuzione vengono introdotti nei compiti Descrizione dell'architettura runtime e Descrizione distribuzione, rispettivamente. Quando questi problemi vengono considerati, potrebbero essere richieste delle modifiche agli elementi di progetto per dividere il funzionamento tra i processi, i thread o i nodi.

Quando i modelli individuali vengono perfezionati per includere le decisioni strutturali, i risultati vengono documentati nelle sezioni di viste rispettive nel documento dell'architettura software (ad esempio, quando viene raffinato il Modello di progetto, anche la Vista logica del documento dell'architettura software viene perfezionato). L'architettura risultante viene rivista.