Documente Academic
Documente Profesional
Documente Cultură
2013
1
CUPRINS
1. 2. 3. 4.
2. STRUCTURA PROIECTULUI
Descrierea afacerii
Teatrul Drama este un foarte cunoscut teatru, cu un numar mare de locuri si spectacole deosebite. In realizarea fiecarui spectacol sunt implicati un numar mare de oameni, ce trebuie sa puna la punct fiecare detaliu, de la distributia rolurilor celor mai portriviti actori, pana la alegerea melodiilor ce vor fi puse in timpul piesei. Trebuie gestionate, de asemenea, si salile in care se organizeaza un spectacol, dar si numarul de bilete vandute. Intrucat intregul proces de realizare a unui spectacol are mai multe etape si necesita gestionarea multor detalii, am creat o baza de date pentru organizarea eficienta a afacerii.
Cerintele afacerii
Este nevoie de o baza de date in care sa fie stocate datele despre spectacolele care se organizeaza pe perioada unei luni, despre angajatii teatrului, precum si despre numarul de bilete vandute sau rezervate. Aceasta baza de date trebuie actualizata in mod constant, in functie de spectacolele noi care apar, de costumele inchiriate ce trebuie returnate, dar si de alte aspecte: Evidenta tuturor spectacolelor Gestionarea activitatii fiecarui angajat Gestionarea salilor Evidenta costumelor inchiriate Memorarea melodiilor pentru fiecare spectacol Evidenta elementelor de decor folosite
Interviu
Pentru a explica ce inseamna succesul in lumea teatrului si a intelege mai bine ce presupune administarea unui teatru, managerul acestuia a fost de acord sa raspunda la cateva intrebari: Care este explicatia succesului si renumelui teatrului dumneavoastra? Succesul se datoreaza, pe de-o parte structurii organizatorice a teatrului, iar pe de alta parte, talentului actorilor si muncii intregii echipe pentru realizarea unor spectacole inedite. Este structura organizatorica importanta? Da, deoarece actorii, regizorii, scenaristii si toti ceilalti profesionisti nu pot fi pusi in valoare decat printr-o structura organizatorica profesionista. Ce activitati trebuie gestionate cu ajutorul acestei baze de date? Evidenta tuturor activitatilor desfasurate pentru organizarea unui spectacol ar fi extrem de dificila fara o baza de date. De la evidenta datelor tuturor actorilor, costumelor, elementelor de dcor, pana la distributia rolurilor, gestionarea costumelor si a salilor, toate trebuie monitorizate in mod constant. Cum sperati sa va ajute aceasta aplicatie? Sper ca va usura evidentierea si gestionarea tuturor datelor care sunt necesare pentru o mai buna organizare. Avand o astfel de baza de date, putem simplica numeroare procese, precum distribuirea rolurilor si evidenta biletelor vandute.
ERD Initial
ERD Final
Explicarea diagramei
Piesele sunt centrul activitatii teatrului, asadar principalele relatii din baza de date sunt intre piesa si: Roluri: Organizatori Sali Elemente de dcor Melodii Zile De asemenea, sunt importante si relatiile dintre: Roluri si Actori Actori si Costume Zi si bilete Relatiile Many-to-Many dintre rol si actor, organiator si piesa, melodie si piesa, element de dcor si piesa au fost rezolvate cu ajutorul a 4 entitati de intersectie: distributie (pentru rol si actor), playlist (pentru relatia dintre melodie si piesa), inregistrare (pentru relatia dintre element de dcor si piesa) si organizare (pentru relatia dintre organizator si piesa). Fiecare piesa poate fi jucata intr-o singura sala, presupune unul sau mai multe roluri, este organizata de unul sau mai multi organizatori si pentru fiecare piesa sunt distribuite mai multe bilete. Dupa realizarea ERD-ului, si stabilirea constrangerilor pentru fiecare tabela (Primary Key, Foreign Key, Not null), acestea se implementeaza pentru a obtine modelul fizic. Apoi se stabilesc tipurile de date corespunzatoare fiecarui atribut.
Modelul fizic
Aceasta este tabela ORGANIZATORI, unde se pot vizualiza atributele in coloana Column Name, tipurile fiecarui atribut in coloana Data Type si constrangerile in coloanele Nullabale, Default si Primary Key.
In final, tabele vor fi populate, avand grija ca datele introduse sa corespunda tipului definit pentru coloana respectiva.
Interogari
9
Exemplu 1: Pentru a afla ce actori joaca in piesa O noapte furtunoasa: SELECT Nume from Actori WHERE id = ANY ( SELECT id_act from Distributii WHERE cod_rol = ANY ( SELECT cod from Roluri WHERE cod_piesa = ANY ( SELECT cod from Piese WHERE titlu = 'O noapte furtunoasa' ))) Exemplu 2: Pentru a afla ce organizatori au fost implicati in organizarea piesei Steaua fara nume: SELECT Nume from Organizatori WHERE id = ANY ( SELECT id_organizator from Organizari WHERE cod_piesa = ANY ( SELECT cod from piese WHERE titlu = 'Steaua fara nume')) Exemplu 3: Pentru a afla in ce zile este jucata piesa O noapte furtunoasa, se ruleaza interogarea: SELECT data FROM zile WHERE cod_piesa = ANY ( SELECT cod FROM piese WHERE titlu = 'O noapte furtunoasa') ORDER BY data Exemplu 4: Pentru a afla cate bilete s-au vandut pentru piesa Steaua fara nume din ziua de 4 ianuarie 2013, rulam interogarea: SELECT Count(cod) as "Piesa" from bilete WHERE data = '4-01-2013' Exemplu 5: Pentru a afla ce costum a inchiriat actorul Horatiu Malaele, se va folosi urmatoarea interogare: SELECT cod, descriere FROM costume WHERE cod = ANY ( SELECT cod_costum FROM inchirieri WHERE id_act = ANY ( SELECT id FROM actori WHERE nume = 'Horatiu Malaele' ))
10
Aplicatii Pentru a accesa mai usor datele din tabel si pentru a vizualiza diversele rapoarte necesare desfasurarii spectacolelor, am creat o aplicatie usor de folosit.
Cu ajutorul aplicatiei, datele din fiecare tabela vor putea fi afisate doar prin selectarea acesteia din meniul Home, iar cautarea unei instante se poate face in caseta Search
11
Adaugarea unei noi instante se poate realiza intr-un mod mult mai usor cu ajutorul aplicatiei. Prin folosirea butonului Create, se va afisa un tabel care contine toate campurile necesare pentru introducerea datelor.
Tabela piese
Tabela costume
Tabela actori
12
Rapoarte
Cu ajutorul rapoartelor, create prin intermediul aplicatiei, se pot furniza informatii despre piese, actori, bilete, organizare si playlisturi. Pentru a afla ce costum ii revine fiecarui rol vom folosi urmatorul raport care este bazat pe instructiunea SQL: SELECT a.nume_personaj, b.descriere FROM roluri a, ( SELECT d.cod_rol, c.descriere FROM costume c, inchirieri i, distributii d WHERE c.cod=i.cod_costum AND i.id_act=d.id_act) b WHERE a.cod = b.cod_rol
Pentru a vedea ce elemente de decor se vor folosi in piesa Steaua fara nume: SELECT cod, descriere FROM elemente_decor WHERE cod = ANY( SELECT cod_elem FROM inregistrari WHERE cod_piesa = ANY( SELECT cod from piese WHERE titlu = 'Steaua fara nume' ))
13
SELECT a.nume, r.nume_personaj, p.titlu FROM piese p, roluri r, actori a, distributii d WHERE p.cod=r.cod_piesa AND r.cod=d.cod_rol AND d.id_act=a.id
SELECT p.Titlu, s.Nume FROM piese p , sali s WHERE p.cod_sala (+) = s.cod ORDER BY s.Nume
Numarul personajelor din fiecare piesa este dat de urmatorul raport: SELECT b.titlu as "Titlul piesei", count(a.cod) AS "Numar personaje" from roluri a join piese b ON (a.cod_piesa = b.cod)
14
GROUP BY b.titlu
15
3. CONCLUZII
Prin realizarea acestui proiect am inteles mai bine necesitatile proiectarii si administrarii unei baze de date pentru afacerea aleasa. Ne-am dezvoltat astfel anumite calitati ce ne vor ajuta in atingerea scopurilor viitoare: atentia pentru detalii, intrucat a trebuit sa fim atenti la fiecare amanunt si sa depistam eventualele erori, gestionarea unor date numeroase, prin organizarea tuturor datelor in tabele si crearea unor legaturi intre acestea, vederea de ansamblu, intelegand afacerea si mecanismele ce stau la baza realizarii unui spectacol si includerea fiecarei activitati in proiect. Munca in echipa, pasiunea comuna pentru teatru si dorinta de a intelege cum se organizeaza un spectacol au contribuit la realizarea acestui proiect.
16
4. BIBLIOGRAFIE
1. Manual de Informatic pentru clasa a XII-a, Carmen Popescu - Editura L&S Info-mat 2. http://academy.oracle.com 3. Application Express - https://iacademy.oracle.com 4. Proiectarea bazelor de date. Normalizare si postnormalizare. Implementari SQL si Oracle Marin Fotache Editura Polirom 5. Baze de date oracle limbajul SQL prof.univ.dr. Ion LUNGU http://www.biblioteca-digitala.ase.ro
17