Dynamic Modeling - PowerPoint PPT Presentation

About This Presentation
Title:

Dynamic Modeling

Description:

Title: Dynamic Modeling Author: MARRONE Daniele Keywords: Comet, Dynamic Modeling Description: Seminario tenuto per il Corso di Ingegneria del Software II – PowerPoint PPT presentation

Number of Views:59
Avg rating:3.0/5.0
Slides: 30
Provided by: MARR75
Category:

less

Transcript and Presenter's Notes

Title: Dynamic Modeling


1
Dynamic Modeling
  • COMET

MARRONE DANIELE
2
Dynamic Modeling
  • Riguarda gli aspetti dinamici (o comportamentali)
    del sistema
  • come gli oggetti interagiscono tra loro
  • come un oggetto state-dependent viene definito
    tramite una finite-state-machine

3
Dynamic Modeling
  • Viene fatta a partire dagli use-case,
    determinando le interazioni tra gli oggetti che
    vi partecipano
  • Si basa sullo scambio di messaggi tra oggetti

4
Messaggi
  • Rappresentano le informazioni scambiate tra gli
    oggetti
  • Un messaggio e un evento associato a dei dati
  • Il nome del messaggio corrisponde al nome
    dellevento
  • I dati associati vengono chiamati attributi del
    messaggio

5
Messaggi
  • Sintassi
  • Message event(message attribute)
  • Esempi di messaggi
  • ATM Card Inserted(Card ID, Expiration Date)
  • Card Ejected

6
Rappresentazione
  • Linterazione tra oggetti e rappresentata
    tramite
  • Interaction Diagram
  • Collaboration Diagram
  • Sequence Diagram
  • Message Sequence Description

7
Interaction Diagram
  • Viene sviluppato per ogni use-case
  • Si determinano gli oggetti che vi partecipano
  • Si rappresenta la sequenza di messaggi scambiati

8
Collaboration Diagram
  • La sequenza temporale dei messaggi viene
    rappresentata tramite numeri progressivi che
    etichettano i messaggi
  • Mette in risalto le relazioni tra gli oggetti

9
ltltexternal input Devicegtgt Shaft
Sh1Shaft Input
ltltinput device Interfacegtgt ShaftInterface
Sh1.1Update
ltltentitygtgt ShaftRotationCount
Collaboration diagram per lo use-case Update
Shaft Rotation
10
Sequence Diagram
  • La sequenza temporale dei messaggi viene
    rappresentata graficamente dallalto in basso
    nel diagramma
  • Non da una rappresentazione chiara della
    relazione tra gli oggetti

11
Sequence Diagram
  • Nella fase di analisi nessuna assunzione circa
    lattivazione degli oggetti e presa
  • Gli oggetti vengono rappresentati come passivi
  • Gli attori vengono rappresentati come attivi

12
ltltexternal input Devicegtgt Shaft
ltlt input device interfacegtgt ShaftInterface
ltlt entitygtgt ShaftRotationCount
Sh1Shaft Input
Sh1.1Update
Sequence diagram per lo use-case Update Shaft
Rotation
13
Use case e scenario
  • Uno scenario è uno specifico percorso attraverso
    uno use-case
  • Un Interaction Diagram rappresenta uno scenario
  • Si usano condizioni per rappresentare più scenari
    nello stesso Interaction Diagram

14
Generic e Instance Form
  • Due forme di Interaction Diagram
  • Instance form
  • descrive in dettaglio uno specifico scenario
  • Generic form
  • descrive tutte le possibili iterazioni

15
ltlt subsystemgtgt BankServer
ltlt I/O device interface CardReaderInterface
ltltexternal I/O device gtgt CardReader
ltlt state dependent controlgtgt ATMControl
ltltentity gtgt ATMCard
ltltuser interfacegtgt CustomerInterface
ltltentitygtgt ATMTransaction
ATMCustomer
Esempio del banking system
16
Etichette dei messaggi
  • Sintassi
  • Sequence expression, message name, argument list
  • dove sequence expression consiste di
  • message sequence number, recurrence

17
Message Sequence Number
  • Sintassi
  • first letter number second letter
  • Esempi
  • A1
  • Use1.1a

18
Message Sequence Number
  • first letter number second letter
  • un parametro opzionale
  • lidentificatore di uno use-case specifico

19
Message Sequence Number
  • first letter number second letter
  • La parte intera del numero identifica un evento
    esterno
  • I numeri decimali rappresentano eventi interni

20
Message Sequence Number
  • first letter number second letter
  • La sequenza temporale e data dalle relazioni di
    grandezza tra i numeri
  • Esempio di sequenza
  • A1, A1.1, A1.1.1, A.1.2

21
ltltI/O device interfacegtgt CardReaderInterface
ltltexternal I/O devicegtgt CardReader
1Card Reader Input
1.1Card Input Data
ltltentitygtgt ATMCard
2.1Card Request
2.2Card Data
1.4Pin Prompt
ltltuser interfacegtgtCustomerInterface
2.8Selection Menu
2PIN Input
ATMCustomer
Collaboration diagram parziale per lo use-case
Valid PIN
22
Message Sequence Number
  • first letter number second letter
  • È un parametro opzionale
  • Identifica casi speciali
  • Messaggi concorrenti (con una lettera minuscola)
  • Messaggi alternativi (con una lettera maiuscola)

23
ltltsubsystemgtgt BankServer
2.6Valid
Valid PIN
ltltstate dependent controlgtgt ATMControl
2.7Display
2.7aUpdate
Status
Menu
ltltuser interfacegtgt CustomerInterface
ltltentitygtgt ATMTransaction
Esempio di messaggi concorrenti
24
ltltsubsystemgtgt BankServer
2.5,2.6A.8
2.6AInvalid Invalid PIN
2.6ValidValid PIN
Validate PIN(Customer Info)
ltltstate dependent Controlgtgt ATMControl
Esempio di messaggi alternativi
25
Recurrence
  • E un parametro opzionale
  • Serve per rappresentare esecuzioni
  • Condizionali
  • Iterative

26
Esecuzioni condizionali
  • Sintassi
  • condition-clause
  • Identifica un ramo condizionale
  • Il messaggio viene mandato solo se la condizione
    e verificata

27
ltltsubsystemgtgt BankServer
2.6ValidValid PIN
2.5Validate PIN(Customer Info)
ltltstate dependent Controlgtgt ATMControl
Esempio di messaggio condizionale
28
Esecuzioni iterative
  • Sintassi
  • iteration-clause
  • Specifica esecuzioni ripetute

29
ltltsubsystemgtgt BankServer
2.5,2.6A.8
2.6AInvalid Invalid PIN
2.6ValidValid PIN
Validate PIN(Customer Info)
ltltstate dependent Controlgtgt ATMControl
Esempio di messaggio iterativo
30
Message Sequence Description
  • E una descrizione a parole
  • Descrive come gli oggetti partecipano ad uno
    use-case
  • Fornisce informazioni addizionali non
    rappresentabili tramite i diagrammi
Write a Comment
User Comments (0)
About PowerShow.com