Ciao a tutti,
avrei bisogno di suggerimenti per lo svolgimento di un progetto. Praticamente è la prima volta che il prof ci dà un progetto così complesso da svolgere e avrei bisogno di suggerimenti perché non so proprio da dove cominciare. Vi ringrazio in anticipo
Ecco la traccia:
Specifiche Tecniche
Agenzia di Viaggi
Il caso di studio deve simulare alcune funzionalità del software per la gestione di un’agenzia di viaggi. Il sistema deve prevedere dei pacchetti viaggio (descritti da caratteristiche come destinazione, ore di viaggio, compagnia aerea, prezzo, alloggio, tour operator). L’elenco delle caratteristiche dei pacchetti è una scelta di progetto ed è libera. Tuttavia, bisogna prevedere che alcune caratteristiche possano essere rappresentate da dati strutturati (es: alloggio, tour operator, etc.). Deve essere inoltre possibile consigliare un pacchetto ad un cliente in base alle caratteristiche richieste: prezzo, destinazione, tour operator, tipo di volo. Deve essere possibile fare ricerche su più filtri. Ad esempio: desidero un viaggio che abbia un prezzo tra i 1000-1500 euro, della durata di almeno 7 giorni, in hotel di categoria almeno 3 stelle.
Nello specifico bisogna implementare le seguenti funzionalità, seguendo le metodologie di programmazione studiate nel corso, progettando correttamente il codice, inserendo dati realistici e implementando gli opportuni controlli.
Elenco Funzionalità
(1) Caricamento da file dell’elenco di: pacchetti viaggio, hotel, tour operator, compagnie aeree
Caricare in memoria l’elenco dei pacchetti viaggio venduti dall’agenzia, degli hotel, dei tour operator, delle compagnie aeree. Il file per ciascuna entità deve essere esistente e dovrà essere gestito come file testuale. Si suggerisce l’uso del formato CSV. La funzionalità deve essere implementata come funzione booleana di caricamento.
(2) Aggiunta-Modifica-Cancellazione di: pacchetti viaggio, hotel, tour operator, compagnie aeree.
Dato l’insieme delle entità (pacchetti viaggio, hotel, tour operator, compagnie aeree) presenti in memoria, permettere di aggiungere nuove entità, modificare le informazioni ad esse associate e cancellare entità (ad esempio pacchetti viaggio venduti). Ovviamente, una volta effettuate le modifiche la nuova versione del file dovrà essere salvata su disco, nuovamente. La funzionalità deve essere implementata come funzione booleana.
(3) Funzionalità di Ricerca e Ordinamento Pacchetto Viaggio
Dati uno o più criteri di ricerca (prezzo, durata, destinazione, categoria hotel, etc.) mostrare l’elenco dei pacchetti viaggi che corrispondono alle caratteristiche richieste. Il numero di criteri di ricerca da definire è a scelta, ma deve essere maggiore di uno.
Una volta filtrati i pacchetti che soddisfano l’insieme dei criteri definiti, ordinarli in base ad un criterio (ad esempio il prezzo o la durata).
(4) Gestione Funzionalità tramite Menu Utente
Tutte le funzionalità devono essere gestite attraverso un menu iniziale che dia la possibilità all’utente/amministratore di selezionare l’operazione da eseguire.
Sebbene per l’input e l’output sono previsti file di testo, è preferibile utilizzare file binari per la gestione delle operazioni interne al sistema software.