Differences between revisions 1 and 17 (spanning 16 versions)
Revision 1 as of 2011-12-16 10:05:32
Size: 238
Comment:
Revision 17 as of 2012-03-13 13:41:27
Size: 6576
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
= Cloudy =
==== it's a good time for developing ====
Cloudy è un ambiente di sviluppo open-source e multipiattaforma che supporta diversi linguaggi di programmazione. Il software presenta caratteristiche aggiuntive rispetto ai normali ambienti di sviluppo: offre la possibilità di condividere lo spazio di lavoro con altri utenti e di interagire in tempo reale con essi. Cloudy si pone l'obiettivo di migliorare l'interazione tra programmatori per lo sviluppo software, riducendo considerevolmente la quantità di tempo necessaria per la realizzazione di applicazioni.

=== ANALISI DEI REQUISITI DEL SISTEMA: ===
1. Il sistema permette all'utente di visualizzare i documenti condivisi e di scrivere in simultanea con altri utenti.

2. Il sistema permette di creare progetti per un determinato linguaggio di programmazione e di condividerlo con gli utenti designati.

3. Il sistema permette il salvataggio e il caricamento dei progetti e dei documenti contenuti.

4. Il sistema garantisce una "chiara" visualizzazione in tempo reale del documento su cui stanno operando più utenti: cioè il testo digitato da un utente deve essere immediatamente visibile agli altri utenti che scrivono o, semplicemente, leggono.

5. Il sistema permette di agevolare e rendere "più sicura" la scrittura simultanea tra diversi utenti dando l'opportunità di gestire i diversi permessi.

6. Il sistema salva ogni azione degli utenti e la memorizza in un diario, accessibile da tutte le persone che partecipano al progetto.

7. Per agevolare l'interazione, Cloudy permette di creare "lobby" in cui gli utenti possono comunicare tramite voip.

=== ANALISI DEI REQUISITI UTENTE: ===
 * Per poter utilizzare il prodotto l'utente deve essere registrato. Per utente registrato si intende colui che ha specificato un nome utente (nickname), una password e una casella di posta elettronica.

 * La registrazione può essere effettuata dal menu che viene aperto all'avvio oppure sul sito del programma. Se l'utente è già registrato, allora può eseguire il login e iniziare a lavorare.

 * Ogni utente possiede un'area di lavoro cloud* e può creare altri progetti e gruppi di lavoro, che vengono assegnati ai progetti selezionati, oppure lavorare sui progetti a cui già partecipa.

 * Un gruppo di lavoro è costituito dagli utenti root, cioè dagli amministratori del progetto che hanno pieni poteri sull'area di lavoro e sugli altri gruppi, e da eventuali sotto-gruppi. I sotto-gruppi hanno poteri limitati e visibilità ridotta , attribuita dagli utenti root o dal gruppo sovrastante. Il sistema dei gruppi è gerarchico, quindi ogni sottogruppo ha poteri più ristretti rispetto al gruppo da cui discende.

 * Ad ogni progetto il sistema provvede a creare una room, una stanza privata ed accessibile solo a chi partecipa al progetto, nella quale gli utenti hanno la possibilità di comunicare vocalmente.

 * Durante la digitazione nel documento, ogni utente possiede un'etichetta visibile e univoca che identifica la posizione del cursore dell'utente in quel documento. E' possibile, inoltre, che un utente scelga un colore particolare colore di testo "per maggiore chiarezza".

''// è fattibile?''

''L'utente può eseguire la compilazione tra i linguaggi supportati dal server, ottenendo l'oggetto compilato o visualizzando il risultato se eseguibile.''

=== CASI D'USO: ===
1.

NOME DEL CASO D'USO: AUTENTICAZIONE UTENTE

DESCRIZIONE: Insieme delle operazioni che consistono nella registrazione dell'utente oppure log-in nel sistema.

PRIORITÀ: Massima.

PORTATA: ??

LIVELLO: Obiettivo utente.

ATTORE PRIMARIO: Utente.

PARTI INTERESSATI O INTERESSI:

- Utente: L'utente deve effettuare l'accesso se è già registrato, oppure registrarsi se è il primo utilizzo.

- Sistema: Il sistema deve memorizzare i dati dell'utente in caso di registrazione, oppure riconoscere l'utente che sta effettuando l'accesso, caricare i suoi progetti e garantire le funzionalità che offre il sistema.

PRECONDIZIONI: Il programma è stato avviato. Essere collegato alla rete Internet.

GARANZIA DI SUCCESSO (POST-CONDIZIONI): L'utente può accedere alla sua area di lavoro.

SCENARIO PRINCIPALE DI SUCCESSO (FLUSSO DI BASE):

1. Il sistema mostra l'interfaccia di autenticazione.

2. L'utente inserisce le credenziali di accesso (nome e password).

3. L'utente conferma l'avvenuta immissione dei dati.

4. Il sistema verifica l'esistenza dell'utente e controlla che la password sia corretta.

5. Il sistema mostra l'area di lavoro associata all'utente.

ESTENSIONI:

Primo scenario alternativo di successo (l'utente effettua la registrazione)

 . 2a. L'utente sceglie di effettuare la registrazione.
  . 2a.1. Il sistema mostra l'interfaccia di registrazione.
  . 2a.2. L'utente inserisce i dati richiesti. 2a.3. L'utente conferma i dati inseriti. 2a.4. Il sistema verifica che i dati non siano già esistenti nel database. 2a.5. Il sistema memorizza i dati del nuovo utente. 2a.6. Il sistema avverte l'utente dell'avvenuta registrazione. 2a.7. Ritorna al punto 1.

Secondo scenario alternativo di successo (recupero password)

 . 2a. L'utente sceglie di recuperare la password.
  . 2a.1. Il sistema mostra all'utente la schermata in cui inserire il nome dell'utente per il recupero della password. 2a.2. L'utente inserisce il dato richiesto. 2a.3. Il sistema invia la password all'email associata al nome utente. 2a.4. Il sistema notifica l'utente dell'avvenuto invio della password. 2a.5. Torna al punto 1.

Primo scenario alternativo di fallimento (l'utente sbaglia i dati di accesso)

 . 4a. I dati non esistono nel sistema.
  . 4a.1. Il sistema avverte l'utente dell'inesistenza dell'account. 4a.2. Torna al punto 1.

Secondo scenario alternativo di fallimento (registrazione di un utente già esistente)

 . 2a. L'utente sceglie di effettuare la registrazione.
  . 2a.1. Il sistema mostra l'interfaccia di registrazione. 2a.2. L'utente inserisce i dati richiesti. 2a.3. L'utente conferma i dati inseriti. 2a.4. Il sistema individua un utente con gli stessi dati. 2a.5. Il sistema avverte l'utente del fallimento della registrazione. 2a.6. Ritorna al punto 1.

REQUISITI SPECIALI (FUNZIONALI):

FREQUENZA DI RIPETIZIONE: Regolarmente

ANNOTAZIONI (VARIE):

Cloudy

it's a good time for developing

Cloudy è un ambiente di sviluppo open-source e multipiattaforma che supporta diversi linguaggi di programmazione. Il software presenta caratteristiche aggiuntive rispetto ai normali ambienti di sviluppo: offre la possibilità di condividere lo spazio di lavoro con altri utenti e di interagire in tempo reale con essi. Cloudy si pone l'obiettivo di migliorare l'interazione tra programmatori per lo sviluppo software, riducendo considerevolmente la quantità di tempo necessaria per la realizzazione di applicazioni.

ANALISI DEI REQUISITI DEL SISTEMA:

1. Il sistema permette all'utente di visualizzare i documenti condivisi e di scrivere in simultanea con altri utenti.

2. Il sistema permette di creare progetti per un determinato linguaggio di programmazione e di condividerlo con gli utenti designati.

3. Il sistema permette il salvataggio e il caricamento dei progetti e dei documenti contenuti.

4. Il sistema garantisce una "chiara" visualizzazione in tempo reale del documento su cui stanno operando più utenti: cioè il testo digitato da un utente deve essere immediatamente visibile agli altri utenti che scrivono o, semplicemente, leggono.

5. Il sistema permette di agevolare e rendere "più sicura" la scrittura simultanea tra diversi utenti dando l'opportunità di gestire i diversi permessi.

6. Il sistema salva ogni azione degli utenti e la memorizza in un diario, accessibile da tutte le persone che partecipano al progetto.

7. Per agevolare l'interazione, Cloudy permette di creare "lobby" in cui gli utenti possono comunicare tramite voip.

ANALISI DEI REQUISITI UTENTE:

  • Per poter utilizzare il prodotto l'utente deve essere registrato. Per utente registrato si intende colui che ha specificato un nome utente (nickname), una password e una casella di posta elettronica.
  • La registrazione può essere effettuata dal menu che viene aperto all'avvio oppure sul sito del programma. Se l'utente è già registrato, allora può eseguire il login e iniziare a lavorare.
  • Ogni utente possiede un'area di lavoro cloud* e può creare altri progetti e gruppi di lavoro, che vengono assegnati ai progetti selezionati, oppure lavorare sui progetti a cui già partecipa.
  • Un gruppo di lavoro è costituito dagli utenti root, cioè dagli amministratori del progetto che hanno pieni poteri sull'area di lavoro e sugli altri gruppi, e da eventuali sotto-gruppi. I sotto-gruppi hanno poteri limitati e visibilità ridotta , attribuita dagli utenti root o dal gruppo sovrastante. Il sistema dei gruppi è gerarchico, quindi ogni sottogruppo ha poteri più ristretti rispetto al gruppo da cui discende.
  • Ad ogni progetto il sistema provvede a creare una room, una stanza privata ed accessibile solo a chi partecipa al progetto, nella quale gli utenti hanno la possibilità di comunicare vocalmente.
  • Durante la digitazione nel documento, ogni utente possiede un'etichetta visibile e univoca che identifica la posizione del cursore dell'utente in quel documento. E' possibile, inoltre, che un utente scelga un colore particolare colore di testo "per maggiore chiarezza".

// è fattibile?

L'utente può eseguire la compilazione tra i linguaggi supportati dal server, ottenendo l'oggetto compilato o visualizzando il risultato se eseguibile.

CASI D'USO:

1.

NOME DEL CASO D'USO: AUTENTICAZIONE UTENTE

DESCRIZIONE: Insieme delle operazioni che consistono nella registrazione dell'utente oppure log-in nel sistema.

PRIORITÀ: Massima.

PORTATA: ??

LIVELLO: Obiettivo utente.

ATTORE PRIMARIO: Utente.

PARTI INTERESSATI O INTERESSI:

- Utente: L'utente deve effettuare l'accesso se è già registrato, oppure registrarsi se è il primo utilizzo.

- Sistema: Il sistema deve memorizzare i dati dell'utente in caso di registrazione, oppure riconoscere l'utente che sta effettuando l'accesso, caricare i suoi progetti e garantire le funzionalità che offre il sistema.

PRECONDIZIONI: Il programma è stato avviato. Essere collegato alla rete Internet.

GARANZIA DI SUCCESSO (POST-CONDIZIONI): L'utente può accedere alla sua area di lavoro.

SCENARIO PRINCIPALE DI SUCCESSO (FLUSSO DI BASE):

1. Il sistema mostra l'interfaccia di autenticazione.

2. L'utente inserisce le credenziali di accesso (nome e password).

3. L'utente conferma l'avvenuta immissione dei dati.

4. Il sistema verifica l'esistenza dell'utente e controlla che la password sia corretta.

5. Il sistema mostra l'area di lavoro associata all'utente.

ESTENSIONI:

Primo scenario alternativo di successo (l'utente effettua la registrazione)

  • 2a. L'utente sceglie di effettuare la registrazione.
    • 2a.1. Il sistema mostra l'interfaccia di registrazione.
    • 2a.2. L'utente inserisce i dati richiesti. 2a.3. L'utente conferma i dati inseriti. 2a.4. Il sistema verifica che i dati non siano già esistenti nel database. 2a.5. Il sistema memorizza i dati del nuovo utente. 2a.6. Il sistema avverte l'utente dell'avvenuta registrazione. 2a.7. Ritorna al punto 1.

Secondo scenario alternativo di successo (recupero password)

  • 2a. L'utente sceglie di recuperare la password.
    • 2a.1. Il sistema mostra all'utente la schermata in cui inserire il nome dell'utente per il recupero della password. 2a.2. L'utente inserisce il dato richiesto. 2a.3. Il sistema invia la password all'email associata al nome utente. 2a.4. Il sistema notifica l'utente dell'avvenuto invio della password. 2a.5. Torna al punto 1.

Primo scenario alternativo di fallimento (l'utente sbaglia i dati di accesso)

  • 4a. I dati non esistono nel sistema.
    • 4a.1. Il sistema avverte l'utente dell'inesistenza dell'account. 4a.2. Torna al punto 1.

Secondo scenario alternativo di fallimento (registrazione di un utente già esistente)

  • 2a. L'utente sceglie di effettuare la registrazione.
    • 2a.1. Il sistema mostra l'interfaccia di registrazione. 2a.2. L'utente inserisce i dati richiesti. 2a.3. L'utente conferma i dati inseriti. 2a.4. Il sistema individua un utente con gli stessi dati. 2a.5. Il sistema avverte l'utente del fallimento della registrazione. 2a.6. Ritorna al punto 1.

REQUISITI SPECIALI (FUNZIONALI):

FREQUENZA DI RIPETIZIONE: Regolarmente

ANNOTAZIONI (VARIE):

Ricca Wiki: CanonacoRende (last edited 2012-03-13 16:09:25 by CanonacoRende)