Progettazione basi di dati forum

Discuti dei problemi relativi alla programmazione nel tuo linguaggio preferito!

Moderatori: cb_123, thrantir, tonertemplum

Progettazione basi di dati forum

Messaggiodi diegofio il 11 dic 2007, 19:27

Non è un vero e proprio argomento di programmazione stretta, comunque mi pare la sezione più indicata.

Per l'esame di basi di dati ho una tesina (n'altra :D ) da fare e presentare all'orale: si tratta di progettare una base di dati per un caso reale, per esempio una biblioteca, o un negozio.
Io ho scelto di progettare il forum di amdplanet :lol:
ora non scherziamo....se michele usasse il mio database cadremmo a picco, quindi non preoccupatevi :lol:

più che altro ho intenzione di progettare il database di un forum semplificato, il grado di semplificazione lo deciderò via via strada facendo.

ho pensato che poteva essere utile per qualcuno se inserivo il lavoro. spero che qualcuno che fa l'esame con me non veda sto topic :asd:
ho già fatto la parte di progettazione su carta, sto scrivendo il tutto sul pc. in questo modo vedrete se non lo avete mai visto prima come si progetta -male :asd: - una base di dati, da cima a fondo (anche se ho intenzione di fermarmi al mysql altrimenti dovrei impararmi il php e per ora non se ne parla) e cosa c'è, seppur in modo più semplificato, sotto il cofano di amdplanet, o meglio phpbb.
ovviamente in sto modo se qualcuno trova errori o cavolate ci guadagno pure io :asd:

è un argomento piutosto semplice quindi può seguirlo anche uno che non sa una mazza di ste robe, come il sottoscritto [bigsmile]

adesso trovo il modo di aggiungere il file pdf

eccolo
Tesina (v. 4)
Ultima modifica di diegofio su 13 dic 2007, 18:48, modificato 2 volte in totale.
diegofio
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 9270
Iscritto il: 29 lug 2005, 09:55

 

Re: Progettazione basi di dati forum

Messaggiodi Ibanez89 il 11 dic 2007, 20:32

interessantissimo... la tesi me scippo... sogno molto ignorante in materia... cmq che fregatura non figuro nelle foto k utente :( male, molto male
CiAo DanIele...

Immagine
Pentium4 Northwood HT 2.6@3000 "230*13" vcore def [RIP] King Value 512*2 200@230 cas2@3 Ati x800gto2@x850pe powered by Arctic Cooler [RIP] Mother ASRock P4VM900-SATA2 [RIP]
insomma poco alla volta mi si sta bruciando tutto :asd:

Immagine
Avatar utente
Ibanez89
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 5563
Iscritto il: 15 apr 2006, 17:31
Località: Corato (BA)

Re: Progettazione basi di dati forum

Messaggiodi Cesena'88 il 11 dic 2007, 23:04

e magari adesso riesco a capire cosa c'è d tanto pesante nel phpbb3 rispetto al 2.....

cmq dai interessante.... :D
E8200, Ultra 120 Extreme, P5E, 8800gt POV, AC Accelero S1 Rev.2, Geil Ultra 4-4-4-12, Mast.Dvd Lg, Mast.Cd Lg, Raid0: 2x Samsung HD322HJ, Corsair TX850, Rheobus Sunbeam-->Work in progress!!!
Vincitore di: Immagine SUPERCOPPA 09-10 , Immagine CAMPIONATO 10-11 Altromondo
Immagine
Avatar utente
Cesena'88
Mago dell'universo
Mago dell'universo
 
Messaggi: 4873
Iscritto il: 09 lug 2004, 01:00
Località: Cesena

Re: Progettazione basi di dati forum

Messaggiodi nemesys_72 il 12 dic 2007, 11:19

bel progettino diego..
Mors Omnia Aequat
Immagine
Avatar utente
nemesys_72
Magister
Magister
 
Messaggi: 21760
Iscritto il: 11 feb 2005, 14:56
Località: Il Veneto è la mia Patria..

Re: Progettazione basi di dati forum

Messaggiodi diegofio il 12 dic 2007, 17:23

grazie ;)

ho messo su la seconda versione. la parte di introduzione iniziale è praticamente terminata, adesso comincia la progettazione vera e propria... anche se ovviamente anche quello scritto finora ne fa parte... si insomma in parole povere adesso cominciano i casini :asd:
diegofio
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 9270
Iscritto il: 29 lug 2005, 09:55

Re: Progettazione basi di dati forum

Messaggiodi diegofio il 12 dic 2007, 18:17

questa è una bozza del modello ER. ma bozza bozza :asd:
Immagine

allora i quadrati indicano delle entità, ovvero oggetti della realtà che vogliamo rappresentare, nel nostro caso ad esempio un utente, un topic, un post...
a ciascuna entità saranno associate varie istanze, per esempio all'entità utente saranno associati tutti gli utenti del nostro sito (ogni utente è una istanza, così come in programmazione abbiamo le istanze di un oggetto). nemesys_72, ibanez89, siamo tutte istanze di una stessa entità utente.
ogni entità e descritta da un nome ("utente" appunto) e da una lista di attributi. questi ultimi descrivono le proprietà dell'entità stessa. quindi nickname, password eccetera sono tutte proprietà (attributi) dell'entità utente, per ogni istanza di utente avranno un ovviamente certo valore.
lo stesso discorso per tutti gli altri rettangoli.

spiego adesso il significato dei rombi. quelle sono associazioni ovvero dei legami tra diverse entità. per esempio abbiamo un evidente legame tra utente e gruppo: gli utenti fanno parte di gruppi e i gruppi contengono istanze di utenti.
anche per le associazioni esiste il concetto di istanza. in pratica vedendo l'associazione come un oggetto, un'istanza dell'associazione "partecipa" tra utente e gruppo è una cosa del tipo:
(utente, gruppo)
cioè una coppia ordinata che contiene una istanza dell'entità utente (per esempio l'istanza cesena88) e un istanza dell'entità gruppo (per esempio redazione).
esiste una definizione matematica di tutto questo (associazione = sottoinsieme del prodotto cartesiano delle entità partecipanti) che porta al fatto che non ci possono essere ripetizioni: in pratica esisterà una sola coppia ordinata (cesena88, redazione), nessun altra contiene queste due istanze di entità in questo ordine.

i numeri sopra le linee che collegano entità ed associazioni: essi formalmente indicano il numero minimo e massimo di istanze dell'associazione a cui ciascuna istanza di entità può partecipare. se avete capito quanto detto prima probabilmente ragionandoci un po ci arrivate comunque con un esempio è semplice. prendendo l'associazione partecipa tra utenti e gruppi, è evidente che ciascun utente può partecipare da uno a più gruppi: da qui la coppia (1,N). sul lato opposto un gruppo può comprendere da uno o più utenti, quindi anche qui (1,N).
prendiamo ora l'associazione "posta" tra utente e post: un utente può avere da 0 a N post, mentre un post può essere scritto da un minimo di 1 ad un massimo di... 1 utente, ovvero c'è un unico autore. quindi potrebbe essere che non esiste nessuna coppia ordinata (cesena 88, post) nel caso in cui cesena88 non abbia ancora postato nulla. invece nel nostro caso reale esistono oltre 2000 (cesena88, post), dove con post si sostituisce l'istanza dell'entità post riferita al particolare post di cesena88 considerato di volta in volta.

spero di esser stato chiaro visto che ho scritto un po' di fretta
se avete domande chiedete pure
diegofio
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 9270
Iscritto il: 29 lug 2005, 09:55

Re: Progettazione basi di dati forum

Messaggiodi thrantir il 12 dic 2007, 23:59

modello entità relazioni? Io l'ho sempre trovato scomodo, tanto vale usare il modello a oggetti :-)

ho dato una scorsa veloce allo schema, qualcosa non mi torna, ma sono molto arrugginito sull'argomento

in giro dovresti trovare qualche tool che ti permette di generare i diagrammi, di fatto sono tutti simboli usati nell'UML :-)

sarà senzaltro interessante discutere insieme del tuo lavoro :-)
Fletto i muscoli e sono nel vuoto
Principi di architettura degli eleboratori
X postare immagini
-----BEGIN GEEK CODE BLOCK-----
GCS/IT/L/MU d- s: a C++$>+++ UL+>++ P L+++>++++ E--- W++ N++>+++ o+>++ K? w O-- M- VMS? V- PS++ Y+ PGP+ t 5? X+ R++>+++ tv+ b+++>++++ DI+++ D++ G e++ h- r++ y++
------END GEEK CODE BLOCK------
Addio Dani, sono più ricco perchè ti ho conosciuto
Avatar utente
thrantir
Moderatore
Moderatore
 
Messaggi: 8897
Iscritto il: 27 mag 2003, 13:32
Località: Pisa

Re: Progettazione basi di dati forum

Messaggiodi diegofio il 13 dic 2007, 01:16

grazie matteo, per il modello ad oggetti...beh devo per forza seguire uno schema che va dal modello ER a quello relazionale sono vincolato.

quello è uno schemaccio, ci sono sicuramente degli errori. l'ho messo solo per poter scrivere e spiegare dei concetti che ovviamente non mi sarei messo a spiegare nella tesina, ovvero cosa significano quei simboli. altrimenti chi segue qui non ci avrebbe capito nulla leggendo l'elaborato.

ciaobello.
diegofio
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 9270
Iscritto il: 29 lug 2005, 09:55

Re: Progettazione basi di dati forum

Messaggiodi tonertemplum il 13 dic 2007, 08:50

appena riesco a trovare 2 min 2 voglio buttarci un occhio... di sicuro sarà interessante....

grande diego, anche per voler condividere i tuoi studi col forum :D
ASUS M3N78-PRO -- AMD ATHLON 64 X2 5200+@3100 vcore default -- ZALMAN CNPS9500A LED -- 2x2GB TEAM GROUP DDR2 800 -- ATI HD 3650 con ZALMAN VF900 CU-LED -- 2 X SEAGATE 160GB RAID 0 + 1 x MAXTOR 260 GB SATA + 1 x MAXTOR 120 GB SATA
Avatar utente
tonertemplum
Moderatore
Moderatore
 
Messaggi: 6906
Iscritto il: 11 set 2005, 19:11
Località: Roma

Re: Progettazione basi di dati forum

Messaggiodi thrantir il 13 dic 2007, 15:23

hai buttato giu', in modo informale, le entita' e le relazioni?
Fletto i muscoli e sono nel vuoto
Principi di architettura degli eleboratori
X postare immagini
-----BEGIN GEEK CODE BLOCK-----
GCS/IT/L/MU d- s: a C++$>+++ UL+>++ P L+++>++++ E--- W++ N++>+++ o+>++ K? w O-- M- VMS? V- PS++ Y+ PGP+ t 5? X+ R++>+++ tv+ b+++>++++ DI+++ D++ G e++ h- r++ y++
------END GEEK CODE BLOCK------
Addio Dani, sono più ricco perchè ti ho conosciuto
Avatar utente
thrantir
Moderatore
Moderatore
 
Messaggi: 8897
Iscritto il: 27 mag 2003, 13:32
Località: Pisa

Re: Progettazione basi di dati forum

Messaggiodi diegofio il 13 dic 2007, 15:34

le entità e le associazioni sono nell'immagine :)

il modello relazionale lo sto mettendo a posto per avere tabelle in forma normale più stringente possiible
diegofio
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 9270
Iscritto il: 29 lug 2005, 09:55

Re: Progettazione basi di dati forum

Messaggiodi diegofio il 13 dic 2007, 18:48

ho messo su la nuova versione, con parte dello schema logico.
diegofio
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 9270
Iscritto il: 29 lug 2005, 09:55

Re: Progettazione basi di dati forum

Messaggiodi thrantir il 14 dic 2007, 10:44

diego.fiozzi ha scritto:le entità e le associazioni sono nell'immagine :)

il modello relazionale lo sto mettendo a posto per avere tabelle in forma normale più stringente possiible


sisi, mi chiedevo se avessi buttato giu' le cose in modo verbale, non schematico... una sorta di analisi+specifica dei requisiti
Fletto i muscoli e sono nel vuoto
Principi di architettura degli eleboratori
X postare immagini
-----BEGIN GEEK CODE BLOCK-----
GCS/IT/L/MU d- s: a C++$>+++ UL+>++ P L+++>++++ E--- W++ N++>+++ o+>++ K? w O-- M- VMS? V- PS++ Y+ PGP+ t 5? X+ R++>+++ tv+ b+++>++++ DI+++ D++ G e++ h- r++ y++
------END GEEK CODE BLOCK------
Addio Dani, sono più ricco perchè ti ho conosciuto
Avatar utente
thrantir
Moderatore
Moderatore
 
Messaggi: 8897
Iscritto il: 27 mag 2003, 13:32
Località: Pisa

Re: Progettazione basi di dati forum

Messaggiodi diegofio il 09 gen 2008, 12:14

ho messo su la nuova versione, quasi definitiva visto che venerdi ho l'orale.

ho anche letto per puro caso sul suo sito che voleva 4-5 pagine (era scritto in un'altra parte). va bè se rompe gli spacco la testa
diegofio
AmdPlanet Guru
AmdPlanet Guru
 
Messaggi: 9270
Iscritto il: 29 lug 2005, 09:55

Re: Progettazione basi di dati forum

Messaggiodi thrantir il 09 gen 2008, 15:29

a me sembra un ottimo lavoro diego, complimenti :-)
Fletto i muscoli e sono nel vuoto
Principi di architettura degli eleboratori
X postare immagini
-----BEGIN GEEK CODE BLOCK-----
GCS/IT/L/MU d- s: a C++$>+++ UL+>++ P L+++>++++ E--- W++ N++>+++ o+>++ K? w O-- M- VMS? V- PS++ Y+ PGP+ t 5? X+ R++>+++ tv+ b+++>++++ DI+++ D++ G e++ h- r++ y++
------END GEEK CODE BLOCK------
Addio Dani, sono più ricco perchè ti ho conosciuto
Avatar utente
thrantir
Moderatore
Moderatore
 
Messaggi: 8897
Iscritto il: 27 mag 2003, 13:32
Località: Pisa

 

Torna a Programmare

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite

cron