Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Elemente de analiza si proiectare ale aplicatiei - arhitectura client server

baze de date



+ Font mai mare | - Font mai mic



Elemente de analiza si proiectare ale aplicatiei

1 Aplicatiile si arhitectura client server



Ideea subiacenta modelului client/server este serviciul. O aplicatie distribuita, dezvoltata conform acestui model, este descompusa in doua grupuri de procese: consumatorii de servicii, numiti clienti, si furnizorii de servicii, numimti server. Modelul client/server poate fi definit ca un model de dezvoltare a aplicatiilor distribuite, in care acestea sunt descompuse intru-un numar de functii server, executate pe una sau mai multe platforme hardware, care furnizeaza servicii comune unui numar de functii client, rulate pe platforme hardware diferite.

Figura nr.3 Arhitectura client / server

Componetele client si server comunica intre ele prin schimbul de mesaje de tip cerere-raspuns. Clientul solicita serverului un serviciu, prin transmiterea unui mesaj de tip cerere. La randul sau , serverul va transmite clientului rezultatul solicitarii sale printr-un mesaj de tip raspuns.

Figura nr.3 Arhitectura client / server

Utilizatorul comunica cu porgramul client, iar schimbul de mesaje realizat intre porgrame client si server ii sunt transparente. El percepe aplicatia ca un asnsamblu de executat doar pe calculatorul sau. De exemplu, un server poate fi conceput pentru a oferi clientilor sai servicii specifice bazelor de date. Serverul este functional independent de client, iar relatia intre client si server este de colaborare, care este de tip "stapan - sclav" (master-slave).

Proiectarea aplicatiilor client/server presupune conceperea unor straturi bine definite, realizate independent, singura grija constand in definirea neta si poriectarea atenta a interfetelor, urmarindu-se ca:

Fiecare strat sa aiba un domeniu bine definit, din punct de vedere al sarcinilor atribuite.

Un tip de sarcina va fi repartizat unui singur strat. Daca unul dintre straturi este responsabil de interactiunea cu utilizatorul, atunci numai acel strat va asigura comunicarea cu acesta.

Stabilirea unor portocoale bine definite pentru interactiunea dintre straturi, care sa se realizeze numai prin intermediuil acestor protocoale.

O prima incercare de structurare a aplicatiilor client/server a constituit-o impartirea pe doua straturi, realizandu-se arhitectura cu doua straturi:

Stratul corespunzator aplictiei, in care se includ logica prezentarii, adica interfata grafica cu utilizatorul, si logica aplicatiei. Tot acest strat poate coordona si logica tranzactiei, care garanteaza corectitudinea si completitudinea actualizarii bazei de date.

Pentru elaborarea acestei lucrari, am optat pentru o versiune de evaluare a softului Microsoft Visual Studio, care permite dezvoltarea si crearea aplicatiilor de sine statatoare, a interfetelor pentru utilizatori, precum si aplicatii care se pot conecta la un SGDB, in vederea extragerii, prelucrarii si modificarii datelor.

Stratul corespunzator bazei de date, este responsabil de mentinerea integritatii bazei de date. In acest strat poate fi implementata intreaga logica a tranzactiei sau o parte a ei.

Distinctia dintre cele doua straturi nu este intotdeauna clara, deoarece logica aplicatiei este adesea imlpementata si pe    serverul de date sub forma procedurilor stocate.

Pentru crearea si administrarea acestei aplicatii, am folosit PostgreSQL. Sistemul de administrare a bazelor de date PostgreSQL este gratuit, ofera o functionalitate comparabila cu oricare server de baze de date comercial. O prezentare a caracteristicilor mai putin uzuale, printre care se numara mostenirea si posibilitatea de a defini reguli, operatori, functii de agregare si triggers.

2 Aspectele economice ale sistemelor client/server

Pe masura ce companiile cautau un avantaj competitiv in recesiunea economica de la inceputul anilor '90, bunul cel mai de pret folosit ca parghie s-a dovedit a fi informatia. Mai precis, furnizarea oportuna a informatiei, in formatul potrivit, catre decidentul potrivit, la locul si timpul potrivit poate fi factorul de diferentiere intre succes si esec, in viata economica a zilelor noastre. De o mare importanta s-a dovedit a fi inca un criteriu: informatia trebuie furnizata la costul potrivit. Mainframe-urile cu reteaua ierarhica si bugetul de intretinere/dezvoltare asociate au fost considerate, poate pe nedrept, ca punctul cu cel mai mare buget din cadrul departamentelor sistemelor informatice.

Este important de inteles ca "reducerea dimensiunii sistemelor informatice" si "ajustarea optima a dimensiunii aplicatiilor" nu se refera numai la economisirea de bani. Aparitia unei noi arhitecturi distribuite pentru procesare si livrare a sistemelor informatice a fost posibila prin combinarea urmatoarelor evenimente:

introducerea de statii de lucru personale puternice, la preturi rezonabile;

aparitia unor sisteme de operare server multitasking, accesibile si puternice;

cereri in continua schimbare a sistemelor informatice, rezultate din climatul economic din zilele noastre.

Sistemele client/server necesita o gama larga de tehnologii hard si soft, provenite de la o multitudine de furnizori, sa fie imbinate armonios, prin intermediul retelei, pentru a asigura utilizatorului, in final, in mod transparent, interoperabilitate. Aceasta armonie implica legarea cu succes, prin protocoale mutual compatibile, a tuturor interfetelor soft/soft ,soft/hard si hard/hard.

3 Analiza iesirilor

Proiectarea iesirilor constituie poate cea mai importanta activitate in dezvoltarea sistemelor informationale, precum si a aplicatiilor, deoarece obtinerea lor reprezinta scopul general al oricarui sistem. Utilizatorul va aprecia noul sistem mai ales prin prisma iesirilor. Obliectivul principal al poriectarii iesirilor este de a prezenta informatia solicitata intr-o forma inteligibila, unde trebuie, cand trebuie si cui trebuie.

De asemenea, cunoasterea destinatarilor serveste la o buna proiectare a iesirilor dintr-un sistem/aplicatie. Identificarea si descrierea destinatarilor, precum si a sarcinilor de lucrual ale acestora vor permite o mai buna intelegere a scopului in care va fi utilizata fiecare iesire.

In aceasta lucrare, aplicatia are drept scop generarea unei singure iesiri, statul de salarii, care se poate obtine sub forma unui formular sau raport si are ca destinatari clientii aplicatiei, personale responsabile de salarizare de la liceele conectate la server, insa logica bazei de date va permite diverse interogari care ar putea genera rapoarte utile si in alte domenii decat salarizarea. Persoanele interesate de acest domeniu de aplicatii vor avea un punct de plecare, baza de date la care se pot adauga formulare si rapoarte cu diverse functii de extragere, modificare, adaugare sau monitorizare si evidenta a datelor si a diferitor indicatori economici si statistici.

Din punct de vedere al frecventei iesirilor, statul de salarii este un raport porgramat sau (la termen). Astfel de rapoarte sunt elaborate la anumite intervale regulate, au un continut predefinit si forma lor este dinainte stabilita. Aici se incadreaza rapoartele ralizate zilnic, saptamanal sau lunar, cum este cazul raportului nostru.

O alta caracteristica a iesirilor este formatul lor, care defineste modalitatea de organizare si prezentare a informatiilor, astfel incat ele sa fie atragatoare si usor de utilizat. La aceasta categorie vom opta pentru forma tabelara, care este cel mai frecvent intalnita, ea presupune organizarea informatiilor in linii si coloane, de cele mai multe ori aceasta forma inlestenste pe cea grafica.

Un exemplu de astefel de raport este prezentat in figura 2

Figura nr.4 Exemplu stat de salarii

4 Analiza Intrarilor

Activitatea de analiza a datelor de intrare urmareste toate aspectele legate de documentele sau datele care sunt supuse prelucrarii in sistemul/aplicatie existenta. In mod normal, abordarea datelor se realizeaza separat in urmatoarele doua situatii:

pentru documentele intrate in sistem pe suport de hartie, cand se recurge la culegerea datelor continute de acestea.

pentru informatiile porvenite din alte sisteme/aplicatii, care presupun retratarea sub aspectul compatibilitatii cu formatul datelor existente in aplicatia analizata.

Principalele surse a datelor de intrare:

Date personale:

Contract de munca: este conventia incheiata in forma scrisa intre angajator si angajat ,

Carnetul de munca: este actul oficial prin care se dovedeste vechimea in munca

Diploma de studii

Certificat de nastere

Buletin

Certificat dupa modulul pedagogic

Adeverinta medicala

Date despre salariu de baza sporuri si deduceri:

Legea de salarizare in invatamantul preuniversitar

Grile de salarizare

Codul muncii

Alte date: se obtin de la secretariatul liceului/scolii

Elemete de analiza si proiectare orientata obiect

Figura nr.4 Diagrama de clase pentru modelul orientat obiect

Figura nr. 5 Diagrama de activitati

6 Nivelul accesului

Controlul accesului de catre un subiect (o entitate activa, cum ar fi o persoana sau proces) asupra unui obiect (fisier, aplicatie) presupune stabilirea unor reguri de acces.

Aplicatia de salarizare va permite delegarea de acces special pentru anumite categorii de useri, care vor putea realiza operatiunea de a sterge sau modifica. Cu alte cuvinte, nu toti clientii vor avea acces deplin la resursele aplicatie. Anumite operatiuni, precum modificarea procentelor la sporuri sau adaugarea unui liceu nou se vor realiza doar de persoane cu acces special, delegarea accesului se va face pe baza de parole.

Parolele sunt utilizate pentru a se permite accesul la un calculator sau la o aplicatie. Dupa introducerea parolei in zona de log in, parola tastata este comparata cu cea din baza de date, daca sunt identice, se poate deschide sesiunea de lucru cu aplicatia si se pot realiza operatiuni de vizualizare, adaugare, modificare, stergere, salvare.



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 2807
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved