|
Politica de confidentialitate |
|
• domnisoara hus • legume • istoria unui galban • metanol • recapitulare • profitul • caract • comentariu liric • radiolocatia • praslea cel voinic si merele da aur | |
Un sistem reprezinta un ansamblu de elemente (componente) interdependente intre care se stabileste o interactiune dinamica, pe baza unor reguli prestabilite, cu scopul atingerii unui anumit obiectiv [4]. Conform teoriei sistemelor orice organism economic este un sistem.
Organizatie - o intreprindere, institutie, societate comerciala.
In orice organizatie se disting 3 componente:
sistemul de conducere sau de decizie;
sistemul informational;
sistemul operational.
Sistemul informational cuprinde ansamblul informatiilor interne si externe utilizate in cadrul organizatiei precum si datele care au stat la baza obtinerii lor, procedurile si tehnicile de obtinere a informatiilor (plecand de la datele primare) si de difuzare a informatiilor, precum si personalul implicat in culegerea, transmiterea, stocarea si prelucrarea datelor.
Sistemul informational are doua componente:
componenta pentru stocarea (memorarea informatiilor);
componenta pentru prelucrarea informatiilor.
Orice organizatie interactioneaza cu alte organizatii externe ei primind informatii din exterior si furnizand informatii catre lumea exterioara.
Functiile unui sistem informational sunt:
sa colecteze informatii din sistemele operational si decizional precum si informatiile ce provin din mediul extern;
sa memoreze aceste informatii precum si informatii rezultate din prelucrarea lor;
sa asigure accesul la memorie in vederea comunicarii informatiilor stocate;
sa prelucreze informatiile la cererea sistemului operational si a sistemului de conducere.
Notiunea de sistem informatic este legata de informatizarea activitatii organizatiei, deci folosirea echipamentelor hardware si a produselor software pentru organizarea si administrarea informatiilor. Utilizarea calculatoarelor in cadrul sistemului informational (SI) al unei organizatii conduce la definirea componentei Sistem Informational Automatizat (SIA) - care cuprinde numai lucrarile realizate cu ajutorul calculatoarelor. Relatia SI - SIA este reprezentata in figura 1.1.
Sistem informatizat Procesor de informatii Informatie Reguli
Fig. 1.1. Relatia SI - SIA (Sursa: [10])
Definitie.
Un sistem informatic este un sistem utilizator-calculator integrat, care furnizeaza informatii pentru a sprijini activitatile de la nivel operational si activitatile de management intr-o organizatie, utilizand echipamente hardware si produse software, proceduri manuale, o baza de date si modele matematice pentru analiza, planificare, control si luarea deciziilor [10].
Elaborarea sistemelor informatice impune modelarea sistemului informational al organizatiei cu ajutorul unui formalism prin care sa poata fi reprezentata cat mai sugestiv si fidel realitatea din cadrul sistemului informational.
Sistemele informatice complexe pot fi descompuse in subsisteme, care la randul lor pot fi descompuse in aplicatii destinate unor categorii de utilizatori, aplicatii care la randul lor pot fi constituite din unul sau mai multe programe scrise in diverse limbaje de programare dupa cum este ilustrat in figura 1.2.
Fig.1.2. Sistem informatic, subsisteme, aplicatii, programe
Pentru organizatii de complexitate mica, informatizarea poate insemna realizarea unei singure aplicatii informatice referita de asemenea ca sistem informatic.
Sistemele, subsistemele si aplicatiile informatice sunt produse informatice numite si produse software.
Un produs informatic este constituit din programe care acceseaza baza de date si din documentatia necesara pentru utilizarea si intretinerea programelor. Acestea se realizeaza in baza unor metodologii si necesita parcurgerea unor etape incepand cu specificarea cerintelor si terminand cu implementarea, exploatarea si intretinerea lor.
Sistemul informatic economic este un ansamblu structurat de elemente intercorelate functional pentru automatizarea procesului de obtinere a informatiilor si pentru fundamentarea deciziilor. Sistemul informatic este inclus in sfera sistemului informational atata vreme cat in cadrul sistemului informational vor exista o serie de activitati care nu vor putea fi automatizate [2].
Un sistem informatic este compus din [2]:
baza informationala;
baza tehnica;
sistemul de programe;
baza stiintifica si metodologica;
factorul uman (resursele umane);
cadrul organizatoric.
Baza informationala cuprinde:
datele supuse prelucrarii;
fluxurile informationale;
sistemele si nomenclatoarele de coduri.
Baza tehnica este constituita din totalitatea mijloacelor tehnice de culegere, transmitere, stocare si prelucrare a datelor, locul central revenind calculatoarelor electronice.
Sistemul de programe cuprinde totalitatea programelor utilizate pentru functionarea sistemului informatic in concordanta cu functiunile si obiectivele stabilite. Sunt avute in vedere atat programele de baza (software de baza) cat si programele aplicative (software de aplicatie).
Baza stiintifica si metodologica este constituita din:
algoritmi;
formule;
modele;
tehnici de realizare a sistemelor informatice.
Resursele umane constau din:
personalul de specialitate: analisti, programatori, ingineri de sistem, analisti-programatori ajutori, operatori, etc.;
beneficiarii sistemului.
Cadrul organizatoric este cel specificat in regulamentul de organizare si functionare (ROF) al unitatii in care va fi utilizat sistemul informatic.
La realizarea si utilizarea unui sistem informatic trebuie avute in vedere retele, echipamente, produse software de baza, produse software de aplicatie.
Retele
dupa aria de intindere geografica:
- Locale =LAN (Local Area Network) - la nivelul unei organizatii;
- Metropolitane -MAN (Metropolitan Area Network) - la nivel de oras, localitate;
- De mare intindere -WAN (World Area Network) (ex. Judet, Tara).
dupa accesibilitate:
- Internet (reteaua Web) - o colectie mondiala de retele interconectate;
- Intranet - un sit Web sau un grup de sit-uri care apartin unei organizatii, accesibil numai
pentru membrii acesteia;
- Extranet - o retea intranet care este partial accesibila utilizatorilor externi autorizati.
Echipamente
Echipamente de calcul : calculatoare, statii grafice, pentru servere de retea, servere de baze
de date, statii de lucru (clienti, utilizatori), UPS-uri.
Echipamente de comunicatie : router-e, hub-uri, modem-uri, switch-uri.
Produse software
Produse software de baza:
Sisteme de operare pentru serverul de retea (UNIX, Windows NT server, Windows 2000, Novell) si pentru statiile de lucru sau clienti (Windows 95, Windows 98, Windows NT work station, Windows 2000);
- Sisteme de Gestiune a Bazelor de Date (ORACLE, SQL Server Microsoft, MySQL, ACCESS, FoxPro etc.);
- Sisteme GIS (Geographical Information System) - utilizate pentru realizarea aplicatiilor din domeniul cadastrului (stocarea si prelucrarea datelor spatiale );
- Limbaje (medii) de programare - utilizate pentru realizare software de aplicatie.
Produse software de aplicatie - produse program ce constituie aplicatiile si subsistemele sistemului informatic.
Sistemele informatice se clasifica dupa mai multe criterii.
1. In functie de domeniul de utilizare, sistemele informatice pot fi pentru :
conducerea activitatilor economico-sociale
conducerea proceselor tehnologice
cercetare stiintifica si proiectare tehnologica
activitati speciale.
2. In functie de nivelul ierarhic ocupat de sistemul economic in structura organizatorica a societatii, conform caruia exista sisteme informatice [2]:
pentru conducerea activitatii la nivelul unitatilor economice
pentru conducerea activitatii la nivelul organizatiilor economico-sociale cu structura de grup
sisteme informatice teritoriale
pentru conducerea ramurilor, subramurilor si activitatilor la nivelul economiei nationale
sisteme informatice functionale generale .
3. In functie de elementul supus analizei [Oprea D., 1999]:
sisteme informatice orientate spre functii;
sisteme informatice orientate spre proces;
sisteme informatice orientate spre date;
sisteme informatice orientate spre obiecte;
sisteme informatice orientate spre cunostinte.
4. Dupa modul de organizare a datelor [[1] D., 1999]:
sisteme bazate pe fisiere;
sisteme bazate pe tehnica bazelor de date: ierarhice, retea, relationale, orientate-obiect;
sisteme mixte.
5. Dupa metoda folosita in analiza si proiectarea sistemelor [1]:
sisteme dezvoltate dupa metoda sistemelor;
sisteme dezvoltate dupa metoda clasica a ciclului de viata;
sisteme dezvoltate dupa metoda structurata;
sisteme dezvoltate dupa metoda orientata-obiect;
sisteme dezvoltate dupa metoda rapida(RAD);
sisteme dezvoltate dupa metoda echipelor mixte(JAD);
sisteme dezvoltate dupa metoda prototipurilor.
6. Dupa gradul de centralizare [1]:
sisteme centralizate;
sisteme descentralizate;
7. Dupa gradul de dispersie a resurselor sistemului informatic:
sisteme informatice locale (bazate pe retea locala, statii de lucru):
sisteme informatice distribuite (date distribuite).
8. Dupa gradul de automatizare a activitatilor de analiza si proiectare a sistemelor informatice [1]:
sisteme informatice dezvoltate pe baza analizei si proiectarii clasice;
sisteme informatice analizate cu instrumente automate si proiectate clasic;
sisteme informatice bazate pe instrumente diverse de automatizare a analizei si proiectarii;
sisteme informatice dezvoltate cu instrumente de tip CASE.
Plecand de la ideea ca sistemul informatic este subordonat procesului decizional, al carui rol este de a asigura functionarea normala si optima a intregii activitati si de a reduce la minimum pierderile in caz de functionare anormala, rezulta ca obiectivul oricarui sistem informatic trebuie sa fie subordonat obiectivului propriu-zis al unitatii economico-sociale. In acest context, obiectivul principal urmarit prin introducerea unui sistem informatic il constituie asigurarea conducerii cu informatii reale si in timp util, necesare fundamentarii si elaborarii operative a deciziilor [2].
Sistemele informatice (SI) se caracterizeaza printr-un ciclu de viata care incepe cu decizia realizarii unui nou SI care sa corespunda mai bine noilor cerinte ale utilizatorilor si se incheie cu decizia de inlocuire a SI existent cu unul nou, mai performant. Ciclul de viata se desfasoara pe etape in cadrul fiecareia fiind definite faze si activitati specifice [4].
Inca de la inceput facem mentiunea ca, indiferent de etapa istorica sau metodologica, sistemele sunt abordate prin prisma ciclului lor de viata. Ele apar se dezvolta, descresc si pier, sau printr-un nou ciclu, se perfectioneaza, dand nastere unei alte versiuni sau chiar unui nou sistem. Mutatiile din domeniul tehnologiei informationale si al metodelor de abordare a sistemelor s-au reflectat si in ciclul de viata al dezvoltarii sistemelor, fie prin schimbarea etapelor acestuia, fie prin modificarea opticii de parcurgere a lor. Spre exemplu, odata cu abordarea orientata-obiect a sistemelor, s-au lansat si noi modele ale ciclului de viata [4].
Prin parcurgerea materialelor de specialitate, se poate constata ca numarul fazelor/etapelor variaza de la trei (de exemplu analiza, proiectarea, implementarea) la peste douazeci.
Exista mai multe modele ale ciclului de viata, multe dintre ele cunoscand o evolutie in timp. Spre exemplu, modelul cascada (figura 1.3) prevede parcurgerea mai multor etape ale ciclului de viata care se deruleaza secvential fiind insa permisa la nevoie revenirea la etapa parcursa anterior in vederea indepartarii neajunsurilor identificate in etapele superioare ale ciclului de viata [4].
Etape ale ciclului de viata a unui sistem informatic in modelul cascada
1. Analiza si definirea cerintelor - sunt definite scopurile, serviciile si restrictiile pe care trebuie sa le indeplineasca sistemul informatic, prezentate intr-o maniera incat sa poata fi intelese atat de catre utilizatorii sistemului cat si de personalul de proiectare.
Proiectarea sistemului si software-ului - satabilirea cerintelor pentru hardware si software si elaborarea arhitecturii generale a sistemului. Functiile sistemului informational vor fi reprezentate astfel incat sa poata fi tranformate in unul sau mai multe programe executabile.
3. Implementarea si testarea unitatilor de program - proiectarea software-ului din etapa anterioara este transpusa intr-o multime de programe sau module programsi verificarea faptului ca fiecare program sau modul satisface specificatia sa.
4. Integrarea si testarea sistemului - integrarea si testarea programelor si modulelor program ca un sistem complet pentru a ne asigura ca cerintele informationale sunt satisfacute. Dupa testare sistemul este livrat beneficiarului.
5. Exploatarea si intretinerea sistemului - este faza in care sistemul informatic este efectiv utilizat de catre beneficiar si in care sunt descoperite si rezolvate eventuale erori de proiectare si programare si omisiuni in cerintele informationale initiale.
Fig. 1.3. Etapele ciclului de viata a unui sistem informatic in modelul cascada ([10])
Prin analiza critica sunt identificate entitatile bazei informationale. In principal, pentru o intreprindere acestea pot fi grupate dupa cum urmeaza:
pentru activitatea de aprovizionare: stocuri de materiale, intrari materiale, consumuri de materiale, contracte cu furnizorii, programe de aprovizionare;
pentru activitatea de productie: tehnologii si retete de fabricatie, program de lucru, norme de munca si consumuri de manopere;
pentru activitatea de desfacere: stocuri de produse, contracte cu clientii, realizari contracte;
pentru activitatea de marketing: evolutia cererii si a ofertei, dinamica preturilor, elasticitatea cererii si a productiei;
pentru activitatea financiar-contabila: solduri si rulaje contabile, calculatia costurilor, bugete de venituri si cheltuieli, contabilitatea analitica si sintetica;
pentru activitatea de personal: evidenta personalului, salarizari, dotari social-culturale si gestiunea lor;
pentru activitatea de cercetare-dezvoltare: studii tehnico-economice, proiecte tehnice, investitii, etc.
Operatiunile care se executa asupra datelor, din momentul aparitiei lor, pentru a genera informatii semnificative si relevante sunt referite la un loc prin notiunea de ciclul prelucrarii datelor. Ciclul cuprinde cinci faze: culegerea datelor, pregatirea datelor, prelucrarea datelor, intretinerea fisierelor si obtinerea informatiilor de iesire.
Faza de culegere a datelor cuprinde doua activitati fundamentale [1]:
observarea mediului care genereaza datele, fie printr-un observator uman, fie prin diverse echipamente;
inregistrarea datelor, fie prin scrierea lor in documentele sursa, fie prin captarea lor sub diferite forme cu ajutorul unor echipamente speciale.
Pregatirea datelor consta intr-un numar de operatii executate asupra datelor pentru a facilita prelucrarea lor ulterioara. Ele sunt [1]:
clasificarea datelor, care implica atribuirea de coduri de identificare (simbol cont, cod sectie, etc.), astfel incat datele sa fie incluse in submultimile corespunzatoare;
gruparea datelor, adica acumularea intrarilor similare, pentru a fi prelucrate in grup;
verificarea datelor cuprinde o mare varietate de proceduri pentru controlul corectitudinii datelor, inainte ca ele sa fie prelucrate;
sortarea datelor, prin care grupurile de date sunt aranjate in loturi de inregistrari, dupa criterii de ordonare numerica, alfabetica, alfanumerica sau de timp;
cuplarea a doua sau mai multe loturi de inregistrari intr-unul singur;
transmiterea datelor de la un punct la altul;
transcrierea datelor dintr-o forma in alta, astfel incat sa se efectueze trecerea de la scrierea de mana la cea tipizata sau de la documentele scrise la mediile specifice.
Pregatirea datelor este o
activitate realizata in toate tipurile de sisteme informationale, dar capata o
semnificatie deosebita in sistemele de prelucrare automata a datelor; partea
informatizata a acestora fiind cunoscuta ca sistem/subsistem informatic.
Fig. 1.4 Ciclul prelucrarii datelor [1]
Prelucrarea datelor, poate sa includa activitati, cum sunt [1]:
calculatiile cuprind unele forme de tratare matematica a datelor;
compararea supune unei examinari simultane doua sau mai multe tipuri de date intre care exista o legatura logica (ex. soldul final si cel final);
sintetizarea este o activitate importanta prin care se comaseaza informatiile;
filtrarea este o alta operatiune prin care se extrag datele ce vor fi supuse prelucrarilor urmatoare;
restaurarea, prin care sunt aduse datele din memorie intr-o forma accesibila omului, pentru prelucrarea umana in continuare, sau intr-o forma prelucrabila tot pe calculator.
In faza de intretinere a fisierelor exista mai multe activitati, dintre care amintim:
memorarea (stocarea) datelor in vederea utilizarii lor viitoare;
actualizarea datelor memorate astfel incat sa surprinda cele mai recente evenimente;
indexarea datelor pentru a inlesni o usoara regasire a lor;
protectia datelor memorate, care cuprinde o mare varietate de proceduri si tehnici pentru prevenirea distrugerii lor sau a accesului neautorizat.
Ultima faza a ciclului de prelucrare a datelor este obtinerea informatiilor de iesire. Informatiile de iesire pot fi regasite in una din urmatoarele trei forme: documente, rapoarte ori raspunsuri la intrebari. Termenul iesiri le cuprinde pe toate [1].
De cele mai multe ori, datele nu parcurg toate activitatile, iar unele dintre ele pot chiar sa nu treaca prin cele cinci faze.
Sistemul informatic de gestiune implica urmatoarele patru componente interdependente: domeniile de gestiune, datele, modelele, regulile de gestiune [4].
Sistemul informatic de gestiune asigura obtinerea informatiei solicitate de utilizator, folosind mijloacele tehnologiei informatiei (TI).
Sistemele informatice de gestiune sunt sisteme integrate. Se caracterizeaza printr-o introducere unica a datelor, preluate din documentele primare care actualizeaza o baza de date unica a contabilitatii care va fi ulterior prelucrata pentru obtinerea situatiilor specifice fiecarui utilizator [4].
Fig. 1.5. Sistem informatic de gestiune integrat al contabilitatii [4]
Sistemul informatic de gestiune reuneste subsisteme informatice specializate pe domenii intre care se manifesta interactiuni specifice. Fiecare subsistem definit grupeaza procese informationale omogene, specifice unei anumite arii de interes [4].
La nivelul fiecarui subsistem vor fi definite aplicatii distincte corespunzatoare acestor activitati. La randul lor aplicatiile sunt formate din proceduri descompunandu-se in module reprezentand secvente de cod prin care se realizeaza o functie independenta din cadrul procedurii.
Exemplu. O procedura pentru operatia de actualizare se va descompune in urmatoarele module:
modulul coordonator al functiei de actualizare;
modulul pentru realizarea functiei de adaugare de inregistrari;
modulul pentru functia de stergere inregistrari;
modulul pentru functia de modificare a inregistrarilor din baza de date.
Realizarea sistemelor informatice reprezinta o actiune complexa, care imbina un numar mare de activitati: analiza, proiectare, implementare, exploatare [2]. In plus, reclama resurse umane, materiale si financiare insemnate, pe o perioada considerabila de timp. Folosirea eficienta a acestor resurse, in scopul obtinerii unui sistem informatic performant a impus ordonarea acestui proces complex, intr-o succesiune bine stabilita de etape si subetape si utilizarea unor metode si tehnici adecvate. Acest lucru a dus deci, la conturarea unor metodologii de realizare a sistemelor informatice.
Intre diversele etape de realizare a sistemelor informatice exista o legatura indestructibila, legatura reflectata si de faptul ca in mod logic si practic calitatea realizarii unor activitati din etapele si fazele precedente influenteaza in mod decisiv calitatea activitatilor din etapa ce ii urmeaza [2].
Metodologiile de realizare a sistemelor informatice cuprind [2]:
modalitatea de abordare a sistemelor, pentru elucidarea raportului dintre variatiile sistemului si dinamismul sau;
regulile de formalizare a datelor si proceselor de prelucrare;
instrumentele pentru conceptia, realizarea si elaborarea documentatiei;
modalitatea de derulare a proiectului si actiunile specifice fiecarei etape (ciclul de viata);
definirea modului de lucru, rolului analistilor si proiectantilor si a raportului dintre ei;
modalitatile de administrare a proiectului (planificare, programare, urmarire).
Totodata, metodologiile au rolul de a indica modul de desfasurare a acestui proces, stabilind [2]:
componentele procesului de realizare a sistemului informatic (etape, subetape, activitati, operatii) si continutul lor;
fluxul parcurgerii (executarii) componentelor; metodele, tehnicile, procedeele, instrumentele, normele si standardele utilizate.
In functie de modul de abordare si domeniul de aplicabilitate, metodologiile utilizate sunt:
metodologii din domeniul gestiunii: AXIAL (firma IBM), MERISE (Ministerul industriei-Franta), IE (James Martin), SSADM (Marea Britanie);
metodologii orientate obiect: OMT (General Electric -SUA), OOD (Michael Jackson);
metodologii pentru conducerea proiectelor de sisteme informatice: SDM / S, METHOD/ 1 Arthur Andersen, NAVIGATOR (Ernst & Young - James Martin).
La realizarea sistemelor informatice se utilizeaza : metode, tehnici, instrumente, procedee de lucru [2].
Metodele utilizate in proiectarea sistemelor informatice reprezinta modul unitar sau maniera comuna in care analistii de sisteme, programatorii si alte categorii de persoane implicate, realizeaza procesul de analiza a sistemului informational-decizional existent, proiectarea si introducerea sistemului informatic. Deci, metoda are un caracter general, in cadrul ei aplicandu-se anumite tehnici de lucru [2].
Tehnicile de lucru utilizate in proiectarea sistemelor informatice reprezinta felul in care se actioneaza eficient si rapid, in cadrul unei metode, pentru solutionarea diferitelor probleme ce apar in procesul de proiectare. Prin aceste tehnici se imbina armonios cunostintele despre metode cu maiestria personala a celor chemati sa aplice metodele si sa utilizeze instrumentele adecvate [2].
Utilizarea acestor metode, tehnici, instrumente, procedee de lucru in proiectarea sistemelor informatice se face in conformitate cu o serie de principii si in limita unor metodologii de lucru care se adopta in functie de situatia reala la care se refera.
In abordarile incipiente se lucra cu probleme izolate si ulterior s-a efectuat trecerea la abordarea sistemica (modulara), odata cu abordarea functionala sau, mai bine zis, cu analiza si descompunerea functionala (in fiecare modul exista cate o functie) si ulterior abordarea orientata-obiect [2]. Pe parcurs s-au impus doua strategii de abordare si anume:
strategia top down (de sus in jos);
strategia bottom - up evolutiva (de jos in sus).
In strategia top - down abordarea generala este divizata in unitati componente prin rafinari repetate, metoda de proiectare putand fi descrisa sub forma unei diagrame ierarhice cu module de control pe nivele superioare si cu module detaliate pe nivelele inferioare. Structura organizatorica a unei unitati economico-sociale numita organigrama unitatii poate fi reprezentata printr-o astfel de diagrama ierarhica. Pentru unitati economice productive in organigrama se disting urmatoarele patru nivele de reprezentare [10]:
nivelul conducerii strategice, reprezentat de directorul general si consiliul de administratie;
nivelul conducerii tactice (directori pe functiuni);
nivelul compartimentelor functionale (servicii si posturi de lucru) si de proiectare, cercetare (laboratoare) care asigura conducerea operativa a sistemului prin sefii lor;
nivelul compartimentelor de productie (sectii, ateliere) care realizeaza functia de productie a sistemului economic.
In strategia bottom - up evolutiva, se porneste de la o tratare minimala care se extinde treptat pe masura inaintarii in realizarea sistemului.
In practica, de cele mai multe ori se utilizeaza o combinare a celor doua strategii.
Metodele de abordare a sistemelor informatice ar putea fi grupate prin prisma celor mai multi autori astfel [1]:
metode orientate spre functii, numite si metode ale descompunerii functionale;
metode orientate spre fluxuri date, deci metode orientate spre procese, deoarece diagramele fluxurilor de date se intrebuinteaza pentru descrierea proceselor;
metode orientate spre informatie sau date, orientate-informatii, aparute ca urmare a popularizarii puternice a ingineriei informatiei a lui JAMES MARTIN, dar si a diagramelor entitate-relatie ale lui CHEN [3];
metode orientate-obiect.
Caracteristici esentiale ale principalelor metode
Informatia este vazuta de DeMarco in 1982, ca fiind posibil de abordat prin trei perspective specifice sistemelor informationale sau prin trei dimensiuni: date, functii, comportament.
Datele sunt surprinse din prisma structurii lor sub forma de atribute si inseamna de fapt, ceea ce are stocat, si reflecta structura statica [1].
Functiile scot in evidenta in mod limitat ceea ce face sistemul. El poate fi vazut si ca un proces, intrucat elementele sistemului despre care se pastreaza datele de rigoare sunt supuse unor transformarii functionale, prin intermediul proceselor [1].
Comportamentul este invocat pentru a reda o alta modalitate de perceptie a sistemului, influenta evenimentele si proprietatilor sistemului, si sugereaza dinamica lui [1].
Metoda descompunerii functionale (orientate functii) [1].
Dintre autorii remarcabili care au abordat descompunerea functionala ii enumeram pe cativa cum ar fi DeMarco, Yourdon si Constantine, Jackson, Page-Jones, Warnier-Orr, Dahl, Marco&Gowan. Descompunerea functionala este cea care anunta aparitia proiectarii structurate si analizei structurate. Fiecare functie este descompusa in subfunctii, pana se obtin structuri usor de transpus in instructiunile limbajelor de programare.
Metodele fluxurilor de date (orientate-proces) [1].
Prin aceasta metoda analistii efectueaza reprezentarea lumii reale prin simboluri care reprezinta fluxul datelor, transformarile datelor, stocarea datelor, entitati externe, etc. Metoda orientata spre procese are inca un mare grad de asemanare cu descompunerea functionala.
Metode orientate spre informatii (orientate-date) [1]
Doua realizari importante in domeniu au dat tonul unei orientari in abordarea sistemelor: modelarea datelor cu ajutorul diagramelor entitate-relatie, de catre Peter P. Chen (1976) si ingineria informatiei, in viziunea lui James Martin.
Metoda orientata-obiect [1]
Metodele OO constituie o categorie particulara a metodelor de dezvoltare software, care privesc construirea sistemelor pentru care clasa reprezinta unitatea arhitecturala fundamentala. Clasa este o grupare logica a obiectelor care au aceeasi structura si un comportament similar.
Problema CASE-ului (Proiectarea Sistemelor/Programelor asistata de calculator sau cu Ajutorul Calculatorului - Computer Aided Systems Engineering) a devenit foarte importanta la mijlocul anilor 1980, cand hardul sa extins prin seria PC-urilor, iar retelele au devenit mai puternice, constituindu-se sistemele distribuite. Obiectivul principal al CASE-ului il constituie punerea in practica a produselor-program de proiectare si realizare a softului cu ajutorul calculatorului. Instrumentele oferite de CASE sunt utilizabile din faza de definire a cerintelor pana la intretinerea fizica a produsului informatic. Totusi, analiza si proiectarea, bazate pe conceptele si metodele structurate, reprezinta elementele forte ale instrumentelor CASE, iar in ultimii ani CASE a acordat atentia cuvenita analizei, proiectarii si programarii orientate pe obiecte [1].
Majoritatea produselor soft au fost construite in mod artizanal, fara posibilitatea testarii complete a lor, fiind insotite de o documentatie destul de slaba. Instrumentele CASE implica utilizarea calculatorului ca un mijloc de sustinere a activitatilor de planificare, definire, proiectare si realizare a softului. Ele se bazeaza pe logica structurala, pe descompunerea functionala si reprezentarea prin diagrame a fluxurilor de date ale aplicatiilor.
Potrivit principiilor conceptuale, sistemele CASE au fost realizate pentru a incuraja abordarea logicii structurate si pentru folosirea calculatorului ca un mod de tezaurizare a lucrarilor si ca o planseta de desen, pe care pot fi plasate reprezentarile structurate ale sistemelor sau aplicatiilor. Pe masura evolutiei lor, sistemele CASE au devenit mult mai complexe, permitand ca procesele de proiectare si realizare a aplicatiilor sa se desfasoare intr-un mediu informatic interactiv, oferind utilizatorilor un intreg arsenal de instrumente si proceduri, prin care pot proiecta, realiza, testa, documenta, intretine/actualiza si exploata sistemul.
Utilizarea produselor de tip CASE a fost determinata de [1]:
calitatea indoielnica a aplicatiilor realizate in mod traditional;
frustrarea utilizatorilor in incercarea lor de a participa la procesul de proiectare si realizare a aplicatiilor, datorita nivelului ridicat de cunostinte informatice solicitate de metodele traditionale;
costuri deosebit de mari pe care le presupun intretinerea si actualizarea softului functional;
imposibilitatea rezolvarii tuturor cerintelor utilizatorilor;
limitarea posibilitatii de reprezentare grafica a schemelor de realizare a noilor proiecte.
Folosirea sistemelor CASE este motivata si de urmatoarele avantaje:
reducerea complexitatii logicii de descriere a sistemului;
posibilitatea de a alege dintre mai multe variante de proiectare;
cresterea vitezei de realizare a sistemelor;
realizarea succesiva a componentelor unui sistem;
cresterea integrarii;
consolidarea disciplinei de proiectare;
oferirea unei interfete de proiectare;
folosirea depozitelor modularizate;
salvarea si refolosirea unor componente din diagramele realizate;
simplificarea activitatilor de proiectare si realizare a sistemelor/aplicatiilor.
Utilizarea sistemelor CASE a inceput cu introducerea diagramelor fluxurilor de date, care fac posibila realizarea unui model al derularii proceselor sistemului/aplicatiei care se proiecteaza. A urmat folosirea dictionarului de date ca un depozit al tuturor datelor privind sistemul sau aplicatia. Au aparut ecranele predefinite pentru a prezenta ce poate sa obtina utilizatorul prin exploatarea sistemului. S-a apelat la facilitatile grafice, care pot folosi simbolurile logicii structurate si care permit proiectantului sa realizeze o diagrama coerenta a fluxurilor de date [1].
Primele sisteme CASE erau un set de aplicatii neintegrate, cu functii distincte, fara a fi interconectate. Aceste limite au fost eliminate, in cea mai mare parte, prin generatiile actuale, care incearca sa realizeze o integrare completa si usoara a tuturor elementelor, integrarea reprezentand, de fapt, factorul cel mai important al metodologiei CASE [1].
CASE se bazeaza pe doua functii fundamentale [1].
Prima functie consta in posibilitatea descompunerii de sus in jos (top-down) a sistemului informatic in procese si module distincte, fiecare avand definite responsabilitatile functionale si/sau operationale.
Cea de-a doua functie se refera la faptul ca sistemele informationale pot fi reprezentate intr-o forma grafica concisa, folosind cateva simboluri de baza. Importanta acestor doua functii rezida in posibilitatea utilizarii modularitatii aplicatiilor, a diagramelor, obtinerea unei documentatii privind realizarea, evaluarea arhitecturii si utilizarea sistemului.
Pentru definirea si construirea sistemelor, produsele CASE presupun stabilirea si respectarea unei anumite discipline. Metodologia ofera o interfata intre crearea si verificarea/validarea proiectului logic, dezvoltarea unei biblioteci cu documentatii, care include si integreaza caracteristicile proceselor si pasii de parcurs, pentru descrierea modului de lucru; ofera un model al produsului final, ce poate fi folosit in realizarea operatiilor de exploatare si intretinere a sistemului/aplicatiei, si ofera o interfata pentru pastrarea evolutiei proiectului.
Folosirea reprezentarilor grafice in logica CASE ofera posibilitatea descompunerii aplicatiei in mai multe componente logice. Prin atasarea unei baze de date la elementele grafice, se va obtine un depozit ce va contine pasii si functiile reprezentate in diagramele construite. Daca aceste elemente sunt corect stabilite, ele vor sta la baza descrierii proceselor, ce vor constitui procedurile de prelucrare ale sistemului/aplicatiei. Modelarea grafica in sistemele CASE prezinta o interactivitate ridicata, permitand construirea diagramelor, deplasarea de la o diagrama la alta, modificarea, extinderea, copierea, evaluarea si descrierea elementelor unei aplicatii [1].
Modelele grafice permit conectarea fluxurilor logice intre activitatile si functiile specifice aplicatiei, relatii care pot fi testate si validate in mod automat.
Evolutia CASE-ului, a determinat aparitia I-CASE-ului. Integrated CASE se refera la toate aspectele integrarii, chiar daca sistemele sunt deschise sau nu [1].
Caracteristicile mediilor moderne de tip CASE [1]:
un set de instrumente specifice pentru realizarea sistemelor;
diversitatea modurilor de interactiune;
semnificatia reprezentarilor grafice;
elemente de tip verificare si validare (V&V);
natura bidirectionala, deplasari pe verticala in structura sistemului;
deschidere pentru interconectarea instrumentelor CASE;
sprijin pentru lucrul cu utilizatori multipli;
descompunerea;
performante de deplasare, pe orizontala, de la un instrument la altul;
grade diferite de automatizare;
INTEGRAREA.
CASE-ul nu este un proces independent. El constituie un set integrat de metodologii, care urmaresc realizarea ciclului de viata al unui sistem. La sfarsitul fiecarei faze a ciclului de viata, rezultatele obtinute trebuie supuse unei analize si verificari, iar utilizatorii trebuie informati asupra modului de gestionare a procedurilor de lucru. Ei sunt cei care trebuie sa dea avizul de continuare a parcurgerii fazelor urmatoare, pe baza a ceea ce li s-a prezentat. Este, de fapt, un proces de revalidare a conceptelor folosite in proiectarea sistemului si a modelului proiectat pe masura desfasurarii operatiunilor, din faza de proiectare pana la predarea produsului final. CASE poate sprijini aceste proceduri prin punerea la dispozitie a unei documentatii, critici sau modificari asupra elementelor din modelul proiectat. Pe acest fond, pot fi facute evaluari, critici sau modificari asupra elementelor din modelul proiectat. Rezultatele obtinute in urma proiectarii unui anumit model de sistem constau in documentatia oferita, care acopera intregul ciclul de viata al sistemului, cu toate operatiile si procedurile pe care le presupune. Datele din documentatia modelului sunt, de obicei, inlocuite cu cele reale si se parcurg pasii de implementare a sistemului pentru a obtine un model functional. In plus, CASE ofera posibilitatea de a analiza iesirile obtinute si de a le modifica pentru a reflecta schimbarile intervenite in sistem, modulele definite si depozitul de date [1].
1.3.3. Exemple de instrumente CASE (Conferinta Nationala de Invatamant Virtual, editia a III-a, 2005)
In literatura de specialitate, instrumentele CASE sunt clasificate si dupa un alt criteriu decat cel al activitatilor din ciclul de viata al sistemelor pe care le sprijina. Acest criteriu se refera la metodologia pe care o incorporeaza pentru realizarea sistemelor. Astfel, se intalnesc urmatoarele trei categorii:
instrumente CASE bazate pe metodologia structurata;
instrumente hibride, ce contin elemente specifice orientarii-obiect, dar care nu permit realizarea sistemelor orientate-obiect;
instrumente pur orientate-obiect.
In cele ce urmeaza se vor prezenta cateva exemple de CASE folosite de cele mai utilizate metodologii de analiza si proiectare, respectiv metodologia structurata si cea orientata pe obiecte.
A) Metodologia structurata
Westmount I-CASE Yourdon ofera suport complet pentru realizarea sistemelor informatice. Avand la baza metoda structurata propusa de Yourdon, acest instrument CASE integrat ofera posibilitatea lucrului in echipa, posibilitatea de generare si reutilizare a codului si generarea automata a documentatiei de realizare a sistemului informatic.
Repository este componenta centrala a arhitecturii Westmount I-CASE Yourdon. Repository este implementat cu ajutorul unui SGBD relational: Informix, Ingres sau Oracle.
Analyst, este componenta ce ofera suport pentru analiza structurata. Metoda este implementata de Yourdon si De Marco. Westmount I-CASE Yourdon ofera suport pentru un set extins de instrumente si anume editoare pentru diagrame de flux a datelor, diagrame entitate asociere, diagrame de structura a datelor editoarele matriciale pentru matricea listei de evenimente.
Arhitect este componenta ce permite definirea arhitecturii sistemului (proiectarea de ansamblu). Editorul
Designer este componenta ce ofera suport pentru proiectarea de detaliu a sistemului informatic.
Proiectarea de detaliu a aplicatiei este strans legata de proiectarea bazei de date. Pentru modelarea datelor se utilizeaza diagrama entitate asociere.
Programmer este mediul de programare care ofera suport pentru generarea codului sursa, compilare, lansare in executie si testarea aplicatiei. Generatorul de cod translateaza specificatiile de proiectare in cod sursa. Astfel, pe baza diagramei entitate asociere se genereaza codul DDL (in SQL) ce defineste structura fizica a bazei de date. Codul poate fi completat pentru a defini restrictiile de integritate si modul fizic de stocare a bazei de date. Este prezentata si facilitatea de inginerie inversata care translateaza definirile asociate bazei de date existente intr-o diagrama entitate asociere. Codului aplicatiei este generat in limbajul C imbogatit cu instructiuni SQL pornind de la specificatiile din schemele de structura.
Docwriter este componenta care permite generarea documentatiei pentru fiecare etapa de realizare a sistemului.
Utilizarea produsului Westmount I-CASEY Yourdon imbunatateste productivitatea realizarii sistemelor informatice si ofera garantii pentru calitatea sistemelor obtinute.
B) Metodologia orientata-obiect
Expresia "pur orientate-obiect' se refera la faptul ca pe de o parte, instrumentele CASE contin numai elemente specifice abordarii orientate-obiect a sistemelor, iar pe de alta parte la faptul ca se bazeaza pe metodele si tehnicile de analiza si proiectare orientate-obiect.
Instrumentele CASE orientate-obiect, din punct de vedere al etapelor ciclului de viata al sistemelor, pot fi grupate ca si cele conventionale, astfel:
Upper CASE orientat-obiect pentru analiza si proiectarea sistemelor;
Lower CASE orientat-obiect pentru generarea codului-sursa al aplicatiilor;
I-CASE orientat-obiect care acopera intregul ciclu de viata.
Deoarece tendinta se indreapta tot mai mult spre tehnologiile informationale orientate-obiect, nici domeniul instrumentelor ce sprijina realizarea sistemelor nu poate sa nu se adapteze la aceasta orientare, lucru ce a dus la aparitia a numeroase produse CASE orientate-obiect sau la reorientarea firmelor producatoare de instrumente conventionale spre inglobarea in produsele lor a elementelor specifice abordarii obiectuale.
|