15.06.2013 Views

Dispensa in PDF - Dipartimento di Scienze Ambientali, Informatica e ...

Dispensa in PDF - Dipartimento di Scienze Ambientali, Informatica e ...

Dispensa in PDF - Dipartimento di Scienze Ambientali, Informatica e ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Carnielli Efrem: Programmazione a componenti<br />

Unified Software Process (USP)<br />

(comportamento): l'aspetto della macch<strong>in</strong>a del sistema che utilizzo.<br />

Esempio: per accendere la macch<strong>in</strong>a devo <strong>in</strong>serire la chiave, girandola <strong>in</strong>nesco un<br />

meccanismo che provoca una sc<strong>in</strong>tilla che fa esplodere la miscela <strong>di</strong> aria e benz<strong>in</strong>a<br />

all'<strong>in</strong>terno del pistone...<br />

Di quest'ultimo gruppo fanno parte i <strong>di</strong>agrammi dei casi d'uso che ci apprestiamo<br />

a descrivere.<br />

4.2.1.2 Use Case Diagram<br />

Gli use case <strong>di</strong>agram, o <strong>di</strong>agrammi dei casi d’uso, sono <strong>di</strong>agrammi che descrivono<br />

come viene percepito il comportamento <strong>di</strong> un sistema software da parte <strong>di</strong> un<br />

utente esterno. In sostanza esprimono il comportamento del sistema nei confronti<br />

dell'utente.<br />

Le funzionalità <strong>di</strong> un sistema vengono sud<strong>di</strong>vise <strong>in</strong> transazioni (casi d’uso) utili<br />

per ciascuna delle classi <strong>di</strong> utilizzatori (attori). Questo strumento si adatta bene<br />

all’analisi dei requisiti <strong>in</strong> quanto il committente spiega le sue richieste tramite<br />

esempi, enumerando un certo numero <strong>di</strong> utilizzi.<br />

Il successo <strong>di</strong> questi <strong>di</strong>agrammi è dovuto al fatto che un'applicazione è tale perché<br />

viene utilizzata dall’utente e qu<strong>in</strong><strong>di</strong> l’analisi deve partire dall’<strong>in</strong>terazione tra utente<br />

e sistema.<br />

Gli use case <strong>di</strong>agram si basano sul concetto <strong>di</strong> stereotipo, ovvero un qualcosa a cui<br />

viene associata una semantica generalizzata, accettata da tutti. UML offre una<br />

s<strong>in</strong>tassi, alcune regole <strong>di</strong> composizione della s<strong>in</strong>tassi e una blanda semantica (il<br />

significato della s<strong>in</strong>tassi).<br />

Gli use case <strong>di</strong>agram hanno come componenti:<br />

• Attori: rappresentano le entità che <strong>in</strong>teragiscono con il sistema (e non ne<br />

sono parte).<br />

• Casi d’uso: rappresentano l'<strong>in</strong>terazione tra uno o più entità esterne e il<br />

sistema <strong>in</strong> esame.<br />

• Connessioni: relazioni che possono <strong>in</strong>staurarsi tra utenti e casi d'uso o<br />

tra casi d'uso e casi d'uso.<br />

4.2.1.2.1 Attori<br />

L’attore è un ruolo che un'entità esterna impersona nei confronti del sistema <strong>in</strong><br />

esame. L'entità esterna è tipicamente un utente ma può essere anche un altro<br />

sistema. Un attore sollecita il sistema con qualche evento e ne riceve un output.<br />

Un attore può <strong>in</strong>teragire con il sistema per mezzo <strong>di</strong> una GUI (se è un utente),<br />

oppure attraverso un <strong>in</strong>terfaccia application-to-application.<br />

Una medesima entità esterna può impersonificare più attori e viceversa lo stesso<br />

76

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!