Joc Trivia Pentru Testarea Cunostiintelor
PROIECT DE DIPLOMĂ
JOC TRIVIA PENTRU TESTAREA CUNOȘTINȚELOR
CUPRINS
1. Introducere
2. Sisteme informaționale
Sisteme informatice și informaționale. Noțiuni generale
Arhitectura sistemelor informatice
2.1.2 Prezentarea ciclului de viață a unui sistem informatic
2.1.3 Etapele proiectării unui sistem informatic de baze de date
3. Analiza și cerințele sistemului informatic
3.1 Specificarea cerințelor
3.2 Analiza sistemului informatic
3.2.1 Analiza bazei de date relaționale. Modelul entitate-relatie
3.2.2 Analiza aplicatiei software a sistemului informatic.Diagrama procesului de afaceri
4. Proiectarea sistemului informatic
4.1 Proiectarea bazei de date relationale
4.2 Proiectarea aplicatiei software a sistemului informatic
4.2.1 Diagrama fluxurilor de date
4.2.2 Diagrama cazurilor de utilizare
4.2.3 Diagrama de activare
4.2.4 Diagrama de stare a tranzitiilor
4.2.5 Diagrama de secvente
5. Implementarea sistemului informatic
5.1 Implementarea bazei de date
5.1.1 Limbajul SQL
5.1.2 Prezentare generala Microsoft SQL Server
5.1.3 Baze de date in SQL Server
5.1.4 Elemente ale limbajului SQL in cadrul SQL Server
5.2 Implementarea aplicatiei software a sistemului informatic
5.2.1 Microsoft .NET
5.2.2 Limbajul C#
5.2.3 Clase incluse in C#
6. Concluzii
Bibliografie
Introducere
Tema centrala a acestei lucrari o reprezinta cultura generala. Studiile recente indica faptul ca angajamentul si entuziasmul produs de jocurile de cultura generala sunt direct legate de dezvoltarea cognitiva si cea a creierului.Aceste jocuri mai sunt cunoscute si sub numele de jocuri trivia. Ele pot beneficia creierului in diferite moduri, cum ar fi:
Memoria de lucru
De asemenea, cunoscuta si sub numele de memorie pe termen scurt, memoria de lucru se diminueaza în mod natural cu varsta. În timp ce declinul este în mare parte ireversibil, acesta poate fi încetinit de exercitiile cognitive furnizate de jocuri trivia.
Neuroplasticitate
Creierul uman este un organ fantastic, capabil de schimbari uimitoare in ceea ce priveste organizarea sa ca urmare a invatarii si experientei, in concluzie structura si functia acestuia pot fi modificate la orice varsta. Aceasta proprietate extraordinara poarta numele de neuroplasticitate.
Cunoașterea
Proconsul de învățare este de fapt un proces de antrenare. Acumularea de experienta la jocurile trivia îmbunatateste cunoasterea, care, la rândul sau intensifica abilitatile de învatare si de memorare.
Neurogeneza
Neurogeneza sau nasterea neuronilor este procesul prin care neuronii sunt generati. Aceasta este activa in perioada pre-natala si este responsabila pentru popularea creierului cu neuroni.Pentru a produce neuroni, mintea trebuie sa fie mentinuta activa si competitiva.
Inteligenta fluida
Rationamentul din spatele uimitoarei capacitati adaptive a umanitatii este cunoscut ca si inteligenta fluida. Jocurile trivia pot parea cam dificile sau ciudate pentru unele persoane, dar odata ce începi sa te obisnuiesti cu ele, creierul începe rapid sa se adapteze la noua paradigma.
Activitatea lobului frontal
Studiile efectuate de Departamentul de Psihologie de la Universitatea din Carolina de Nord – Wilmington arata ca jocurile gen Trivia Poker cresc activitatea lobului frontal, încurajând astfel neurogeneza si procesele de informatii fluide.
Cortizol – hormonul stresului
Corelatia dintre stres si disfunctie cognitiva a fost observata în numeroase studii. Atunci cand creierul este expus la mult stres, isi pierde capacitatea de a învata în mod eficient. Chiar si oamenii foarte inteligenti nu sunt imuni la efectele negative ale stresului asupra creierului.
Conexiuni ale creierului
Creierul are un mod deosebit in care creeaza caile de memorare. Jocurile trivia ajuta creierul nostru sa stabileasca conexiuni instantanee care ajuta la “dezgroparea” amintirilor pe termen scurt, cât si lung.
Stima de sine
Natura joviala de a juca jocuri trivia într-un cadru social face minuni privind reglementarea emotiei si a stimularii unui ego “sanatos”. Ce e bun pentru suflet este bun si pentru creier.
Sisteme informationale
2.1. Sisteme informatice si informationale. Notiuni generale
Un sistem informational se poate defini ca un set integrat de componente pentru colectarea, stocarea si procesarea datelor sau pentru furnizarea de informatii, cunostinte si produse digitale.
Ansamblul de elemente implicate in procesul de prelucrare și transmitere a
datelor pe cale electronică alcătuiesc un sistem informatic.
Într-un sistem informatic pot intra: calculatoare, sisteme de transmisie a datelor,
componente hardware și software, datele prelucrate, personalul ce exploatează tehnica
de calcul, teoriile ce stau la baza algoritmilor de prelucrare, etc.
Raportul sistem informațional-sistem informatic: sistemul informațional include în
cadrul său sistemul informatic, acesta din urmă fiind o componentă esențială a primului.
Principalele componente ale sistemelor informationale sunt componenta hardware si componenta software, telecomunicatiile, bazele de date si depozitele de date, resursele umane, precum si procedurile.
Echipamentele periferice, cum ar fi discurile magnetice sau SSD, dispozitivele de intrare-iesire, si uneltele de telecomunicatii, constituie componenta hardware a sistemelor informationale. Pretul componentelor hardware a scazut in mod constant si rapid, in timp ce viteza de procesare si capacitatea de stocare au crescut foarte mult.
Componenta software se incadreaza in doua categorii mari : software-ul de sistem si software-ul de aplicatie . Software-ul principal de sistem este sistemul de operare. Acesta gestioneaza hardware-ul , datele si fisierele de program , precum si alte resurse de sistem și ofera mijloace utilizatorului pentru a controla computerul , in general, printr-o interfata grafica ( GUI ).
Software-ul de aplicatie este alcatuit de programe concepute sa se ocupe de sarcini specifice pentru utilizatori. De exemplu, o aplicatie care planifica, parcurge traseul si urmareste livrari de pachete pentru un operator de transport peste noapte.
Telecomunicatiile sunt utilizate pentru a conecta, sau crea conexiuni cu sisteme de computere și de a transmite informații. Conexiunile sunt stabilite prin intermediul tehnologiilor cu fir sau fara fir. Tehnologiile cu fir includ cabluri coaxiale si fibra optica. Tehnologiile fara fir, in principal bazate pe transmiterea de unde electromagnetice, sustin conexiunile mobile.
O baza de date este o colectie de date interconectate (inregistrari) organizata astfel ca inregistrarile individuale sau grupurile de inregistriri pot fi recuperate pentru a satisface diverse criterii. Exemple tipice de baze de date includ inregistrarile angajatilor si cataloage de produse.
Depozitele de date contin datele de arhiva, colectate de-a lungul timpului, care pot fi exploatate pentru informatii, in scopul de a dezvolta si promova noi produse,pentru a servi clientii existenti mai bine, sau de a ajunge la noi potentiali clienti.
Persoanele calificate sunt o componenta vitala a oricarui sistem informatic. Personalul tehnic include manageri de dezvoltare si operatiuni, analisti de afaceri, analisti si designeri de sisteme, administratori de baze de date, programatori, specialisti in securitate informationala, si operatori pe calculator. In plus, toti angajatii intr-o organizatie trebuie sa fie instruiti cum sa utilizeze capacitatile de sisteme informationale.
Procedurile pentru utilizarea, operarea, si mentinerea unui sistem informational fac parte din documentatia sa.
Arhitectura sistemelor informatice
Componentele unui sistem informatic sunt:
1. baza tehnică;
2. sistemul de programe;
3. baza științifico-metodologică;
4. baza informațională;
5. resursele umane;
6. cadrul organizatoric;
1.Baza informațională cuprinde datele supuse prelucrării,fluxurile informaționale, sistemele și nomenclatoarele de coduri.
2. Baza tehnică sau partea hardware a sistemului informatic este componenta care contine totalitatea mijloacelor tehnice de culegere, transmitere, prelucrare și stocare a datelor.
3. Sistemul de programe (software-ul) se referă la totalitatea programelor necesare funcționării sistemului informatic în conformitate cu funcțiile și obiectivele ce i-au fost stabilite.Se iau in considerare atat programele de baza cat si programele aplicative.
4. Baza științifico-metodologică este constituită din algoritmi,modele,formule,precum și din metodologiile de realizare a sistemelor informatice.
5.În resursele umane se include atat personalul de specialitate,care este format din: analisti,programatori,ingineri de sistem,analisti-programatori ajutori,operatori,etc; cat si beneficiarii sistemului.
6.Cadrul organizatoric este in ROF-ul (Regulament de Organizare si Functionare) al unitatii in care va fi utilizat sistemul informatic.
Prezentarea ciclului de viata a unui sistem informatic
Ciclul de viata al unui sistem informatic este constituit din urmatoarele etape:
elaborarea temei de realizare;
proiectarea ansamblului;
proiectarea în detaliu;
elaborarea de programe;
implementare si testare;
punere în functiune, experimentare si acceptare sistem;
exploatare si întretinere.
Exista mai multe modele cu ajutorul carora se pot implementa modele informatice:
modelul cascada;
modelul incremental;
modelul prototip;
modelul spirală.
1. modelul cascada:
2. modelul incremental:
3. modelul prototip:
4. modelul spirala:
Etapele proiectarii unui sistem informatic de baze de date
Proiectarea unui sistem informatic necesita parcurgerea urmatoarelor etape:
planificarea bazei de date – se refera la planificarea modului în care etapele ciclului de
viață pot fi realizate cel mai eficient;
delimitarea granițelor sistemului – se referă la specificarea scopului și limitelor aplicației,a utilizatorilor săi și a domeniilor de aplicație. Înainte de a începe proiectarea unei aplicații de tip bază de date, este foarte important să definim limitele (granițele) sistemului avut în vedere și modul în care acesta realizează interfața cu alte părți ale sistemului informațional al organizației. Practic, includerea și delimitarea granițelor unui sistem este o etapă importantă, nu numai pentru utilizatorii și aplicațiile curente, ci și pentru cele din viitor;
colectarea și analiza cerințelor – are în vedere analiza cerințelor colectate de la utilizatori,
dar și a domeniilor de aplicație. Mai precis, această etapă vizează procesul de culegere și
analiză a informațiilor aferente organizației pentru care se proiectează baza de date
respectivă, dar și utilizarea acestora în vederea identificării cerințelor utilizatorilor privind
noul sistem;
proiectarea bazei de date – include proiectarea conceptuală, logică și fizică. În sens larg,
principalele scopuri urmărite atunci când se dorește proiectarea unei baze de date se
referă la:
reprezentarea datelor și a relațiilor logice dintre acestea, necesare tuturor
domeniilor de aplicație și principalelor grupuri de utilizatori;
oferirea unui model de date care să permită realizarea tranzacțiilor asupra datelor;
specificarea unui proiect minimal și structurat în mod adecvat pentru realizarea
cerințelor stabilite referitoare la performanțele noului sistem;
alegerea SGBD-ului – este o etapă opțională și presupune alegerea unui SGBD
adecvat pentru aplicația realizată.
proiectarea aplicației – are în vedere proiectarea interfeței cu utilizatorul și a
programelor care utilizează și prelucrează baza de date;
prototipizarea – este tot o etapă opțională și presupune construirea unui prototip de
sistem care să permită proiectantului, dar și utilizatorului, să evalueze modul de
funcționare al noului sistem;
implementarea – la încheierea etapelor de proiectare, ne aflăm în situația de a
implementa baza de date și programele aplicație. Implementarea bazei de date se
realizează prin utilizarea limbajului de definiate – include proiectarea conceptuală, logică și fizică. În sens larg,
principalele scopuri urmărite atunci când se dorește proiectarea unei baze de date se
referă la:
reprezentarea datelor și a relațiilor logice dintre acestea, necesare tuturor
domeniilor de aplicație și principalelor grupuri de utilizatori;
oferirea unui model de date care să permită realizarea tranzacțiilor asupra datelor;
specificarea unui proiect minimal și structurat în mod adecvat pentru realizarea
cerințelor stabilite referitoare la performanțele noului sistem;
alegerea SGBD-ului – este o etapă opțională și presupune alegerea unui SGBD
adecvat pentru aplicația realizată.
proiectarea aplicației – are în vedere proiectarea interfeței cu utilizatorul și a
programelor care utilizează și prelucrează baza de date;
prototipizarea – este tot o etapă opțională și presupune construirea unui prototip de
sistem care să permită proiectantului, dar și utilizatorului, să evalueze modul de
funcționare al noului sistem;
implementarea – la încheierea etapelor de proiectare, ne aflăm în situația de a
implementa baza de date și programele aplicație. Implementarea bazei de date se
realizează prin utilizarea limbajului de definire a datelor (LDD), corespunzător
sistemului de gestiune a bazelor de date ales. Instrucțiunile limbajului LDD sunt
compilate și utilizate pentru a permite crearea schemei bazei de date. Totodată,
toate vederile specificate de către utilizatori sunt definite în această etapă;
testarea – este etapa în care se testează aplicația și se identifică eventualele
neconcordanțe dintre cerințele utilizatorilor și rezultatul furnizat de aceasta;
întreținerea operațională – presupune o monitorizare continuă a aplicației realizate,
iar dacă este nevoie, vor fi încorporate cerințe noi, parcurgând etapele precedente
ale ciclului de viață.
Analiza si cerintele sistemului informational
Analiza si definirea cerintelor este una din etapele importante ale ciclului de viata ale unui sistem informatic. Aici sunt definite obiectivele,restrictiile si serviciile sistemului informatic ce va fi creat, acestea fiind explicate intr-un mod cat mai accesibil pentru a fi intelese de utilizatorii sistemului cat si de personalul de proiectare.
3.1 Specificarea cerintelor
Lucrarea de fata isi propune realizarea unei aplicatii de testare a cunostintelor generale sau mai pe scurt,a unui joc trivia. Aplicatia va contine:
o interfata,usor de inteles,care permite accesul la datele din baza de date si care mai contine unele setari ce ii vor permite utilizatorului sa schimbe design-ul acesteia;
o baza de date in care vor fi stocate atat datele utilizatorilor,introduse atunci cand se inregistreaza,cat si intrebarile la care vor raspunde sau punctele obtinute dupa fiecare joc;
un formular de inscriere in care utlizatorul trebuie sa introduca un nume de utilizator, o parola si va putea sa isi selecteze si o poza de profil care va fi afisata de fiecare data cand acesta se va loga;
un formular in care utilizatorul va avea posibilitatea sa isi schimbe numele,parola sau poza de profil;
mai multe tipuri de joc. Utilizatorul va putea alege intre a juca singur acest joc sau impotriva cuiva. Daca va fi aleasa prima optiune, utilizatorul va fi nevoit sa aleaga intre trei tipuri distincte de joc: joc standard, joc fulger sau joc personalizat.Fiecare dintre acestea se vor desfasura in mod diferit. Daca va fi aleasa cea de-a doua optiune si anume, jocul impotriva cuiva, unul dintre utilizatori va fi nevoit sa fie serverul, iar celalalt va fi clientul. Cel care va fi serverul isi va putea alege adversarul din lista clientilor conectati si va decide momentul cand jocul va incepe;
intrebarile care vor fi din mai multe categorii, oferindu-i utilizatorului oportunitatea de a-si extinde orizonturile si de a invata multe lucruri noi;
Baza de date creata este stocata pe un server in SQL Server 2008 iar aplicatia este implementata folosind limbajul C#. Mediul de dezvoltare utilizat este Visual Studio 2010.
Aplicatia poate fi folosita de persoane de toate varstele,de oricine este dornic sa invete,sa afle lucruri noi sau de oricine se simte curajos sa isi testeze cunostintele generale.Aceasta permite doua tipuri de utilizatori,fiecare avand permisiuni diferite:
jucatorul;
administratorul.
Diferenta dintre jucator si administrator este ca acesta din urma are dreptul de a adauga,a modifica sau de a sterge datele din baza de date.
3.2 Analiza sistemului informatic
Pe baza obiectivelor,restrictiilor si serviciilor sistemului informatic se realizeaza analiza acestuia, care se imparte in doua etape:
analiza bazei de date relationale;
analiza aplicatiei software a sistemului informatic.
3.2.1. Analiza bazei de date relationale. Modelul entitate-relatie
Modelul entitate-relatie este un model de nivel inalt ce ajuta la proiectarea bazelor de date.
Modelul conceptual are ca obiectiv principal atat descrierea structurii unei baze de date cat si operatiile de regasire si reactualizare asociate. Acesta este independent de sistemul de gestiune al bazelor de date si de platforma hardware utilizata.
O entitate poate fi o persoană, un loc,un concept,o activitate,un eveniment care este semnificativ pentru ceea ce modelăm si care este recunoscuta ca fiind capabila să existe independent și care poate fi identificata în mod unic.Exemplu de entitate:
Figura 1. Reprezentarea grafica a unei entitati
In Figura 1. este reprezentata entitatea “Scor” care face parte din modelul conceptual al acestui sistem informatic:
Figura 2. Modelul conceptual al sistemului informatic
Observații:
• Entitățile devin tabele în modelele relaționale.
• În general, entitățile se scriu cu litere mari.
• Entitățile sunt substantive, dar nu orice substantiv este o entitate.
• Pentru fiecare entitate este obligatoriu să se dea o descriere detaliată.
• Nu pot exista, în aceeași diagramă, două entități cu același nume, sau o aceeași entitate cu nume diferite.
Relația sau asocierea reprezinta o comunicare între două sau mai multe entități. Entitatile incluse intr-o relatie reprezinta participantii acesteia.Gradul (tipul) unei relatii este dat de numarul entitatilor participante la relatia respectiva. Exemplu in Figura 3. “contine” este o relatie intre “Categorie” si “Intrebari”.
Figura 3. Reprezentarea grafica a unei relatii
Observații:
În modelul relațional, relațiile devin tabele speciale sau coloane speciale care referă chei primare.
Relațiile sunt verbe, dar nu orice verb este o relație.
Pentru fiecare relație este important să se dea o descriere detaliată.
În aceeași diagramă pot exista relații diferite cu același nume. În acest caz, le diferențiază entitățile care sunt asociate prin relația respectivă.
Pentru fiecare relație trebuie stabilită cardinalitatea.
Cardinalitatea unei relatii reprezinta numarul de instante ale celor 2 entitati care
sunt asociate prin relatia respective.Exista 3 tipuri de cardinalitati:
one to one (1-1) : este o relatie intre 2 entitati in care unei instante din prima entitate,notata cu E1, ii corespunde o singura instanta din entitatea a doua,notata cu E2, si invers.Exemplu figura 4.
one to many (1-n): este o relatie intre 2 entitati in care unei instante din prima entitate,notata cu E1, ii corespund mai multe instante din entitatea a doua,notata cu E2, dar unei instante din E2 ii corespunde o singura instanta din E1.Exemplu figura 5.
many to many (m-n): este o relatie intre 2 entitati in care unei instante din prima entitate,notata cu E1, ii corespund mai multe instante din entitatea a doua,notata cu E2, si invers.Exemplu figura 6.
Figura 4. Figura 5. Figura 6.
In figura 7. este reprezentat si un exemplu de cardinalitate din sistemul informatic:
Figura 7. Cardinalitatea 1-n
Atributele reprezinta o proprietate descriptivă a unei entități sau a unei relații. Atributele pot fi simple, compuse, cu valori multiple sau derivate. Exemplu: “id_categorie” este un atribut al entitatii “Categorie”.
Observații:
Trebuie făcută distincția între tipul atributului (devine coloană în modelele relaționale) și valoarea acestuia (devine valoare în coloane).
Atributele sunt substantive, dar nu orice substantiv este atribut.
Fiecărui atribut trebuie să i se dea o descriere completă (exemple, contraexemple, caracteristici).
Pentru fiecare atribut trebuie specificat numele, tipul fizic (integer, float, char etc.), valori posibile, valori implicite, reguli de validare, tipuri compuse.
Pasii necesari pentru realizarea modelului entitate-relatie sunt:
identificarea entitatilor sistemului;
determinarea relatiilor dintre entitati;
definirea cardinalitatii relatiilor dintre entitati;
determinarea tabelelor;
definirea coloanelor;
alegerea cheilor primare;
normalizarea.
Figura 8. Reprezentarea modelului entitate-relatie
a sistemului informatic
Proiectarea sistemului informatic
Proiectarea fizica sau proiectarea de detaliu, se desfasoara in urma proiectarii logice. In timpul proiectarii logice se prezinta o imagine de ansamblu (generala) a sistemului, in timp ce in proiectarea fizica este prezentata o abordare detaliata a sistemului.Mai exact, in etapa de proiectare logica se realizeaza validarea modelului conceptual al datelor,incepand de la viziunile particulare ale diversilor utilizatori,evidentierea particularitatilor orgazitionale,elaborarea modelului logic si optimizarea acestuia.In timpul proiectarii fizice se prezinta punctele de vedere ale specialistilor, cum ar fi din domeniul bazelor de date, securitatii sistemelor, retelelor de calculatoare, programarii, etc.
Proiectarea fizica se desfasoara prin parcurgerea urmatorilor pasi:
Proiectarea fizica a bazei de date relationale. O astfel de activitate realizeaza descrierea modului in care vor fi stocate datele si cum se va asigura controlul lor pentru a se oferi o securitate maxima;
Proiectarea aplicatiei software a sistemului informatic. Se descrie programul sau modulele acestuia care sa fie in stransa concordanta cu diagramele fluxurilor de date si cu celelalte piese ale documentatiei.
Proiectarea bazei de date relationale
(laborator 3 pdf + proiectarea fizica a bazei de date.txt)
Proiectarea fizica a bazei de date reprezinta procesul de selectare a structurilor de memorare si de acces la informatiile bazei de date. Deciziile de proiectare fizica se pot lua numai dupa o analiza a aplicatiilor care se vor executa si în principal a interogarilor si tranzactiilor pe care acestea le vor lansa. În urma analizei se pot sintetiza informatii care sa dea imaginea de ansamblu a utilizarii atributelor relatiilor bazei de date: care atribute sunt actualizate cel mai frecvent, care atribute sunt folosite cel mai frecvent în selectii ale interogarilor, etc.
Procesul de proiectare constă în următorii pași:
stabilirea scopului bazei de date : acest pas ajută la pregătirea pașilor rămași;
determinarea și organizarea informațiilor necesare: adunarea tuturor tipurilor de informații care vor fi înregistrate în baza de date;
impărțirea informațiilor în tabele: impărțirea elementelor de informații în entități. Apoi, fiecare entitate devine un tabel;
transformarea elementelor de informații în coloane:se decid ce informații se stocheaza în fiecare tabel. Fiecare element devine un câmp care este afișat sub formă de coloană în tabel;
specificarea cheilor primare :se alege cheia primară pentru fiecare tabel. Cheia primară este o coloană care se utilizează pentru a identifica în mod unic fiecare rând.
configurarea relațiilor din tabel:se decide cum se asociază datele dintr-un tabel cu datele din alte tabele;
rafinarea proiectării:in acest pas se analizeaza proiectarea pentru eliminarea erorilor;
aplicarea regulilor de normalizare :se aplica regulile de normalizare a datelor pentru a vedea dacă tabelele sunt corect structurate.
Transformarea entitatilor
In aceasta etapa are loc impărțirea elementelor de informații în entități. Apoi, fiecare entitate devine o tabela,acestea avand acelasi nume ca si entitatile din care provin.De exemplu in etapa de analiza a bazei de date, am stabilit mai multe entitati pentru aceasta,printre care si entitatea “utilizator” care a devenit tabela “utilizator”.Exemplu figura 4.1.
Figura 4.1. Reprezentarea tabelei “utilizator”
impreuna cu atributele acesteia
Pot exista si unele cazuri speciale:
entitatile independente: acestea se transforma in tabele independente,iar cheia primara a acestora nu poate contine chei straine;
entitatile dependente: acestea se transforma in tabele dependente. In cazul acestora, cheia lor primara poate sa contina chei straine ce fac referinta la chei primare a entitatilor de care depinde entitatea respectiva.
Transformarea relatiilor
relatia 1:1 devine cheie straina, aceasta fiind plasata in tabelul cu mai putine inregistrari.
relatia 1:N devine cheie straina,aceasta fiind plasata in tabelul care se afla in partea “multi” a relatiei. Exemplu figura 4.2:
Figura 4.2. Relatie 1:N din baza de date a sistemului informatic
relatia multi-multi M:N,fiind nevoita sa se transforma intr-un tabel asociativ, care are doua chei straine pentru cele doua tabele asociate. Exemplu figura 4.3:
Figura 4.3. Relatie M:N din baza de date a sistemului informatic
Transformarea atributelor
In aceasta etapa au loc urmatoarele actiuni:
atributele simple ale unei entitati devin coloane in tabelul provenit din entitatea respectiva.Exemplu figura 4.1.
atributele repetitive (multivaloare) devin tabele dependente care contin o cheie straina ce face referinta la cheia primara a entitatii si atributul multivaloare.
atributele simple ale unei relatii M:N vor deveni coloane ale tabelului asociativ,care se formeaza din cauza acestei relatii. Exemplu figura 4.3.
Specificarea cheilor
O cheie intr-o baza de date reprezinta un câmp ce contine o valoare unică, folosita pentru a identifica in mod unic fiecare înregistrăre dintr-un tabel. Exista mai multe tipuri de chei iar acestea sunt:
cheia primară: orice tabel trebuie să aiba o cheie primară, ea reprezentand una dintre cheile candidat desemnate în cadrul unui tabel. De exemplu:
Figura 4.4. Reprezentarea tabelei “scor” impreuna
cu atributele acesteia si cheile primare
In figura 1 este reprezentata tabela“scor” impreuna cu atributele acesteia,ele facand parte din baza de date a sistemului informatic. Cheile primare sunt reprezentate cu simbolul:
cheia candidat: este un atribut sau un set de atribute ce identifică în mod unic o celula dintr-un tabel.
cheia alternativă: este o cheie candidat ce nu a fost desemnată drept cheie primară. Aceasta poate deveni cheie primară dacă cheia primară stabilita inițial nu mai corespunde la un moment dat.
cheia externă: conține valorile care corespund valorilor din cheia primară a altui tabel. Prin aceasta se completează o relație identificând tabela părinte. Orice relație dintr-o bază de date porneste dintr-o cheie externă.Exemplu figura 4.5.
Figura 4.5.
In figura 4.5 este reprezentata relatia dintre tabela “utilizator” si tabela “tema” care porneste de la cheia externa “id_tema”. “id_tema” este cheia primara a tabelei ”tema”, aceasta din urma reprezentand si tabela parinte din aceasta relatie.
Respectand toate aceste etape care descriu transformarea schemei conceptual a bazei de date, putem realize diagrama logica a bazei de date.Aceasta este reprezentata in figura 4.6.
Figura 4.6. Diagrama logica a bazei de date
Tabelele asociate diagramei sunt:
UTILIZATOR(id_user,id_tema,username,parola,logat,imagine)
TEMA(id_tema,background)
INTREBARI(id_categorie,nr_intrebare,text_intrebare,raspuns1,raspuns2,raspuns3,raspuns4,corect,50-50,percent1,percent2,percent3,percent4)
SCOR(id_user,id_tip_joc,data_joc,scor,timp)
TIP_JOC(id_tip_joc,nume_tip_joc)
TIP_JOC_CATEGORII(id_tip_joc,id_categorie)
CATEGORIE(id_categorie,nume_categorie)
4.2.Proiectarea aplicatiei software a sistemului informatic
Acest subcapitol este structurat in mai multe etape:
proiectarea diagramei fluxurilor de date(Data Flow Diagram);
proiectarea diagramei cazurilor de utilizare(Use Case Diagram);
proiectarea diagramei de activitate(Activity Diagram);
proiectarea diagramei de secvente(Sequence Diagram);
proiectarea diagramei de stare de tranzitie(State Machine Diagram);
4.2.1.Diagrama fluxurilor de date(Data Flow Diagram)
O diagramă a fluxului de date (DFD) este o tehnică importantă de modelare pentru a analiza și construi proceselor de informare. DFD înseamnă o ilustrație care explică cursul sau deplasarea de informații într-un proces. DFD ilustrează acest flux de informații într-un proces bazat pe intrările și ieșirile acestuia In plus, o diagrama DFD poate fi utilizata pentru a vizualiza prelucrarea datelor sau un design structurat. Un DFD ilustrează procese tehnice sau de afaceri cu ajutorul depozitului de date externe, a datelelor care decurg dintr-un proces in altul, si a rezultatelor.
DFD este un instrument de comunicare excelent pentru analiști de a modela procese și cerințe funcționale. Unul dintre instrumentele principale ale eforturilor de analiză structurate în 1970 a fost dezvoltat și îmbunătățit de către Yourdon, McMenamin, Palmer, Gane și Sarson. Este în continuare considerat unul dintre cele mai bune tehnici de modelare care poate obtine si reprezenta cerințele de procesare ale unui sistem. Utilizat în mod eficient, acesta este un instrument de modelare util și ușor de înțeles.
Prin urmare, principiul de creare a unei diagrame DFD este că un sistem poate fi dezintegrat în subsisteme, care la rândul său poate fi dezintegrat în subsisteme la un nivel mult mai scăzut, și așa mai departe. Fiecare subsistem în DFD reprezintă un proces. In acest proces sau activitate datele de intrare sunt procesate. Procesele nu pot fi descompuse după atingerea unui anumit nivel inferior. Fiecare proces într-un DFD caracterizează un sistem întreg. Într-un sistem DFD, datele sunt introduse în sistem din mediul extern. Odata intrate, datele circula intre procese, apoi datele prelucrate sunt produse ca o ieșire sau ca un rezultat.
Diagramele fluxurilor de date pot fi utilizate pentru a oferi o reprezentare clară a oricărei funcții de afaceri. Tehnica începe cu o imagine de ansamblu a afacerii și continuă prin analiza fiecarei zone funcționale de interes. Aceasta exploateaza o metoda numita expansiune de sus în jos pentru a efectua analiza în mod planificat.
Modelul de proces este de obicei folosit în analiză structurată și metode de proiectare. De asemenea, denumit ca schemă a fluxurilor de date (DFD),prezinta fluxul de informații printr-un sistem. Fiecare proces transformă intrările în ieșiri.
Modelul începe în general cu o diagrama de context prezentând sistemul ca un singur proces de schemă logică, conectată la entități externe în afara limitei sistemului. Acest proces explodează la un nivel mai scăzut DFD care împarte sistemul în părți mai mici și echilibrează fluxul de informații între diagramele părinte și copil. Multe nivele diagrama pot fi necesare pentru a exprima un sistem complex.
Există cateva reguli generale de modelare care trebuie urmate la crearea unei diagrame DFD:
toate procesele trebuie să aibă cel puțin un flux de date care intra și un flux de date care iasa;
toate procesele ar trebui să modifice datele de intrare, producand date noi la ieșire;
fiecare depozit de date trebuie să fie implicat cu cel puțin un flux de date;
fiecare entitate externă trebuie să fie implicata cu cel puțin un flux de date;
un flux de date trebuie să fie atașat la cel puțin un proces.
Principalele simboluri folosite la crearea unei diagrame DFD sunt:
Pătrate reprezentând entități externe, care sunt surse sau destinații de date.Exemplu figura 4.7.
Figura 4.7. Entitate externa a diagramei DFD
a sistemului informatic
Dreptunghiuri rotunjite reprezentând procese, care iau ca si intrare datele, efectueaza operatii asupra acestora, iar apoi sunt produse ca o ieșire sau ca un rezultat. .Exemplu figura 4.8.
Figura 4.7. Proces al diagramei DFD
a sistemului informatic
Săgețile reprezentand fluxurile de date, care pot fi ori date electronice ori obiecte fizice.Exemplu figura 4.8.
Figura 4.8. Flux de date al diagramei DFD
a sistemului informatic
Dreptunghiuri deschise la capat – reprezintă depozite de date,cum ar fi baze de date sau fișiere XML.
Figura 4.9. Depozit de date al diagramei DFD
a sistemului informatics
Diagrama fluxurilor de date a acestui sistem informatics este urmatoarea(figura 4.10):
Figura 4.10. Diagrama Fluxurilor de Date
(DFD)
4.2.2 Diagrama cazurilor de utilizare
UML Use Case Diagrame poate fi folosit pentru a descrie funcționalitatea unui sistem în mod orizontal. Adică, nu doar reprezintă detaliile caracteristicilor individuale ale sistemului, aceasta putand fi folosita pentru a afișa toate funcționalitatile sale disponibile. Este important de remarcat, totuși, că diagramele cazurilor de utilizare sunt fundamental diferite de diagramele de secvență sau alte diagrame, deoarece acestea nu fac nici o încercare de a reprezenta numărul de ori sau ordinea in care acțiunile sistemelor și sub-acțiunile ar trebui să fie executate.
Diagramele cazurilor de utilizare au doar 4 elemente principale: actorii care intereactioneaza cu sistemul descris,sistemul în sine, cazuri de utilizare, sau servicii, pe care sistemul știe cum sa le indeplineasca, si liniile care reprezintă relațiile dintre aceste elemente.
Actorii
Un actor interpreteaza orice entitate (sau entități), care efectuează anumite roluri într-un sistem dat. Diferitele roluri pe care actorul le reprezintă sunt rolurile de afaceri efective ale utilizatorilor într-un sistem dat.
Cand un actor este folosit într-o diagramă a cazurilor de utilizare acesta trebuie sa interacționeze cu un caz de utilizare. Actorii ar trebui utilizati in diagrama doar daca au un impact asupra funcționalității care se doresțe a fi modelata.
În cazul în care o entitate nu afectează o anumită parte de funcționalitate care va fi modelata, nu are nici un sens să fie reprezentata ca si actor. Pentru a identifica un actor, căutați termeni de afaceri în declarația problemei,care descriu roluri în sistem.Un exemplu de reprezentare a unui actor intr-o diagram a cazurilor de utilizare se afla in figura 4.11.
Figura 4.11. Reprezentare actor
din diagrama cazurilor de utilizare
Cazuri de utilizare
Un caz de utilizare într-o diagramă a cazurilor de utilizare este o reprezentare vizuală a unei funcționalități de afaceri distinctă într-un sistem. Termenul cheie aici este "funcționalitate de afaceri distincta."
Pentru a alege un proces de afaceri ca un candidat probabil pentru a fi modelat ca un caz de utilizare, trebuie sa fie verificat dacă procesul de afaceri este discret în natură. Ca prim pas în identificarea cazurilor de utilizare, ar trebui să listate funcțiile de afaceri discrete în declarația problemei. Fiecare dintre aceste funcții de afaceri poate fi clasificat ca un caz potențial de utilizare. Identificarea cazurilor de utilizare este o descoperire, mai degrabă decât o creație. Un caz de utilizare este prezentat ca o elipsă într-o diagramă caz de utilizare. Un exemplu de reprezentare a unui caz de utilizare intr-o diagram a cazurilor de utilizare se afla in figura 4.12.
Figura 4.12. Reprezentarea unui caz de utilizare
din diagrama cazurilor de utilizare
Sistem de delimitare
Sistemul de delimitare definește scopul viitor al unui sistem. Deci, rezultă că aceste cazuri de utilizare, de asemenea, trebuie să aibă definite si limite definitive. Un sistem de delimitare a unei diagrame a cazurilor de utilizare definește limitele sistemului. Acesta este prezentat ca un dreptunghi care cuprinde toate cazurile de utilizare în sistem.
Sistemul de delimitare poate fi întregul sistem asa cum este definit în declarația problemei. Dar nu este întotdeauna cazul. Pentru sistemele mari și complexe, fiecare dintre module pot fi sistemul de delimitare.Exemplu in figura 4.13.
Figura 4.13. Reprezentare sistem de delimitare
Relatiile
Cazurile de utilizare UML împărtășesc diferite tipuri de relatii. O relație între două cazuri de utilizare este de fapt o dependență între cele două cazuri de utilizare. Definirea unei relații între două cazuri de utilizare este decizia celui care creeaza diagrama cazurilor de utilizare. Aceasta refolosire a unui caz de utilizare existent folosind diferite tipuri de relații reduce efortul total necesar în definirea cazurilor de utilizare într-un sistem. Relatii dintre cazurile de utilizare sunt următoarele:
Includerea: Când un caz de utilizare este descris ca folosind funcționalitatea unui alt caz de utilizare într-o diagram. Această relație aflata intre cazurile de utilizare este numita relație de includere. Literalmente, într-o relație de includere, un caz de utilizare include funcționalitatea descrisă în celalalt caz de utilizare ca o parte din fluxul de proces de afaceri. O relație de includere este reprezentata printr-o linie punctata la capatul careia se afla o sageata.Varful sagetii indica,catre cazul de utilizare parinte iar cazul de utilizare copil este conectat la celalalt capat.Exemplu figura 4.14.
Figura 4.14. Relatie de
includere
Extinderea: Într-o relație de extindere între două cazuri de utilizare, cazul de utilizare copil adaugă la funcționalitatea existenta și caracteristicile cazului de utilizare părinte. O relație de extindere este reprezentata printr-o linie punctata la capatul careia se afla o sageata, similar cu relația de includere. Varful sagetii indica,catre cazul de utilizare parinte iar cazul de utilizare copil este conectat la celalalt capat.Exemplu figura 4.15.
Figura 4.15. Relatie de
extindere
Generalizări: O relatie de generalizare este, de asemenea, o relație părinte-copil între cazurile de utilizare. Într-o diagramă a cazurilor de utilizare,relatia de generalizare este prezentată cu o săgeată. Vârful săgeții este conectat la cazul de utilizare părinte, cazul de utilizare copil fiind conectat la celalalt capat.Exemplu figura 4.16.
Figura 4.16. Relatie
de generalizare
Asocieri: O asociere este relația dintre un actor și un caz de utilizare. De fapt, asociere înseamnă doar că un actor este implicat în cazul de utilizare. Aceasta indică faptul că un actor poate utiliza o anumită funcționalitate a sistemului de afaceri. Din păcate, asocierea nu oferă nici o informație cu privire la modul în care este utilizată funcționalitatea.Exemplu figura 4.17.
Figura 4.17. Relatie
de asociere
Pe baza tuturor componentelor prezentate mai sus a fost creata diagrama cazurilor de utilizare a sistemului informatic:
Figura 4.18. Diagrama cazurilor de utilizare
4.2.3 Diagrama de activitate
Diagramele de activitate sunt de obicei folosite pentru modelarea proceselor de afaceri, pentru modelarea logica,capturata de un caz de utilizare sau scenariu de utilizare, sau pentru modelarea logica detaliată a unei reguli de afaceri.
Deși diagramele de activitate ar putea modela potențial logica internă a unei operatii complexe, ar fi mult mai bine să rescrie pur și simplu operatia, astfel va fi destul de simplu incat nu va mai fi nevoie de o diagrama de activitate.
În multe feluri, diagramele de activitate sunt echivalentul orientat-obiect al diagramelor fluxurilor de date (DFD) din dezvoltarea structurata .
Principalele component ale unei diagrame de activitate sunt:
activitate;
actiune;
nod initial;
nod final;
tranzitia;
nod de decizie;
nod de imbinare;
nod de sincronizare;
Activitatea
O activitate specifică coordonarea de execuții de comportamente subordonate, folosind un model de control și un model de flux de date.
Activitățile pot descrie calculul procedural. În acest context, acestea sunt metodele corespunzătoare a operațiunilor pe clase. Activități pot fi aplicate pentru modelare organizațională pentru ingineria proceselor de afaceri și fluxul de lucru. In acest context, evenimentele provin adesea din interiorul sistemului, cum ar fi finisarea unei sarcini, precum si din afara sistemului, cum ar fi un apel de client. Activitățile pot fi de asemenea utilizate pentru modelarea sistemelor de informare pentru a specifica procesele la nivel de sistem. Dreptunghiurile rotunjite reprezintă activitățile care au loc.Exemplu figura 4.19.
Figura 4.19. Reprezentare activitate
Actiunea
O acțiune reprezintă o singură etapă în cadrul unei activități, care este, una care nu se descompune în continuare în cadrul activității.
O acțiune poate avea seturi activitati marginale de intrare și ieșire care specifica controlul fluxului si a datelor de la unele noduri la altele. O acțiune nu va începe executarea până când toate condițiile de intrare sunt îndeplinite. Finalizarea executării unei acțiuni poate permite executarea unui set de noduri și acțiuni succesive isi iau valorile de intrare de la iesirile actiunii.Exemplu figura 4.20.
Figura 4.20. Exemplu de activitate
Nodul initial
Cercul umplut este punctul de plecare al diagramei.Un nod initial este un nod de control al carui flux care începe atunci când activitatea este invocata. Un nod inițial nu este necesar, deși acesta face mult mai ușor de citit o diagrama.Exemplu figura 4.21.
Figura 4.21. Reprezentare nod initial
Nodul final
O activitate poate avea mai mule noduri finale.Cand se ajunge la primul nod final, acesta va opri toate fluxurile in activitate.Reprezentarea acestuia este asemanatoare cu cea a punctului initial doar ca are in plus un cerc in jurul sau.Exemplu figura 4.22.
Figura 4.22. Reprezentare nod initial
Tranzitia
Tranzitia arata ordinea de executie a actiunilor din cadrul activitatii descrise.Aceasta este reprezentata sub forma unei sageti care indica actiunea ce urmeaza a fi executata. Exemplu figura 4.23.
Figura 4.23. Reprezentare tranzitie
Nod de decizie
Acesta este reprezentat printr-un romb in care intra un flux si ies doua sau mai multe fluxuri. Acest nod constă dintr-o condiție care reprezintă calea de execuție urmata atunci când decizia se dovedeste a fi adevarata sau cealalta cale, care reprezintă calea de execuție urmata atunci când condiția este evaluata falsă (calea implicită). Un nod de decizie poate conține condiții suplimentare,în cazul în care prima condiție se evaluează la fals, a doua condiție este evaluată. Dacă a doua condiție se evaluează la fals, următoarea condiție este evaluată, și așa mai departe. Calea implicită este executata în cazul în care nu sunt îndeplinite condițiile. Exemplu figura 4.24.
Figura 4.24. Reprezentare nod de decizie
Nod de imbinare
Este reprezentat de o bara neagra in care intra mai multe fluxuri si iese unul singur.Rolul acestuia este de a sincroniza fluxurile. Prelucrarea va continua numai dupa ce toate fluxurile vor ajunge in nod. Aceasta denotă sfârșitul prelucrării paralele. Exemplu figura 4.25.
Figura 4.25. Reprezentare nod
de imbinare
Nod de sincronizare
Este reprezentat de o bară neagră,in care intra un flux si ies 2 sau mai multe fluxuri.Rolul acestuia este de a desparti un flux în mai multe fluxuri concurente. Acest lucru denotă începutul activității paralele. Exemplu figura 4.26.
Figura 4.26. Reprezentare nod
de sincronizare
Pe baza tuturor componentelor prezentate mai sus se pot crea mai multe diagrame de activitati. Urmatoarea diagrama descrie desfasurarea activitatii unu joc standard a sistemului informatic. Utilizatorul este nevoit sa se autentifice pentru a putea sa se logheze in joc. Daca numele de utilizator nu exista atunci acesta va trebui sa se inregistreze.Dupa ce formularul de inregistrare este completat se va verifica daca nu cumva numele introdus este folosit de un alt utilizator. Daca acesta este folosit atunci va trebui sa fie introdus alt nume, iar daca numele nu este folosit utilizatorul a reusit sa se inregistreze si se va putea autentifica. Dupa ce s-a autentificat utilizatorul selectează tipul de joc standard.Jocul va incepe doar atunci cand utilizatorul este pregatit si va apasa butonul de start si se va termina atunci cand va expira timpul afisat.Dupa terminarea jocului utilizatorul va avea doua optiuni:reinceperea jocului sau va putea sa selecteze vizualizarea listei cu cele mai bune scoruri.Exemplu figura 4.27.
Figura 4.28. Diagrama activitatii pentru
un joc standard
4.2.4 Diagrama de secvente
Diagrama de secvență este utilizata în principal pentru a arăta interacțiunile dintre obiecte în ordinea secvențială in care apar aceste interacțiuni.
Personalul de afaceri al unei organizații poate găsi diagramele de secventa utile pentru a comunica modul în care afacerea funcționează în prezent, arătând modul în care diverse obiecte de afaceri interacționează. Pe lângă documentarea actualității unei organizații, o diagrama secvență nivel-business poate fi folosita ca un document de cerințe pentru a comunica cerințele pentru un sistem de punere în aplicare în viitor.
Una dintre utilizările primare ale diagramelor de secventa este în tranziția de la cerințele exprimate în cazuri de utilizare la următorul nivel și mai formal de rafinament.
Principalele elemente ale unei diagrame de secvente sunt:obiectele,liniile de viata si mesajele.
Obiectele
Obiectele precum și clasele pot fi obiective pe o diagramă de secvență, ceea ce înseamnă că mesajele pot fi trimise la acestea. Un obiectiv este afișat ca un dreptunghi cu un text în el. Sub obiectiv, viața lui se extinde pentru atâta timp cât acesta exista. Durata de viata este afișata ca o linie punctată verticală.Exemplu figura 4.29.
Figura 4.29. Reprezentare obiecte
Liniile de viata
Atunci când se realizează o diagramă de secvență, elementele de notație a liniei de viata sunt plasate în partea de sus a diagramei.Liniile de viata reprezinta fie roluri sau instanțe ale obiectelor care participă în secvența ce este modelata. În sisteme complet modelate obiectele (instanțele de clase) vor fi, de asemenea, modelate pe diagrama de clasă a unui sistem.
Liniile de viața sunt desenate ca o cutie cu o linie întreruptă coborand din centrul marginii de jos.Numele liniei de viata este in interiorul cutiei.Exemplu figura 4.30.
Figura 4.30. Reprezentare linie de viata
Mesajele
Primul mesaj al unei diagrame de secvență începe întotdeauna în partea de sus și se află de obicei în partea stângă a diagramei pentru lizibilitate. Mesajele ulterioare sunt apoi adăugate la diagram, putin mai jos fata de mesajele anterioare.
Pentru a afișa un obiect trimitand un mesaj unui alt obiect, trebuie adaugata o sageata intre acestea.Numele mesajului sau al metodei este plasat deasupra liniei sagetii.
Mesajul care este trimis la obiectul destinatar reprezintă o operație / metodă pe care clasa obiectului destinatar o implementează.Exemplu figura 4.30.
Figura 4.30. Reprezentare mesaje
Urmatoarea diagram de secvente descrie desfasurarea activitatii jocului a sistemului informatic.Figura 4.31.
Figura 4.31. Diagrama de secvente
Capitolul 4
Implementarea sistemului informatic
Implementarea sistemului reprezinta etapa de transpunere,al algoritmului obtinut in urma fazei de proiectare,intr-un limbaj de programare,acesta fiind realizat de unul sau mai multi programatori.
Aceasta etapa de transformare in limbaj de programare poate fi reprezentata prin schema urmatoare astfel:
Transformarea in limbaj de programare este formata din 3 etape distincte:
scrierea programelor – etapa in care se desfasoara activitatea de creare a programeleor necesare sistemului informatic.
testarea si validarea programelor – etapa în care se efectueaza verificarea functionalitatii programelor scrise,urmata de validarea programelor unde se stabileste daca ele sunt operationale.Acestea sunt operationale in momentul in care se termina toate seriile de testari iar rezultatele au fost corecte.
livrarea sistemului informatic se face aplicand anumite modele de implementare pentru a asigura continuitatea activitatii unitatii respective.
Implementarea sistemului informatic poate fi impartita in doua directii:
implementarea bazei de date a sistemului
implementarea aplicatiei software a sistemului
4.1 Implementarea bazei de date
Dupa construirea unui design logic si fizic a bazei de date relationale si dupa colectarea cerintelor de procesare, se poate trece la etapa de implementare. Implementarea presupune construirea unei baze de date in conformitate cu specificatiile unei scheme logice.In general, punerea in aplicare a design-ului fizic implica definirea diferitelor obiecte si aplicarea constrangerilor asupra relatiilor dintre date.
Obiectele dintr-o baza de date relationala sunt organizate in seturi numite scheme. O schema ofera o clasificare logica a obiectelor din baza de date.Pasii necesari implementarii modelului fizic sunt reprezentati in schema de mai jos:
4.1.1 Limbajul SQL
SQL (Structured Query Language – limbaj de interogare structurata) este unul din cele mai puternice limbaje structurate,folosit de marea majoritate a sistemelor de baze de date relationale.
Principalele functii ale acestui limbaj sunt inserarea datelor, interogațiile, actualizarea si stergerea datelor, modificarea și crearea schemelor logice, precum și controlul accesului la date. SQL permite atat accesul la design-ul bazelor de date, cat și la continutul acestora.
Limbajul SQL este divizat in mai multe elemente:
clauze, care fac parte din instrucțiuni si interogari.
expresii, care au rolul in producerea de tabele.
predicates, este o expresie care este utilizata la conditiile logice. Predicates sunt folosite in conditiile de cautare a clauzei WHERE sau HAVING,in conditiile de asociere a clauzei FROM, si a altor constructori care unde este necesara o valoare booleana.
interogarile, sunt utilizate in regasirea datelor dupa anumite criterii.
instructiunile, sunt alcatuite din unul sau mai multe cuvinte cheie care sunt in limba engleza. Cu ajutorul acestora putem controla atat datele cat si structura acestora.
4.1.2 Prezentare generala Microsoft Sql Server
Microsoft SQL Server este un sistem relational de gestionare a bazelor de date dezvoltat de Microsoft. Ca o baza de date, acesta este un produs software a carui functie principala este de a stoca si de a prelua datele solicitate de catre alte aplicatii software, fie cele de pe acelasi computer sau cele care ruleaza pe un alt computer intr-o retea.
SQL Server se poate utiliza ca o platforma de date pentru organizatii, dar se pot instala, de asemenea, doar caracteristicile de Business Intelligence, sau, poate,doar caracteristicile de miscare si de procesare a datelor.
SQL Server 2000 are caracteristici care vor importa, transforma și exporta date din surse multiple, incepand cu Oracle si pana la fisierele text. Poate actiona, de asemenea, ca si coloana vertebrala a infrastructurii de Business Intelligence, ca un instrument de prelucrare a XML-urilor, sau chiar de a prelucra cereri de limbaj natural. Acesta are capacitatea de a fi “grupat”, astfel incat sa poata fi preluat de un alt sistem in mod automat in cazul unei catastrofe.
SQL Server 2005 îmbunatateste toate aceste componente, cu exceptia serviciului de limbaj natural (English Query), care a eliminat. Dar Microsoft a adaugat mai multe caracteristici, inclusiv cea de servicii de prelucrare a datelor native XML, capacitatea de a actiona ca un back-end într-un SOA (Service Oriented Architecture), mai multe caracteristici de criptare, si mai multe imbunatatiri in viteza si securitate.
SQL Server 2008 elimina multe dintre aceste caracteristici si adauga altele complet noi, cum ar fi PBM (Policy Based Management), PowerShell pentru SQL Server, Management Database Warehouse, si mult mai multe. Au fost imbunatatite, de asemenea, viteza si multe dintre capacitatile caracteristicilor anterioare.
4.1.3 Baze de date in SQL Server
Un server SQL gestioneaza mai multe baze de date, care pot fi accesate partajat de mai
multi utilizatori aflati în retea. Utilizatorul are la dispozitie mai multe facilitati de
creare, administrare si lucru cu bazele de date, precum si câteva exemple de baze de date
preinstalate (pubs, Nortwind), care pot fi folosite pentru studiu.
Sql Server include urmatoarele baze de date sistem:
master Database – inregistreaza toate informațiile la nivel de sistem pentru o instanță de SQL Server.
msdb Database – este utilizat de către SQL Server Agent pentru alerte de planificare și locuri de muncă.
model Database – este folosit ca sablon pentru toate bazele de date create cu privire la instanța de SQL Server. Modificarile facute la baza de date model, cum ar fi dimensiunea bazei de date,modelul de recuperare, precum si alte optiuni de baze de date, sunt aplicate la orice baze de date create dupa aceea.
Resource Database – este o baza de date numai pentru citire, care contine obiecte de sistem care sunt incluse cu SQL Server.
tempdb Database – este un spațiu de lucru pentru deținerea de obiecte temporare sau seturi de rezultate intermediare.
4.1.4 Elemente ale limbajului SQL in cadrul SQL Server
O baza de date consta din unul sau mai multe tabele. Un tabel este identificat prin numele sau. Tabelul este format din coloane si randuri. Coloanele contin numele de coloana si tipul de date. Randuri contin inregistrarile sau datele pentru coloane.
Fiecare înregistrare are un identificator unic sau cheie primară. SQL, care vine de la Structured Query Language, este folosit pentru a comunica cu o bază de date. Prin SQL se pot crea și șterge tabele. Iată câteva comenzi:
CREATE TABLE – creează un nou tabel de bază de date.
ALTER TABLE – modifica un tabel de bază de date.
TABLE DROP – șterge un tabel de bază de date.
CREATE INDEX – creează un index (cheie de căutare).
DROP INDEX – șterge un index.
SQL are, de asemenea, sintaxa pentru a actualiza, insera, si sterge inregistrari.
SELECT – obtine date dintr-un tabel de baza de date.
UPDATE – modifica datele dintr-un tabel de baze de date.
DELETE – eliminarea datelor dintr-un tabel de baza de date.
INSERT INTO – introducerea de noi date intr-un tabel de baza de date.
Constrangerile SQL sunt folosite pentru a specifica reguli pentru datele dintr-un tabel. Daca nu exista nici o incalcare intre constrangere si actiunea de date, actiunea este anulata de constrangere. Constrangerile pot fi specificate atunci cand tabelul este creat (in interiorul CREATE TABLE) sau dupa ce tabelul este creat (in interiorul ALTER TABLE).
In SQL, avem urmatoarele constrangeri:
NOT NULL – Indica faptul ca o coloana nu poate stoca o valoare NULL.
UNIQUE – Asigura ca fiecare rand al unei coloane trebuie sa aiba o valoare unica.
PRIMARY KEY – Asigura ca o coloana (sau o combinatie de doua sau mai multe coloane) au o identitate unica, care va ajuta la gasirea mult mai usoroara si mai rapida a unei inregistrari dintr-un tabel.
FOREIGN KEY – asigura integritatea referentiala a datelor intr-un tabel pentru a se potrivi cu valorile din alt tabel.
CHECK – Asigura ca valoarea dintr-o coloana indeplineste o conditie specifica.
DEFAULT – Specifica o valoare implicita, atunci cand nu este specificat ceva pentru aceasta coloana.
4.2 Implementarea aplicatiei software a sistemului informatic
Sistemul unei aplicatii este format din trei nivele logice.
Nivelul de prezentare este ceea ce vede un utilizator de sistem sau cu ceea ce interacționează. Acesta poate consta din obiecte vizuale, cum ar fi ecrane, pagini web, rapoarte sau obiecte non-vizuale, cum ar fi o interfata interactiva de recunoastere a vocii precum cele utilizate pe telefon. Cand majoritatea oamenilor se gandesc la sisteme de aplicatii, ei se gandesc direct la nivelul de prezentare. Din pacate, acest nivel reprezinta o mica parte din efortul implicat in construirea sistemelor unei aplicatii.
Nivelul de logica de afaceri, pe de alta parte, reprezinta regulile de afaceri, care sunt puse in aplicare prin logica de programare (instructiuni de calculator) cu privire la modul in care se aplica aceste reguli.
Nivelul de acces la date consta din definitiile de coloane si de tabele de baze de date si logica de calculator care este necesara pentru a naviga in baza de date. Nivelul de acces la date impune reguli privind stocarea si accesul de informatii. De exemplu, datele trebuie sa fie date valide si campurile numerice nu trebuie sa conțina caractere alfanumerice.
Aceasta diagrama este o reprezentare "logica" a unui sistem al unei aplicatii. Atunci cand un sistem este implementat fizic, componentele sistemului unei aplicatii pot fi implementate fizic pe sisteme de calcul diferite.
4.2.1 Microsoft .NET
.NET de la Microsoft este o tehnologie menita sa conecteze tot ce poate fi legat prin intermediul software-ului – oameni, structuri, calculatoare, si alte lucruri, precum si dispozitive.
.NET este un domeniu de top, de la început conceput pentru a fi utilizat de catre furnizorii de servicii de Internet (ISP), dar acum s-a extins si toata lumea poate utiliza acest domeniu.Se folosește de sistemul de numire de domeniu de internet (DNS) și este o contracție a termenului "rețea".Se foloseste de sistemul de numire de domeniu al Internetului (DNS) si este o contractie a termenului "retea".
Tehnologia . NET poate intelege servere care ofera servicii de web sau instrumentele dorite pentru a genera aceste servicii.
Serviciile web pot fi numite îmbunătățiri care ajuta companiile sa se extindă și să interactioneze cu clienții și partenerii lor. Beneficiile lor sunt ca ele creeaza comunicarea intre partenerii de afaceri mult mai usor și cresc in continuare profiturile prin crearea unei afaceri cunoscute si accesibile pentru mult mai multe persoane, cu ajutorul Internetului.
O parte principală a .NET-ului și a structurii acestuia este un set de tehnologii ASP.net. Aceste tehnologii de dezvoltare web sunt folosite în realizarea de site-uri web și servicii nete functionale pe infrastructura .NET.
ASP.NET a fost construit de către Microsoft de una din tehnologiile lor mari și programatorii web pot utiliza orice limbaj de codificare doresc sa scrie ASP.NET, de la Perl până la C Sharp (C #) și, desigur, VB.NET.
Avantajele tehnologiei ASP.NET sunt acelea de a crea de site-uri de construcții, aplicatii web si servicii web foarte simple și cu mai puține linii cod decat limbajele mai vechi. De asemenea, aplicatiile compilate în ASP.NET ruleaza mai repede și cu mai puține erori.
Se gasesc mai multe tutoriale gratuite și documentație cu privire la modul de utilizare a framework-ului .NET si în ceea ce privește platforma ASP.Net astfel ca poate fi foarte usor sa incepi si sa evoluezi in acest domeniu.De asemenea exista o mulțime de exemple și articole cu privire la lucruri care sunt simplu de realizat,fiind bine explicate, de la care putem invata sau ne pot ajuta sa implementam lucruri noi
Dacă avem de gând să utilizam aplicații ASP.NET, ar trebui să obținem unul dintre pachetele de programe special concepute pentru ASP, cum ar fi Visual Studio.NET sau ASP.NET Web Matrix.
4.2.2 Limbajul C#
Acest limbaj a fost lansat publicului in luna iunie a anului 2000 si oficial in primavara anului 2002. C# este un limbaj de programare care combina facilitati testate de-a lungul timpului cu inovatii de ultim moment.Desi limbajul este creat de cei de la Microsoft, acesta nu este destinat doar platformelor Microsoft,existand si pentru alte sisteme precum Linux sau Macintosh. Limbajul ofera o modalitate usoara si eficienta de a scrie programe pentru sistemul Windows, internet, componente software si altele.
C# deriva din doua limbaje de succes de programare: C si C++, fiind si o “ruda” apropiata a limbajului Java.
Exista sase trasaturi ce pot descrie foarte bine acest limbaj de programare.Acestea sunt:
Simplitatea:
in C# nu exista pointeri;
“mosteneste” unele facilitati,cum ar fi management-ul automat al memoriei,deoarece este deoarece este integrat pe platforma .NET;
valorile intregi 0 si 1 nu mai sunt recunoscute ca si valori Boolene,acestea fiind inlocuite de true si false;
Modernitatea:
– este un limbaj de programare modern, foarte puternic si simplu ce construieste aplicatii interoperabile,robust si scalabile;
– are capacitatea de a transforma orice componenta intr-un serviciu web,care poate fi accesat de pe Internet de orice aplicatie care ruleaza pe orice fel de platforma;
Este orientat pe obiecte
in C# exista structure care permit tipurilor primitive sa devina obiecte;
suporta mostenirea,interfetele,polimorfismul si incapsularea datelor;
Este type safe
C# nu permite executarea cast-urilog nesigure cum ar fi transformarea unei variabile double in variabila Booleana;
tablourile sunt neindexate si verificate;
Interoperabilitatea
pot fi folosite componente din alte limbaje direct in C#;
include un suport pentru aplicatii bazate pe ferestre;
permite utilizarea pointerilor, dar cu restrictii;
Scalabilitatea si update-ul
pentru a realiza scalabilitatea unei aplicatii programatorul trebuie sa stearga fisierele vechi si sa le aduca la zi cu cele noi;
suportul oferit pentru interfete face posibil ca aplicatiile complexes a fie redactate si dezvoltate de-a lungul timpului;
In concluzie.limbajul C# este un limbaj de programare simplu si modern,ce permite utilizatorilor sa construiasca usor si rapid solutii pentru platforma .NET.
4.2.3 Clase incluse in C#
O clasa este un constructor care permite programatorului să isi creeze propriile tipuri personalizate prin gruparea variabilelor de alte tipuri, a metodelor și evenimentelor. O clasă este ca un plan. Aceasta definește datele și comportamentul unui tip. În cazul în care clasa nu este declarată ca static, codul client o poate folosi prin crearea de obiecte sau de instante care sunt atribuite unei variabile. Variabila rămâne în memorie până când toate trimiterile la aceasta ies din domeniul de aplicare.In acel moment, CLR-ul o marchează ca fiind buna, pentru a fi eliminata ca si gunoi. În cazul în care clasa este declarată ca fiind statică,doar o copie există în memorie și codul de client o poate accesa doar prin ea insasi, nu si printr-o instanta a unei variabile.
Spre deosebire de structuri, clasele susțin moștenirea, o caracteristică fundamentală a programării orientate pe obiecte. Declararea unei clase este reprezentata in exemplul urmator:
Cuvântul cheie „class” este precedat de nivelul de acces. Deoarece public este folosit în acest caz, oricine poate crea obiecte din această clasă. Numele clasei urmează cuvântul cheie „class”. Restul definiției il reprezinta corpul clasei, unde comportamentul și datele sunt definite. Câmpurile, proprietățile, metodele și evenimentele unei clasă sunt denumite colectiv ca membrii clasei.
Mostenirea se realizează prin utilizarea unei derivari, ceea ce înseamnă ca o clasă este declarată folosind o clasa de baza de la care moștenește datele și comportamentul.
O clasă de bază este specificată adăugand simbolul „ : ” și numele clasei de baza urmat de numele clasei derivate, exact ca si exemplul urmator:
Atunci când o clasă declară o clasa de baza, ea moștenește toți membrii clasei de baza, cu excepția constructorilor.
O clasă poate fi declarată abstracta. Aceasta poate fi partial complet sau deloc implementata (deci poate sa nu contina metode abstracte). Clasele abstracte nu pot fi instanțiate. Ele pot fi folosite numai prin clase derivate care implementează metodele abstracte. Prin constrast, o clasă sigilata nu permite altor clase sa fie derivate din ea.
Concluzii
Ideea ce sta la baza realizarii acestui sistem informatic este testarea cunostintelor generale. In ziua de astazi cultura generala este foarte importanta.Aceasta idee este sustinuta si de filozoful englez Sir Francis Bacon care spunea ca,”Knowledge is power” (tradus „Intelepciunea este putere”).
Cultura generala are o semnificatie mai mare decat cunoasterea unor raspunsuri la jocurile trivia sau la teste. Avand o cultura generala in diverse domenii sau in afaceri curente in diferite domenii poate ajuta foarte mult. De la studenți, la profesioniști,la proprietari de afaceri,la casnice până la pensionari, acest lucru este valabil pentru toată lumea, în toate domeniile vieții.
Cultura generala contribuie la dezvoltarea oamenilor in mai multe domenii:
face ca socializarea cu alte persoane sa fie mult mai usoara;
te ajuta sa obtii note mai bune la școală, facultate sau examene competitive;
te ajuta sa iei decizii mai bune in viata;
poti face o impresie buna cuiva;
ofera posibilitatea parintilor de a-si ajuta copii in activitatea scolara;
te ajuta sa interacționezi eficient cu oameni din culturi diferite;
te ajută să ții pasul cu cele mai recente tendințe;
dezvolta simtul umorului;
te ajuta sa ai o opinie;
iti imbunatateste limbajul;
creste creativitatea si inovatia;
Sistemul informatic reprezinta un joc de testare a cunostintelor generale care poate fi jucat de o singura persoana sau de 2 persoane in acelasi timp. Acesta contine intrebari din mai multe categorii. Daca utilizatorul doreste sa joace singur acest joc,acesta are posibilitatea de a alege din 3 tipuri de joc:joc standard,joc fulger si joc personalizat.
Sistemul informatic ofera si posibilitatea ca 2 jucatori sa se confrunte,testul desfasurandu-se pe perioada a 5 minute la sfarsitul carora jocul va determina castigatorul.Jucatorii au si 3 variante ajutatoare pe care le pot utiliza oricand doresc ei.
Jocul contine si un numar de 8 teme,fiecare avand imagini de fundal si culori diferite,oferindu-le utilizatorilor ocazia de a-si alege o tema preferata,aceasta putand fi schimbata de cate ori va dori utilizatorul.
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Joc Trivia Pentru Testarea Cunostiintelor (ID: 121925)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
