Anteprima
Vedrai una selezione di 20 pagine su 91
Progettazione del software Pag. 1 Progettazione del software Pag. 2
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 6
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 11
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 16
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 21
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 26
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 31
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 36
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 41
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 46
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 51
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 56
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 61
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 66
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 71
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 76
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 81
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 86
Anteprima di 20 pagg. su 91.
Scarica il documento per vederlo tutto.
Progettazione del software Pag. 91
1 su 91
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

Descrizione delle associazioni

A B· è un elemento/riga di una transazione

A B· è un prodotto o servizio per una transazione (o elemento/riga) di

A B· è un ruolo relativo a una transazione

A B· è contenuto fisicamente o logicamente in

A B· è una parte fisica o logica di

A B· è una descrizione per

A B· è noto/registrato/memorizzato/riportato/acquisito in

A B· usa o gestisce o possiede

A B· è un membro di

A B· è una sotto-unità organizzativa di

A B·Le associazioni hanno la notazione UML di un segmento con il nome della associazione, e alle due estremità dell’associazione (vicino ai “ruoli”), le molteplicità, e la navigabilità.

Le o sono dei numeri o intervalli che indicano quante istanze di molteplicità cardinalità delle associazioni una classe sono collegate ad una istanza di un’altra classe mediante il collegamento descritto dall’associazione.

Le associazioni possono essere classificate come:
  • molti a uno
  • uno a molti
  • molti a molti
  • uno a uno
La partecipazione può anche essere opzionale. Fra più classi possono sussistere delle associazioni multiple, cioè più associazioni che esistono contemporaneamente, come ad esempio le classi "Volo" e "Aeroporto" dove ci può essere l'associazione "Vola da" e "Vola può essere opportuno segnare un nome di ruolo (opzionale)" che ne rappresenta il ruolo (es. destinazione per indicare l'aeroporto di destinazione). Le associazioni possono anche essere riflessive, cioè riferite alla stessa classe, descrivendo ruoli diversi (come genitore-figlio per Persona: nomi ruoli). Si può anche inserire una freccia di direzione in lettura che indica come leggere l'associazione. In UML esistono anche relazioni N-arie ma in fase di progettazione non risultano.

Un'associazione è un'associazione i cui collegamenti derivati possono essere derivati da altre informazioni della modellazione di dominio, ad es. uno studente può frequentare solo gli insegnamenti offerti dal corso di studio a cui è iscritto - vincolo del nostro modello che non è sempre necessario. La regola di associazione derivata va messa nel glossario. Non tutte le associazioni derivate vanno mostrate perché possono rendere più complicato comprendere il modello. Per indicare che un'associazione è derivata, bisogna anteporre al nome della stessa uno slash (/).

Fra le associazioni ci sono relazioni particolari come l'aggregazione, che suggerisce una relazione risulta maggiormente intero-parte; importante mostrare la una forma forte di composizione, aggregazione intero-parte (es. vendita - righe di vendita), rappresentata con un rombo pieno accanto alla classe intero. In essa: ciascuna parte appartiene a un solo

composto;· ciascuna parte deve sempre appartenere a un composto· la vita delle parti è limitata da quella del composto;·5.2 Identificare gli attributiGli rappresentano valori, proprietà elementari associati ad una classe, è quindi importante capireattributicome identificarli; in UML non esistono attributi associati alle associazioni, ma solo attributi associati alleclassi ed è utile mostrare attributi per cui i requisiti indicano la necessità di ricordare informazioni o datiGli attributi devono avere un tipo semplice, elementare come stringhe o date, mentre informazionicomplesse vanno rappresentate sotto forma di due classi e associazione. È opportuno evitare l’utilizzo di unattributo per associare questa classe ad un’altra come se fossero chiavi esterne; diversamente, per quegliattributi che sono frutto di funzioni (somme, prodotti, etc) si usi la notazione anteponendo uno slash nelnome5.3 Modello di dominio

Il modello di dominio per lo studio di caso POS è mostrato nei seguenti diagrammi con notazione UML. Tutti questi elementi andrebbero rappresentati più propriamente in un singolo diagramma (ultima immagine a destra):

6 Operazioni di Sistema e Contratti

6.1 Operazioni di sistema e diagrammi di sequenza di sistema

Nel contesto della abbiamo appreso come modellare le informazioni mentre nel modellazione di dominio contesto dell'OOA apprenderemo invece come modellare le funzioni e i comportamenti del sistema, dove una è intesa come la facoltà di agire sulle informazioni. Un primo step di modellazione funzione di sistema delle funzioni e dei comportamenti di un sistema è realizzata durante la scrittura dell'analisi dei requisiti, in particolare i passi del caso d'uso che implicano funzioni; si tratta di una modellazione informale che sarà formalizzata all'interno dell'analisi orientata agli oggetti.

attraverso le rappresentate operazioni di sistema, all'interno di un diagramma di sequenza di sistema. Durante l'esecuzione di un caso d'uso, le interazioni attraverso cui gli attori generano input verso il sistema per richiedere l'esecuzione di operazioni di sistema sono chiamati esterni al sistema; per eventi di sistema, ciascun evento di sistema, il sistema genera un'operazione ovvero quelle opereazioni che il sistema è chiamato a eseguire, importanti perché la loro identificazione definisce il modo in cui gli utenti potranno interagire col sistema e da cui, di conseguenza, dipende strettamente l'interfaccia pubblica del sistema. Nel caso del il cassiere che inserisce il sistema POS, codice di un articolo rappresenta una richiesta di registrazione di una nuova riga di vendita, dove l'azione del cassiere è un evento di sistema mentre la registrazione della nuova riga rappresenta un'operazione di sistema. Nella notazione UML,un è definito come qualcosa di importante o degno di nota, mentre un'operazione, sempre in UML, rappresenta una trasformazione e/o una interrogazione che un oggetto può essere chiamato a eseguire. Quando usiamo la notazione "di sistema" facciamo riferimento ad una blackbox senza entrare nel dettaglio del sistema stesso. Anche le operazioni di sistema e quindi le funzioni, possono essere identificate attraverso l'analisi linguistica e l'ispezione dei casi d'uso, individuando tutti eventi di sistema che daranno luogo ad operazioni di sistema. Nell'esempio trattati nella VL sono stati identificati quattro eventi di sistema che danno luogo a quattro operazioni di sistema, ovvero: - il cassiere interagisce col sistema per comunicare l'inizio di una nuova vendita - il cassiere interagisce col sistema per aggiungere un articolo alla vendita in corso - il cassiere interagisce col sistema per

comunicare la conclusione della vendita in corso

endSale:· il cassiere interagisce col sistema per dire che il cliente pagherà in contanti

makeCashPayment:·Una volta individuate queste interazioni, sono rappresentate attraverso un diagramma di sequenza di(SSD), un tipo particolare di diagramma di sequenza UML che descrive eventi e operazioni di sistema e il loro ordine nell’ambito di uno specifico scenario (n.d.r. quello di successo) di un caso d’uso

6.2 Contratti delle operazioni

I contratti delle operazioni sono un modo per modellare in modo formale il comportamento di un sistema e, in particolare, il descrive l’effetto prodotto dall’esecuzione dicontratto di un’operazione di sistemaquell’operazione di sistema in termini di cambiamenti distato del sistema. Il comportamento del sistema èampiamente descritto all’interno del caso d’uso, mentrenella scrittura del contratto sono formalizzati i dettagli.Operando

nel contesto dell'OOA, la descrizione del comportamento del sistema deve essere indipendente da ogni possibile implementazione del software; rappresenteremo i cambiamenti di stato in termini di oggetti, collegamenti e attributi del modello di dominio. Il modello di dominio e i diagrammi di sequenza sono due elaborati d'analisi sostanzialmente indipendenti, il cui unico legame è rappresentato proprio dai contratti delle operazioni. Ogni contratto di una operazione è composto da tre parti: - l'operazione: prototipo e/o firma dell'operazione con i suoi parametri - le ipotesi significative circa lo stato del sistema prima dell'operazione - le precondizioni: la sezione più importante di ogni contratto è questa perché ciascuna condizione descrive un cambiamento di stato degli oggetti del modello di dominio, in seguito all'esecuzione.

dell'operazione di sistema

I cambiamenti di stato descritti nelle post-condizioni, possono essere di tre tipi proprio perché il modello di contiene tre solo tipi di elementi:

  • creazione o distruzione di un oggetto;
  • formazione o rottura di un collegamento;
  • modifica del valore di un attributo.

Per pensare alle post-condizioni bisogna osservare e descrivere le differenze fra il prima e il dopo dello stato del sistema, ricordando sempre che i vanno scritti da un punto di vista concettuale essendo nella contrattifase di OOA e quindi utili a modellare oggetti del mondo reale e non oggetti software.

Esempio:

Verso la progettazione a oggetti

7.1 Architettura a strati

L'architettura è l'insieme delle decisioni significative sull'organizzazione principale di un sistema software; può essere organizzata in più modi tra cui quella più comune è l'architettura che prevede un sistema a strati organizzato

come una sequenza verticale di strati. Ogni strato è un elemento software ed è costituito, grosso modo, da un insieme di classi e ha specifiche responsabilità; è tipico avere uno strato che si occupa dell'interfaccia utente, uno della logica applicativa e uno dei servizi tecnici. Le responsabilità degli strati sono coese e la dipendenza tra tutti gli strati è solo dall'alto verso il basso; gli strati più alti possono dipendere da strati più bassi a cui possono fare richieste invocando servizi degli strati più in basso, ma non il contrario. Se il sistema è organizzato secondo questa stratificazione, l'utente interagisce col sistema solo a
Dettagli
A.A. 2020-2021
91 pagine
1 download
SSD Ingegneria industriale e dell'informazione ING-INF/05 Sistemi di elaborazione delle informazioni

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher c.dipietro1987 di informazioni apprese con la frequenza delle lezioni di Analisi e progettazione del software e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università telematica internazionale UNINETTUNO di Roma o del prof Cabibbo Luca.