|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Sep 2003
Città: Milano
Messaggi: 4623
|
[Esami di Basi di Dati] progetto Fantacalcio
Dunque, per l'esame di basi di Dati devo scegliere tra 2 progetti:
http://islab.dico.unimi.it/basi/progetto.php 1 Introduzione Una societ`a specializzata nello sviluppo di giochi on-line intende offrire alla propria clientela un’applicazione che permetta ad ogni utente registrato di creare e gestire la propria squadra di fantacalcio per partecipare ad un ipotetico campionato virtuale. 2 Descrizione del dominio Il gioco del fantacalcio consiste in un insieme di concorrenti che si improvvisano manager e allenatori di una squadra di calcio costruendo una rosa di giocatori con la quale partecipare ad un campionato virtuale. Il gioco prevede che ogni concorrente abbia a disposizione un budget iniziale con il quale costruire la rosa di giocatori (squadra) con cui parteciper`a al gioco. La rosa `e composta da un numero prefissato di portieri, difensori, centrocampisti e attaccanti selezionati da un elenco predefinito. Ogni giocatore `e caratterizzato da un ruolo (i.e., portiere, difensore, centrocampista, attaccante) e da una quotazione. L’acquisto di un giocatore comporta la spesa della quotazione a lui associata; la spesa per l’acquisto dell’intera rosa non deve superare il budget a disposizione del concorrente. 2.1 Campionato Una volta composta la rosa di giocatori, ogni concorrente partecipa al campionato virtuale. Sono previste un numero fissato di giornate di gioco, per ognuna delle quali il concorrente dovr`a schierare una formazione di giocatori selezionati dalla propria rosa . Al termine di ogni giornata i giocatori ricevono una valutazione; la somma delle valutazioni dei giocatori titolari schierati in formazione costituisce il punteggio di ogni concorrente. I concorrenti vengono classificati sulla base del punteggio che hanno realizzato; dopo ogni giornata di gioco la classifica viene aggiornata sommando i punteggi realizzati da ogni concorrente. Il concorrente che alla fine di tutte le giornate di gioco ha realizzato il punteggio pi`u alto vince il campionato. 2.2 Formazione Ogni formazione deve rispettare un modulo di gioco. Prima di ogni giornata di gioco, tale modulo viene selezionato da ciascun concorrente da un insieme di moduli di gioco ammissibili. E’ possibile che al termine di una giornata di gioco non tutti i giocatori abbiamo ricevuto una valutazione. Nel caso in cui un giocatore titolare non abbia ricevuto la valutazione, questo verr`a automaticamente sostituito dal primo giocatore di pari ruolo disponibile in panchina. Nel caso in cui nessun giocatore di pari ruolo in panchina abbia ricevuto valutazione, oppure non ci siano abbastanza giocatori in panchina per sostituire tutti i giocatori titolari privi di valutazione, ciascun giocatore titolare privo di valutazione viene escluso dal conteggio del punteggio finale del concorrente. In questo caso per ogni giocatore titolare privo di valutazione che non `e stato possibile sostituire, la formazione beneficia di un bonus pari al voto del giocatore con la valutazione pi`u bassa decrementata di 1. I giocatori titolari che hanno ricevuto una valutazione non possono essere sostituiti. 2.3 Vincoli La societ`a di giochi on-line prevede inoltre che i seguenti vincoli vengano rispettati: • Non `e prevista nessuna forma di contrattazione e di asta fra concorrenti per la creazione della rosa di giocatori. • Un giocatore pu`o appartenere a diverse squadre: il fatto che un concorrente selezioni un giocatore per la sua rosa non impedisce che altri concorrenti possano includere lo stesso giocatore nella propria rosa. • La rosa di giocatori di ogni concorrente deve essere cos`ı composta: 3 portieri, 8 difensori, 8 centrocampisti, 6 attaccanti per un totale di 25 giocatori. • La formazione schierata da ogni concorrente prevede 11 giocatori titolari e 7 giocatori in panchina. La composizione dei titolari dipende dal modulo di gioco adottato dal concorrente, mentre la panchina `e composta da 1 portiere, 2 difensori, 2 centrocampisti, 2 attaccanti. • Non esiste un numero massimo di sostituzioni: se necessario, tutti i giocatori in panchina possono sostituire dei titolari che non hanno ricevuto valutazione a condizione che la sostituzione avvenga fra giocatori di pari ruolo. • Il budget iniziale di ogni concorrente `e fissato in 300 fantamiliardi. 2.4 Categorie di utenza Sono previste due categorie di utenza: • Concorrente. Registrandosi all’applicazione partecipa al gioco del fantacalcio. In particolare, ogni concorrente compone la propria rosa di giocatori a cui assegna un nome e, per ogni giornata di gioco, seleziona un modulo di gioco fra quelli possibili e schiera la propria formazione. • Amministratore. Amministra le parti organizzative del gioco. In particolare le seguenti attivit`a sono di sua esclusiva competenza: – Gestione dell’elenco predefinito di giocatori. L’amministratore mantiene la lista completa dei giocatori con i rispettivi ruoli e quotazioni. La cancellazione di un giocatore o la modifica del ruolo e della quotazione di un giocatore `e possibile solo se il giocatore non `e incluso nella rosa di nessun concorrente. L’amministratore pu`o inoltre aggiungere nuovi giocatori in qualsiasi momento. – Definizione di periodi di aggiornamento. L’amministratore fissa dei periodi nei quali ogni concorrente pu`o intervenire sulla propria rosa e modificarla eliminando dei giocatori e sostituendoli con altri. In caso di eliminazione di un giocatore dalla rosa, la corrispondente quotazione viene reintegrata nel budget a disposizione. In ogni caso la rosa deve essere sempre composta da 25 giocatori (3 portieri, 8 difensori, 8 centrocampisti, 6 attaccanti) e non possono essere selezionati giocatori con una quotazione superiore al budget a disposizione. – Assegnazione di premi e penalit`a. A suo insindacabile giudizio, l’amministratore pu`o penalizzare o premiare un concorrente. Premi e penalit`a vanno ad incidere sul budget a disposizione del concorrente. Se a seguito di una penalizzazione, un concorrente si trova con un budget negativo, l’amministratore ne modifica la rosa sostituendo uno o pi`u giocatori con altrettanti elementi di pari ruolo ma con quotazione inferiore, fino a colmare il deficit. – Definizione del calendario. L’amministratore definisce il numero e la data delle giornate di gioco, nonch´e, per ogni giornata, il termine entro il quale la formazione deve essere presentata. Se un concorrente non inserisce la formazione entro i termini previsti dalla giornata di gioco, si considera automaticamente confermata la formazione della giornata precedente. – Gestione delle valutazioni. A seguito di ogni giornata di gioco, l’amministratore inserisce le valutazioni dei giocatori, calcola i punteggi di ogni concorrente e aggiorna la classifica. – Definizione dei moduli di gioco ammissibili. L’amministratore definisce l’insieme dei moduli di gioco ammissibili sulla base dei quali i concorrenti compongono le formazioni. 3 Requisiti dell’applicazione Obiettivo del progetto `e realizzare un’applicazione di basi di dati con interfaccia WEB che gestisca le problematiche legate al dominio applicativo esposto in Sezione 2. La presenza di diverse categorie di utenza impone che il progettista preveda un meccanismo di account management in grado di offrire ai diversi utenti le funzionalit`a specifiche di cui necessitano. In particolare vediamo, per ogni categoria di utenza, quali funzionalit`a dovranno essere rese disponibili. 3.1 Concorrente Ogni concorrente `e caratterizzato da generiche informazioni anagrafiche (e.g., nome, cognome, indirizzo) e tecniche (e.g., codice identificativo, username, password). Egli dovr`a essere in grado di autenticarsi presso il sito WEB ed usufruire delle seguenti funzionalit`a minime: • Creare la propria rosa di giocatori a partire da un elenco predefinito. Tale selezione deve rispettare i vincoli di composizione della rosa definiti in Sezione 2. • Modificare la propria rosa di giocatori. Tale funzionalit`a `e accessibile solo nei periodi di aggiornamento previsti dall’amministratore. • Inserire la formazione in corrispondenza di ogni giornata di gioco. La formazione dovr`a essere conforme al modulo di gioco scelto; l’applicazione dovr`a verificare questa condizione. • Visualizzare informazioni generali sul gioco: calendario di tutte le giornate di gioco, punteggi realizzati da tutti i concorrenti per ogni giornata, statistiche relative a ciascun giocatore appartenente all’elenco predefinito (i.e., media valutazioni, storico valutazioni, media ultime 5 giornate). • Visualizzare informazioni specifiche sulla propria rosa (i.e., storico valutazioni, media valutazioni, i giocatori migliori per ruolo, la migliore formazione possibile). • Visualizzare informazioni specifiche sulle proprie formazioni schierate e sulle corrispondenti valutazioni per ogni giornata di gioco.
__________________
Ho trattato con : lahiri, czame, RC, allXXX, dfruggeri, JMM, Paperone, xej, Pappez, iperfly, Red81, Playmake, ryan78, Rob66, XP2200, Peach1200, faberjack, Stewie82, supermario_bros, hft500, Axelscorpio, pipes lee, Piccolospazio, RohanKish, miki66, kabira85 Ultima modifica di TorpedoBlu : 07-01-2005 alle 19:49. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Sep 2003
Città: Milano
Messaggi: 4623
|
ho studiato un po' il libro ho imparato un po' di teoria sugli schemi ER e su SQL, ma non ho mai scritto una riga di sql.... mi date una mano, un imput o un suggerimento?
Mi è stato consigliato dal prof di usare: Apache+PostgreSQL+php+javascript+html grazie a chiunque voglia anche darmi un incoraggiamento
__________________
Ho trattato con : lahiri, czame, RC, allXXX, dfruggeri, JMM, Paperone, xej, Pappez, iperfly, Red81, Playmake, ryan78, Rob66, XP2200, Peach1200, faberjack, Stewie82, supermario_bros, hft500, Axelscorpio, pipes lee, Piccolospazio, RohanKish, miki66, kabira85 |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2004
Messaggi: 364
|
Secondo me, considerando che stai cominciando ora a studiare le base dati ed sql, dovresti cominciare con il fare qualche esercizio meno complesso, per capire come funziona il tutto, poi puoi provare a fare esercizi più difficili. Per quanto riguarda questo progetto, non è difficilissimo, ma essendo abbastanza lungo, potresti dover spesso normalizzare il tutto. Se posso permettermi di darti un consiglio, prima fatti su un foglio tutte le entità possibili, con i vari attributi e associazioni e prima di implementare il database, pensa sullo schema ER che farai su carta, a come eventualmente sarà il database, quando sarà popolato, perchè facendo così potrai evitare eventuali ridondanze e problemi di associazioni, io smadonno sempre quando, dopo aver popolato tutto il database, poii mi accorgo che devo rifarlo da capo
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Sep 2003
Città: Milano
Messaggi: 4623
|
grazie per il consiglio, tra l'altro dovendo consegnare anche lo schema ER devo cmq fare questo lavoro, quale software + meglio per la creazione di schemi ER???
__________________
Ho trattato con : lahiri, czame, RC, allXXX, dfruggeri, JMM, Paperone, xej, Pappez, iperfly, Red81, Playmake, ryan78, Rob66, XP2200, Peach1200, faberjack, Stewie82, supermario_bros, hft500, Axelscorpio, pipes lee, Piccolospazio, RohanKish, miki66, kabira85 |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2004
Messaggi: 364
|
Matita e carta
Scherzi a parte, non ho mai usato programmi per scrivere schemi E/R |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Sep 2003
Città: Milano
Messaggi: 4623
|
up
__________________
Ho trattato con : lahiri, czame, RC, allXXX, dfruggeri, JMM, Paperone, xej, Pappez, iperfly, Red81, Playmake, ryan78, Rob66, XP2200, Peach1200, faberjack, Stewie82, supermario_bros, hft500, Axelscorpio, pipes lee, Piccolospazio, RohanKish, miki66, kabira85 |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Sep 2003
Città: Milano
Messaggi: 4623
|
up
__________________
Ho trattato con : lahiri, czame, RC, allXXX, dfruggeri, JMM, Paperone, xej, Pappez, iperfly, Red81, Playmake, ryan78, Rob66, XP2200, Peach1200, faberjack, Stewie82, supermario_bros, hft500, Axelscorpio, pipes lee, Piccolospazio, RohanKish, miki66, kabira85 |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Sep 2003
Città: Milano
Messaggi: 4623
|
up
__________________
Ho trattato con : lahiri, czame, RC, allXXX, dfruggeri, JMM, Paperone, xej, Pappez, iperfly, Red81, Playmake, ryan78, Rob66, XP2200, Peach1200, faberjack, Stewie82, supermario_bros, hft500, Axelscorpio, pipes lee, Piccolospazio, RohanKish, miki66, kabira85 |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: May 2003
Città: Rimini
Messaggi: 2279
|
Scusa ma il vostro corso di basi di dati in che consisteva? in una lezione in cui vi si diceva che progetto fare?
Avrete fatto della teoria, avrete un libro di testo o degli esercizi dati dal docente... se non sai le basi teoriche è impossibile fare un progetto.
__________________
Gigabyte 965P-DS3 ¤ E6600@400*8 ¤ Scythe Ninja Plus Rev.B ¤ Ram 4GB ¤ HD SSD Crucial M4 128GB
Gainward 4850 Golden Sample ¤ Antec NEO 550HE ¤ CM Centurion 534 ¤ Dell Ultrasharp U2312HM Notebook Asus N551JW ¤ i7-4750HQ ¤ nVidia 960M 4GB ¤ 16GB DDR3 ¤ SSD Intel 850EVO 500GB |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Sep 2003
Città: Milano
Messaggi: 4623
|
no vabbè certo il fatto è che non ho mai iniziato da zero a fare un'applicazione dbms, sto preparando altri esami e non ho frequentato, ho studiato il libro, so la teoria sulla teoria relazionale, ma se mi metto a fare uno schema ER da zero mi sa che ci metto un mese, chiedo magari un suggerimento o se ci sono delle procedure standard che possono conoscere bene sono chi ci smanetta sempre.
Magari potete consigliarmi cosa evitare e quali entità sarebbe meglio evitare di implementare per avere meno problemi di normalizzazione. io intanto ci sto pensando e quando inizio butto qua giu qualche idea. PS: Ad esempio secondo voi è necessario l'attributo id per ogni giocatore o uso come chiave prim. nome+cognome?
__________________
Ho trattato con : lahiri, czame, RC, allXXX, dfruggeri, JMM, Paperone, xej, Pappez, iperfly, Red81, Playmake, ryan78, Rob66, XP2200, Peach1200, faberjack, Stewie82, supermario_bros, hft500, Axelscorpio, pipes lee, Piccolospazio, RohanKish, miki66, kabira85 |
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: May 2003
Città: Rimini
Messaggi: 2279
|
L'attributo id è necessario, come faresti in caso di omonimia? Inoltre lo userai per i collegamenti con le altre tabelle.
L'ER non è per niente difficile, ce la fai da solo a farlo; non ci sono "magie particolari", l'importante è trovare quali sono le entità. Poi definisci gli attributi, e infine modelli le associazioni. Non hai bisogno di nessun programma, fallo su carta (non ho letto bene le specifiche ma saranno 10/15 entità). Se ti interessa questo è il progetto che avevo fatto io per basi di dati, è un gestionale fatto in ASP e Access. Io ti consiglio di usare i linguaggi che ti ha detto il tuo prof che sono meglio... Se guardi nei credits c'è la relazione, se vuoi spunti per partire leggila. Ciao P.S. se vuoi postare qualche abbozzo degli schemi che fai posso dargli un'occhiata
__________________
Gigabyte 965P-DS3 ¤ E6600@400*8 ¤ Scythe Ninja Plus Rev.B ¤ Ram 4GB ¤ HD SSD Crucial M4 128GB
Gainward 4850 Golden Sample ¤ Antec NEO 550HE ¤ CM Centurion 534 ¤ Dell Ultrasharp U2312HM Notebook Asus N551JW ¤ i7-4750HQ ¤ nVidia 960M 4GB ¤ 16GB DDR3 ¤ SSD Intel 850EVO 500GB |
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Sep 2003
Città: Milano
Messaggi: 4623
|
grazie mille, cmq siccome il diagramma ER lo devo consegnare lo devo disegnare con un software, il + semplice possibile.
__________________
Ho trattato con : lahiri, czame, RC, allXXX, dfruggeri, JMM, Paperone, xej, Pappez, iperfly, Red81, Playmake, ryan78, Rob66, XP2200, Peach1200, faberjack, Stewie82, supermario_bros, hft500, Axelscorpio, pipes lee, Piccolospazio, RohanKish, miki66, kabira85 |
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Jul 2004
Città: Milano-provincia
Messaggi: 3098
|
tanto per sapere torpedo, ma fai informatica in bicocca? se si anche io
__________________
"C'e solo una cosa che non tradisce mai: la ghisa. 100kg saranno sempre 100kg" Blood and Guts "Se un uomo non è disposto a rischiare nulla per le sue idee, o nulla valgono le sue idee, o nulla vale lui" Moderatore di Oclabs -
|
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: Sep 2003
Città: Milano
Messaggi: 4623
|
no, in CittàStudi, per l'esame di basi di dati ho passato lo scritto, entro febbraio devo fare il progetto, non avendo mai scritto dell'SQL sono in preda al panico.
__________________
Ho trattato con : lahiri, czame, RC, allXXX, dfruggeri, JMM, Paperone, xej, Pappez, iperfly, Red81, Playmake, ryan78, Rob66, XP2200, Peach1200, faberjack, Stewie82, supermario_bros, hft500, Axelscorpio, pipes lee, Piccolospazio, RohanKish, miki66, kabira85 |
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Aug 2000
Città: Formia
Messaggi: 6899
|
Allora x lo schema er: carta e penna, dopo che lo hai fatto x bene lo realizzi con il visio. Controlla che lo schema sia in forma normale.
Sei come libro hai l'azteni segui i 3 passi che fa lui Va bene postgree, anche se io fossi in e userei oracle (imparalo che lo usano un po' dappertutto). SQL da imparare è semplicissimo. Dopo che hai fatto lo schema ER BENE pensa alle operazioni che devi fare sul DB, in base a queste modificherai le tabelle aggiungendo eventuali campi id, oppure creando tabelle di cross. Inoltre anche se nn è proprio corretto, se x recuperare determinati attributi vedi che devi fare delle query assurde e/o crearti delle viste complicate puoi pensare di duplicare qualche id, anche se nn è sempre consigliato (devi ponderare bene l'occupazione dello spazio). Fatto questo dopo parti di programmazione io che nn conosco il php, lo farei in jsp.
__________________
"La birra è la prova che dio ci ama e vuole che siamo felici" |
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Sep 2001
Città: Roma
Messaggi: 1944
|
Quote:
Però se si segue il libro la cosa è abbastanza "facile". Ti rimando (Torpedo) al link del corso di basi di dati tenuto da Atzeni nella mia facoltà in cui ci sono delle dispense e degli esercizi che magari ti possono essere utili. http://www.dia.uniroma3.it/~atzeni/d.../BDNindex.html Usare PHP a me sembra una follia, cmq, dato che a livello di divisione in moduli del programma è impossibile. E' pur vero che è semplicissimo da usare, quindi più veloce, ma JSP+Java sono più adatte per capire come distinguere livello applicativo, interfaccia e persistenza. Per ER, come detto, è inutile il SFW. Carta e penna, e al massimo alla fine fai i disegnini. Tieni presente che durante la scrittura del codice probabilmente rifinirai lo schema, quindi solo alla fine del programma lo schema è finito. Per PHP ti consiglio PHP Expert, semplice e veloce editor PHP. Se non fosse didattico, io lo farei con PHPNuke, tra l'altro (portale realizzato in PHP standard e a cui puoi aggiungere velocemente moduli ed azioni anche complesse).
__________________
"Oggi è una di quelle giornate in cui il sole sorge veramente per umiliarti" Chuck Palahniuk Io c'ero |
|
|
|
|
|
|
#17 | |
|
Senior Member
Iscritto dal: Aug 2000
Città: Formia
Messaggi: 6899
|
Quote:
Lo so che esistono migliaia di eccezioni, ma se x lui questo è il primo schema ER deve seguire il libro x imparare
__________________
"La birra è la prova che dio ci ama e vuole che siamo felici" |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:38.











Moderatore di Oclabs








