Nei primi due articoli abbiamo introdotto le motivazioni per il nostro progetto Photocloud, e abbiamo realizzato alcuni mockup per le user story lato utente. In questo appuntamento vedremo le user story dal lato administrator.
Use case administrator
La nostra applicazione avrà soltanto due ruoli utente:
- utente anonimo, visto la volta scorsa;
- utente administrator, che potrà creare le collezioni e modificare i contenuti del database.
Per accedere all’area di amministrazione servirà ovviamente un form di login:
Al posto che ricreare da capo tutta la sezione amministrativa, spesso la soluzione più comoda, e perfino più usabile, è modificare le pagine pubbliche in modo che mostrino alcuni controlli aggiuntivi se l’utente corrente ha effettuato la login. Ad esempio, accedendo come administrator alla pagina Elenco collezioni avremo in più il pulsante “Aggiungi”:
Il pulsante Aggiungi ci manderà dritti dritti verso un form di creazione della collezione, dove potremo inserire titolo e descrizione della stessa:
Stesso discorso per la pagina di Dettaglio Collezione, dove avremo un pulsante “Carica foto” per aggiungere nuove foto alla collezione, senza dover passare da un’altra pagina o cliccare su un menu di amministrazione:
Anche qui dopo aver cliccato sul pulsante verremo dirottati su un form per caricare la foto e specificarne titolo e descrizione:
È chiaro altresì che l’utente administrator potrà utilizzare tutte le funzionalità a disposizione degli utenti “regolari”.
Alcune limitazioni
Per ragioni puramente pratiche dovremo limitare al massimo le funzionalità implementate; il “team” di sviluppo è composto infatti da una sola persona, ovvero il sottoscritto! Per questo motivo il progetto, almeno inizialmente, avrà queste limitazioni:
- sarà possibile solamente aggiungere collezioni e foto;
- non sarà possibile cancellare o modificare contenuti, se non agendo direttamente sul database e sul file manager del Cloud Storage;
- le uniche tipologie di Cloud Storage supportate saranno quelle compatibili con le S3 API, come appunto il servizio fornito da Hostingsolutions.it.
Comunque, il progetto sarà rilasciato come open source con licenza GPL, questo darà la possibilità a chiunque di personalizzarlo e contribuire all’implementazione di nuove features o bugfix. Il potere dell’open source!