Sunteți pe pagina 1din 17

STRUCTURA SI FUNCTIA CALCULATORULUI.

SISTEME DE OPERARE In baza oricarui calculator stau doua componente fundamentale: Hardware si Software Harware sunt componente tari, solide care pot fi pipaite. Din componentele hard-ului fac parte urmatoarele dispozitive: vizualizatorul, tastatura, mouse-ul, imprimanta, scanerul, boxe audio si altele. Toate acestea sunt conectate la unitatea centrala (blocul de sistem . !locul de sistem, la randul sau, este compus din mai multe blocuri: blocul de alimentare, "D-#$%, D&D-#', dischiera, memoria hard. Toate componentele sunt conectate la placa de baza. (e placa de baza, de asemenea, sunt asamblate mai multe elemente, cum ar fi: procesorul, memoria operativa, placa de sunet, placa video, placa de retea, modemul. )ceste componente pot fi divizate in urmatoarele *rupuri: unitati de intrare, unitati de iesire, unitatea de procesare. +nitatile de intrare si iesire pot fi atribuite unei *rupe deoarece componentele care fac parte din aceste *rupe au posibilitatea atit de a receptiona informatia, cit si de a o distribui. +nitatea de procesare este un sistem de componente, de care depind celelalte componente asamblate, anume el determina caracteristicile principale ale calculatorului, printre care enumeram: &iteza de procesare, care depinde de clasa procesorului si determina numarul de operatii pe secunda se masoara in Hertz, (Hz . %emoria operativa (memorie de tip RAM). De capacitatea ei depinde volumul de informatie memorizat de calculator in forma binara pentru prelucrarea datelor curente si datelor intermediare din aceasta memorie informatia este disponibila atit timp cit calculatorul este conectat la reteaua de alimentare. In memoria operativa este de asemenea inscris sistemul de operare care nu poate fi sters intimplator. (entru un sistem de operare mai performant avem nevoie de o memorie mai mare %emoria permanenta (memorie de tip ROM). "apacitatea ei ne permite pastrarea informatiei de un volum mai considerabil atit timp cit este necesar, fara restrictii, deconectarea calculatorului de la retea nu duce la pierderea informatiei. "apacitatea memoriei se masoara in octeti (b,te , -ilob,te, %e*ab,te, .i*ab,te. Software este numita partea lo*ica, pro*ramele care ne asi*ura lucrul cu calculatorul. /a rindul sau, software este format din 0istemul de operare si (ro*ramele de aplicatie. "auza principala de aparitie a sistemului de operare este necesitatea de executare a operatiilor elementare pentru *estionarea resurselor calculatorului. )ceste operatii se numesc de nivel 1os. (entru utilizator practic este imposibil de a indeplini sute de mii de operatii elementare pentru a primi un rezultat scontat. )tfel, se poate afirma ca un sistem de operare poate fi asociat cu un translator-asistent intre componenta hardware a unui sistem de calcul si utilizator. +n sistem de operare const2 dintr-un ansamblu de pro*rame de sistem, care administreaz2 resursele sistemului de calcul, asi*ur2 utilizarea eficient2 in comun a acestor resurse, asi*ura le*atura intre componentele lo*ice si fizice ale sistemului. )ceste pro*rame conduc intrea*a activitate din interiorul calculatorului, asista utilizatorul, pune in lucru si coordoneaza cu pro*ramele de aplicatie. 0istemele mentionate mai sus sunt destinate pentru utilizatori simpli numiti +03# si utilizatori administratori numiti )D%I4, care sunt utilizatori mai experimentati, iar sistemul lor de operare are un nivel de securitate mai ridicat. "ele mai raspindite tipuri de sisteme de operare pentru utilizatori de tip +03# sunt: %0-D$0, 'indows 56, 'indows 57, 'indows 8999, 'indows %3, 'indows :(, 'indows ;, 'indows 7. (entru utilizatori de tip )D%I4 avem sisteme de operare mai performante: 'indows 4T (4ew Technolo*, , 'indows 899< 0erver, =inux, >ree !0D. >unctiile principale ale sistemului de operare sunt:

?. $ferirea posibilit2tii de lansare in executie a pro*ramelor de aplicatie, 8. )locarea resurselor necesare execut2rii pro*ramelor, care se realizeaz2 prin identificarea pro*ramelor ce se execut2, rezervarea memoriei pentru aceste pro*rame, controlul dispozitivelor periferice si a cerintelor privind protectia datelor@ <. >acilit2ti pentru compresia datelor, sortare, interclasare, catalo*are si intretinere a bibliotecilor@ A. (lanificarea executiei lucr2rilor dup2 anumite criterii, pentru utilizarea eficient2 a resurselor unitatii centrale de prelucrare. MODEMUL In literatura de specialitate se atentioneaza asupra a doua tipuri de modeme: Interne si Externe. %odemul intern se caracterizeaza prin instalare in placa de baza a calculatorului, in sloturi. %odemul extern reprezinta un bloc separat conectat la calculator prin intemediul cablului. %odemurile sunt dispozitive destinate pentru instaurarea conectarii intre calculatoare, cu a1utorul liniei telefonice in reteaua mondiala Internet. /iniile telefonice sunt folosite, in *eneral, pentru transmiterea sunetelor, a vocii umane. %odemurile au fost inventate pentru a converti informatia di*itala a calculatorului in semnal analo*, impulsuri care pot fi transportate prin retelele telefonice catre un alt calculator. %odemul de la celalalt capat al liniei primeste mesa1ul, il decodeaza in sistem binar si il transmite calculatorului. )stfel, se realizeaza o comunicare intre doua terminale de Internet. 0e mai numeste conexiune dial-up. &iteza unui modem se masoara in biti pe secunda (bps , aceasta variind de la 5,B -bps pina la 6B de -bps. Denumirea de modem este prescurtarea de la %odulator - Demodulator, doua componente ale modemului care fac posibila decodarea impulsurilor in informatie di*itala si invers. +n tip de modem mai performant este cel conectat prin reteaua de cablu T&. %odemul de cablu este mai rapid decit cel prin dial-up deoarece abonatul la Internet are o conexiune permanenta, iar viteza de transfer este mai mare decit in cazul conexiunii dial-up. %odemurile sunt clasificate in functie de tipul de conexiune al acestora: modemuri telefonice, de cablu T& si modemuri radio (le*atura wireless . Din punct de vedere al componentelor aflate pe placa de modem, modemurile pot fi hardware (executa toate operatiile de modulatie, demodulatie si compresie sau software, caz in care ma1oritatea operatiilor cad in sarcina microprocesorului calculatorului. )ceasta ar insemna ca o parte din procesarea semnalului este descarcata de catre procesor. 3xista modemuri ale caror caracteristici sunt C&oice, Data si >axC, iar altele care nu au decit Data si >ax. (rima cate*orie iti ofera avanta1ul folosirii modemului si pentru convorbiri telefonice. WINDOWS 9 0istemul operational WINDOWS 95 a fost lansat oficial la 8A au*ust ?556. WINDOWS 95 este pachetul software care a exercitat cel mai mare impact in lumea calculatorului. WINDOWS5 este un sistem perfectionat de la %0-D$0, 'I4D$'0 <.? si 'I4D$'0 <.??. 0istemul de operare WINDOWS si-a dobindit numele de la zonele de pe ecran, numite ferestre, care apar atunci, cind W!ndows este utilizat. Tot ce se lucreaza in W!ndows este afisat in una din cele doua tipuri de ferestre: fereastra de program si fereastra cu document. )cest sistem operational se bazeaza pe dialo*ul dintre utilizator si calculator prin intemediul ferestrelor. 0istemul de operare WINDOWS a fost creat pentru a usura munca utilizatorilor incepatori sau putini experimentati. !eneficiarii de baza ai sistemului operational WINDOWS constituie utilizatorii simpli supranumiti, in limba1ul calculatorului, +03#. )sadar, scopul principal al elaboratorilor 'indows este scaderea brusca a cerintelor de pre*atire pentru utilizatori si elaborarea unei interfete comode si si*ure. "u a1utorul acestui sistem de operare orice operatie poate fi indeplinita prin mai multe cai posibile, deci

destinata pentru diferiti posesori, fiecare cu caracterul si preferintele sale, a fost bine *indit sistemul de sfaturi, mesa1e si avertizari pentru sustinerea utilizatorului pe tot parcurul sedintei de lucru. 0istemul operational 'indows este construit in modul real-obiectual, cee ce inseamna ca interfata reprezinta o copie a lumii reale, iar lucrul cu calculatorul se reduce la manipularea cu obiecte uzuale. )stfel, mapele pot fi deschise, puse in *eanta, documentele D pot fi studiate, corectate, mutate dintr-un loc in altul, aruncate in cosul de *unoi, faxul sau scrisoarea D trimise destinatarului etc. %icrosoft, compania care a elaborat acest sistem operational, afirma ca in timpul apropiat utilizatorii se vor *indi mai putin la pro*rame in care sunt scrise documentele, si mai mult la documentele cu care lucreaza.

")(IT$/+/ I NO"IUNI DE #A$A PRI%IND INSTRUMENTELE SOFTWARE


Informatica a cunoscut Ei cunoaEte o dinamicF de dezvoltare accentuatF, care s-a fFcut simGitF prin produse informatice cu performanGe sporite. De la produsul informatic de o complexitate arhitecturalF Ei structuralF redusF, destinat Hn special automatizFrii calculelor numerice s-a a1uns la produse informatice sofisticate, capabile sF manipuleze Ei sF prelucreze ima*ini, sF Hncorporeze, prin elemente de inteli*enGF artificialF cunoaEterea Ei experienGa umanF. In 0+) Ei alte GFri avansate circa 59J din costurile de prelucrare automatF a datelor reprezintF cheltuielile cu elaborarea produselor pro*ram. In consecinGF, sunt motivate preocupFrile pentru o abordare *lobalF a pro*ramFrii Ei, prin urmare, folosirea unor modele, tehnici Ei instrumente care sF permitF construirea modularF Ei pro*resivF a produselor pro*ram. 4ecesitatea ridicFrii eficienGei acestei activitFGi a ridicat Hn faGa specialiEtilor probleme noi, cum ar fi: crearea cadrului or*anizatoric Ei metodolo*ic care sF punF bazele desfFEurFrii Ei conducerii dupF norme, standarde Ei metode unitare@ formalizarea verificFrii corectitudinii produselor pro*ram@ proiectarea asistatF de calculator@ abordarea sistemicF a elaborFrii produselor pro*ram, etc. probleme rezolvate Hn mare parte, existKnd actualmente, la nivelul cercurilor de specialiEti preocupFri de perfecGionare ale acestora.

&.& Instr'(ente software ) def!n!re *! +,as!f!+are


In cadrul problematicii pe care o ridicF prelucrarea electronicF a informaGiilor economice, o importanGF ma1orF revine folosirii instrumentelor software Hn vederea efectuFrii lucrFrilor solicitate. )ceastF activitate face apel la resursele lo*ice (componenta software care permit utilizatorilor sF foloseascF resursele fizice (componenta hardware Ei sF transforme resursele de date Hn produse informatice. #esursele lo*ice sunt necesare pentru a realiza operaGiile de intrare, ieEire, prelucrare, memorare (stocare Ei control. (entru efectuarea acestora se folosesc programele. (ro*ramele sunt entitFGi software cu un conGinut Ei o delimitare bine precizate, numite *eneric instrumente software (ele fac parte din cate*oria mi1loacelor de muncF . (ro*ramul reprezintF totalitatea instrucGiunilor Ei Lsau comenzilor pre*Ftite Ei ordonate Hn prealabil conform unei lo*ici prestabilite, stocate Hn memoria calculatorului Ei utilizate pentru rezolvarea unei anumite probleme, iar ansamblul activitFGilor de concepere, dezvoltare Ei HntreGinere a pro*ramelor poartF denumirea de pro*ramare. InstrucGiunile Ei Lsau comenzile constituie informaGii codificate ce transmit calculatorului acGiunea ce urmeazF a fi executatF. /a rKndul lor acestea pot fi structurate Hn douF mari *rupe: de prelucrare prin care se realizeazF introducerea Lextra*erea datelor Hn Ldin sistem, efectuarea operaGiunilor de calcul, efectuarea transferului de date Hntre diferite zone de memorie etc.@ de organizare (de structurare internF a pro*ramului ce asi*urF codificarea structurilor de control Ei de apelare sau de salt la alte pro*rame. "onceptul de program sau produs-program desemneazF atKt pro*ramul propriu-zis cKt Ei operaGiile manuale Ei documentaGia necesare pentru dezvoltarea, utilizarea Ei HntreGinerea lui. #evenind asupra pro*ramelor acestea pot fi *rupate Hn 8 mari cate*orii: software-ul de bazF (pro*rame de bazF @

software-ul de aplicaGii (pro*rame de aplicaGii . 0chematic aceste douF mari cate*orii de pro*rame informatice pot fi prezentate ca Hn fi*ura nr. ?.?.
P ro g ram e i n f o r m a ti c e P ro g ram e d e baz P ro g ram e a p l i c a ti v e

P ro g ram e d e g e s ti u n e a s i s te m u l u i

P ro g ram e d e sp rijin ire a g e s ti u n i i s i s te m u l u i


P ro gram e de d e z v o l ta r e a s i s te m e l o r ! r a d u c to a r e M ed ii d e p ro gram are P ro g ram e d e a r b i tr a r e " n in g in eria p ro gram rii


P ro g ram e p o l i v a l e n te

P ro g ram e p ro p rii u n ei a p l i c a i i

ti l i ta r e N u c l e u l S .O C o n te x te d e P r o g r a m e d e c o n tr o l a e x p l o a ta r e G e s ti o n a r e d e p e r o r m a n e l o r M o n i to a r e d e b a z e d e d a te M o n i to a r e d e s e c u r i ta te te l e c o m u n i c a i i

P r e l u c r a r e te x t C o n ta b i l i ta te ' C a r te a S p rea d s# eet m are S .G .$ .% . M a r ( e ti n g ' a n a l i z a ! e l e c o m u n i c a i i v ) n z r i l o r & n fo g rafia * i n a n e ' s ta b i l i r e a P ro gram e b u g e te l o r i n te g r a te P r o d u c i e ' c o n tr o l u l p r o d u c i e i

>i*. nr. ?.? Clasificarea programelor informatice Software)', de -a./ serveste ca interfaGF lo*icF Hntre resursele sistemului informatic Ei pro*ramele de aplicaGii. 0oftware-ul de bazF administreazF Ei susGine resursele fizice Ei exploatarea unui sistem informatic Hn timpul diverselor prelucrFri prin toate celelalte tipuri de pro*rame. IntrF Hn aceastF cate*orie cu precFdere sistemele de operare. 0uccint cele trei tipuri de pro*rame de bazF realizeazF urmFtoarele funcGii: Programele de gestiune a sistemului: administreazF resursele materiale, lo*ice Ei de date Hn timpul execuGiei funcGiilor de prelucrare a datelor pentru utilizatorul final. Programele de sprijinire a gestiunii sistemului: printr-un ansamblu de servicii susGin exploatarea Ei *estiunea unui sistem informatic. Programele de dez oltare a sistemelor : uEureazF dezvoltarea procedurilor sistemului informatic pre*Ftind pro*ramele-utilizator prin intermediul traductoarelor, mediilor de pro*ramare etc. +ltimele tipuri de calculatoare dispun de o componentF specialF !irmware constituitF din micropro*rame Hnscrise Hn memoriile fixe, Ei care alFturi de celelalte tipuri de pro*rame asi*urF maximizarea productivitFGii unui sistem informatic. Software)', de a0,!+a1!! serveste la prelucrarea propriu-zisF a datelor coordonKnd execuGia unei funcGii sau a unei aplicaGii Hn raport cu cererile de informaGii ale utilizatorilor. 3xistF o mare varietate de pro*rame aplicative, varietate ce decur*e pe de o parte din cererea mereu crescKndF de automatizare a funcGiilor utilizatorilor iar pe de altF parte din popularitatea Ei lar*a utilizare a calculatoarelor personale. (ro*ramele aplicative la rKndul lor sunt de douF tipuri: pro*rame polivalente@ pro*rame proprii unei aplicaGii. Pro2ra(e,e 0o,!3a,ente sunt resurse lo*ice care realizeazF activitFGile curente de prelucrare a datelor pentru a satisface cererile utilizatorului. IntrF Hn aceastF cate*orie numeroase pro*rame de prelucrare a textului, pro*ramele de calcul tabelar, 0.!D-urile, pro*ramele inte*rate etc. Deoarece ele asi*urF creEterea productivitFGii LperformanGelor utilizatorilor, se mai numesc Ei pro*rame de productivitate. Pro2ra(e,e 0ro0r!! 'ne! a0,!+a1!! spri1inF utilizatorii Hn realizarea unor funcGii bine stabilite. /a rKndul lor aceste pro*rame pot fi *rupate Hn: "plica#ii de gestiune - sunt pro*rame care executF LrealizeazF prelucrarea datelor pentru a Hndeplini funcGiile unei or*anizaGii. IatF cKteva funcGii ale or*anizaGiei Ei aplicaGiile corespunzFtoare: contabilitate (sinteticF,analiticF , marMetin* (analiza vKnzFrilor , finanGe (stabilirea bu*etului pentru investiGii , investiGii LproducGie (planificarea necesarului de materiale , *estiunea operaGiilor (controlul stocurilor , *estiunea resurselor umane (analiza avanta1elor sociale @

"plica#ii $tiin#ifice - sunt pro*rame care executF funcGiile de prelucrare a datelor Hn EtiinGele naturale, Hn fizicF, EtiinGe sociale, matematicF Ei alte sectoare de cercetare Ei experimentare EtiinGificF. "lasificFrile cele mai lar*i cuprind analiza EtiinGificF, proiectarea tehnicF Ei suprave*herea experienGelor@ "lte aplica#ii - intrF Hn aceastF cate*orie Hn *eneral aplicaGiile informatice Hn educaGie, Hn muzicF, medicinF, arte, drept etc. iar Hn particular HnvFGFmKntul asistat de calculator, 1ocurile video, informaticF muzicalF Ei desene pe calculator.

&.4 L!(-a5e *! ,!(-a5e de 0ro2ra(are


Dezvoltarea calculatoarelor electronice a dus la apariGia unor Nprobleme lin*visticeO noi, care derivF din necesitatea realizFrii dialo*ului om-calculator (prin adresarea de instrucGiuni . /imba1ele actuale de dialo*are cu calculatorul sunt inadecvate Hn raport cu mi1locul de comunicare al omului, limba1ul natural. $mul este sin*ura fiinGF capabilF sF creeze, sF manipuleze Ei sF HnGelea*F limba1e infinite, adicF limba1e care funcGioneazF pe baza unor re*uli recursive, repetabile indefinit. /imba1ul uman, Hn HnGeles lar* este atKt un limba1 articulat, cKt Ei un limba1 artificial de tipul calculului propoziGional, cu n variabile. /imba1ul propoziGional este un limba1 formal Hn HnGelesul lo*icii matematice. #ezultF cF limba1ele formale sunt limba1e umane artificiale definite cu a1utorul unui alfabet finit Ei al unei mulGimi (posibil infinite de secvenGe finite de elemente ale alfabetului (unele elemente putKndu-se repeta Hn aceiaEi secvenGF . 4u orice limba1 uman artificial este un limba1 formal. IncadrFm aici Ei limba1ele de pro*ramare. )cestea pot fi considerate limba1e de *raniGF Hntre limba1ele naturale Ei cele formale, avKnd trFsFturi preluate din ambele clase. /imba1ele de pro*ramare au fost privite la Hnceput ca limba1e artificiale formale. "rtificiale, deoarece sunt o creaGie deliberatF Ei formale, deoarece sunt un mi1loc de comunicare om - maEinF, maEina HnGele*Knd doar limba1e al*oritmice, deci formale. Tot mai multe ar*umente pledeazF Hn spri1inul ideii cF limba1ele de pro*ramare se depFrteazF Hn multe privinGe de limba1ele formale. Dintre aceste ar*umente amintim doar faptul cF semantica expresiilor unui limba1 de pro*ramare se realizeazF inte*rativ, nu aditiv (semnificaGia unei secvenGe nu se obGine Hntotdeauna prin compunerea semnificaGiilor termenilor acestei secvenGe . /imba1ul natural a devenit preocuparea centralF a cercetFrilor de inteli*enGF artificialF Ei, implicit, o problemF fundamentalF a informaticii, cu obiectivul de a fi HnGeles Ei de a fi inte*rat cKt mai mult Hntr-un automat, Hn scopul simplificFrii la maximum al dialo*ului om - calculator. L!(-a5e,e de 0ro2ra(are sunt sisteme convenGionale (limba1e artificiale create de om Ei care servesc la exprimarea sub formF de acGiuni executabile mi1locit sau nemi1locit de cFtre sistemul de calcul a al*oritmului sau lo*icii de rezolvare a unei probleme. )l*oritmul indicF modul de prelucrare a datelor iniGiale Ei modificarea lor pas cu pas pKnF la obGinerea rezultatelor finale. 4atura datelor, or*anizarea lor Ei relaGiile dintre ele trebuie precizate prin pro*ram, limba1ele de pro*ramare oferind facilitFGi corespunzFtoare de descriere. $rice pro*ramator, Hn activitatea sa este confruntat cu trei universuri: uni ersul pro%lemei ce urmeazF a fi rezolvatF cu a1utorul calculatorului@ uni ersul lim%ajului de pro*ramare Ei uni ersul calculatorului. (rin efortul pro*ramatorului, universul problemei se descrie Hn termenii limba1ului de pro*ramare Ei apoi prin intermediul unui procesor de limba1 se reflectF Hn universul calculatorului. (utem spune deci cF limba1ul de pro*ramare este intermediarul Hntre problemF Ei calculator. $rice limba1 (natural sau artificial, deci Ei un limba1 de pro*ramare presupune definirea sintaxei, semanticii Ei pra*maticii lui. Sinta&a reprezintF un set de re*uli ce *uverneazF alcFtuirea propoziGiilor dintrun limba1. In cazul limba1elor de pro*ramare echivalentul propoziGiei este pro*ramul. Definirea ri*uroasF a sintaxei, presupune folosirea unor elemente de teorie a limba1elor formale (vocabular, frazF, *ramaticF . Semantica este datF de un set de re*uli ce determinF NHnGelesulO sau semnificaGia propoziGiilor Hntr-un limba1. Pragmatica indicF utilitatea practicF a limba1ului (uEurinGa utilizFrii, independenGa de sistemul de calcul etc. 3xistF numeroase limba1e de pro*ramare fiecare posedKnd: propriul vocabular@ propria *ramatica (numai sinta&a @ propriile aplicaGii.

'oca%ularul, construit pe baza unui set de caractere(simboluri , este format din mulGimea cuvintelor care, Hn fapt, reprezintF: instrucGiuni, comenzi, funcGii, variabile, constante, expresii etc. (ramatica reprezintF ansamblul re*ulilor de formare a construcGiilor din cadrul pro*ramelor, respectKndu-se totodatF o anumitF punctuaGie care are rolul de a indica folosirea corectF a tuturor elementelor unui limba1. In le*FturF directF cu *ramatica unui limba1 se aflF metalim%ajul - instrument sintetic, sistematizat Ei simplificat de exprimare a re*ulilor *ramaticale Hn scopul elaborFrii pro*ramelor. In practicF existF Ei HncercFri de standardizare a metalimba1elor. (rima contribuGie Hn aceastF direcGie aparGine lui P. !acMus concretizatF Hn metalimba1ul !4> (!acMus 4aur >orm utilizat Hn prezentarea limba1ului )/.$/ B9 Ei extensia acestuia 3!4> (3xtended !4> . +n alt metalimba1 cu o arie lar*F de extindere este "!/ ("$!$/ - /iMe folosit Hn definirea limba1ului "$!$/. 3lementele de metalimba1 curent folosite sunt: - cu intele rezer ate - sunt scrise cu ma1uscule, sunt specifice unui limba1 si trebuie folosite exact Hn aceeaEi forma. 3x.: comenzi, clauze si funcGii Hn >ox(ro - /I0T, "#3)T3, >$#, II>( etc )* - cu intele utilizator - sunt scrise cu minuscule Ei reprezintF construcGii utilizator. 3x.: codmat, matricol, fismat etc.@ - Q R - HncadreazF construcGiile utilizator. 3x.: QnumeStabelFR, QnumeScKmpR@ - T U - HncadreazF construcGiile opGionale (pro*ramatorul decide dacF acestea vor fi sau nu folosite . 3x.: /I0T T>I3/D0 QlistFScKmpuriRU etc.@ - V W sau X - sau exclusiv - din elementele prezente se va ale*e unul sin*ur. 3x.: T$ (#I4TX T$ >I/3, $4X $>>, VRYXQZW etc.@ - [ - construcGia precedentF se poate repeta de un numFr arbitrar de ori. 3x.: QnumeScKmp?R[. "plica#iile proprii sunt componente ale limba1elor de pro*ramare constituite, cu precFdere, din utilitarele proprii, editorul de text Hncorporat precum Ei aplicaGiile proiectate cu scop demonstrativ.

1.2.1

Evoluia i clasi icarea lim!a"elor de pro#ramare

In literatura Ei practica de specialitate, limba1ele de pro*ramare sunt structurate Hn mai multe clase avKndu-se Hn vedere diverse criterii precum: facilitFGile oferite utilizatorilor, modul de elaborare Ei exprimare a procedurilor sau a problemelor de rezolvat, fluxul de execuGie a pro*ramelor Ei modul de exprimare a comunicFrii dintre ele, aria de aplicabilitate. Trebuie fFcutF de la Hnceput precizarea cF definirea claselor nu determinF *ruparea limba1elor Hn mulGimi dis1uncte, un anume limba1, Hn funcGie de caracteristicile sale putKnd face parte din una sau mai multe clase. (lecKnd de la acest aspect, cea mai folositF clasificare este cea care *rupeazF limba1ele de pro*ramare Hn cinci *eneraGii Ei care, de altfel, urmFreEte periodizarea evoluGiei arhitecturii calculatoarelor. $eneraia a 1-a cuprinde limba1ele NmaEinFO ce definesc instrucGiunile sub o formF convenGionalF recunoscutF de componentele de pro*ramare ale unui calculator. (ro*ramele scrise Hn astfel de limba1e cuprind instrucGiuni sub forma unui Ncod operaGieO Ei adrese sau referinGe convenGionale privind componentele calculatorului (maEinii .(rincipalele deficienGe ale acestor limba1e sunt le*ate de dificultFGile de corectare a pro*ramelor. $eneraia a 2-a cuprinde limba1ele Norientate spre maEinFO. (ro*ramele obGinute cu aceste limba1e se constituie dintr-o succesiune de instructiuni Hntr-o maniera similara pro*ramelor Hn limba1 maEinF. 0e re*Fsesc Hn aceastF *eneraGie: limba1ele NautocodO@ limba1ele de asamblare. +im%ajele ,autocod-. )ceste limba1e compun instrucGiunile astfel HncKt fiecare tip de instrucGiune sF corespundF unei instrucGiuni Hn limba1 maEinF. $ instrucGiune HnseamnF un cod operaGie exprimat sub o formF prescurtatF (de ex. "DD pentru adunare Ei adrese exprimate sub formF de nume simbolice (care Hn momentul NtraduceriiO vor fi convertite Hn adrese . +n set de instrucGiuni de definire (pseudo-instrucGiuni oferF anumite HnGelesuri complementare care vor servi la transformarea pro*ramului Hn limba1 maEinF (ex. lun*imea fiecFrei date . +im%ajele de asam%lare. 0unt limba1e la care cuvKntul asamblare este utilizat Hntr-un sens puGin mai lar* decKt autocodul. )ceasta HnseamnF cF include Hn propriile convenGii de scriere pe lKn*F instrucGiuni ,pseudo-instrucGiuni Ei macro-instrucGiuni care sunt echivalente nu numai cu o instrucGiune Hn limba1 maEinF ci

Ei cu o Hntrea*F secvenGF de instrucGiuni (rin asamblare sunt reunite Hntr-un pro*ram unic toate instrucGiunile descrise de una sau mai multe secGiuni de pro*ram realizate cu un limba1 de asamblare. (rincipalul avanta1 al limba1elor de asamblare este le*at de viteza de execuGie care este ridicatF. )ceste limba1e sunt preferate Hn elaborarea software-ului de sistem, chiar dacF limba1ele evoluate solicitF un efort de pro*ramare mai mic. $eneraia a %-a cuprinde limba1ele Norientate pe problemFO(limba1ele evoluate . )ceste limba1e se caracterizeazF pe de o parte printr-un mod de descriere mai uEor de HnGeles, iar pe de altF parte prin faptul cF, prin modificFri minore, se pot utiliza pe diferite calculatoare. In aceastF *eneraGie se include o mare varietate de limba1e, cele mai cunoscute Ei folosite fiind: limba1ele de utilizare EtiinGificF orientate spre descrierea al*oritmilor matematici: >$#T#)4 (>$rmula T#)4slator , )/.$/ ()l*orithmic $riented /an*ua*e , )(/ ()pplied (h,sics /aborator, @ limba1ele de *estiune orientate spre prelucrarea datelor Hnscrise Hn fiEiere: "$!$/ ("ommon !usiness $riented /an*ua*e @ *eneratoare de pro*rame .)( (.eneral )ccountin* (acMa*e , #(. (#eport (ro*ram .enerator . %ulte dintre limba1ele incluse Hn cea de a treia *eneraGie, din punctul de vedere al ariei de aplicabilitate, sunt limba1e universale: (/L? ((ro*rammin* /an*ua*e ? , ()0")/, ", )D) ()utomatic Data )c\uisition .In anumite domenii au fost create limba1e proprii pentru aplicaGii foarte specializate precum pre*Ftirea pro*ramelor de comandF numericF (ex. limba1ul )(T - )utomatic (ro*rammin* Tool .In domeniul microinformaticii se re*Fsesc limba1e specifice precum /D( (limba1 de descriere a pa*inii destinat controlului imprimantelor laser (cel mai utilizat este (ostscript sau *estionarele de date: d!)03, >ox(ro etc. $eneraia a &-a cuprinde limba1ele orientate cFtre utilizatorii finali. >olosind aceste limba1e, utilizatorii neinformaticieni, fFrF a avea o pre*Ftire specialF pot sF-Ei rezolve sin*uri propriile probleme, dialo*Knd cu calculatorul. In felul acesta se eliminF etapa de pro*ramare Ei se asi*urF o implicare Ei un interes mai mare din partea utilizatorului. (e piaGa de software, limba1ele din aceastF *eneraGie sunt diverse, acoperF domenii foarte complexe Ei sunt destinate fie utilizatorilor, fie pro*ramatorilor, fie ambelor cate*orii. 0pre deosebire de limba1ele din *eneraGia precedentF care descriu ce tre%uie s. fac. un calculator, cele din *eneraGia a A-a descriu c um s. fac. pentru a rezol a o pro%lem., fiind Hn *eneral ]conversaGionaleO. %a1oritatea specialiEtilor *rupeazF limba1ele din *eneraGia a patra Hn urmFtoarele clase de produse: limba1e (instrumente de intero*are@ *eneratoare de rapoarte@ *eneratoare de aplicaGii Ei Lsau proiecte@ *eneratoare de *rafice@ instrumente de spri1inire a deciziilor. /a ora actualF constructorii de software oferF produse care inte*reazF toate aceste funcGiuni. De exemplu, pro*ramul de calcul tabelar este un instrument de spri1inire a procesului decizional, dar care oferF Ei o vastF *amF de alte facilitFGi: obGinerea, actualizarea Ei intero*area bazelor de date, *enerarea rapoartelor, *enerarea *raficelor etc. L!(-a5e,e de !ntero2are la rKndul lor pot fi de douF tipuri: lim%aje de interogare simpl. care permit consultarea fiEierelor Ei a bazelor de date pe un sin*ur tip de Hnre*istrare lo*icF utilizKnd un criteriu de selecGie mai puGin complex@ lim%aje de interogare comple&. care permit consultarea mai multor tipuri de Hnre*istrFri lo*ice din una sau mai multe baze de date In cea de a doua sub*rupF intrF 0^/ (0tructure ^uer, /an*ua*e ^!3 (^uer, !, 3xample , Hiper TalM, Inttelect, ^uel etc. "ea mai mare rFspKndire o cunoaEte 0^/, un nucleu 0^/ fiind prezent Hn orice sistem de *estiune a bazelor de date (d!)03, "/I(3#, >ox(ro, >ocus, #)%I0, $racle . 6eneratoare,e de ra0oarte (situaGii Hndeplinesc, Hn principal, trei funcGii esenGiale: selec#ia informaGiilor solicitate, ordonarea datelor dupF criterii prestabilite Ei editarea rapoartelor Hntr-o structurF formalizatF folosind un numFr minim de instrucGiuni de pro*ramare. In *eneral, toate sistemele de *estiune a bazelor de date precum Ei pro*ramele de calcul tabelar (spreadsheet-urile au Hncorporate *eneratoare de

rapoarte. "ele mai populare instrumente din aceastF cate*orie sunt: 3as,trieve (lus, Datatrieve, %arM &.3xistF Ei *eneratoare de rapoarte care sunt proiectate pentru a fi utilizate de cFtre specialiEti ca de exemplu #(. III (#eport (ro*ram .enerator . 6eneratoare,e de a0,!+a1!! *! 7sa' 0ro!e+te se adreseazF Hn special utilizatorilor cunoscFtori ai tehnicilor de pro*ramare. 3le permit ca pe baza unor descrieri externe a datelor Ei a modului de or*anizare, prelucrare Ei afiEare a acestora sF se accelereze *enerarea (codarea pro*ramelor, folosind un limba1 specific sau chiar un limba1 de *eneraGia a <-a ("$!$/ . IntrF Hn aceastF clasF de *eneratoare: "0( ("ross 0,stem (roduct - I!% , >$"+0, %antis, 4atural, 4$%)D8, #)%I0 ?, ID3)/ %)((3# 6eneratoare,e de 2raf!+e sunt instrumente ce permit reprezentarea sub formF *raficF (histo*rame, bare, linii, cercuri etc. tridimensionale, cu opGiuni de culoare, text, le*endF , a rezultatelor prelucrFrii datelor. 3le sunt independente (Tell-al .raph, 0)0, )D#0L!B sau Hncorporate Hn spreadsheet-uri (/$T+0, ^+)TT#$, 3:"3/ sau Hn 0.!D-uri (>ox.raph . Instr'(ente,e de s0r!5!n!re a de+!.!!,or se adreseazF experGilor din diferite domenii de activitate (finanGe, mana*ement, contabilitate, marMetin* etc. pentru elaborarea Ei urmFrirea bu*etelor, analiza investiGiilor, studiul pieGei etc. permiGKnd realizarea simulFrii Ei modelFrii matematice a fenomenelor economice. IntrF Hn aceastF clasF pro*ramele de calcul tabelar (3:"3/, ^+)TT#$, /$T+0. , pachetelepro*ram statistice (0(00, 0)0 etc. . $eneraia a '-a cuprinde limba1ele care sunt sau vor fi Hndreptate spre exploatarea bazelor de cunoEtinGe, crearea sistemelor expert Ei mai *eneral spre rezolvarea problemelor le*ate de inteli*enGa artificialF(/I0(, (#$/$., (/)443#, 0malltalM . +n rol deosebit revene limba1elor pentru pro*ramarea orientata pe obiecte (0malltalM, "ZZ . +n limba1 conceput recent, specific structurilor *eneraGiei a 6-a este %)4D)/) care combinF prelucrarea cunoEtinGelor cu funcGiile unui sistem de *estiune a bazei de cunoEtinGe Ei se bazeazF pe ale*erea raGionalF Hn conexiune cu clauzele Horn. Dup. modalitatea de descriere a pro%lemei de rezol at , limba1ele pot fi *rupate Hn : limba1e procedurale@ limba1e neprocedurale. (im!a"ele procedurale descriu pas cu pas al*oritmii (succesiunile de instrucGiuni de rezolvare a unei probleme. 0e Hnscriu Hn aceastF *rupF ma1oritatea limba1elor de nivel Hnalt: !)0I", "$!$/, (/L?, >$#T#)4, ()0")/, etc. (im!a"ele neprocedurale sunt limba1e de nivel foarte Hnalt care definesc scopul urmFrit fFrF a da detalii asupra modului de rezolvare a acestuia . In aceastF *rupF pot fi incluse Ei limba1ele de pro*ramare specializate care sunt destinate a rezolva probleme din domenii relativ restrKnse. Din *rupa limba1elor neprocedurale fac parte 0malltalM, (rolo*, etc.

1.2.2 )aracteri*area principalelor lim!a"e


Din multitudinea limba1elor de pro*ramare practica a consacrat atKt limba1e de tip universal cKt Ei limba1e specializate pe domenii de activitate. In continuare, fFrF pretenGia de a fi exhaustivi, prezentFm limba1ele care s-au impus Hn domeniul economic. FORTRAN (>$#mula T#)4slation este primul limba1 EtiinGific fiind apropiat de limba1ul matematicii clasice. ) cunoscut o lar*F rFspKndire fiind implementat pe aproape toate sistemele de calcul. "ele mai utilizate versiuni sunt: >$#T#)4 I&, >$#T#)4 I& (/+0, >$#T#)4 ;; - pentru minicalculatoare, specializat pentru prelucrFri Hn timp real, >$#T#)4 59 - varianta HmbunFtFGitF cu atributele pro*ramFrii orientate pe obiect. CO#OL ("$mmon !usiness $riented /an*ua*e este un limba1 de pro*ramare evoluat din *eneraGia a-<-a destinat problemelor de *estiune Ei definit de "$D)0_/ ("onference $n Data 0,stems /an*ua*e ca reprezentant al constructorilor Ei beneficiarilor de calculatoare. 0e utilizeazF pentru exploatarea unui volum mare de date cu structuri diverse (arbori, tablouri, fiEiere etc. . "u toate acestea limba1ul "$!$/ este mai dificil de HnsuEit decKt alte limba1e, dispunKnd de multe instrucGiuni cu numeroase opGiuni fiecare. 0intaxa acestora nu este HnsF foarte complexF. )40I ()merican 4ational 0tandard Institute a standardizat Ei publicat mai multe versiuni susGinute Ei de cFtre I!%. /a ora actualF, pentru microcalculatoare, firma %icro>ocus din %area !ritanie oferF compilatoare "$!$/ care permit: dezvoltarea de aplicaGii (inclusiv cu facilitFGi *rafice pentru lucrul Hn reGea de calculatoare@ dezvoltarea de aplicaGii cross-platform destinate unei *ame lar*i de echipamente Ei sisteme de

operare@ asi*urarea portabilitFGii la nivel de pro*ram sursF.+ltima versiune de "$!$/ este orientatF pe obiecte Hntr-un mediu de dezvoltare inte*rat, scopul principal fiind prote1area investiGiilor Ei creEterea productivitFGii pro*ramFrii. )ceste facilitFGi fac din "$!$/ un software complex cu un Hnalt *rad de *eneralizare Ei care asi*urF independenGa pro*ramelor faGF de componentele hardware. #ASIC (/eginner0s "ll-purpose S1m%olic Instruction Code reprezintF unul dintre cele mai simple limba1e de pro*ramare avKnd trFsFturi comune cu limba1ul >$#T#)4. 3l dispune de un set restrKns de instrucGiuni cu o sintaxF relativ simplF Ei uEor de HnsuEit. +niversalitatea Ei simplitatea limba1ului a determinat includerea sa Hn sistemele de operare. `i acest limba1 a cunoscut diverse versiuni, cele mai rFspKndite fiind: !)0I"), .'!)0I", ^!)0I", Turbo !asic. PASCAL (nume atribuit Hn onoarea matematicianului francez !laise (ascal este un limba1 bazat pe principiile pro*ramFrii structurate, caracterizat prin simplitate, eficienGF Ei care acceptF o *amF lar*F de tipuri de structuri de date. /imba1ul a cunoscut mai multe versiuni adaptate diverselor metode de prelucrare ((ascal secvenGial, (ascal concurent, (ascal obiectual . /imba1ul (ascal a stat la baza elaborFrii de noi limba1e precum %$D+/)-?, %$D+/)-8, )D). Pascal-ul sec en#ial este un limba1 lansat Hn ?5;9 de cFtre 4iMlaus 'irth (Institutul pentru informaticF al Institutului (olitehnic din =arrich Ei care se bazeazF pe principiile pro*ramFrii structurate. )cceptF o *amF lar*F de tipuri de date (intrinseci, scalare, structurate, mai puGin cele abstracte . "ea de a doua vrsiune, Pascal-ul concurent, a fost elaboratF de cFtre (er !rinch Hansen (Institutul de Tehnolo*ie din "alifornia Ei permite definirea datelor abstracte prin mecanisme destinate descrierii proceselor concurente. (ro*ramele sunt constituite din definiGii de tip sistem cu structurF de arbore. (ascal-ul concurent a moEtenit atKt calitFGile cKt Ei defectele din (ascal-ul secvenGial. IntrucKt, la puGini ani dupF apariGia sa, s-au cristalizat concepte mai evoluate, (ascal-ul concurent nu a avut timp sF se impunF, deEi el rFmKne, dupF )D) Ei %odula-8 unul din cele mai bune limba1e Hn timp real. ADA ()utomatic Data )c\uisition Ei totodatF numele contesei de /ovelance )u*usta Ada !,ron, consideratF a fi primul pro*ramator din lume este un limba1 destinat aplicaGiilor tehnico-EtiinGifice, a celor Hn timp real Ei a pro*ramFrii concurente. /imba1ul a fost elaborat de cFtre o echipF de la Hone,well Ei "II Hone,well !ull, condusF de Pean D. Ichbiah cu scopul de a Hnlocui cele aproximativ <69 de limba1e folosite la acea datF de cFtre Departamentul apFrFrii al 0+). /imba1ul a fost standardizat Hn februarie ?57<. )D) este un limba1 complex Ei dificil de HnvFGat, dar care asi*urF claritatea Ei robusteGea pro*ramelor realizate Hntro concepGie modularF, compilare separatF, tratarea excepGiilor. /imba1ul )D) a fost influenGat, Hn mare mFsurF, de limba1ele din familia ()0")/ (3uclid, /is, %esa, %odula, 0ue Ei Hn mai micF mFsurF de )l*olB7, 0imula, )lphard, "lu. >olosit iniGial Hn domeniul militar, la ora actualF, datoritF facilitFGilor oferite, este lar* utilizat Ei Hn aplicaGiile economice. (e ansamblu, limba1ul )D) poate fi considerat nu doar un limba1 ci Nun mod de a *KndiO constituind o piatrF de hotar Hn evoluGia pro*ramFrii Hn timp real. C (numit " deoarece dezvoltF limba1ul ! elaborat de !ell /aboratories este un limba1 orientat spre asi*urarea controlului fluxurilor de instructiuni (teste, bucle, subpro*rame conducKnd la elaborarea de pro*rame compacte, bine structurate fiind aplicat de constructorii de soft-uri de bazF ("-ul a fost folosit iniGial la scrierea sistemului de operare +4I:, foarte multe din procesoarele de texte, 0.!D-urile Ei spreadsheeturilor comercializate la ora actualF fiind realizate Lscrise Hn versiuni ale acestui limba1 ."-ul preia de la limba1ele de tip ()0")/ *radul ridicat de portabilitate, iar de la limba1ele de asamblare rapiditatea Hn execuGia Ei *estionarea eficientF a memoriei. )stFzi, cele mai utilizate versiuni sunt: "ZZ, ^uicM ", &isual ". RP6 (#eport (ro*ram .enerator este un limba1 dezvoltat de cFtre firma I!% la mi1locul anilor bB9 odatF cu lansarea unei noi linii de minicalculatoare proiectate pentru afacerile mici Ei mi1locii. /imba1ul permite ca pe baza unor specificaGii ale utilizatorului, sF se *enereze codul unui pro*ram care lansat Hn execuGie va conduce la obGinerea rapidF Ei cu un cost relativ redus, a rapoartelor dorite. PL7& ((ro*rammin* /an*ua*e ? este un limba1 lansat tot de cFtre firma I!% la Hnceputul anilor bB9, HmbinKnd facilitFGile din >$#T#)4 pentru aplicaGii EtiinGifice, cu cele din "$!$/ pentru aplicaGiile economice. /a ora actualF acesta nu este foarte popular, utilizarea lui fiind limitatF datoritF faptului cF este complex Ei *reu de HnvFGat. LISP (/ist (rocessin* a fost proiectat la sfKrEitul anilor b69 pentru procesarea listelor de date, Hn special a celor nenumerice. )cest tip de procesare este specific domeniului inteli*enGei artificiale. >olosind /I0(-ul, se pot scrie pro*rame care simuleazF *Kndirea umanF Hn situaGii speciale. Descrierea prelucrFrilor se

bazeazF pe compunerea unui set de funcGii, tratKndu-se uniform toate obiectele cu care lucreazF. In ansamblul sFu /I0(-ul este un limba1 dificil de HnvFGat Ei utilizat. PROLO6 ((#$*rammin* /$.ic a fost dezvoltat la mi1locul anilor c;9 Ei este un limba1 de tip descriptiv folosit tot pentru pro*ramele de inteli*enGFartificialF. S(a,,ta,8 a fost dezvoltat la mi1locul anilor c;9 de cFtre firma :erox "orporation pentru un tip de pro*rame - pro*ramarea orientatF pe obiect care combinF mesa1e Ei instrucGiuni pentru procesarea datelor. )cest limba1 nu este *reu de HnvFGat Ei utilizat, dar reclamF schimbarea Hn Hntre*ime a modului de *Kndire a unui pro*ram.0e prevede ca Hn viitor 0malltalM, alFturi de celelalte limba1e orientate pe obiect ("ZZ, "-obiectual , sF cunoascF o dezvoltare Ei utilizare deosebitF. 9a3a a fost dezvoltat de 0un %icros,stems Ei este un limba1 orientat pe obiecte, adaptat pro*ramFrii Ei distribuirii aplicaGiilor prin Internet. )cest limba1 asi*urF comunicarea Hntre echipamente etero*ene distribuind formatul executabil al pro*ramului Hn reGea. Pava opereazF cu tipuri obiEnuite de date, dispune de instrucGiuni speciale de protecGie Ei oferF facilitFGi de pro*ramare de tip animaGie, orientate obiect etc. "odul Pava este portabil, acelaEi pro*ram putKnd fi rulat pe orice platformF care deGine acest mediu de execuGie. +n pro*ram Pava poate fi prezentat fie sub formF de aplicaGie, fie sub formF de pro*ram apelat. ) plica#ia reprezintF un pro*ram Hn sensul clasic, care se executF prin intermediul interpretorului Pava. "ea de a doua formF - applet-ul este un pro*ram Pava apelat printr-un document HT%/ Ei executat sub controlul unui navi*ator sau al unui ]applet iewerO echipat cu un interpretor Pava. $ parte din limba1ele de pro*ramare, prin diversele lor versiuni, nu pot fi Hncadrate strict Hntr-o anume *eneraGie. >iind supuse continuu perfecGionFrii, ele tind spre *eneraGia superioarF celei Hn care au fost proiectate iniGial. In tabelul nr. ?.? prezentFm comparativ principalele limba1e de pro*ramare. Tabelul nr. ?.? +im%aje de programare-genera#ii $i domenii de utilizare
/imba1ul .ene -ratia 4eporta bili tate (ortabilit ate Domenii de utilizare (ro*r. 0istem /. maEinF /. asamblare
>$#T#)4 "$!$/ !)0I" ()0")/ #(. " )D) (/L? /I0(L(#$/$. 0)%/T)/P)&)

(ro*rame aplicative 3con. `tiinGif.

)lte domenii

? 8 < < < <-A <-A <-A <-A <-A A-6 A-6 A-6

x x x x x x x x : : : : :

: : : : : : : : : : : : : : : : : : : : : : :

: : : : : : :

DupF cum se observF, ma1oritatea limba1elor prezentate acoperF domeniul aplicaGiilor economice, oferind facilitFGi Ei pentru cele EtiinGifice Ei de altF naturF.

&.: S!ste(e de 2est!'ne a -a.e,or de date


0.!D-urile reprezintF componenta software a unui sistem de baze de date care realizeazF Lasi*urF independenGa, relaGiile lo*ice Hntre date Ei o redundanGF minimF a acestora. 3le trebuie sF permitF dezvoltarea rapidF Ei la un cost avanta1os a pro*ramelor de aplicaGii pentru exploatarea datelor dintr-o structurF complexF, precum Ei accesul rapid la date Ei asi*urarea securitFGii lor. )ltfel spus 0.!D -ul este un ansamblu de pro*rame care permite utilizatorilor sF interacGioneze cu o bazF de date, conceputF de re*ula pentru volume mari de date a cFror *estiune impune nu numai o ri*uroasF structurare dar Ei o raGionalF accesare Ei prelucrare.

1.%.1 Ar+itectura sistemelor de #estiune a !a*elor de date


Teoria Ei practica 0.!D-urilor oferF diferite arhitecturi diferenGiate Hn funcGie de componentele, limba1ele utilizate Ei posibilitFGile de prelucrare a datelor, existKnd totuEi preocupFri de standardizare a acestora. In *eneral, intrF Hn arhitectura unui 0.!D cel puGin 6 clase de module: pro*ramele de *estiune a bazelor de date ((.!D @ limba1ul de definire Ldescriere a datelor (/DD @ limba1ul de manipulare a datelor (/%D @ utilitarele de HntreGinere a bazei de date@ componentele de control a pro*ramelor de aplicaGii. 0chematic structura unui 0.!D poate fi prezentatF ca Hn fi*ura ?.8.
, d m i n i s tr a to r u l $ % S tr u c tu r a $ % ti l i z a to r i P ro g ram e d e a p l i c a i i

+ % % P G $ %

+ M %

t. " n tr e i n e r e

C o m p . c o n tr o l S G $ %

$ aza de d a te

>i*. nr.?.8. Structura general. a unui S(/D Pro2ra(e,e de 2est!'ne a -a.e,or de date ;P6#D< )ceastF clasF de module realizeazF accesul fizic la date ca urmare a unei comenzi primite printr-un pro*ram de aplicaGii sau interactiv prin intermediul ecranului. L!(-a5', de des+r!ere a date,or ;LDD< 3ste componenta care permite traducerea (compilare sau interpretare, dupF caz Ei descrierea naturii datelor Ei a le*Fturilor lor lo*ice, fie la nivelul *lobal (sub forma sc2emei conceptuale , fie la nivelul specific fiecFrei aplicaGii (sub forma sc2emei e&terne sau su%-sc2emei . 3xecuGia acestor definiGii LenunGuri se memoreazF Hntr-un fiEier special numit Dic#ionarul de date) L!(-a5', de (an!0',are a date,or ;LMD< )ceastF componentF permite *estionarea Ei actualizarea datelor dintr-o bazF (scrierea unor noi date, modificarea valorii unor date, Eter*erea unor date perimate sau eronate . "omenzile unui /%D depind de 0.!D-ul utilizat (cu limba1 *azdF sau 0.!D autonome . In 0.!D-urile cu limba1 *azdF enunGurile /%D trebuie incluse Hntr-un pro*ram scris cu un limba1 *azdF: (/L?, )003%!/3#, " etc.In 0.!D-urile autonome se dispune de un /%D la care se ataEeazF un limba1 de intero*are. )ceste sisteme se limiteazF la tratarea datelor plasate Hn bazF. $rice altF prelucrare ulterioarF, Hn *eneral, nu poate fi prevFzutF. Ut!,!tare de =ntre1!nere a -a.e! de date +n 0.!D trebuie sF ofere o *amF variatF de pro*rame utilitare care sF permitF *estionarea de cFtre operator a bazei de date. +tilitarele variazF de la un sistem la altul Ei depind de complexitatea 0.!D-ului. )cestea pot efectua urmFtoarele operaGii:crearea versiunii iniGiale a bazei de date Ei HncFrcarea acesteia folosindu-se fie o copie creatF anterior, fie date neor*anizate@crearea Ei actualizarea 1urnalelor tranzacGiilor realizate asupra bazelor de date. reor*anizarea bazei de date pentru recuperarea spaGiului vid@reor*anizarea structurii fizice Ei lo*ice dupF fiecare tranzacGie@restructurarea bazei de date dupF un incident lo*ic sau fizic, cu refacerea stFrii anterioare@ diverse

statistici ce permit cunoaEterea activitFGii Ei utilizFrii bazei de date@actualizarea schemei Ei sub-schemei fFrF rescrierea Ei compilarea lor@detectarea NspFr*FtorilorO re*ulilor de inte*ritate definite, fFrF a fi necesarF intrarea Hn baza de date@ realizarea unei copii permanente a bazei de date Hn scopuri de securitate. Co(0onente,e de +ontro, )cestea constituie mi1loace de prevenire Ei corectare a anumitor erori ce pot sF aparF Hn condiGii de exploatare Nmulti-utilizatorO.

1.%.2 O!iectivele i unciile unui ,$-.


0uccesul 0.!D-urilor este susGinut prin realizarea urmFtoarelor obiective: asigurarea independen#ei datelor) IndependenGa datelor poate fi definitF drept NimunitateaO pro*ramelor de aplicaGii la schimbarea structurii de memorare Ei Lsau a strate*iei de acces. IndependenGa datelor trebuie urmFritF atKt la nivel fizic cKt Ei la nivel lo*ic. Independen#a fizic. asi*urF modificarea datelor Ei a tehnicilor fizice de memorare, fFrF rescrierea pro*ramelor de aplicaGii. independen#a logic. oferF posibilitatea adFu*Frii de noi articole sau extinderea structurii *lobale fFrF a necesita rescrierea pro*ramelor@ asigurarea integrit.#ii datelor prin existenGa unor proceduri de validare sau a unor protocoale de control concurent, precum Ei a unor proceduri de refacere a bazei de date dupF incidente@ asigurarea unei redundan#e minime $i controlate a datelor prin definirea unui element de structurF, cu o cantitate cKt mai micF de date, evitKndu-se Hn acelaEi timp ambi*uitatea@ asigurarea unor facilit.#i sporite de utilizare a datelor prin: folosirea datelor de cFtre mai mulGi utilizatori Hn diverse aplicaGii, accesul simplu Ei multicriterial al utilizatorilor la date, fFrF a fi necesarF cunoaEterea structurii Hntre*ii baze de date@ existenGa unor limba1e performante de intero*are etc.@ asigurarea partaj.rii datelor3 adicF asi*urarea accesului mai multor utilizatori la aceleaEi date pe baza unor criterii de prioritate Ei dezvoltarea unor aplicaGii fFrF a se modifica structura bazei de date@ asigurarea securit.#ii datelor prin intermediul unor canale corespunzFtoare Ei definirea unor restricGii de autorizare la accesarea datelor. (lecKnd de la aceste obiective, rezultF cF orice 0.!D trebuie sF HndeplineascF urmFtoarele funcGii: de descriere3 de manipulare3 de utilizare) F'n+1!a de des+r!ere permite definirea structurii bazei cu a1utorul limba1ului special /DD, stabilind criterii de validare a datelor, metode de acces la date Ei de asi*urare a confidenGialitFGii Ei inte*ritFGii datelor. Toate aceste elemente se re*Fsesc Hn ceea ce se numeEte sc2ema %azei de date. 3xecuGia definiGiilor limba1ului se materializeazF Hntr-un ansamblu de tabele, memorate Hntr-un fiEier special denumit dicGionar de date (repertoar de date . F'n+1!a de (an!0',are asi*urF prin intermediul limba1ului special /%D derularea urmFtoarelor activitFGi: HncFrcarea bazei de date, adFu*area de noi Hnre*istrFri, Eter*erea unor Hnre*istrFri, editarea totalF sau parGialF a unor Hnre*istrFri, ordonarea Hnre*istrFrilor, cFutarea lo*icF sau fizicF a Hnre*istrFrilor etc. F'n+1!a de 't!,!.are permite comunicarea Hntre utilizatori Ei baza de date prin intermediul unor interfeGe care Hi avanta1eazF pe primii. In felul acesta se creeazF un mediu favorabil utilizatorului care la ora actualF beneficiazF de prelucrarea Hn timp real, arhitecturile client-server, servicii Internet etc. In cadrul realizFrii acestei funcGii interacGioneazF diverEi utilizatori, literatura de specialitate oferind mai multe clasificFri sau *rupFri. Dintre acestea am selectat pentru prezentarea Hn continuare doar a cKtorva astfel de *rupFri. #aportul )40IL0()#" ?5;6 prezintF trei cate*orii de utilizatori (roluri umane ce definesc schemele dintr-o arhitecturF de sistem bazat pe 0.!D:. - persoana sau grupul de persoane care define$te sc2ema conceptual. a bazei de date. )ceastF schemF furnizeazF o viziune pe termen lun* Ei este baza pentru declaraGiile de securitate-inte*ritate Ei standardizare impuse celorlalte tipuri de utilizatori@ - administratorul %azei de date care are responsabilitatea definirii schemei interne a bazei de date Ei a HntreGinerii acesteia. In acelaEi raport sunt prezentate trei cate*orii de administratori: administratorul Hntreprinderii care asi*urF *estionarea *lobalF a aplicaGiilor curente Ei identificarea celor viitoare@administratorul aplicaGiilor care are rolul de a dezvolta schemele externe (sub-schemele pentru

aplicaGiile utilizator@administratorul de date care opereazF la nivelul schemei de date precizKnd necesarul Ei disponibilitatea datelor@ - programatorii de aplica#ii $i utilizatorii finali care comunicF cu 0.!D-ul prin intermediul limba1ului de manipulare sau a limba1ului de intero*are.

1.%.% Evoluia i clasi icarea ,$-.-urilor


(erfecGionare 0.!D-urilor a avut loc paralel cu evoluGia echipamentelor de cule*ere, memorare, transmitere Ei prelucrare a datelor, pe de o parte, Ei cu evoluGia metodelor Ei tehnicilor de or*anizare a datelor, pe de altF parte.

1.%.%.1 Evoluia ,$-.-urilor


/iteratura Ei practica de specialitate oferF o diversitate mare de sisteme de *estiune a bazelor de date, care sintetic pot fi prezentate Hn trei *eneraGii. Pr!(a 2enera1!e este situatF Hn timp, la sfKrEitul anilor dB9 Ei Hnceputul anilor c;9 Ei include modelul ierarhic Ei modelul reGea de or*anizare a datelor Hn baze de date. Modelul ierar+ic are o structurF de tip arborescent, le*atF puternic de principiile de descriere a datelor specifice limba1elor din *eneraGia corespunzFtoare.>iecare nivel de date este constituit din una sau mai multe *rupe de date care se pot Ei ele descompune la rKndul lor. IntrF Hn aceastF *eneraGie de 0.!D-uri: I%0 (Information %ana*ent 0,stem- fi*. nr.8.?5 , D/ L? (Data /an*ua*e L? 3D%0 (3xtended Data %ana*ement 0,stems etc. Modelul reea HncearcF sF HnlFture lipsurile modelului precedent, propunKnd o structurF de date mai bo*atF pe baza le*Fturilor posibile Ei conducKnd la construirea unei reGele Hntre acestea. 0pecificaGiile "$D)0_/ au permis obGinerea de sisteme relativ NnormalizateO. IntrF Hn aceastF cate*orie: ID%0 (Inte*rated Data d!ase %ana*ement 0,stems- fi*ura nr.8.89 , ID0 II (Inte*rated Data 0tore 0$"#)T3"/I$, T$T)/ etc. 6enera1!a a do'a situatF Hn timp la sfKrEitul anilor c79 Ei Hnceputul anilor c59 cuprinde Hn principal modelele relaGionale. 0tructura datelor este formatF dintr-un ansamblu de relaGii sau tabele fFrF le*Fturi fizice Hntre ele. )propierea dintre date este obGinutF prin utilizarea unei Nal*ebreO Hntre tabele considerate ca operanzi. IntrF Hn aceastF *eneraGie D! 8, $#)"/3, I4.#30, 0_!)03, ()#)D$:, I4>$#%I:, >$:(#$ etc. 6enera1!a a tre!a apFrutF la Hnceputul anilor c59. )ceste sisteme se bazeazF pe principii mult mai complexe decKt precedentele Ei vor trebuie sF permitF *estionarea unor informaGii foarte variate. 0e pot Hncadra Hn aceastF *eneraGie A subclase de 0.!D: orientate, funcGionale, deductive Ei multimedia. Sistemele orientate o%iect permit descrierea elementelor unei baze utilizKnd conceptele abordFrii obiectuale care Gine seama de aspectele statice Ei dinamice ale obiectelor. )ceastF abordare se caracterizeazF, Hn principal, pe operaGia de 4ncapsulare, adicF pe reunirea Hn aceeaEi unitate a caracteristicilor statice Ei dinamice ale obiectelor de *estionat. In plus, este posibilF reutilizarea obiectelor de1a definite. )ceastF caracteristicF reduce considerabil pro*ramarea NdefensivFO datoritF descrierii intrinseci fFcutF obiectelor. $biectele definite Hn bazF au capacitatea de a transmite descendenGilor, ansamblul caracteristicilor lor prin NmoEtenireO. Din aceastF cate*orie, la ora actualF, pe piaGF existF produsele: .em0tone, $b1ect0tore, $ntos, #aima $b1ect %ana*er, &ersant, 0,base etc. Sistemele func#ionale au la bazF noGiunile de entitate Ei funcGie Ei au fost introduse Hn ?5;5 de 0hipman. (entru fiecare entitate (obiect de un anumit tip existF o colecGie de funcGii care sunt aplicate acelui obiect, definind atributele obiectului Ei exprimKnd asocierile dintre entitFGi. %odelul funcGional devine operaGional prin intermediul 0.!D-urilor funcGionale care oferF mecanisme Ei instrumente de descriere Ei manipulare a datelor prin intermediul limba1elor funcGionale. Sistemele deducti e utilizeazF re*uli de inferenGF pentru a exprima situaGii bine sau mai puGin bine definite din mediul unei or*anizaGii. 3le permit sF li se rFspundF cererilor care comportF exprimarea Hntr-o lo*icF mai mult sau mai puGin va*F. In *eneral astfel de baze de date sunt cuplate cu sistemele expert sau cu un nivel din baza re*ulilor scrise Hn (#$/$., /I0(, sau Hntr-un alt limba1 de inteli*enGF artificialF. Sistemele multimedia permit stocarea Ei administrarea altor informaGii decKt cele clasice precum: ima*ini, foto*rafii, muzicF, voci etc. 0istemele din aceastF cate*orie, care se comercializeazF de1a, permit

or*anizarea de Nbirouri fFrF hKrtieO, propunKnd *estiunea diferitelor documente (imprimate pe discul optic cu proceduri de Hnre*istrare prin scanare precum Ei prin proceduri de consultare Ei manipulare. #ezultF cF preocupFrile proiectanGilor de 0.!D sunt concentrate spre construirea bazelor de date pe modele obiectuale, deductive Ei multimedia, fiind propuse mai multe soluGii de combinare Ei extindere a modelelor prezentate: Hn*lobarea Hn 0.!D-urile relaGionale a elementelor ce definesc tehnolo*ia actualF, persistenGa obiectelor prin extinderea actualelor sisteme obiectuale, inte*rarea tehnolo*iei semantice Ei obiectuale etc.

1.%.%.2 )lasi icarea ,$-.-urilor


)bordarea sistemicF a problematicii referitoare la 0.!D-uri presupune Ei clasificarea acestora, mai cu seamF cF literatura de specialitate prezintF un numFr deosebit de mare de astfel de soft-uri. 3xistF mai multe clase de 0.!D privite din diverse puncte de vedere: modelul de or*anizare folosit (ierarhice, reGea, relaGionale, obiect etc. , distribuirea resurselor (inte*rate Ei distribuite teritorial , destinaGie (publice Ei private , tehnica de prelucrare (pe loturi, interactive, mixte . 4e oprim, Hn continuare, doar asupra cKtorva astfel de criterii de clasificare. D'0/ s!ste(', de +a,+', pe care se implementeazF 0.!D-urile pot fi: pentru mainframe-uri: #% (#elation %emor, #D%0 (#elational Data %ana*ement 0,stem , #, (#T&, $racle, D!8 ,I%0@ pentru minicalculatoare: (/)430 ((ro*rammed /an*ua*e !ased 3n\uir, 0,stem , #)4D3=&$+0, I4.#30 (Interactive .raphics and #etrieval 0,stem , 0$"#)T3-mini, )#.+0, /3D), $racle@ pentru microcalculatore: x!ase, Double Helix II, $mnis III, d!ase, %ac, &isual!ase, &isual >ox(ro, ()#)D$:, "/I(3#, )""300, $racle etc. /a ora actualF tendinGa este de *eneralizare Ei standardizare a 0.!D-urilor conferindu-li-se atributul de Ncross platformaO pentru a putea fi rulate pe cKt mai multe medii de operare (D$0, 'I4D$'0, %)", +4I:, /inux, $0L8 etc . >n f'n+1!e de ,!(-a5', 0e +are), 't!,!.ea./ existF douF clase de 0.!D-uri: cu lim%aj gazd.: asi*urF crearea, actualizarea Ei intero*area bazei de date utilizKnd limba1e de nivel Hnalt propriu sistemului de calcul pe care se implementeazF baza de date. (rezintF avanta1ul exploatFrii facilitFGilor limba1ului de nivel Hnalt Ei dezavanta1ul complexitFGii formulFrii cererilor de prelucrare@ cu lim%aj autonom5propriu6: folosesc limba1e speciale care sunt independente de limba1ul *azdF Ei chiar faGF de sistemul de calcul ceea ce asi*urF un *rad ridicat de portabilitate.)vanta1ul acestor 0.!D concretizat Hn lar*a lor utilizare, Hl reprezintF simplitatea formulFrii cerinGelor. >n f'n+1!e de or2an!.area *! str'+t'rarea date,or 0e +are ,e 2est!onea./ 0.!D -urile sunt: ierar2ice $i re#ea: I%0, 0_08999, ID%0, "$!#) (ierarhice @ ID0, D%0, 0$"#)T3, D!T."$D)0_/ (reGea @ rela#ionale: #D%0, #%, 0_0T3%#, :!)03,&isual >ox(ro etc.@ o%iectuale: %)4I>30T$, (ost*res, $rion,Pasmin, #aima, $ntos etc@ o%iectual -rela#ionale7 $racle, &isual >ox(ro,)ccess,Informix etc D!n 0'n+t de 3edere a (od','! de ,o+a,!.are a -a.e,or de date 0.!D -urile sunt: centralizate care presupun ca datele sF fie concentrate Hntr-un sin*ur loc pe un server, ca sursF unicF de informare EiLsau raportare(&isual>ox(ro,)ccess etc @ distri%uite care presupun ca datele sF fie repartizate *eo*rafic Hn mai multe puncte Hn funcGie de locul lor de producere, cu posibilitatea accesFrii datelor din orice punct definit($racle,D!8,Informix . /a ora actualF datoritF proliferFrii prelucrFrilor Hn reGea de calculatoare tot mai multe 0.!D-uri dispun de o componentF de *estiune distribuitF a datelor.

&.? Tend!n1e =n !nstr'(ente,e software


"onstructorii de software au lansat pe piaGF o serie de produse specializate Hn *enerarea de rapoarte, *rafice, dia*rame, simulFri de procese. IntrF Hn aceastF cate*orie limba1ele din *eneraGia a A-a, instrumentele de tip ")03, instrumente de pro*ramare vizualF, instrumente de pro*ramare extreme, instrumente pentru accesul la date ale utilizatorilor finali, pachete inte*rate de aplicaGii, instrumente de testare etc. Instrumentele de tip C"S8 ("omputer )ided 0oftware 3n*innerin* reprezintF un set de pro*rame specializat Hn in*ineria pro*ramFrii asistatF de calculator. )ceste instrumente software a1utF la crearea de pro*rame mai sofisticate care automatizeazF diferitele aspecte ale procesului de dezvoltare a pro*ramelor. IniGial, proiectanGii au avut ca obiectiv automatizarea completF a Hntre*ului proces de dezvoltare a pro*ramelor, Hn practicF reuEindu-se doar creEterea eficienGei pro*ramatorilor Hn realizarea unor sisteme mari Ei complicate. (rodusele ")03 sunt de douF tipuri: -!9ON:-8ND - destinate automatizFrii activitFGii de analizF Ei proiectare, conducKnd la obGinerea de dia*rame, biblioteci de date, formulare de ecran etc. -/"C;-8ND - destinate *enerFrii automate a pro*ramelor Hntr-un limba1 foarte Hnalt, "$!$/, )D), limba1ele din *eneraGia a A-a. ) apFrut Ei C"S8-ul integrat, o combinaGie a primelor douF care are ca mecanism de inte*rare, un dicGionar de date extins, numit bibliotecF centralF cu rolul de pFstrare, administrare Ei utilizare parta1atF a informaGiilor. (rodusele ")03 asi*urF o *amF variatF de activitFGi dintre amintim: Hntocmirea Ei listarea dia*ramelor folosind .eneratoarele de machete Ei dia*rame@ proiectarea machetelor de ecran Ei a rapoartelor folosind .eneratoarele de formate, de ecran Ei de rapoarte@ schimbul de informaGii Hntre depozitul central Ei celelalte instrumente de dezvoltare prin intermediul componentelor de import Lexport@ verificarea Ei analiza specificaGiilor aplicaGiilor prin (ro*ramele de analizF@ scrierea automatF a pro*ramelor pe baza specificaGiilor prin .eneratoare de cod@ redocumentarea, restructurarea, redezvoltarea sistemelor de1a implementate prin pro*rame de HntreGinere Ei dezvoltare. /a ora actualF cele mai populare instrumente ")03 sunt urmFtoarele: -3as, ")03, realizat de 3ver*reen ")03 Tools@ -3rwin LD!> 3rwin L3#: produse de /o*ic 'orMs@ -0ilver#un de la "omputer 0,stem )dvisors@ -Info%odeler de la )s,metrix@ -$#)"/3e")03 de la $#)"/3. Toate aceste instrumente au rolul de spri1inire a proiectanGilor de sistem Hn modelarea datelor prin crearea de diverse *rafice Ei dia*rame. De exemplu 0ilver#un oferF module care creeazF dia*rame de flux de date (D>D - data-flow dia*rams , dia*rame ale relaGiilor dintre entitFGi (3#D - entit,-relationship dia*rams Ei scheme ale bazelor de date relaGionale. Instrumentele ")03 capFtF un plus de valoare dacF sunt corelate cu alte instrumente de dezvoltare. De exemplu Sil er9un poate *enera Lconstrui instrucGiuni 0^/ "#3)T3 pentru definirea tabelelor incluzKnd declanEatoare Ltri**ers (proceduri stocate Hn baza de date ce se executF automat la apariGia anumitor condiGii , pentru cele mai populare sisteme #D!%0 (sisteme de *estiune a bazelor de date relaGionale , incluzKnd D!8, 0,base 0^/ 0erver Ei $#)"/3. Instrumentele de programare izual. sunt instrumente ce permit unui pro*ramator sF realizeze rapid un pro*ram de interfaGF cu utilizatorul asamblKnd diferite elemente de ecran cum ar fi butoane, casete de text, meniuri E. a. m. d. (numite controale Hn formF necompletatF Ei apoi completarea acestora cu detaliile de procesare asociate fiecFrui control. Dintre cele mai cunoscute instrumente din aceastF cate*orie ce dispun de funcGii avansate amintim: -&isual !asic (&! Ei &isual !asic (rofessional (%icrosoft @ -(ower !uilder 3nterprise ((owersoft @

-0^/'indows "orporate 3dition (.upta @ -&isual)*e Team for $0 L8 (I!% @ -Delphi (!orland . Instrumente de programare e&treme sunt destinate realizFrii pro*ramelor client Lserver mai flexibile Ei mai eficiente prin folosirea facilitFGilor oferite de limba1e clasice ("obol, ", "ZZ Ei 0^/ atunci cKnd mediile de pro*ramare vizualF nu satisfac cerinGele utilizatorilor. (entru a rFspunde acestor obiective constructorii de soft ataEeazF biblioteci de clase (de ex. pentru "ZZ, %icrosoft include o bibliotecF numitF %icrosoft >undation "lass - %>", iar !orland o bibliotecF similarF numitF $b1ect 'indows /ibrar, - $'/ . (e de altF parte folosirea acestor instrumente necesitF mai multe cunoEtinGe de pro*ramare Ei detalii referitoare la accesul la reGea. Instrumentele pentru accesul la date ale utilizatorilor finali asi*urF colectarea Ei afiEarea datelor Hn sistemele client Lserver. (rincipalele instrumente din aceastF cate*orie sunt: ->orest f Trees (Trinzic care iniGializeazF un tablou de bord folosit pentru colectarea Ei analiza datelor provenite din surse variate@ -"r,stal #eports (rofessional ("r,stal 0ervice care este un constructor de rapoarte pentru mediul 'indows Ei care poate accesa date 0^/ 0erver, 0,base Ei $#)"/3@ -^Z3 Database 3ditor care este un instrument de intero*are ad-hoc folosit pentru *enerarea rezultatelor Ei a intero*Frilor din surse diferite (acest instrument este Hnlocuit Hn ultimele versiuni 3xcel cu %icrosoft ^uer, @ -^uest (.upta care asi*urF accesul la baze de date 0^/ pentru construirea intero*Frilor sau rapoartelor. Pac2ete integrate de aplica#ii sunt colecGii inte*rate de pro*rame cu funcGii complete ce includ de obicei un procesor de text, un pro*ram de calcul tabelar, un sistem de *estiune a bazelor de date, un pro*ram de prezentare *raficF Ei eventual module pentru exploatarea reGelei Internet. /a ora actualF piaGa de pachete inte*rate de aplicaGii este dominatF de %icrosoft $ffice (rofessional (%icrosoft , (erfect $ffice (4ovell , 0mart0uite (/otus . In tabelul nr. 8.8 sunt prezente componentele acestor pachete. Tabelul nr. ?.8 (achete inte*rate de aplicaGii
(achet L"omponenta (rocesor de texte (ro*ram de calcul tabelat (ro*ram pentru prezentFri *rafice 0.!D (oEtF electronicF )dministrator de informaGii personale M!+rosoft Off!+e Profess!ona, 'ord 3xcel (ower(oint )ccess %ail 4ici unul No3e,, Perfe+t Off!+e 'ord (erfect ^uattro (ro (resentations (aradox .roupwise Info"entral Lot's S(artS'!te )mi(ro ?8< >reelance .raphics )pproch 4ici unul $r*anizer

Instrumentele de testare sunt folosite Hn pro*ramele cu *rad mare de complexitate, acolo unde modificFrile Hn sistem sunt frecvente Ei impun testFri repetate (numite testFri re*resive @ Hn practicF au fost create instrumente soft care simplificF testarea re*resivF precum: -)utomated Testin* >acilit, - )T> (0oftbrid*e @ -0^) Team Test (0oftware ^ualit, )ssurance - 0^) @ -%icrosoft Test (%icrosoft . >iecare din aceste pachete inte*rate oferF posibilitatea creFrii de aplicaGii personalizate inte*rKnd funcGii cu a1utorul lui $/38 Ei facilitKnd pro*ramarea componentelor individuale.

&. Cr!ter!! de a,e2ere a ,!(-a5e,or de 0ro2ra(are *! a S6#D)'r!,or.


/a ale*erea unui limba1 de pro*ramare sau a unui 0.!D trebuie avute Hn vedere o serie de aspecte care sF asi*ure eficienGF, si*uranGF Ei flexibilitate Hn rezolvarea aplicaGiilor utilizator. "riteriile care stau la baza opGiunii de ale*ere a limba1ului privesc urmFtorii factori: tipul problemei ce urmeazF a fi rezolvatF Ei cunoEtinGele utilizatorul (mFsura Hn care limba1ul de pro*ramare sau 0.!D-ul este convenabil atKt la clasa de probleme cKt Ei pentru utilizator @ tipul echipamentelor disponibile utilizatorului@ *radul de dependenGF faGF de echipamentul folosit Ei sistemul de operare@ evaluarea rezultatelor obGinute prin folosirea anterioarF de cFtre alGi utilizatori@ eficienGa scontatF prin exploatare @ caracteristicile tehnice Ei funcGionale *enerale@ cerinGele de ordin economic. :ipul pro%lemei ce urmeaz. a fi rezol at. $i cuno$tin#ele utilizatorul) )cest criteriu are Hn vedere selectarea acelui limba1 care sF rFspundF cel mai bine tipului Ltipurilor de aplicaGii utilizator, sF asi*ure concomitent uEurinGF Hn utilizare, un timp minim pentru prelucrarea datelor, confidenGialitatea Ei securitatea acestora. :ipul ec2ipamentelor 2ardware disponi%ile utilizatorului) Inaintea ale*erii limba1ului trebuie efectuatF o analizF a resurselor fizice existente Ei a celor care urmeazF sF fie achiziGionate. )ceastF analizF trebuie sF stabileascF dacF sunt asi*urate resursele minime pentru dezvoltarea Ei exploatarea aplicaGiilor. In felul acesta se urmFreEte utilizarea eficientF a limba1ului pe echipamentele din dotare. (radul de dependen#. fa#. de ec2ipamentul folosit $i sistemul de operare) "onform acestui criteriu trebuie ales un limba1 de pro*ramare care sF poatF fi folosit fFrF probleme sub sistemul de operare sub care lucreazF echipamentele din dotare. In plus, trebuie asi*uratF portabilitatea pro*ramelor Hn cazul Hn care se vor achiziGiona noi resurse informatice. Trebuie asi*uratF creEterea *radului de portabilitate cel puGin la nivel de pro*ram sursF. 8 aluarea rezultatelor o%#inute prin folosirea anterioar. de c.tre al#i utilizatori) )cest criteriu cere realizarea unei documentFri prealabile privind problemele cu care s-au confruntat alGi utilizatori ai limba1ului ( existenGa LinexistenGa unei documentaGii de HnvFGare Ei utilizare, posibilitFGile LfacilitFGile de rezolvare a problemelor practice etc. . 8ficien#a scontat. prin e&ploatare . )ceastF eficienGF implicF stabilirea parametrilor de exploatare pe fiecare etapF de realizare a pro*ramelor Lproduselor-pro*ram (scriere, testare, implementare, utilizare . 0e are Hn vedere atKt eficienGa execuGiei pro*ramului, mai ales la pro*ramele des utilizate cKt Ei eficienGa *lobalF care ia Hn considerare toate fazele de elaborare Ei utilizare (scriere, testare, exploatare Ei HntreGinere . In acest context performanGa limba1ului poate deveni o problemF mai puGin importantF. Caracteristicile te2nice $i func#ionale generale . )le*erea unui limba1 trebuie sF GinF seama Ei de *radul de standardizare a acestuia, Etiut fiind cF, Hn *eneral, la standardizarea unui produs informatic se au Hn vedere parametrii ce privesc simplitatea Hn exploatare, *eneralitatea Hn aplicare, naturaleGea, consistenGa Ei conciziunea Hn exprimare. Cerin#ele de ordin economic. )ceste cerinGe Gin seama de resursele financiare de care dispune utilizatorul , resurse care trebuie sF acopere atKt achiziGionarea Ei exploatarea propriu-zisF a limba1ului, cKt Ei or*anizarea Ei pre*Ftirea prealabilF a personalului. )vKnd Hn vedere cele de mai sus rezultF cF ale*erea unui limba1 este o decizie care trebuie susGinutF printr-o serie de analize de ordin tehnic, funcGional Ei economic.