Ingegneria del software risposte chiuse
Ingegneria del software
Lezione 002
01. Una delle seguenti affermazioni, relative al concetto di modello, non è corretta. Quale?
Lo sviluppo di un sistema software richiede di identificare e descrivere il sistema come un insieme di modelli che affrontano i problemi del progettista.
I metodi orientati agli oggetti combinano il modello dell'applicazione e quello delle soluzioni.
Il modello delle soluzioni è il risultato di una trasformazione del modello dell'applicazione.
Il modello dell'applicazione viene inizialmente costruito come un insieme di oggetti e relazioni, che rappresentano i concetti del mondo reale che devono essere manipolate.
02. Una delle affermazioni che seguono non è corretta. Quale?
Un prodotto può essere un sistema, un modello o un documento.
Una risorsa può essere un partecipante, un periodo di tempo o della attrezzatura.
Un compito consuma risorse e produce un prodotto.
Un progetto di sviluppo di un sistema software è articolato in compiti (task), e ogni compito è composto da un certo numero di attività.
03. Che significato assume il termine ruolo nel contesto di un progetto di sviluppo software?
Con il termine ruolo indichiamo il singolo compito assegnato ad un utente in fase di elicitazione dei requisiti.
Con il termine ruolo indichiamo l'elenco ordinato delle procedure che regolano lo sviluppo del software.
Con il termine ruolo indichiamo l'insieme dei casi di test assegnati ad un utente pilota in fase di validazione del sistema.
Con il termine ruolo indichiamo un insieme di responsabilità nel progetto del sistema.
04. Che cos'è un deliverable?
È un semilavorato ad uso interno da parte di altri sviluppatori.
È un modello assimilabile ad un design pattern.
È una componente software riusabile.
È un documento o un prototipo da sottoporre al committente.
05. Una delle seguenti affermazioni, relative al concetto di modello, non è corretta. Quale?
Un modello è utile quando le dimensioni del sistema, o il suo livello di complessità, o ancora problemi di accessibilità e sicurezza lo rendono difficilmente manipolabile in modo diretto.
Un modello è una rappresentazione astratta di un sistema.
Il modello di un sistema software include fin dalle prime fasi di sviluppo la specifica del dominio delle soluzioni, che spiega come dominare la complessità delle possibili soluzioni.
I progettisti di un sistema software costruiscono il modello di un sistema che ancora non esiste.
06. Che cos'è, nel contesto dell'Ingegneria del Software, una metodologia? In che cosa si differenzia da un metodo?
07. Che cos'è, nel contesto dell'Ingegneria del Software, una notazione? Fornisci un esempio.
Lezione 003
01. In merito all'attività di progettazione del sistema, una delle affermazioni seguenti non è corretta. Quale?
Durante il system design gli sviluppatori definiscono gli obiettivi del design e decompongono il sistema in sottosistemi più piccoli.
Durante il system design vengono selezionati il database management system e il controllo di flusso globale.
Durante il system design vengono selezionate la piattaforma hw/sw e le politiche di accesso.
Per consentire agli utenti di contribuire alla validazione del modello a oggetti del system design, questo viene rappresentato in una notazione a loro facilmente comprensibile.
02. In merito all'attività di progettazione degli oggetti, una delle affermazioni seguenti non è corretta. Quale?
Durante l'object design gli sviluppatori definiscono gli oggetti del dominio delle soluzioni.
L'attività di object design include la selezione di componenti riusabili.
L'attività di object design include la descrizione precisa degli oggetti e delle interfacce dei sottosistemi.
La fase di object design ha lo scopo di colmare la distanza tra il modello dell'analisi e la piattaforma hw/sw identificata nella fase di elicitazione dei requisiti.
03. In merito all'attività di elicitazione dei requisiti, una delle affermazioni seguenti non è corretta. Quale?
Le tipologie di attore sono tre: l'utente, il committente e lo sviluppatore.
Il risultato dell'attività di elicitazione dei requisiti è una descrizione del sistema in termini di attori e casi d'uso.
I casi d'uso sono sequenze generali di eventi che descrivono tutte le possibili interazioni col sistema per una data funzionalità.
Durante l'elicitazione dei requisiti il cliente e gli sviluppatori definiscono lo scopo del sistema.
04. In merito all'attività di analisi dei requisiti, una delle affermazioni seguenti non è corretta. Quale?
I casi d'uso prodotti nella fase di elicitazione dei requisiti vengono tradotti in un modello relazionale che descrive la struttura delle classi del sistema, ma trascura per il momento la definizione dell'interfaccia utente.
Durante l'analisi gli sviluppatori producono un modello del sistema che sia corretto, completo, consistente e non ambiguo.
Il risultato è un modello del sistema annotato con attributi, operazioni e associazioni, e descritto in termini sia strutturali che dinamici.
Eventuali ambiguità e inconsistenze nei casi d'uso vengono risolte con la collaborazione dell'utente.
05. Il ruolo di manager di un progetto di sviluppo software richiede lo svolgimento di numerose attività. Quale, tra quelle elencate di seguito, è considerata la più critica, e richiede in genere il maggiore investimento di tempo?
La gestione del rationale.
Il monitoraggio dello stato di avanzamento del progetto.
La gestione della configurazione software.
Il coordinamento delle comunicazioni tra i partecipanti del gruppo di lavoro.
06. In merito all'attività di validazione (testing), una delle affermazioni seguenti non è corretta. Quale?
Durante i test di integrazione i sottosistemi sono aggregati e confrontati con il modello del system design.
Durante lo unit testing gli sviluppatori confrontano il modello dell'object design con ogni oggetto e sottosistema.
Durante il system testing il sistema viene eseguito con casi tipici ed eccezioni e confrontato col modello dei requisiti.
Durante il testing gli utenti cercano differenze tra il sistema e i suoi modelli, eseguendo il sistema con campioni di dati di output.
Lezione 004
01. Nel seguito sono elencate alcune possibili caratteristiche della notazione adottata in un progetto. Solo tre di queste caratteristiche sono indicate, nella lezione 4, come indispensabili. Qual è l'intrusa?
La notazione deve essere ben compresa dai partecipanti al progetto.
La notazione deve essere adeguata a rappresentare aspetti specifici del sistema.
La notazione deve avere una semantica ben definita.
La notazione deve essere direttamente traducibile nel linguaggio di programmazione adottato nel progetto.
02. Il diagramma che segue descrive, in termini introduttivi, la fase di analisi dei requisiti: Che etichetta deve essere specificata nel box con il punto interrogativo?
Casi di test
Modello delle classi
Casi d'uso
Modello dinamico
03. Il diagramma seguente descrive in termini introduttivi la fase di system design: Che etichetta deve essere inserita nel box con il punto interrogativo?
Modello dinamico
Elicitazione dei requisiti
Casi di test
Casi d'uso
04. Il diagramma che segue descrive in termini introduttivi la fase di object design: Che etichetta deve essere inserita nel box con il punto interrogativo?
Casi di test
Modello dinamico
Casi d'uso
Decomposizione in sottosistemi
05. In merito al modello dinamico, una delle affermazioni che seguono non è corretta. Quale?
I diagrammi di interazione descrivono il comportamento interno del sistema come una sequenza di messaggi scambiati tra un insieme di oggetti.
I diagrammi di attività descrivono il comportamento in termini di flussi di controllo e di flussi dei dati.
I diagrammi di sequenza descrivono l'ordine in cui i processi paralleli devono essere serializzati.
I diagrammi di stato descrivono il comportamento nei termini degli stati che oggetti individuali possono assumere, e delle transizioni tra tali stati.
06. In merito ai diagrammi UML dei casi d'uso, una delle affermazioni che seguono non è corretta. Quale?
L'identificazione di attori e casi d'uso ha come effetto la delimitazione dei confini del sistema.
I casi d'uso sono utili nelle fasi di elicitazione dei requisiti e di analisi per rappresentare le funzionalità del sistema. Essi mettono a fuoco il comportamento del sistema dal punto di vista dello sviluppatore.
Un attore descrive un'entità che interagisce col sistema: un utente, un altro sistema, l'ambiente fisico in cui il sistema si trova ecc.
Un caso d'uso descrive una funzione che, offerta dal sistema, produce un risultato visibile per un attore.
07. In merito ai diagrammi UML delle classi, una delle affermazioni che seguono non è corretta. Quale?
I diagrammi delle classi descrivono il sistema in termini di oggetti, classi, attributi, operazioni e associazioni.
Un oggetto è dotato di uno stato, che include i valori dei suoi attributi e i collegamenti (link) con altri oggetti.
Gli oggetti sono astrazioni che specificano la struttura e il comportamento in comune ad un insieme di classi.
I diagrammi delle classi sono usati per descrivere la struttura di un sistema.
08. In merito ai diagrammi UML delle interazioni, una delle affermazioni che seguono non è corretta. Quale?
I diagrammi delle interazioni consentono di identificare ulteriori oggetti partecipanti nel caso d'uso.
I diagrammi delle interazioni consentono di formalizzare il comportamento dinamico del sistema.
I diagrammi delle interazioni consentono di visualizzare le comunicazioni tra gli oggetti.
I diagrammi delle interazioni consentono di modellare le caratteristiche grafiche degli oggetti boundary.
09. In merito ai diagrammi UML degli stati, una delle affermazioni che seguono non è corretta. Quale?
I diagrammi degli stati descrivono il comportamento dinamico di un singolo oggetto.
Dato uno stato, una transizione identifica uno stato futuro in cui l'oggetto può portarsi.
Uno stato rappresenta un particolare insieme di valori che gli attributi dell'oggetto possono assumere.
I diagrammi degli stati sono rappresentati mediante grafi diretti aciclici (DAG).
10. In merito ai diagrammi UML delle attività, una delle affermazioni che seguono non è corretta. Quale?
L'esecuzione di un'attività può essere innescata da un evento esterno.
L'esecuzione di un'attività può essere innescata dalla sopravvenuta disponibilità di un oggetto.
Un diagramma di attività descrive il comportamento di un utente in base ai compiti che lo stesso utente affronta.
L'esecuzione di un'attività può essere innescata dal completamento di un'altra attività.
11. Quale modello, tra quelli elencati nel seguito, non appartiene all'insieme dei modelli che UML si propone di rappresentare?
Il modello funzionale
Il modello dinamico
Il modello degli oggetti
Il modello costi-benefici
Lezione 005
01. In merito al concetto di operazione, una delle affermazioni che seguono non è corretta. Quale?
Le operazioni sono definite nell'ambito di una classe, e possono essere applicate a tutte le istanze di quella classe.
Le operazioni definite in una sottoclasse possono essere ereditate e applicate alle istanze dirette della superclasse.
È comunque possibile ridefinire in una sottoclasse un'operazione già definita in una superclasse.
Le operazioni definite in una superclasse sono automaticamente ereditate e applicabili alle istanze delle sottoclassi.
02. Considera il diagramma mostrato qui sotto: Tra le affermazioni che seguono, una non è corretta. Quale?
OraGMT è un'operazione.
getOra() è un messaggio.
OraGMT è un messaggio.
getDifferenzaOraria() è un messaggio.
03. In merito al concetto di attributo, una delle affermazioni che seguono non è corretta. Quale?
Gli attributi di un oggetto sono sempre accessibili in lettura ad altre parti del sistema.
Gli attributi di un oggetto possono essere accessibili ad altre parti del sistema.
Un attributo è dotato di un nome univoco e di un tipo.
Una classe definisce gli attributi di cui sono dotate tutte le sue istanze.
04. In merito al concetto di prototipo, una delle affermazioni che seguono non è corretta. Quale?
Ogni prototipo viene modificato in base alle indicazioni emerse dagli utenti.
Ogni prototipo viene presentato ad un potenziale utente perché lo falsifichi.
Gli sviluppatori costruiscono vari prototipi rappresentativi del comportamento finale del sistema.
Per poter essere consegnato all'utente, un prototipo deve prima essere sottoposto a determinati controlli di qualità e completezza.
05. In merito al concetto di classe astratta, una delle affermazioni che seguono non è corretta. Quale?
Una classe astratta modella attributi e operazioni condivise da più sotto-classi.
Una classe astratta può essere istanziata al più una volta (oggetto singleton)
In UML, le classi astratte sono rappresentate con il nome in corsivo.
Le classi astratte spesso rappresentano concetti generalizzati nel dominio dell'applicazione.
06. In merito al concetto di classe nella modellizzazione orientata agli oggetti e nei linguaggi di programmazione OO, una delle affermazioni che seguono non è corretta. Quale?
Una classe è un'astrazione.
Una classe incapsula sia la struttura che il comportamento.
Una classe può essere istanziata da numerosi oggetti.
Una classe non può essere definita in modo incrementale rispetto ad un'altra classe preesistente.
07. Che cosa è un oggetto?
Un'entità che incapsula stato e comportamento
Una collezione di classi che condividono la stessa struttura
Una collezione di classi che condividono lo stesso comportamento
Un'astrazione che specifica gli attributi e i comportamenti di un insieme di classi
08. In merito al concetto di sistema, una delle affermazioni che seguono non è corretta. Quale?
La decomposizione termina al livello delle singole operazioni, quando le dimensioni del sottosistema sono diventate sufficientemente semplici da renderlo implementabile con una singola istruzione del linguaggio di programmazione.
La decomposizione di un sistema in sottosistemi può essere ricorsivamente applicata ai sottosistemi.
Alcune parti di un sistema possono a loro volta essere considerate sottosistemi.
Un sistema è un insieme organizzato di parti tra loro comunicanti.
09. In merito al concetto di oggetto, una delle affermazioni che seguono non è corretta. Quale?
Un oggetto può essere istanza diretta di due o più classi distinte.
In UML, un oggetto è rappresentato come un rettangolo col nome sottolineato.
Un oggetto è dotato di identità.
Un oggetto memorizza i valori dei propri attributi.
10. In merito al concetto di vista (view), una delle affermazioni che seguono non è corretta. Quale?
Una vista è la rappresentazione di un sottoinsieme di un modello.
Una vista evidenzia gli aspetti rilevanti di un modello secondo una determinata prospettiva.
Due viste su uno stesso modello non possono sovrapporsi, neppure parzialmente: devono essere sempre mutuamente esclusive.
Una vista ha lo scopo di migliorare la comprensibilità di un modello complesso.
11. In merito al concetto di tipo di dato, una delle affermazioni che seguono non è corretta. Quale?
Un tipo di dato è un'astrazione.
Un tipo di dato ha un nome univoco.
Un tipo di dato può definire o una struttura, oppure un insieme di operazioni, ma non entrambe le cose.
Un tipo di dato denota un insieme di valori.
Lezione 006
01. In merito alle differenze tra il concetto di scenario e quello di caso d'uso, solo una delle seguenti affermazioni è corretta. Quale?
Un caso d'uso è un'istanza particolare di uno scenario
Sia i casi d'uso che gli scenari sono istanze di un diagramma delle classi UML
Uno scenario è un'istanza particolare di un caso d'uso
“scenario” “caso d'uso”
Sono la stessa cosa: i concetti di e di sono sinonimi in Ingegneria del Software
02. Quale, tra le entità sotto elencate, in genere non fa parte della descrizione testuale di un caso d'uso?
Gli attori partecipanti
Le condizioni d'ingresso e di uscita
Il flusso degli eventi
Il diagramma degli stati
03. Quale, tra le entità sotto riportate, non è uno dei tipi di relazione che i casi d'uso possono includere?
Comunicazione
Inclusione
Esclusione
Estensione
04. In merito alle relazioni che i casi d'uso possono includere, una delle affermazioni che seguono non è corretta. Quale?
Le relazioni di comunicazione associano un attore ad un caso d'uso.
Una relazione di estensione indica che un'istanza di un caso d'uso «estensore» può includere il comportamento specificato dal caso d'uso «esteso».
Due casi d'uso sono in relazione di inclusione se uno dei due include l'altro nel suo flusso degli eventi.
Mediante una relazione di ereditarietà un caso d'uso può specializzare un altro caso d'uso più generale, aggiungendo dettagli.
05. In merito al concetto di attore nei diagrammi dei casi d'uso UML, una delle affermazioni che seguono non è corretta. Quale?
I diagrammi dei casi d'uso descrivono il comportamento del sistema dal punto di vista degli attori.
Gli attori sono rappresentati nei diagrammi dei casi d'uso da questo simbolo:
Ogni attore è dotato di nome univoco e di descrizione.
Un database può essere un att
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.