CineMates20 è una piattaforma per gli appassionati di cinema, la soluzione è composta da due client, client mobile (Android) destinato agli utenti e client Desktop destinato agli amministatori.
- Registrarsi/entrate con email, account Facebook e account Google.
- Creare liste personalizzate di film, con il titolo e la descrizione.
- Cercare/visualizzare/aggiungere alle proprie liste i film.
- Cercare/visualizzare/aggiungere altri utenti, con le loro liste ed eventuali film in comune.
- Segnalare le liste, in caso questi violano le normative della community.
- Entrare nel sistema con credenziali fornite dal tecnico.
- Visualizzare e gestire le segnalazioni effettuati dai utenti.
Servizio viene fornito sviluppando due client in Java, e come una altrernativa al server, viene implementata una soluzione serverless grazie al utilizzo di questi sistemi cloud (per documentazione dettagliata consultate file "documentazione.pdf"):
- AWS cloud: Cognito, API Gateway, Lambda (utilizzando Python 3.7), Simple Storage Service (S3), Relational Database Postgress (RDB) e CloudWatch.
- Altri: Google sing-in, Facebook sing-in e OMDb API.
Di seguito viene fornita una panoramica dell'architettura esterna:
Internamente per entrambi client viene utilizzato il pattern MVVM (Model-View-ViewModel):