Sistem Informatic Pentru Gestiunea Unui Club Sportiv

LUCRARE DE DIPLOMĂ

SISTEM INFORMATIC PENTRU GESTIUEA UNUI CLUB SPORTIV

Cuprins

CAPITOLUL 1: INTRODUCERE

CAPITOLUL 2: NOTIUNI TEORETICE

2.1 Sisteme de baze de date

2.1.1 Componentele unui sistem de gestiune al bazelor de date

2.1.2 Arhitectura interna a sistemelor de baze de date

2.1.3 Avantajele oferite de sistemele de baze de date

2.2 Sistemul informatic

2.2.1 Componentele sistemelor informatice

2.2.2 Clasificarea sistemelor informatice

CAPITOLUL 3: ANALIZA SI PROIECTAREA SISTEMULUI

3.1 Diagrama fluxului de date

3.2 Diagrama cazurilor de utilizare

3.3 Diagrama de secventă

3.4 Diagrama entităti-relații

3.5 Diagrama de activități

CAPITOLUL 4: IMPLEMENTAREA SISTEMULUI INFORMATIC

4.1Microsoft Sql Server

4.1.1 Comenzi pentru manipularea datelor

4.2 Implementarea aplicatiei software a sistemului informatic.

4.3 Microsoft .NET Framework

4.4 Limbajul C#

CAPITOLUL 5: CONCLUZII

BIBLIOGRAFIE

CAPITOLUL 1: INTRODUCERE

In cadrul acestei lucrări se prezintă realizarea unui sistem informatic cu baza de date care să gestioneze atât datele clienților cât și o evidență clară asupra serviciilor acordate de firmă:

– tipuri de abonament

– servicii

– antrenori

– clienți

Pentru realizarea aplicației am folosit cunoștințele obținute pe parcursul anilor de studiu in această facultate, in special cele referitoare la baza de date și limbaj de programare in C# , utilizând un server pentru gestionarea bazei de date in SQL Server cu ajutorul limbajului universal in SQL, iar aplicația a fost realizată prin limbajul de programare C#.

Programul oferă un control asupra datelor, permițând regăsirea, sortarea, analizarea și rezumarea datelor

Alte utilități ale programului sunt :

Asigurarea unei redundanțe minime a datelor: stocarea informației in baza de date se face intrun mod care nu permite multiplicarea acestora. Totuși pentru a obține un timp bun de răspuns, este acceptată o anumită redundantă a datelor.

Partajarea datelor: datele pot fi accesate de mai mulți utilizatori in același timp. De asemenea se pot face modificări sau adăugiri la baza de date existentă fără a fi necesară definirea repetată a tuturor cerințelor referitoare la acestea.

Securitatea crescută se realizează prin crearea de conturi pentru fiecare utilizator, fapt ce restricționează accesul persoanelor neautorizate să acceseze baza de date.

Redundanța datelor inseamnă prezența acelorași date in mai multe fișiere de date diferite. Redundanța datelor se produce când diferite diviziuni organizatorice, zone funcționale și grupuri de utilizatori dintr-o organizație colectează in mod independent aceleași date.

Referitor la avantajele folosirii unor astfel de aplicații, printre acestea se numără existența unei baze de date a clienților, abonamentele acestora și accesul foarte rapid la informație. De asemenea, importantă este oportunitatea de a verifica fluxul informațional intern al fiecărui client.

In plus, activitatea de management și procesul decizional sunt imbunatatite prin posibilitatea de a avea diverse raportări intr-un timp scurt și fără consum mare de resurse.

Scopul principal este gestionarea clienților cu ajutorul unei baze de date cu o interfață simplă, ușor de inteles de către oricine. Prin acest proiect se dorește implementarea unei soluții informatice, care acoperă toate necesitățile unei unități sportive moderne, sincronizand fluxul tuturor informațiilor. Implementarea aplicației va duce la imbunătățirea calității informației și reducerea semnificativă a costurilor administrative

Necesitatea implementării acestui proiect derivă din faptul că sistemul clasic al foilor de inregistrare al clienților este foarte lent, ineficient, are accesibilitate redusă și, cel mai important factor, pierderea de date și informații .

Crearea acestui program a pornit din nevoia de a implementa un sistem integrat de gestiune al clienților care să ofere avantajul accesării rapide a informațiilor necesare, creand astfel eficiența operațională și oferind managementul informației exacte.

Lucrarea este structurată in două părti: prima parte , formată din capitolele 1 și 2, reprezintă o scurtă introducere teoretică asupra bazelor de date și a sistemelor informatice acestea fiind în același timp suportul teoretic al lucrării. Partea a doua, formată din capitolele 3, 4 și 5, care prezintă realizarea unei interfeșe pentru o bază de date folosită la gestiunea clientilor unui club sportiv.

CAPITOLUL 2: NOTIUNI TEORETICE

2.1 Sisteme de Baze de Date

Baza de date este un instrument pentru colectarea și organizarea informațiilor.Acestea pot stoca informații despre persoane, produse, comenzi sau orice altceva. Un sistem de gestiune a bazelor de date este ansamblul de programe care permit utilizatorului să interacționeze cu o bază de date.

O bază de date este un container ce stochează date și este o colecție de date centralizate, creata și menținută computerizat, în scopul prelucrării datelor în contextul unui set de aplicații. Prelucrarea datelor se referă la operațiile de introducere, ștergere, actualizare și interogare a datelor.

Baza de date are următoarele proprietăți:

Baza de date este o colecție logică coerentă de date ce are cel puțin un înțeles și este destinată, construită și populată de date pe un domeniu precizat. Aceasta are un grup de utilizatori și se adresează mai multor aplicații

Reprezintă mai multe aspecte ale lumii reale creând orizontul propriu.

Un sistem de baze de date este un sistem computerizat care menține evidența unei anumite activități.

Sistemele de baze de date pot avea dimensiuni variate, putand ajunge de la câteva zeci de înregistrări la sute de milioane de înregistrări .

Printre operațiile ce pot fi efectuate asupra datelor de către utilizatorii bazelor de date se numără:

– Introducerea de date noi (insert);

– Ștergerea datelor (delete);

– Modificarea datelor (update);

– Crearea de interogări (query), folosite pentru a găsi anumite informații din baza de date, în funcție de un criteriu anume.

2.1.1 Componentele unui sistem de gestiune al bazelor de date

Un sistem de baze de date este alcătuit din următoarele componente:

– Hardware

– Software

– Date

– Proceduri

– Resurse umane

Fig 2.1. Componentele unui Sistem de Baze de Date

Hardware:

Sistemele de baze de date sunt, de regulă, instalate pe calculatoare de uz general, de la calculatoare PC standard, până la stații multiprocesor puternice. De obicei într-o rețea de calculatoare se aplică următoarea schemă:

se folosește un calculator principal pe care se instaleaza sistemul de gestiune al bazei de date care administrează și controlează accesul la baza de date și mai multe calculatoare aflate în diferite locații

în schema client-server, programele back-end reprezintă serverul iar cele front-end reprezintă clienții.

Software:

Bazele de date sunt gestionate unitar prin utilizarea unui program dedicat, numit sistem de gestiune a bazelor de date (SGBD). Un SGBD constituie o interfață între utilizatori și baza de date.

Componente principale ale unui SGBD sunt:

limbajul de definire a datelor;

limbajul de manipulare a datelor;

dicționarul de date;

programe de gestiune și creare a bazei de date;

sitemul de operare;

Sistemul de gestiune al bazei SQL permite :

dezvoltarea rapidă de aplicații;

îmbunătățirea semnificativă a productivității;

realizarea unor programe ușor de întreținut.

Instrucțiuni

Instrucțiunile reprezintă regulile aplicate în proiectarea și utilizarea bazei de date.

Acestea pot fi:

pornirea sau oprirea sistemului de gestiune al unei bazei de date;

efectuarea de copii de siguranță;

deschiderea unei sesiuni de lucru în sistemul de gestiune al bazei de date;

utilizarea unui program de aplicație sau a unei funcții a sistemului de gestiune al bazei de date;

tratarea defecțiunilor de tip hardware și software;

arhivarea datelor, modificarea unui tabel, îmbunătățirea performanțelor, reorganizarea bazei de date;

Resurse umane

În general, există două categorii de utilizatori care manipulează datele dintr-o bază de date: utilizatori interactivi care de regulă nu sunt proiectanții de baze de date logice și proiectanții de baze de date fizice. Aceștia au nevoie de limbaje de interogare foarte simple, apropiate de limbajul natural, care să le permită să obțină informațiile pe care le doresc într-o manieră simplă. Aceștia identifică relațiile dintre date , pun regulile ce descriu principalele caracteristici ale datelor , transpun modelul logic într-un set de tabele și constrângeri și selectează structuri de stocare și metode de acces specific. Astăzi, cel mai remarcabil limbaj de manipulare a datelor este SQL (Structured Query Language).

Cea de a doua categorie de utilizatori (programatorii) folosesc, de regulă, limbaje procedurale, cum sunt cele tradiționale din generația a treia (C, COBOL, PL1 etc.), limbaje orientate pe obiecte (C++, Java) sau limbaje din generația a 4-a (4LG) orientate pe descrierea specificațiilor la nivel utilizator.

Aceștia sunt cei care interacționează cu sistemul folosind instrucțiuni în limbajul de programare și manipulare a datelor pe care le încorporează în interfețe create în alte limbaje de programare.

Date

Datele acționează ca o punte de legătură între componentele mașină (hardware și software) și componenta umană. Baza de date conține atât datele operaționale (setul de înregistrări pe care se lucrează) cât și metadatele. Structura bazei de date este numită schemă.

Dicționarul de date este un instrument manual sau automat, folosit pentru definirea și organizarea datelor care vor fi utilizate la realizarea bazei de date. Acest dicționar este utilizat pentru identificarea atributelor de memorat în baza de date și a regulilor de gestiune.

2.1.2. Arhitectura internă a sistemelor de baze de date

Arhitectura internă a unui sistem de baze de date conține trei nivele funcționale: nivelul intern, nivelul extern și nivelul conceptual.

Fig 2.2. Arhitectura internă a Sistemelor de Baze de Date

Nivelul intern este nivelul de reprezentare a datelor pe suportul fizic.

Nivelul extern reprezintă modul în care datele sunt percepute de utilizatori, existând câte o vedere individuală a datelor pentru fiecare utilizator.

Nivelul conceptual corespunde unei reprezentări unice și abstracte a datelor, care asigură legătura între nivelul extern și cel intern. Nivelul conceptual este o vedere a întregului conținut al bazei de date prin intermediul schemei conceptuale a acesteia.

Toate aceste reprezentări sunt accesate prin intermediul SGBD-ului care asigură, de asemenea, cele două corespondențe: între nivelul extern și nivelul conceptual și între nivelul conceptual și nivelul intern.

2.1.3. Avantajele oferite de sistemele de baze de date

Față de metodele mai vechi de înregistrare a datelor privind diferite activități pe fișe (documente scrise) sau chiar în fișiere pe disc, sistemele de baze de date oferă avantaje considerabile, ceea ce explică extinsa utilizare a acestora. Câteva dintre avantajele oferite sunt prezentate în continuare.

Compactitate ridicată față de volumul ocupat de documente scrise sau de fișiere necorelate.

Viteză mare de regăsire și actualizare a informațiilor, folosind interogări ale bazei de date.

Posibilitatea de introducere a standardelor privind modul de stocare a datelor, ceea ce permite interschimbarea informațiilor între diferite organizații.

Menținerea integrității datelor prin politica de securitate, prin gestionarea tranzactiior și prin refacerea datelor în caz de funcționare defectuoasă a diferitelor componente hardware sau softwarul extern și nivelul conceptual și între nivelul conceptual și nivelul intern.

2.1.3. Avantajele oferite de sistemele de baze de date

Față de metodele mai vechi de înregistrare a datelor privind diferite activități pe fișe (documente scrise) sau chiar în fișiere pe disc, sistemele de baze de date oferă avantaje considerabile, ceea ce explică extinsa utilizare a acestora. Câteva dintre avantajele oferite sunt prezentate în continuare.

Compactitate ridicată față de volumul ocupat de documente scrise sau de fișiere necorelate.

Viteză mare de regăsire și actualizare a informațiilor, folosind interogări ale bazei de date.

Posibilitatea de introducere a standardelor privind modul de stocare a datelor, ceea ce permite interschimbarea informațiilor între diferite organizații.

Menținerea integrității datelor prin politica de securitate, prin gestionarea tranzactiior și prin refacerea datelor în caz de funcționare defectuoasă a diferitelor componente hardware sau software.

Independența datelor față de suportul hardware utilizat. Sistemele de gesiune a bazelor de date oferă o vedere externă a datelor, care nu se modifică atunci când se schimbă suportul de memorare fizic, ceea ce asigură imunitatea structurii bazei de date și a aplicațiilor la modificări ale sistemului hardware utilizat.

2.2 Sistemul informatic

Un sistem este format dintr-un grup de componente între care se stabilesc relații și care conlucrează spre un scop comun efectuând operații de culegere, transmitere, stocare si prelucrare a datelor prin acceptarea de intrări și producerea de ieșiri printr-un proces . Acesta necesita personal specializat în prelucrarea automată a datelor.

Un sistem informatic eficient pune la dispoziția utilizatorilor informații corecte și relevante la momentul dorit. Când fișierele sunt aranjate și întreținute în mod corespunzător, utilizatorii pot accesa și regăsi cu ușurință informațiile de care au nevoie. Problema principală în acest caz o constituie modul în care structuri de date diferite pot fi create și gestionate împreună.

Organizarea datelor intrun sistem de calcul se realizează printro structură ierarhică pornind de la nivel de bit, byte și, progresiv, la nivel de câmpuri, înregistrări, fișiere și baze de date.

2.2.1 Componentele sistemelor informatice

Cele trei componente majore care formează sistemul informatic sunt:

Intrările

– reprezintă datele de intrare și stocare care vor fi prelucrate;

– acestea se clasifică în două grupe :

-tranzacțiile externe

-tranzacțiile interne

Tranzacțiile externe sunt cele care redau dinamica operațiilor și proceselor economice și financiare din cadrul unei întreprinderi.

Tranzacțiile externe sunt:

datele ce se referă la aprovizionările cu materii prime;

datele ce se reflectă la operațiile de încasări și plăți

Tranzacțiile interne sunt prelucrarea automată desfășurată în cadrul sistemului informatic care duc la modificări structurale în cadrul cumulului de date.

Tranzacțiile interne sunt :

– date consemnate în documente primare, la locul producerii operațiilor pe care le evidențiază în cadrul firmei, cum ar fi un bon de consum sau o factură emisă de către firmă

– date care provin din mediul financiar sau economic, care sunt consemnate în documente sau înscrise în norme sau prevederi ;

Intrările se realizează în mod direct, utilizându-se mijloace moderne IT:

– transferul de date prin rețeaua locală în interiorul firmei, utilizanduse o rețea Novell sau o rețea intranet, reușindu-se astfel ca ieșirile unui subsistem informatic al firmei să devină intrări pentru un alt subsistem;

– transfer de date la distanță:

– prin Internet.

– prin rețele private

Procesul

– reprezintă tranformarea tuturor elementelor de intrare ale sistemului care vor fi prelucrate

– reprezintă un ansamblu omogen de proceduri automate realizând:

-Crearea bazei de date și actualizarea acesteia;

-Exploatarea și parcurgerea bazei de date;

– Reorganizarea bazei de date;

– Salvarea/restaurarea bazei de date.

Ieșirile

– sunt acele elemente care rezultă în urma procesului de transformare

– în funcție de prelucrarea care le-a generat, sunt împărțite în două categorii: – ieșiri care s-au obținut în urma unor transferuri de date, care nu și-au modificat valoarea față de momentul introducerii lor din acel sistem. Acestea sunt numărul sau data unei facturi emise, denumirea unor produse, cantitatea facturată ;

ƒ – ieșiri obținute în urma unor operații de calcul pe baza unor algoritmi

prestabiliți pentru a afla valoarea facturată , totalul pe lună.

Ieșirile pot fi clasificate în funcție de conținutul și forma lor de prezentare în:

– indicatori sintetici regăsiți în tablourile de bord oferite managerilor ce pot fi consultate on-line;

ƒ – rapoarte care grupează diverși indicatori sintetici sau analitici sub formă tabelara.

Fig 2.3. Componentele generale ale unui sistem informatic

Modelul unui sistem informatic exprimă cadrul conceptual pentru componentele principale și activitatea sistemului informatic.

Elementele componente ale unui sistem informatic:

Resursele umane

– includ atât utilizatorii cât și specialiștii;

Hardware

– includ echipamentele;

Software

– includ programe și proceduri;

Datele

– sunt transformate prin activitățile de procesare într-o mare varietate de produse informaționale pentru utilizatori.

Principalele activități dintr-un sistem informatic sunt cele de prelucrarea informațiilor. Acestea includ: – Introducerea datelor;

– Procesarea datelor pentru obținerea de informații;

– Ieșirea procedurilor informaționale;

– Controlul performanțelor sistemului.

– Stocarea resurselor infomationale;

Introducerea datelor :

Reprezintă adunarea de date și pregătirea acestora pentru a fi prelucrate.

Prelucrarea datelor :

In cadrul prelucrării, datele sunt supuse mai multor procese: calcule,comparari, sortări, clasificări sau însumări. În urma acestor procese, datele sunt manipulate și organizate spre a fi convertite în informații pentru utilizator.

Ieșirea produselor informaționale

informațiile rezultate după prelucrarea pot avea forme variate, în funcție de solicitările utilizatorilor, însă toate trebuie să îndeplinească mai multe condiții referitoare la:

timpul în care informațiile ajung la utilizator

conținutul informației

forma în care informația ajunge la utilizator

Stocarea datelor:

Aceasta nu este o componentă foarte importantă, reprezentând depozitarea

informațiilor în vederea folosirii ulterioare a acestora.

Controlul performanțelor sistemului :

Reprezintă o activitate de mare importanță în cadrul sistemului informatic Această activitate are în vedere următoarele elemente:

-un sistem informatic produce un feed-back despre intrările, procesul și ieșirile sale precum și despre activitatea de stocare.

-feed-back-ul trebuie monitorizat și evaluat pentru a determina dacă sistemul urmează să-și atingă scopul prin performanțele sale.

-feed-back-ul va trebui utilizat pentru a efectua ajustări în activitatea sistemului pentru a-i corecta deficiențele

2.2.2 Clasificarea Sistemelor informatice

În funcție de domeniul de utilizare,:

-conducerea activităților economico-sociale, tehnologice, cercetări stintifice, anumite tipuri de proiectări tehnologice ;

-în funcție de elementul supus analizei sisteme informatice orientate spre funcții, procese, datre, obiecte și cunoștințe ;

-după modul de organizare a datelor : sisteme bazate pe fișiere , pe tehnica bazelor de date ierarhice, rețea, relaționale, orientate-obiect; sisteme mixte.

-după metoda folosită în analiza și proiectarea sistemelor: sisteme dezvoltate după metoda:

-clasică a ciclului de viață,

-structurată;

-orientată-obiect;

-rapidă(RAD);

-metoda echipelor mixte(JAD);

-sisteme dezvoltate după metoda prototipurilor.

După domeniul în care funcționează, sistemele pot fi clasificate :

– sisteme de baze de date, specializate în gestiunea unor cantități de date mari;

– sisteme pentru prelucrări științifice, specializate pe anumite domenii;

– sisteme pentru conducerea proceselor tehnologice, pentru conducerea unor mașini,scule,unelte computerizate;

După gradul de dispersie a resurselor sistemului informatic:

– sisteme informatice locale

– sisteme informatice distribuite.

După gradul de automatizare a activităților de analiză și proiectare a sistemelor

informatice:

– dezvoltate pe baza analizei și proiectării clasice;

– analizate cu instrumente automate și proiectate clasic;

– bazate pe instrumente diverse de automatizare a analizei și

proiectării;

– dezvoltate cu instrumente de tip CASE.

După nivelul ierarhic ocupat de sisteme informatice în structura organizatorică a societății:

– sisteme informatice pentru conducerea activităților la nivelul unităților economice;

– sisteme la nivelul organizațiilor cu structură de grup;

– sisteme informatice teritoriale;

– sisteme informatice la nivel de ramură și subramură și la nivel economic național;

– sisteme de uz general .

Fig 2.4 Sisteme de baze de date centralizate

CAPITOLUL 3: ANALIZA SI PROIECTAREA SISTEMULUI

Activitățile de analiză și proiectare a sistemului informatic presupune înțelegerea domeniului de aplicare, respectiv modelarea fluxurilor de date și a bazei de date integrate pe care se bazează sistemul.

In acest capitol am realizat următoarele diagrame:

pentru modelarea proceselor:

– diagrama de flux de date;

– diagrama cazurilor de utilizare;

– diagrama de activități;

– diagrama de secvențe;

pentru modelarea datelor

– diagrama entități -realtii la nivel de entități;

– diagrama entități-realtii la nivel de atribute;

Pe parcursul acestui capitol voi prezenta diagramele menționate mai sus.

3.1 Diagramele fluxului de date

Diagramele fluxului de date (data flow diagram – DFD) sunt orientate către operații de flux. Obiectele sunt afișate în relații cu procedurile. Nu este afișată nici o logică de decizie, diagrama este adeseori utilizată pentru a modela fluxul de date.

Diagrama fluxului de date a nivelului logic curent, independenta de tehnologie, reliefează funcțiile de prelucrare a datelor executate de către sistemul informațional curent. Diagrama de flux de date a sistemului logic nou va prezenta circuitul datelor, structura lor și cerințele funcționale ale noului sistem. De exemplu datele clientului vor fi introduse de personal în sistemul informațional și oricând pot fi interogate și citite din baza de date. Diagramele fluxului de date DFD au ca obiectiv urmărirea modului de transfer al datelor între procesele de prelucrare ale lor. Astfel de diagrame se mai numesc și modele ale proceselor de prelucrare, iar operațiunea se numește modelarea proceselor. DFD reprezintă doar una din tehnicile de analiză structurată. Tehnica de redare a proceselor de prelucrare prin intermediul diagramelor fluxurilor de date a căpătat noi accepțiuni prin încorporarea ei în instrumentele de analiză și proiectare cu ajutorul calculatorlui.

Fig 3.1 Simboluri de bază ale fluxurilor de date

Scopul diagramelor de date DFD pentru o anumită componentă organizatorică sau funcțională la care se referă este de a scoate în relief, într-o manieră cât mai sugestivă, următoarele aspecte: sursa datelor de prelucrare, operațiunile de prelucrare prin care trec datele, destinația datelor prelucrate, legătura existentă între prelucrări și activitatea de stocare a datelor. Intocmirea diagramelor de flux de date (DFD) este o reprezentare grafică a transformării datelor de intrare în date de ieșire folosind un set de simboluri de reprezentare și un set de reguli de completare și validare.

Fig 3.2 Diagrama fluxuri de date din inteprindere

3.2 Diagrama cazurilor de utilizare (Use Case Diagram)

Unul dintre aspectele importante în înțelegerea și definirea cerințelor unui sistem este acela al interacțiunii dintre sistem și utilizatori sau alte componente externe.

Scopul principal al acestei diagrame este:

-Deciderea și descrierea cerințelor funcționale ale sistemului ;

-Descrierea clară a ceea ce se dorește de la sistem ;

-Construirea unei baze pentru testare, pentru verificarea funcționalității finale a sistemului ;

-Permiterea cu ușurință a transformării în viitoare clase și operații .

Un model use case este descris folosind una sau mai multe diagrame use case. Acestea conțin următoarele elemente de modelare: actori, cazuri de utilizare si diferite relații între aceste elemente: generalizare, asociere, dependența.

Elementele de modelare

Fig. 3.3 Reprezentare grafica a actorilor in UML

Un actor reprezintă idealizarea unei persoane, proces sau obiect exterior care comunică cu un sistem, subsistem sau o clasă, care în interacțiunea cu sistemul poate doar să primească și să transmită informații către acesta. Totodată, actorii pot folosi sistemul, iniția execuția unor use case-uri, sau sunt folosiți de către sistem, adică oferă funcționalitate unor use case-uri, iar fiecare actor trebuie să comunice cu cel puțin un use case.

Actorii se determină observând utilizatorii direcți ai sistemului, cei care sunt responsabili de exploatarea sau de interogarea sa. Aceeași persoană fizică poate juca rolul mai multor actori (de exemplu vânzător și client). Mai multe persoane pot să joace același rol, și deci să acționeze că același actor. Un actor poate fi de asemenea un echipament extern sistemului sau un alt sistem.

Fig. 3.4 Reprezentare grafica a unui use case in UML

Fig. 3.5 Exemplu de asociere intre actor si use case

Cazurile de utilizare sunt abstractii ale dialogului între actori și sistem. Ele descriu interacțiuni potențiale fără a intra în detaliile fiecărui scenariu.

Un caz de utilizare reprezintă o funcționalitate completă a sistemului, așa cum este ea percepută de un actor. În UML el este definit ca un set de secvențe de acțiuni pe care sistemul le realizează pentru a furniza o valoare unui actor particular. Acțiunile pot presupune comunicarea cu un număr de actori (utilizatori sau alte sisteme) sau realizarea unor calcule în interiorul sistemului.

Descrierea cazurilor de utilizare se face de obicei printr-un text care conține o

specificare simplă dar consistentă a modului de interacțiune între actori și cazurile de

utilizare ale sistemului. Aceasta va surprinde comportamentul sistemului și va ignora

modul în care acesta va fi implementat în sistem.

Descrierea va conține:

-Obiectivele cazurilor de utilizare;

– Cum este inițiat un caz de utilizare;

-Care este fluxul de mesaje între actori și cazurile de utilizare;

-Fluxul alternativ în cazurile de utilizare;

-Când un caz de utilizare este considerat terminat, și care va fi valoarea transmisă

actorului;

Un caz de utilizare poate să aibă o execuție alternativă în funcție de anumite condiții sau excepții;

Fig. 3.6. Diagrama cazurilor de utilizare

3.3 Diagrama de secventă

O diagramă de secvență prezintă colaborarea dinamică între un număr de obiecte, mai precis secvențele de mesaje trimise între acestea pe măsura scurgerii timpului aceasta:

– reprezintă grafic interacțiunile care au loc între diverse obiecte ale unui sistem, ordonate cronologic.

-determină obiectele și clasele implicate într-un scenariu și secvențele de mesaje transmise între obiecte, necesare îndeplinirii funcționalității scenariului.

-diagramele de secvență sunt asociate unui caz de utilizare.

Elementele de bază ale unei diagrame de secvență sunt:

-obiectele ce intervin în prelucrări, prin transmiterea și primirea de mesaje. Acestea se reprezintă prin dreptunghiuri, plasate orizontal, în partea de sus a diagramei, în care sunt scrise numele acestora.

-liniile de viață ale obiectelor evidențiază duratele de existență a obiectelor. Acestea se reprezintă cu un dreptunghi atașat unor linii verticale punctate ce vin de la fiecare obiect.

-mesajele sunt elementele de comunicare dintre obiecte, cum ar fi apelurile de operații, și se reprezintă cu săgeți ce unesc liniile de viață ale obiectelor.

Fig. 3.7 diagrama de secventa

3.4 Diagrama entitati –relatii

O entitate este un lucru, loc, obiect, persoană sau eveniment care are semnificație pentru afacerea modelată, despre care trebuie să colectăm și să memorăm date. O entitate poate fi un lucru real, tangibil precum o clădire, o persoană, poate fi o activitate precum o programare sau o operație, sau poate fi o noțiune abstractă.Pot fi reprezentate toate tipurile de structuri de date de mare complexitate, din diferite domenii de activitate. Modelul relațional este definit prin: structura de date, operatorii care acționează asupra structurii și restricțiile de integritate. Conceptele utilizate pentru definirea structurii de date sunt: domeniul, tabela (relația), atributul, tuplul, cheia și schema tabelei.

Domeniul este un ansamblu de valori caracterizat printr-un nume. El poate fi explicit sau implicit. Tabela sau relația este un subansamblu al produsului cartezian al mai multor domenii, caracterizat printr-un nume, prin care se definesc atributele ce aparțin aceleași clase de entități. Atributul este coloana unei tabele, caracterizată printr-un nume.

Cheia este un atribut sau un ansamblu de atribute care au rolul de a identifica un tuplu dintr-o tabelă. Tipuri de chei: primare/alternate, simple/comune, externe.

Tuplul este linia dintr-o tabelă și nu are nume. Ordinea liniilor (tupluri) și coloanelor (atribute) dintr-o tabelă nu trebuie să prezinte nicio importanță. Schema tabelei este formată din numele tabelei, urmat între paranteze rotunde de lista atributelor, iar pentru fiecare atribut se precizează domeniul asociat.

Schema bazei de date poate fi reprezentată printr-o diagramă de structură în care sunt puse în evidență și legăturile dintre tabele. Definirea legăturilor dintre tabele se face logic construind asocieri între tabele cu ajutorul unor atribute de legătură. Atributele implicate în realizarea legăturilor se găsesc fie în tabelele asociate, fie în tabele distincte construite special pentru legături.

O entitate este de fapt o clasă de obiecte și pentru orice entitate există mai multe ale sale. O instanță a unei entități este un obiect, persoană, eveniment, particular din clasa de obiecte care formează entitatea.

Fig. 3.8 Exemplu entitati

Pentru a preciza o instanță a unei entități, trebuie să specificăm unele caracteristici ale acestui obiect, să-l descriem (precizăm de exemplu numele, prenume, email, telefon,). Așadar, după ce am identificat entitățile trebuie să descriem aceste entități în termeni reali, adică să le stabilim atributele. Un atribut este orice detaliu care servește la identificarea, clasificarea, cuantificarea, sau exprimarea stării unei instanțe a unei entități. Atributele sunt informații specifice ce trebuie cunoscute și memorate.

Fig. 3.9 Exemplu entitate cu atribute

Relații între entități

Relația (asocierea) este o comunicare între două sau mai multe entităti. Cel mai întalnit tip de relație este cel binar, iar în acest caz rapoartele de cardinalitate sunt, în general, one-to-one (1:1), one-to-many (1:n) sau many-to-many (m:n).

În lumea reală, obiectele nu sunt izolate, intre ele existand relatii.Așadar, după ce identificam care sunt entitățile și atributele acestor entități este timpul să punem în evidență relațiile care există între acestea si modul în care acestea comunică între ele. O relație este o asociere, legătură sau conexiune existentă între entități care are o semnificație pentru afacerea modelată. Orice relație este bidirecțională, legând două entități sau o entitate cu ea însăși.

Cardinalitatea unei relații indică numărul maxim sau minim de instanțe din fiecare entitate care poate participa la relație.

Cardinalitatea maximă a unei relații poate fi de trei feluri:

-unu-la-unu(1-1) : relația dintre entitățile A și B este de tipul unu-la-unu dacă fiecărei instanțe din A îi poate fi asociată cel mult o instanță din B și fiecărei instanțe din B îi poate fi asociată cel mult o instanță din A.

-mulți-la-unu(N:1) sau unu-la-multi(1:N) : relația dintre entitățile A și B este de tipul mulți-la-unul dacă fiecărei instanțe din A îi poate fi asociată cel mult o instanță din B și fiecărei instanțe din B ii pot fi asociate mai multe instanțe din A. De exemplu, relațiile dintre Antrenori și Program este de tipul N:1.

Fig. 3.10 Relatie de tipul N:1

– mulți-la-mulți: relația dintre entitățile A și B este de tipul mulți-la-mulți dacă fiecărei instanțe din A îi pot fi asociate mai multe instanțe din B și fiecărei instanțe din B îi pot fi asociate mai multe instanțe din A.

Legăturile se stabilesc la momentul descrierii datelor prin limbaje de descriere a datelor (LDD), cu ajutorul restricțiilor de integritate. Practic, se stabilesc și legături dinamice la momentul execuției.

Diagramele sistemului relațional constituie o tehnică de reprezentare a structurii logice a bazei de date, într-o manieră grafică. Baza de date poate fi definită ca o mulțime de date ce modelează un sistem real. Acest sistem este format din obiecte legate între ele.

Modelul E/R împarte elementele unui sistem real în două categorii: entităti și relații (legături, asocieri) între aceste entităti. Entitătile si legăturile au anumite caracteristici, numite atribute. Entitatea este un obiect sau un concept, care este semnifîcativ pentru modelul real analizat.

Cheia primară este un identificator unic cadrului entitătii, făcând distinctie între valori diferite ale acesteia.

O cheie primară este un câmp sau un set de câmpuri din tabel care furnizează Sql Server cu un identificator unic pentru fiecare rând. Se utilizează apoi relațiile dintre tabele și cheile primare pentru a informa Access cum se reunesc informațiile. Access utilizează câmpurile cheie primară pentru a asocia rapid datele din mai multe tabele și pentru a combina datele într-un mod semnificativ.

Acest lucru funcționează pentru că odată ce a fost definită cheia primară, aceasta poate fi utilizată în alte tabele pentru a face referiri înapoi la tabelul cu cheia primară. De exemplu, în tabelul Client poate apărea de asemenea un câmp id_client. În tabelul Clienți, acesta este cheia primară. În tabelul Tip_abonament_clienti, acesta se numește cheie externă. O cheie externă, enunțată simplu este cheia primară a unui alt tabel.

O coloană cu tipul de date AutoNumerotare este adesea o cheie primară bună, pentru că asigură ca nici un ID Produs să nu fie la fel.

Un număr de identificare unic, cum ar fi un număr serial sau un cod, este utilizat adesea ca și cheie primară într-un tabel. De exemplu, este posibil să avem un tabel Clienți în care fiecare client are un număr unic de ID client. Câmpul identificare clienți este cheia primară.

Un bun candidat pentru o cheie primară are mai multe caracteristici. În primul rând, identifică în mod unic fiecare rând. În al doilea rând, acesta nu este niciodată gol sau nul  – conține întotdeauna o valoare. În al treilea rând, acesta se modifică rareori (în mod ideal, niciodată). Access utilizează câmpuri cheie primară pentru a aduna la un loc date din mai multe tabele.

Un exemplu de alegere neavantajoasă a unei chei primare ar fi un nume sau o adresă. Ambele conțin informații ce ar putea fi modificate în timp.

Cheia primară:

-trebuie să fie controlată de administratorul bazei;

-trebuie să fie unică și cunoscută la orice moment;

-trebuie să nu contină informatii descriptive, să fie simplă, fără ambiguităti;

-să fie stabilă;

-să fie familiară utilizatorului.

Chei primare pentru câmpuri multiple

În situații în care nu se poate asigura unicitatea unui singur câmp, putem să desemnăm două sau mai multe câmpuri drept cheie primară. Cea mai cunoscută situație de acest fel este în tabelul utilizat pentru corelarea altor două tabele într-o relație mulți-la-mai-mulți. De exemplu, în tabelul Program se pot corela tabelele Servicii, Ziua si Antrenor. Cheia sa primară conține patru câmpuri: id_servicii, id_ziua, ora_inceput și id_antrenor. Tabelul Program poate lista multe servicii, zile și antrenori, dar fiecare oră poate fi listată doar o dată pe comandă, deci combinarea câmpurilor produce o cheie primară corespunzătoare.

Atributul este o proprietate descriptivă a unei entități sau a unei relații. Principalele concepte folosite în acest model sunt cele de entitate, relație (legătura), cardinalitate și atribut.

De exemplu un client vine la sala de fitness pentru a se informa ce tipuri de servicii și abonamente oferă sala. Depinzând de preferințele clientului se crează tipul de abonament dorit.

Principalele elemente ale acestui exemplu sunt: clientul, tip abonament servicii, tip abonament client și tipul de abonament, toate acestea fiind entități ale sistemului. exemplu de reprezentare entități și relatii.

Diagrama entitati-relații la nivel de entități

Entitățile sistemului, împreună cu relatiile dintre ele se reprezintă prin așa numita diagramă entitate-relație la nivel de entități, în care sunt reprezentate entitățile și relatiile, specificându-se și cardinalitatea acestora.. Diagrama entitate-relatie la nivel de entități a sistemului descris la începutul acestui capitol am reprezentato in urmatorul exemplu:

Fig. 3.11 Diagrama entitati relatii la nivel de entitati

Diagrama entități – relații la nivel de atribute

Diferența dintre diagrama entități – relații la nivel de atribute și diagrama entități este că avem specificate atributele pentru fiecare entitate. Diagrama entități – relații la nivel de atribute am reprezentat-o în următorul exemplu:

Fig. 3.12 Diagrama entitate relatie la nivel de atribute

3.5 Diagrama de activități

Diagrama de activități descrie comportamentul sistemului introducând elemente de implementare. O diagramă de activitate reprezintă interacțiunile dintre activități, adică fluxul de control al trecerii de la o activitate la alta. Spre deosebire de diagrama de stare care infățișează stările unui obiectși tranzițiile dintre ele, diagrama de activitate evidențiază activitățile și tranzițiile dintre ele.Atașată unui caz de utilizare, îi detaliază acțiunile și procesele corespunzătoare.

Acestea folosesc următoarele elemente:

-acțiune;

-tranziție;

-decizie;

Diagramele de activitate pot fi folosite în următoarele scopuri:

-pentru a modela comportamentul intern al unei metode (implementarea unei operații). Acesta este și cel mai folosit caz când apelăm la acest tip de diagramă;

– pentru analiza interacțiunii activităților unui caz de utilizare; pentru a ilustra modul de organizare a mai multor cazuri de utilizare și legăturile dintre acestea.

Elementele unei diagrame de activităti

Prin acțiune înțelegem o prelucrare (procesare) neatomică, în curs de desfășurare, în cadrul unei mașini de stare. Acțiunile se pot descompune și nu sunt atomice, în sensul că pot fi intrerupte. O acțiune inițială reprezintă prima acțiune într-o diagramă de stare. In UML, o acțiune inițială se reprezintă ca și o stare inițială, adică printr-un cerc plin. O acțiune finală reprezintă ultima acțiune dintr-o diagramă de activitate. În UML, o acțiune finală se reprezintă ca și o stare finală, prin două cercuri mici concentrice, din care cel interior este plin.

Tranziția de la o acțiune la alta se reprezintă printr-o săgeată etichetată eventual cu:

-numele evenimentului care determină tranziția;

-condiția de apariție a evenimentului;

Decizia indică ramificarea unei tranziții în funcție de îndeplinirea unei condiții.

O decizie reprezintă selectarea unui anumit flux de control al tranzițiilor, din mai multe, în funcție de o condiție de gardă. Intr-o diagramă de activități, blocul deciziei este reprezentat printr-un romb mic, în care intră o singură tranziție, și pot ieși două sau mai multe tranziții. Fiecare tranziție de ieșire este etichetată cu o condiție de gardă, scrisă între paranteze drepte, și care indică condiția ce trebuie îndeplinită pentru ca tranziția să se producă. În cazul în care lipsesc condițiile de gardă, acestea sunt considerate, implicit, ca fiind false.

O diagramă de activitate este o extensie a unei diagrame de stări. Asta înseamnă că o diagramă de activitate va avea toate caracteristicile unei diagrame de stare, plus unele noi.

Concurența implică faptul că mai multe tranziții se petrec simultan. În UML, sincronizarea între fluxurile de control se reprezintă cu ajutorul barelor de sincronizare. O bară de sincronizare permite imbinarea și bifurcarea ramificațiilor paralele în interiorul unui fir de execuție al unui caz de utilizare sau al unei metode. Tranzițiile care pleacă dintr-o bază de sincronizare se declanșează simultan. Dacă mai multe tranziții intră într-o bază de sincronizare , acestea trebuie să se întâmple, inainte ca bara să fie trecută de una sau mai multe tranziții de ieșire din bara de sincronizare. Bara de sincronizare se reprezintă printr-o linie îngroșată. Dacă o bară are o singură tranziție de intrare și două sau mai multe de ieșire, aceasta indică faptul că toate tranzițiile de ieșire se petrec o dată cu tranziția de intrare. Acest flux se numește splitting control. Dacă o bară are mai multe intrări și o singură ieșire, aceasta indică faptul că toate intrările trebuie să se producă înainte să se producă tranziția de ieșire.

Fig. 3.13 Diagrama de activităti

CAPITOLUL 4: IMPLEMENTAREA SISTEMULUI INFORMATIC

Implementarea sistemului informatic este ultima parte pe care o voi realiza în acest proiect și constă în transpunerea fazei de proiectare a proiectului din capitolele anterioare într-un limbaj de programare, astfel încât să pot realiza aplicația practică. Implementarea o voi realiza în două etape, la fel ca și proiectarea sistemului informatic și anume :

implementarea bazei de date ;

implementarea aplicației în C#;

Implementarea bazei de date presupune transformarea designului logic al bazei de date , realizat în faza de proiectare , într-o structură fizică eficientă , specifică pentru sistemul de gestiune al bazei de date pe care l-am folosit .

4.1 Microsoft SQL Server

Microsoft SQL Server este un sistem relațional de gestionare a bazei de date dezvoltat de Microsoft. Ca o bază de date, acesta este un produs software a cărui funcție principală este de a stoca și de a prelua fie datele solicitate de către alte aplicații software, fie cele de pe același computer sau cele care rulează pe un alt calculator într-o rețea (inclusiv Internet). Principalele limbaje de interogare sunt T-SQL și ANSI SQL. SQL Server ruleaza pe T-SQL, un set de extensii de programare de la Sybase și Microsoft care adaugă mai multe caracteristici limbajului standard SQL, inclusiv controlul tranzacție, excepție și eroare de manipulare, prelucrarea randurilor și declararea variabilelor.

SQL inseamna Structured Query Language, și este un limbaj foarte puternic și divers folosit pentru a crea și interoga baze de date. Sintaxa lui îl face ușor de învățat.

Unele dintre funcțiile de bază ale SQL sunt introducerea, modificarea, și fixarea de date din bazele de date. În acest capitol, voi folosi exemple de linie de comandă folosite pentru crearea bazei de date in acest limbaj SQL .

Prin SQL putem face următoarele lucruri:

să actualizam conținutul bazei de date;

să modifcam structura unei baze de date;

să schimbam valorile de configurare pentru securitatea sistemului;

să interogam o bază de date asupra informațiilor;

să adaugam drepturi utilizatorilor asupra bazelor de date sau tabelelor;

Trăsături caracteristice ale limbajului SQL:

este un limbaj neprocedural: specifică care sunt informațiile dorite, nu cum se obțin acestea, SQL nu cere să fie specificată metoda de acces la date.

execuția comenzilor SQL asupra înregistrărilor nu se poate face decât secvențial, asupra câte unei singure înregistrări, setul de înregistrări fiind văzut ca set de linii ale unui tabel.

ca și majoritatea limbajelor de programare, folosește cuvinte din limba engleză, în mod special cuvintele select, insert, delete ca elemente ale setului de comenzi.

poate fi folosit de un șir de utilizatori, incluzând administratorul bazei de date, programatorii de aplicații, personalul de management și multe alte tipuri de utilizatori.

acesta include comenzi pentru anumite sarcini, incluzând:

inserarea, extragerea și ștergerea rândurilor dintr-un tabel

crearea, modificarea și ștergerea obiectelor de tip bază de date

selecția unor date

controlul accesului la baza de date și la obiectele de tip bază de date

verificarea – garantarea consistenței bazei de date

Ca si un fisier de date, o bază de date nu prezintă direct informația unui utilizator, utilizatorui rulează o aplicație care accesează date din baza de date si le prezintă acestuia într-un format inteligibil. Sistemele baze de date sunt mai puternice decât fisierele de date, datele fiind mai bine organizate. Intr-o bază de date bine proiectată nu există elemente de date

duplicate pe care utilizatorul sau aplicația să lie actualizeze. Elementele legate de date sunt grupate împreună într-o singură structură sau înregistrare și pot fi definite relații între aceste structuri sau inregistrări.

Principalele caracteristici care au facut din SQL Server unul din cele mai răspandite și utilizate SGBR-uri ( sistem de gestiune a bazelor de date ) sunt :

SQL Server poate fi rulat de pe o varietate largă de echipamente hardware, pornind de la simple laptopuri și pana la sisteme hardware complexe gen servere multiprocesor;

este optimizat pentru a face față și gestiona baze de date foarte mari, baze de date care pot ajunge ca și dimensiuni la cateva sute de megabiti;

datorită faptului ca are un model de programare asemanator Windowsului utilizarea lui este mai ușoara;

SQL server poate fi intergrat cu alte produse software , cum ar fi servere de e-mail sau servere de web;

incepand cu versiunea SQL Server 2000 , aceasta permite lucrul cu documente XML;

o caracteristică importantă este ușurința în instalare, utilizare și dezvoltare de aplicații, SQL Server deținînd diferite instrumente de administrate și dezvoltare a aplicațiilor.

in cazul platformelor multiprocesor, procesul de interogare poate fi impărțit în mai multe părți, fiecare fiind executată de către un alt procesor . La sfârșit, rezultatele sunt combinate pentru alcătuirea răspunsului final. Astfel se face o optimizare a interogării, optimizare care ajută la reducerea substanțială a timpului necesar execuției. Acest lucru este foarte important în momentul în care se lucrează asupra unor baze de date foarte mari.

Componentele unei baze de date SQL Server

O bază de date SQL Server este formată din mai multe componente:

tabele (tables ) ;

vederi ( views ) ;

indecși ( indexes ) ;

proceduri stocate ( procedures ) ;

declanșatori ( triggers );

În SQL se disting trei familii de comenzi:

comenzi pentru definirea datelor, care permit descrierea (definirea) obiectelor ce modelează sistemul studiat: CREATE,ALTER,DROP (DDL);

comenzi pentru manipularea datelor, care permit consultarea, reactualizarea, suprimarea sau inserarea datelor: INSERT, UPDATE, DELETE si SELECT (LMD);

comenzi pentru controlul datelor, care permit asigurarea confidențialității și integrității datelor, salvarea informației, realizarea fizică a modificărilor în baza de date. Aceste comenzi sunt la dispoziția administratorului bazei de date și sunt utilizate pentru a da sau a lua dreptul de acces la comenzile folosite pentu operarea unor modificări în baza de date.

Acestea sunt : GRANT , REVOKE (LCD)

.

Comenzile de definire a datelor (DDL)

Instrucțiunile din această categorie a limbajului SQL sunt utilizate pentru a crea, modifica sau șterge orice structură de date , în special tabele.

Ca exemplu pentru crearea tabelului antrenor s-au folosit următoarele instrucțiuni:

Instrucțiunea ALTER este folosită pentru a adăuga, șterge sau modifica coloanele care sunt existente în tabele.

Exemple:

Pentru a adăuga o coloana în tabel se folosește următoarea instrucțiune :

ALTER TABLE Antrenori

ADD varsta int

Pentru stergerea unei coloane din tabel se foloseste urmatoarea instructiune:

ALTER TABLE Antrenori
DROP COLUMN resedinta

Pentru a schimba tipul de dată dintr-un tabel se folosește următoarea instrucțiune:

ALTER TABLE Antrenori
ALTER COLUMN varsta int

4.1.1 Comenzi pentru manipularea datelor

Comanda INSERT este folosită pentru a insera valori întru-un loc specificat în tabel.

Exemplu :

INSERT INTO Client(nume_client, prenume_client, varsta, email_client, telefon_client)

VALUES ('Andrei', 'Eugen', '27', '[anonimizat]','0265430363');

În tabelul Client în coloanele nume , prenume , vârstă , email și telefon au fost introduse valori.

Comanda UPDATE este folosită pentru a face un update datelor existente din tabele.

Exemplu:

UPDATE Client

SET nume_client=’Alin’ , prenume_client=’Codarcea’

WHERE varsta=’21’;

În tabelul Client la clientul Alin Codarcea am adăugat nume.

Comanda DELETE este folosită pentru a șterge rânduri sau date din tabele.

Exemplu:

DELETE FROM Client

Where nume_client=’Alin’;

În tabelul Client din coloana nume_client am șters numele Alin.

Comanda SELECT este folosită pentru a selecta datele dintr-un tabel.

Exemplu:

:

Din tabelul Client am sortat clienți care au vârsta mai mare de 30 de ani.

Fig. 4.1 Implementare schema relationala a bazei de date in SQL server 2008 R2

4.2 Implementarea aplicației software a sistemului informatic

Inainte de a începe proiectarea, trebuie să avem o privire de asamblu asupra a ceea ce dorim să realizăm cu această aplicație. Odată ce aceste lucruri au fost stabilite putem trece la alegerea tehnologiilor în care va fi implementată aplicația.

In implementarea unei aplicații software se disting 3 nivele de implementare :

– Nivelul de prezentare : este reprezentat de ătre interfața utilizator, pe care programul o prezintăƒ.

– Nivelul logic : reprezintă codul din spatele interfeței, care face că programul sムfuncționeze corect.

– Nivelul de acces la date : nivel care va avea rolul de stocare a datelor utilizate de către program. In general aplicațiile impelemntează clase automate care se ocupă de acest nivel.

4.3 Microsoft .NET Framework

Platforma .NET este un cadru de dezvoltare a softului, sub care se vor realiza, distribui și rula aplicațiile de tip forme Windows, aplicații WEB și servicii WEB. Ea constă din trei părți principale: Common Language Runtime, clasele specifice platformei și ASP.NET. O infrastructură ajutătoare, Microsoft .NET Compact Framework este un set de interfețe de programare care permite dezvoltatorilor realizarea de aplicații pentru dispozitive mobile precum telefoane inteligente și PDA-uri.

.NET Framework constituie un nivel de abstractizare între aplicație și nucleul sistemului de operare (sau alte programe), pentru a asigura portabilitatea codului.

.NET Framework este baza tehnologiei .NET, fiind ultima interfață între aplicațiile .NET și sisternul de operare. Această componentă a platformei .NET este formată din compilatoare, biblioteci și alte executabile utile in rularea aplicațiilor .NET.

În momentul de față, .NET este una dintre cele mai importante platforme folosite în dezvoltarea aplicațiilor. Unul din avantajele acestei tehnologii este posibilitatea de a folosi unul dintre multiplele limbaje ale .NET Framework, care oferă dezvoltatorilor oportunitatea de a folosi limbajul de programare care este cel mai indicat pentru un anumit task și de aƒ combina limbajele in cadrul aceleiași aplicații.

Componente scrise în diferite limbaje pot funcționa transparent intre ele, fără a fi necesară muncă suplimentară din partea dezvoltatorului. .NET Framework a anunțat cムsuportă peste 20 de limbaje de programare comerciale și academice. Acest avantaj oferit, precum si multe altele, ne oferă o imagine amplă asupra motivației utilizării tehnologiei .NET pentru realizarea aplicației propuse.

Accesul la baza de date prin ADO.NET

ADO.NET (ActiveX Data Objects) reprezintă o parte componentă a nucleului .NET

Framework ce permite conectarea la surse de date diverse, extragerea, manipularea modificarea și actualizarea datelor.

ADO.NET ne permite accesul facil și eficient la colecțiile de date, prin eficientizarea utilizării resurselor. Tehnologiile anterioare funcționau pe baza accesului la baze de date prin stabilirea unei conexiuni permanente pe durata efectuării operațiilor specifice. Intr-un astfel de model, aplicația creează o conexiune la baza de date și aceasta este activă până la sfârșitul aplicației, sau cel puțin pe durata interogării bazei de date.

Dezavantaje ale conexiunilor permanente la baze de date:

menținerea conexiunilor la baza de date este o operație costisitoare. O bună parte a lățimii de bandă este menținută ocupată pentru niște procesări care nu necesită neapărat conectare continuă;

aplicatiile sunt dificil de scalat; o aplicație care funcționează foarte bine cu 5 clienți poate avea performanțe scăzute pentru 10-15 de conexiuni deschise simultan;

utilizarea unui număr mare de conexiuni poate conduce la epuizarea licențelor disponibile pentru baza de date;

pentru unele servere se impun clauze asupra numărului de conexiuni ce

se pot folosi simultan.

Beneficiile furnizate de ADO.net:

interportabilitate : poate interacționa ușor cu orice componentă care suportă XML; durabilitate: permite dezvoltarea arhitecturii unei aplicații datorită modului de transfer a datelor între nivelele arhitecturale.

programabilitate: simplifică programarea pentru diferite task-uri, ceea ce duce la creșterea productivității și scăderea erorilor.

performanță: nu mai este necesară conversia explicată a datelor la transferul între aplicații, fapt care duce la creșterea perfomantelor acestora.

accesibilitate: utilizarea arhitecturii deconectate permite accesul simultan la același set de date reducând numărul de conexiuni deschise simultan.

ADO.NET vine în întâmpinarea acestor probleme implementând un model de accesare a bazelor de date fără conexiune permanentă. In cadrul acestui model, conexiunile sunt inițializate și menținute active doar pe durata efectivă a execuției operațiilor cu bază de date. De exemplu, dacă o aplicație solicită anumite date dintr-o bază, conexiunea este deschisă doar pe durata încărcării datelor în aplicație, apoi conexiunea este închisă. Similar, în cazul altor operații.

Accesul și modificarea datelor în ADO.NET implică mai multe clase:

– Connection , care crează o conexiune la sursa de date;

– Command sunt folosite pentru executarea diferitelor comenzi pe baza de date;

– DataReader permit navigarea de tip forward-only, read-only în mod conectat la sursa de date;

– DataAdapter funcționează că o punte între sursa de date și obiectele de tip DataSet deconectate

– DataSet, care stochează datele pe mașina locală;

– DataProvider, un set de componente care mediază interacțiunea dintre program și baza de date.

Fig. 4.2 Arhitectura ADO.NET reprezentata si principalele clase

Un DataSet este o reprezentare non-conexiune, in-memory, a unei mulțimi de date. Poate fi gândit ca o copie locală a secțiunilor bazei de date utile aplicației. Datele pot fi încărcate într-un DataSet din orice sursă validă, cum ar fi un server SQL, o bază de date Microsoft Access sau un fișier XML. DataSet-ul persistă în memorie, iar datele conținute pot fi modificate sau manipulate, independent de baza de date. Legătura cu baza de date este creată și menținută de un DataProvider. Acesta este format dintr-un set de componente interconectate care cooperează pentru a furniza date într-o manieră eficientă, performantă.

4.4 Limbajul C#

Limbajul C# este un limbaj simplu, modern, orientat pe obiecte conceput pentru a dezvolta aplicații care să ruleze pe platforma .Net Framework. Combină productivitatea limbajelor de dezvoltare rapidă a aplicațiilor cu puterea limbajului C++. Codul C# este compilat ca și cod de bază, ceea ce înseamnă că beneficiază de serviciile CLR. Aceste servicii includ interoperabilitea limbajelor, garbage collection, securitate ridicată și suportul versiunilor îmbunătățite. În cele ce urmează voi descrie câteva caracteristici ale limbajului.

C# este un limbaj "simplu” din punct de vedere a numărului de cuvinte cheie din care este alcătuit și a tipurilor de date predefinite în cadrul lui . Acesta conține doar 80 de cuvinte

cheie și 12 tipuri de date . Conform percepțiilor moderne ale programării, C# se adaptează acestora, prin permiterea programării structurate, modelată și orientată-obiect.

Sintaxa și principiile de programare ale limbajului C# sunt moștenite de la limbajul C++. Totuși C# a păstrat sau a eliminat diferite elemente din C++ .

Principalele asemănări și modificări între cele două limbaje sunt :

-au fost adăugate o serie de tipuri noi de date și funcții noi, pentru realizarea unor secvențe de cod cat mai sigure și interfețe ușor de înțeles;

-unele tipuri de date au fost modificate , de exemplu tipul struct și tipul string au fost modificate în C# ;

-din C# a fost eliminată moștenirea multiplă și pointerii către funcții .

O componentă importantă din C++ care a fost păstrată și în C# este accesul la memorie direct, folosind pointeri, dar în limbajul C# aceste zone de cod sunt considerate ca fiind nesigure .

Elementele fundamentale ale limbajului C# au fost considerate ca fiind elementele de bază ale programării pe obiecte : încapsularea, moștenirea și polimorfismul .

Principalele componente ale unei aplicații dezvoltate în C# sunt clasele . Ca și organizare, acestea sunt organizate în spații de nume ( namespaces ) spații care au proprietatea că conțin clase de nume diferite, dar cu funcționalitate înrudită .

O clasă este un obiect format din date și funcții. Apelarea unei funcții în cadrul clasei în care a fost definită se face prin apelarea cu numele acesteia.

În cadrul limbajului C# au fost introduse, de către cei de la Microsoft, mai multe clase care facilitează accesul la date. Aceste clase au fost introduse în cadrul tehnologiei ADO.NET ( ActiveX Data Objects ) tehnologie care oferă o flexibilitate sporită pentru accesul la date, dar în același timp face această operațiune mult mai ușoară. Cele mai importante clase pentru aplicația software a sistemului informatic pe care l-am proiectat sunt:

– DbConnection ;

-DbCommand ;

DbConnection este clasa care realizează și furnizează conexiunea cu baza de date . Pentru realizarea conexiunii este nevoie de instantierea unui nou obiect de tip DbConnection, precizînd în același timp o serie de informații referitoare la baza de date : locația bazei de date, numele utilizatorului, parola și numele bazei de date .

Această clasă este cea mai importantă dintre toate clasele care lucrează direct cu baza de date , deoarece toate clasele care execută interogări sau modificări în baza de date o vor utiliza pentru a-și putea realiza sarcinile.

Conexiunea efectivă cu baza de date se realizează cu ajutorul unui șir de conexiune (connection strinQ ), șir stocat în parametrul ConnectionString al clasei DbConnection.

Instantierea unui nou obiect al acestei clase nu înseamnă neapărat realizarea unei conexiuni cu baza de date. Pentru conectarea și deconectarea la baza de date, clasa DbConnection oferă metodele Open0 și Close0. Acest lucru este realizat pentru că de multe ori nu este nevoie să avem o conexiune continuă cu baza de date, mulțumită ADO.NET .

Clasa DbConnection poate avea mai multe clase derivate. Acestea , împreună cu clasa principală, au denumirea de clase de conexiune . De exemplu clasa SQLConnection este o

clasă derivată a clasei DbConnection , clasă folosită în cazul în care baza de date este realizată cu SQL Server .

In acest exemplu am specificat numele calculatorului pe care este instalat serverul SQL (“dutzy-pc”) , baza de date la care se face conectarea (“Licenta”)

Exemplu de comanda de DELETE din C#

ExecuteNonQuery()executã o comandã care nu returneazã un set de date din baza

de date ; dacã comanda a fost de tip INSERT, UPDATE, DELETE, se returneazã

numãrul de înregistrãri afectate.

Exemplu linie de cod care încarca date intr-un tabel .

CAPITOLUL 5: CONCLUZII

Această lucrare își propune realizarea unui sistem de gestiune al activităților într-un club sportiv, într-un mod cât mai eficient, rapid și corect. Programul ajută cluburile de fitness prin existentența unei baze de date al clienților și tipurile de servicii care sunt cel mai folosite de către aceștia.

Programul asigură în primul rând gestiunea clienților, antrenorilor, activitatea și serviciile efectuate în clubul sportiv. Totodată programul se ocupă și de partea financiară ținând evidența câștigurilor.

Experiența de peste patru ani din acest domeniu mi-a oferit ocazia de a crea acest tip de program, deoarece majoritatea cluburilor de fitness nu au un sistem informatic dezvoltat.

Astfel, cu acest program îmi propun să ofer o mai bună gestiune a centrelor fitness. Programul are o interfață cât mai ușor de folosit (user friendly) și înțeles, fără a fi nevoie de cunoștințe vaste în domeniul IT.

Proiectarea corespunzătoare a bazei de date și implementarea ușor de înteles asigură un suport real pentru o posibilă continuare și dezvoltare a acestui proiect.

Principalele caracteristici ale sistemului sunt:

înregistrarea clientului și datele acestuia;

tipurile de abonamente alese;

durata abonamentelor;

posibilitatea vizionării datelor relevante referitoare la timp și durată a abonamentelor alese de către clienți;

posibilitatea stocării în format electronic;

actualizarea informațiilor în sistem are loc în timp real;

adăugarea antrenorilor și servicii noi;

vizualizarea și modificarea fișei unui client;

realizarea schimbări unui timp de abonament dacă este necesar;

gestionarea bonusurile pentru clienți;

Fiind o aplicație dezvoltată pentru săli de fitness si cluburi sportive, aplicația nu dispune de o interfață utilizator prea dezvoltată , cum sunt aplicațiile destinate publicului larg. Acest lucru se datorează faptului că în acest mediu se pune accentul pe funcționalitatea cât mai bună a aplicației în primul rand și mai apoi pe aspectul vizual al acesteia.

In momentul de față pe piața locală există foarte puține programe de gestiune a cluburilor fitness. Avantajul acestui proiect este accesul și posibilitatea modificării surselor sau a bazei de date în funcție de cerințele apărute, și totodată un cost de întreținere mic.

Pe viitor voi urmări realizarea unei baze de date și a unei interfețe care să permită și alte funcții pentru centrele fitness mai mari care au mai multe facilități .

Proiectarea bazei de date și implementarea simplă poate ajuta la dezvoltarea ulterioară.

Printre următoarele funcționalități care ar putea fi implementate sunt crearea unei noi interfețe destinate clienților, care să permită accesarea profilelor proprii. Aceasta va putea include anumite facilități pentru clienți cum ar fi : diete, nutriție, sfaturi pentru anumite grupe de mușchi, orar, durata abonamentului creat în timp real.

Deasemenea , o îmbunatatire semnificativă a aplicației poate fi consideratムcrearea unui modul de server distribuit pentru aplicația creată. Astfel accesul la date se poate realiza mai ușor, dar și mult mai sigur .

Bibliografie

Ileana Ștefan – Analiza și proiectarea sistemelor informatice, Tîrgu-Mureș,2007

Dorin Lixandroiu, Radu Lixandroiu – Baze de date relaționale, Brașov 2009

Stanciu V. – Proiectarea sistemelor informatice de gestiune, Ed. Cison, București 2000

C.J. Date, Baze de Date, Ed. Plus, București, 2002

Gheorghe Militaru- Sisteme informatice pentru management, Ed. ALL, Bucuresti, 2004

Anca Daniela Ionita – Modelarea UML in ingineria sistemelor de programe. Ed. ALL, Bucuresti, 2003

Popescu, I. – Database Design, Ed Tehnică, 2001

Sabău G., Avram V. – Computer Systems and Databases, Ed Oscar Print

Mocian I. – Baze de date- pentru uzul studentilor, Ed. Universitatii "Petru Maior", Targu-Mures, 2008

M.J. Hernandez- Proiectarea bazelor de date, Ed Teora, Bucuresti, 2003

Martin J. – An end users guide to Data Base, Prentice Hall, 1981

Carter J. – The relational database, Chapman & Hall, 1995

Limbajul C# PhD. Lucian Sasu

Maria Niță (profesor, Colegiul Național „Emanuil Gojdu”, Oradea) ,Rodica Pintea (profesor, Colegiul Național „Ferdinand I”, Bacău) ,Daniela Tarasă (Inspector Informatică, ISJ BacăuIntroducere în .Net Framework) Intorducere in .Net editia 2008

Stefan I.- Analiza si proiectarea sistemelor informatice, Ed. Universitatii Petru Maior, 2007

Bocu D., Bocu R. – Modelare orientata obiect cu UML, Ed. Albastra, Cluj-Napoca, 2007

Ion Smeureanu, Marian Dârdală, Adriana Reveiu, "Visual C# .Net", Editura CISON, București 2004

Bibliografie

Ileana Ștefan – Analiza și proiectarea sistemelor informatice, Tîrgu-Mureș,2007

Dorin Lixandroiu, Radu Lixandroiu – Baze de date relaționale, Brașov 2009

Stanciu V. – Proiectarea sistemelor informatice de gestiune, Ed. Cison, București 2000

C.J. Date, Baze de Date, Ed. Plus, București, 2002

Gheorghe Militaru- Sisteme informatice pentru management, Ed. ALL, Bucuresti, 2004

Anca Daniela Ionita – Modelarea UML in ingineria sistemelor de programe. Ed. ALL, Bucuresti, 2003

Popescu, I. – Database Design, Ed Tehnică, 2001

Sabău G., Avram V. – Computer Systems and Databases, Ed Oscar Print

Mocian I. – Baze de date- pentru uzul studentilor, Ed. Universitatii "Petru Maior", Targu-Mures, 2008

M.J. Hernandez- Proiectarea bazelor de date, Ed Teora, Bucuresti, 2003

Martin J. – An end users guide to Data Base, Prentice Hall, 1981

Carter J. – The relational database, Chapman & Hall, 1995

Limbajul C# PhD. Lucian Sasu

Maria Niță (profesor, Colegiul Național „Emanuil Gojdu”, Oradea) ,Rodica Pintea (profesor, Colegiul Național „Ferdinand I”, Bacău) ,Daniela Tarasă (Inspector Informatică, ISJ BacăuIntroducere în .Net Framework) Intorducere in .Net editia 2008

Stefan I.- Analiza si proiectarea sistemelor informatice, Ed. Universitatii Petru Maior, 2007

Bocu D., Bocu R. – Modelare orientata obiect cu UML, Ed. Albastra, Cluj-Napoca, 2007

Ion Smeureanu, Marian Dârdală, Adriana Reveiu, "Visual C# .Net", Editura CISON, București 2004

Similar Posts