CATEGORII DOCUMENTE |
INTRODUCERE IN ANALIZA SI PROIECTAREA SISTEMELOR INFORMATIONALE
1. Notiuni de baza si definitii
Informatica: activitate pluridisciplinara orientata spre proiectarea si exploatarea sistemelor de prelucrare a informatiilor, in scopul eficientizarii si rentabilizarii activitatii umane. Dupa dictionarul explicativ DEX, informatica este stiinta care se ocupa cu studiul prelucrarii informatiei cu ajutorul calculatoarelor.
Sistemul: o sectiune a realitatii in care se identifica un ansamblu de elemente, interconectate printr-o multime de relatii reciproce, precum si cu mediul inconjurator si care actioneaza in comun in vederea realizarii unor obiective bine definite. Fiecare sistem are un comportament specific, determinat de natura elementelor din care este compus si de relatiile dintre ele. Un exemplu de sistem (mecanic) este cutia de viteza din compunerea automobilelor.
Sistemul informational: o definitie sumara care "tine aproape" de definitia sistemului, ar putea prezenta sistemul informational drept ansamblul elementelor de structura organizatorica din compunerea unei sectiuni a societatii umane, impreuna cu legaturile functional-informationale dintre ele si cu mediul social exterior, care actioneaza in comun pentru indeplinirea scopului si obiectivelor stabilite.
O definitie mai riguroasa [3] considera sistemul informational ca fiind un ansamblu tehnico-organizatoric de proceduri de constatare, consemnare, culegere, verificare, transmitere, stocare si prelucrare a datelor, in scopul satisfacerii cerintelor informationale necesare conducerii procesului fundamentarii si elaborarii deciziilor.
Sistemul informational se interpune intre sistemul condus si sistemul de management, ca in figura de mai jos [3].
Obiectivul sistemului informational este satisfacerea cerintelor informationale necesare conducerii in procesul de elaborare a deciziilor.
Activitatile care se deruleaza in cadrul sistemului informational sunt urmatoarele:
culegerea si consemnarea datelor primare de la locurile unde au loc procesele si fenomenele economice, precum si din spatiul economic extern;
verificarea, transmiterea si stocarea datelor pe diferiti purtatori tehnici de informatii;
prelucrarea manuala sau automata a datelor in concordanta cu cerintele conducerii;
selectarea informatiilor necesare conducerii conform principiului selectiei si informarii prin exceptie.
Sistemul informatic consta din partea automatizata a sistemului informational (utilizatorii implicati in automatizare si cadrul organizatoric aferent) careia i se adauga si alte elemente necesare pentru automatizarea obtinerii informatiilor necesare conducerii in procesul de fundamentare si elaborare a deciziilor si anume : echipamente (hardware), programe (software), comunicatii, o baza stiintifica si metodologica precum si baza informationala.
Baza stiintifica si metodologica consta din modele matematice ale proceselor si fenomenelor economice, metode si tehnici de realizare a sistemelor informatice.
Baza informationala se refera la datele supuse prelucrarii, fluxurile informationale, sistemele si nomenclatoarele de coduri.
Odata cu dezvoltarea cercetarii operationale, a teoriei deciziei, a Internetului si a performantelor calculatoarelor, au aparut sisteme informatice dedicate cum ar fi sistemele suport de decizie si sistemele expert, dar si unele sisteme informatice de tip nou ca cele pentru proiectare asistata de calculator, sistemele multimedia, sistemele pentru comertul elctronic si sistemele deschise.
Sistemele suport de decizie sunt colaboratori ai decidentului, in timp ce sistemele expert sunt sisteme de inteligenta artificiala si se comporta ca un expert, adica rezolva o mare parte din procesul elaborarii deciziilor, dar bineinteles sunt avute in vedere numai deciziile referitoare la problemele pentru care sistemul expert a fost conceput.
Sistemele suport de decizie trebuie sa dispuna de o componenta de gestiune a modelelor, una de gestiune a datelor, una de asigurare a comunicatiei si interfata cu utilizatorii.
Sistemele expert trebuie sa dispuna de o baza de cunostinte, o baza de fapte, un spatiu de lucru, mecanisme rezolutive (de rationament si de inferenta) mecanisme explicative si interfata utilizator.
In general cei care produc soft aplicativ nu prea au de ales in ce priveste tipurile de sisteme enumerate mai sus, pentru ca tipul de sistem depinde de natura datelor si prelucrarilor ce se vor executa in acel sistem. Astfel daca intr-o problema criteriile sunt preponderent cantitative, iar caracteristicile problemei se formuleraza cantitativ, modelarea se face foarte bine algoritmic si deci vom alege un sistem informatic.
Daca avem de a face cu formulari mai mult calitative decat cantitative atunci ne vom orienta asupra unui sistem suport de decizie sau a unui sistem expert, care nu exclud algorimii, dar presupun si baze de cunostinte.
Sistemele informatice traditionale folosesc baze de date relationale, dar in prezent se afirma tot mai mult sistemele orientate obiect.
Baza de date este un sistem de colectii de date intre care exista o interdependenta logica multipla, potrivit unor relatii prestabilite cu ocazia definirii structurii datelor, destinat satisfacerii operative a celor mai diverse solicitari provenite din partea unor grupuri diferite de utilizatori. Utilizatorii bazelor de date sunt: administratorul, programatorii de aplicatii si utilizatorii finali. Pentru lucrul cu baza de date ei dispun de o interfata soft, numita Sistemul de Gestiune a Bazei de Date (SGBD). Unele aplicatii inca mai folosesc fisiere.
Fisierul este o colectie de date omogene din punct de vedere al naturii, continutului informativ si a criteriilor de prelucrare, conservata pe o memorie externa, in concordanta cu restrictiile impuse de procesul de prelucrare automata a datelor, pentru satisfacerea cerintelor de informare a unuia sau mai multi utilizatori.
Obiectul constituie componenta elementara dintr-un sistem orientat obiect.
Fiecare obiect poseda o stare, un comportament si o identitate. Starea este formata din ansamblul de valori ale atributelor sau proprietatilor obiectului, comportamentul poate fi definit ca ansamblul de operatii pe care le poate executa obiectul, setul de responsabilitati asumate sau de servicii oferite altor obiecte, iar identitatea se refera la modul de reprezentare si de conservare a individualitatii fiecarui obiect, indiferent de transformarile sau sau schimbarile de stare prin care va trece.
Practic pentru a genera un obiect trebuie sa avem definita clasa de care apartine obiectul.
Clasa seamana foarte bine cu tabelul din bazele de date, adica putem sa o descriem si apoi sa generam exemplare (instante) din acea clasa de obiecte numai ca ea nu are numai atribute ci are si operatii, adica comportament. O operatie este implementata printr-o metoda.
Obiectele se interactioneaza prin mesaje.
In programarea cu obiecte se disting aspecte ca mostenirea, polimorfismul, abstractizarea, incapsularea, reeutilizarea si persistenta.
Analistul de sisteme informatice este specialistul care concepe si realizeaza sisteme informatice. Aceasta functie poate fi ocupata de specialisti proveniti din randul absolventilor de facultate avand specializarea matematica-informatica, cibernetica economica, contabilitate si informatica de gestiune sau alte specializari asemanatoare, dar si de alti specialisti cu studii superioare cum ar fi ingineri, fizicieni, economisti, etc. care au facut ulterior cursuri de analisti-programatori.
Se impune sa remarcam ca elaborarea sistemelor informatice este un act de mare raspundere. Aceasta afirmatie este justificata de investitia relativ mare care trebuie facuta pentru a informatiza o intreprindere/institutie, de volumul mare de munca necesar pentru realizarea sistemului informatic (de regula de ordinul a 1-2 ani-om si chiar mai mult), de impactul social al trecerii activitatii pe calculator. Ca urmare, intre proiectant (unitatea/societatea de informa-tica, unde sunt angajati analistii) si beneficiar, adica intreprinderea sau institutia care va folosi sistemul informatic, se incheie un contract avand ca obiect realizarea sistemului informatic.
Este de la sine inteles ca analistii ar trebui sa cunoasca specificul intreprinderii/institutiei in care va functiona sistemul informatic, intreprindere care in raport cu unitatea de informatica la care lucreaza analistul, este o unitate beneficiara. Cum analistii nu pot, sa cunoasca specificul tuturor unitatilor beneficiare cu care ar putea veni in contact in decursul timpului, in echipa de realizare a sistemului informatic se coopteaza si specialisti din partea unitatii beneficiare, care sa aiba idee de ceea ce se poate face cu calculatorul, dar mai ales sa stie foarte bine ce vor de la calculator, in contextul viitorului sistem informatic. Se creaza deci o echipa mixta de realizare a sistemului informatic
Este bine sa se stie ca orice aplicatie, pe langa faptul ca rezolva problema pentru care a fost conceputa, trebuie sa respecte si legislatia in domeniu, astfel incat rezultatele obtinute cu ea sa fie recunoscute de organele de control cum ar fi garda finaciara, curtea de conturi, s.a. Nerespectarea unor prevederi legale in vigoare, referitoare la procedura (modelul matematic si algoritmul) prin care se redacteaza anumite documente, competenta celor care avizeaza si semneaza astfel de documente, termenele de elaborare, numarul de exemplare, durata lor de pastrare, siguranta datelor, pastrarea secretului (daca este cazul), etc., pe considerentul ca problema a fost rezolvata pe calculator, nu absolva pe cel in cauza, de raspundere pentru incalcarea legislatiei!
In conceptia Merise, o unitate este structurata pe functii, domenii, activitati, subactivitati/procese, operatii complexe si operatii simple. De exemplu functia servicii financiar-bancare, domeniul credite bancare, activitatea acordare credite bancare, procesul analiza solicitarii si rambursarii creditelor bancare, se poate descompune in operatii complexe (analiza cererii de credit, analiza deciziei de creditare pe termen scurt, inregistrarea creditelor acordate, rambursarea creditului si inregistrarea rambursarii creditului), iar fiecare din aceste operatii complexe se poate descompune in operatii elementare, conform machetei de mai jos:
Functia Domeniul Activitatea Procesul |
Operatii |
|
Complexe |
Elementare |
In conformitate cu abordarea functionala, sistemele informatice sunt organizate pe subsisteme, aplicatii si unitati functionale sau proceduri logice. In programare procedurii logice ii corespunde unitatea de prelucrare sau procedura automata, iar operatiei complexe ii corespunde modulul program. In general, subsistemul vizeaza o functie a unitatii beneficiare sau un domeniu de activitate din unitatea in care este conceput sistemul. Aplicatia vizeaza o activitate, iar unitatea functionala o subactivitate sau sarcina.
In cadrul unui domeniu de activitate, deci in cadrul unui subsistem informatic, informatiile si prelucrarile sunt structurate pe verticala ca in figura din stanga.
In cadrul subsistemului, acestea sunt structurate pe verticala ca in figura din dreapta.
Ca urmare avem:
In teren In calculator (in domeniul informatic
Practica face necesar ca intre sisteme (pe verticala) , respectiv intre subsisteme (pe orizontala) sa existe legaturi, rezultand astfel sisteme informatice integrate.
Operatiile elementare se include in module program. Notiunea de modul program nu se confunda cu modulul din Access care este un container de programme si ca urmare, el insusi poate contine mai multe module program.
Aplicatia este un pachet de programe ce serveste la automatizarea prelucrarii datelor aferente unei activitati distincte din cadrul unui domeniu de activitate (de exemplu poate exista o aplicatie pentru elaborarea statelor de plata, denumita pe scurt aplicatia "salarii"). Intr-o aplicatie pot fi implicate mai multe elemente de structura organizatorica. De exemplu in elaborarea statelor de plata este implicat nu numai biroul financiar, care este titular pentru aceasta activitate, ci si serviciul personal, sau daca sistemul de plata presupune pontaj, va fi implicat dispeceratul, secretariatul, etc.. Implicarea mai multor elemente de structura organizatorica intr-o aplicatie complica schema functionala a aplicatiei, dar de cele mai multe ori, prezenta mai multor elemente este inevitabila.
De regula aplicatiile se deruleaza ciclic si pentru a fi mai usor trecute pe calculator, ciclul lor de viata se descompune in subactivitati cum ar fi preluarea datelor si actualizarea bazei de date, sau cea de elaborare liste de iesire sau rapoarte, sau etapa de elaborare informatii pentru alte aplicatii, etc.
Procedura logica sau unitatea functionala este corespondentul subactivitatii din cadrul unei aplicatii din domeniul informatizarii. Numai la acest nivel se poate face usor, trecerea directa de la structura logica a aplicatiei la programe, ceea ce inseamna ca unei unitati functionale i se pot asocia din softul aplicatiei, una sau mai multe unitati de prelucrare sau proceduri automate. Ultima situatie este necesara mai ales atunci cand si in cadrul unei unitati de prelucrare, sunt implicate mai multe elemente de structura organizatorica.
In contextul unitatilor functionale, elementele de structura organizatorica folosesc calculatorul in sesiuni de lucru la calculator cand, de cele mai multe ori, nu se ruleaza un singur program, ci una sau mai multe proceduri automate.
Procedura automata este o secventa bine definita de programe (module program), care odata
lansata in executie, se ruleaza dupa o schema logica, fara intrerupere, pana la sfarsit. De exemplu preluarea pe calculator, validarea si stocarea fiselor de pontaj pentru salarii poate constitui o procedura in cadrul aplicatiei numita salarii. Faptul ca procedura se ruleaza intotdeauna pana la sfarsit, nu inseamna ca programele care fac parte din procedura se vor rula toate de fiecare data; rostul schemei logice care sta la baza procedurii, este tocmai acela de a decide in functie de parametrii introdusi de utilizator si de felul cum decurge rularea, care program sa se ruleze si care sa fie sarit, astfel incat procedura sa infaptuiasca un act coerent, rational, sa permita utilizatorului sa controleze situatia, mai precis sa infaptuiasca o etapa sau macar acea parte dintr-o etapa din ciclul de viata al unei aplicatii, care-i revine biroului sau sectiei din care face parte utilizatorul respectiv.
Exista si proceduri manuale care desi nu fac obiectul programarii, ele pregatesc prelucrarea automata a datelor, sau dupa caz, finalizeaza aceasta actiune. Proiectantul sistemului infor-matic, trebuie sa tina seama de procedurile manuale si sa faca referiri la ele in cadrul etapei de proiectare logica si fizica precum si ulterior in cadrul manualelor de utilizare si respectiv de exploatare, pentru ca abia impreuna cu aceste proceduri sistemul informatic este complet.
Structura sistemului informatic trebuie sa fie cat mai putin dependenta de structura organizatorica a intreprinderii/institutiei pentru care s-a conceput sistemul. Acest lucru asigura sistemelor informatice o viata mai lunga, facandu-le sa nu depinda de frecventele schimbari de structura organizatorica, care au loc de obicei in sectiunile sociale unde sunt implementate si care, daca sistemul s-ar baza pe ele, ar face ca acesta sa trebuiasca a fi actualizat, pentru fiecare modificare de structura.
3. Conceptia logica de principiu a sistemului informatic
In sectiunea 2 s-a specificat ca sistemele informatice sunt structurate pe subsisteme, aplicatii, unitati functionale, unitati de prelucrare sau proceduri si module program. Merita remarcat ca, indiferent de nivelul sau, orice componenta a sistemului informatic presupune intrari, prelucrari si iesiri, iar relatiile dintre componente se realizeaza prin intermediul unei baze informatio-nale, care exista si in sistemul informational, dar in conditiile informatizarii, va fi reflectata in colectii omogene de date ce pot fi organizate in baze de fisiere sau date in functie de sistemul specific de gestiune a datelor (SGF sau SGBD).
Conceptia logica concreta a unui sistem informatic dat se elaboreaza in etapa de proiectare logica, dar este bine sa stim inca de pe acum ce este o conceptie logica de principiu a sistemului informatic. Un asemenea model cuprinde:
a) Intrarile in sistemul informatic: sunt acele modificari ale sistemului informational care produc schimbari in colectiile de date, adica tranzactiile externe. Adeseori, modificarile pe care tranzactiile externe le produc direct colectiilor de date induc si un al doilea val de modificari ale acestora, sub forma tranzactiilor interne. Astfel o factura ce insoteste o transa de materiale venite de la furnizor este o tranzactie externa, pentru ca modifica soldul materialelor cuprinse in factura, dar ea induce si o modificare a soldului furnizorului respectiv, ceea ce este o tranzactie interna.
Reprezentarea schematica a conceptiei logice de
principiu a sistemului informatic
Tranzactiile externe provin din exteriorul sistemului electronic de calcul, in timp ce tranzactiile interne sunt produse de procedurile de actualizare si exploatare a colectiilor de date. Este de datoria analistului de sisteme informatice sa identifice inca din etapa de proiectare logica efectele secundare ale intrarilor in sistem si sa consemneze necesitatea procedurilor care vor materializa aceste efecte asupra colectiilor de date, adica vor efectua tranzactiile interne ce se impun logic.
b) Prelucrarile sistemului informatic: sunt efectuate de procedurile sistemului informatic si prin ele se urmareste sa se realizeze actualizarea si exploatarea colectiilor de date. Daca baza informationala este formata din ansamblul entitatilor informationale si a atributelor pe care acestea le au, colectiile de date preiau numai multimea atributelor entitatilor din baza informationala, asa numitul nucleu de informatii. Legaturile dintre entitati apar atunci cand ele au atribute comune. Multimea entitatilor informationale din baza informationala trebuie sa fie unica si neredundanta. Ea trebuie sa asigure un fond centralizat de informatii care sa asigure obtinerea iesirilor solicitate de beneficiarul sistemului informatic.
c) Iesirile sistemului informatic: sunt grupate in patru categorii:
- indicatori sintetici (ex. cifra de afaceri, profitul brut, fondul de rulment, capitalul propriu, rata rentabilitatii, etc.);
- liste sau situatii de iesire, care grupeaza indicatori sintetici sau analitici sub forma de tabel;
- grafice care redau dinamica indicatorilor sintetici sau analitici;
indicatori sintetici si analitici stocati pe suporturi magnetice care urmeaza a fi transmisi altor sisteme informatice;
Data fiind complexitatea actului de elaborare a unui sistem informatic, de-a lungul timpului in acest domeniu s-au aplicat diferite conceptii/paradigme si metodologii.
4. Metode de abordare a sistemelor informatice
Nu este greu de inteles ca realizarea unui sistem informatic, sau doar a unei aplicatii, presupune modelarea situatiei reale si utilizarea modelului creat, in realitatea cu care opereaza calculatorul.
Modelarea este reprezentarea intr-un mediu controlat, a proprietatilor si/sau fenomenelor si proceselor care caracterizeaza un obiect sau un sistem real. Cu alte cuvinte in modelare nu exista adevar absolut; modelarea presupune abstractie si aducerea in atentie numai a unor aspecte ale realitatii studiate si anume acele aspecte care prezinta interes pentru modelator. Unul din mediile controlate in care se poate reproduce realitatea, deci unul in care se pot face modele, este calculatorul. Pe calculator se realizeaza modele informationale.
Modelul informational este o abstractie a unei entitati si aceasta abstractie poate fi facuta fie pentru a crea un model general (de referinta) care sa fie apoi folosit pentru a crea exemple concrete de sisteme informatice (cazul arhitecturilor de referinta), fie pentru a crea modelul informatic al unei entitati anume, deci un model de transpunere. In cele ce urmeaza ne vom referi exclusiv la modele de transpunere.
La crearea modelului intervine viziunea analistului despre realitatea pe care o studiaza, adica paradigma. Paradigma reprezinta 'ochelarii' prin care analistul vede sistemul informational real, acela pe care vrea sa-l modeleze, dar nu toate viziunile sau conceptiile analistilor ajung sa fie considerate paradigme. La inceputurile existentei sistemelor informatice, atentia analistilor a fost concentrata spre latura functionala a activitatii umane studiate si cum o functie a unui birou sau sectie nu putea fi analizata si nici prelucrata in bloc, ea a fost descompusa in activitati (rezultand aplicatiile informatice), activitatile au fost descompuse in subactivitati (rezultand procedurile), care la randul lor au fost descompuse in operatii, carora in calculator le corespondeau modulele program. S-a dezvoltat in aceste conditii o abordare functionala a sistemelor informationale. In informatica industriala functiei ii corespunde procesul, ceea ce a dus la abordarea orientata spre proces.
Ulterior, locul fisierelor a fost luat de bazele de date si corespunzator, locul sistemelor de gestiune a fisierelor a fost luat de sistemele de gestiune a bazelor de date (SGBD).
Pe parcursul perfectionarii SGBD-urilor, s-a trecut la baze de date relationale, creandu-se impresia ca elementul principal pe baza caruia trebuie perfectionate SGBD-urile il reprezinta structura datelor. Avem astfel de a face cu o abordare orientata spre date.
Cand s-a pus problema aplicatiilor in timp real, factorul cel mai important se parea a fi evenimentul. A aparut astfel orientarea spre evenimente.
Structurarea programelor a evoluat si ea odata cu metodele de analiza, dar era din ce in ce mai greu de tinut pasul cu metoda de analiza, mai exact cu orientarea abordarii sistemelor informatice. Preocuparile analistilor-programatori pentru a pune in concordanta structura programelor cu metoda de analiza a sugerat o noua abordare si anume legarea evenimentelor de obiect si a programelor (numite de asta data metode) de evenimente.
A aparut astfel orientarea pe obiecte, numai ca spre deosebire de celelalte abordari, ea se extinde si in alte domenii de activitate, devenind un mod de a concepe realitatea, adica o paradigma.
Metodologia elaborarii sistemelor informatice a fost conceputa initial ca un ansamblu de principii si indicatii, tehnici si metode grupate si ordonate ca sa duca la realizarea sistemului informatic. Cuvantul "metoda" folosit in aceasta definitie nu are nimic de a face cu metoda-program asociata evenimentelor unui obiect si nici cu metoda de abordare a sistemelor informationale. Aici prin metoda se intelege un set de reguli aplicabile unui domeniu restrans din cadrul unei metodologii.
In prezent metodologia este vazuta ca setul finit, particular definitoriu al unei metode (metoda de abordare a sistemelor informatice), prin intermediul unui sistem coerent de formulare si/sau procese informatice, necesare pentru modelarea si formalizarea totala a unui sistem informatic.
Metodologiile evolueaza odata cu tehnologia informatiei, dar o metodologie de realizare a sistemelor informatice trebuie sa cuprinda:
- etapele procesele de realizare a unui sistem informatic structurate in subetape , activitati sarcini precum si continutul lor
- fluxul realizarii acestor etape sau procese, subetape si activitati;
- modalitatea de derulare a ciclului de viata a sistemului informatic;
- modul de abordare a sistemului;
- strategiile de lucru/metodele de realizare;
- regulile de formalizare a componentelor sistemului informatic;
- tehnicile, procedurile, instrumentele, normele si standardele utilizate;
- modalitatile de conducere a proiectului (planificare, programare, urmarire) si modul de utilizare a resurselor financiare, umane si materiale.
In legatura cu sistemele informatice se mai folosesc doua notiuni si anume ciclul de dezvoltare a sistemului informatic si ciclul de viata al dezvoltarii sistemelor.
Ciclul de viata al dezvoltarii sistemelor (CVDS ) se extinde pe intervalul de timp cuprins intre decizia de elaborare a sistemului informatic si decizia de abandonare sau de inlocuire cu alt sistem informatic.
Ciclul de dezvoltare a sistemului informatic se extinde de la decizia de elaborare a sistemului informatic pana la momentul intrarii sistemului in exploatare.
Ciclul de dezvoltare a sistemului este inclus in ciclul de viata al dezvoltarii sistemelor.
In tabelul de mai jos sunt prezentate trei exemple de metodologii si de etapizare ale ciclului de dezvoltare. Aceste etape, sau altele (depinde de paradigma prin care vedem sistemul informational si de modelul ales pentru CVDS ), trebuie respectate la o scara corespunzatoare si in cazul aplicatiilor.
De altfel, este recomandabil ca si atunci cand ne propunem sa realizam doar o aplicatie, sa facem mai intai o analiza a intregului sistem informatic, (evident 'sapand' doar atat de adanc cat este necesar pentru ca aplicatia noastra sa fie compatibila cu aplicatiile existente si cu cele care vor fi realizate in viitor) si apoi sa continuam doar cu aplicatia ce ne intereseaza.
Metoda SSADM (1982) |
Metoda MERISE |
Metoda ICI din Romania |
- studiul de fezabilitate; - analiza cerintelor; - specificarea cerintelor; - specificarea logica; - proiectare fizica (inclusiv programarea); |
- studiul de evaluare; - modelarea globala; - modelarea conceptuala; - modelarea organizationala; - logica; - fizica; implementarea (inclusiv programarea) |
- elaborarea temei de realizare; - proiectarea de ansamblu; - proiectarea de detaliu; - elaborarea programelor; - implementarea sistemului. |
Lista metodologiilor nu se opreste la cele trei sau patru exemple de mai sus, dar nici nu ne propunem sa facem aici o trecere in revista a tuturor metodologiilor existente pana in prezent. Ceea ce ne intereseaza este sa retinem categoriile de metode cu specificul lor, pentru ca noi sa ne alegem una sau doua metodologii care se preteaza cel mai bine la specificul informaticii de gestiune si sa le aprofundam pentru a le folosi in activitatea noastra de viitor.
In acest sens remarcam ca dupa modul de abordare a sistemelor informatice exista metodologii cu abordare structurata si metodologii cu abordare orientata obiecte.
Metodologiile cu abordare structurata presupun impartirea sistemului in subsisteme pe baza functiilor sistemului (cazul abordarii functionale) sau in functie de date (abordarea bazata pe date). Exemplele de metodologii de mai sus fac parte din categoria metodologiilor cu abordare structurata.
Metodologiile cu abordare orientata obiect folosesc conceptele tehnologiei orientate pe obiecte. Etapele ciclului de viata al dezvoltarii orientate obiect sunt:
analiza ;
proiectarea, divizata in proiectarea de sistem si proiectarea obiectelor ;
- implementarea.
Metodologiile cu abordare orientata obiect s-au dezvoltat la inceput cu multe incompatibilitati, ceea ce a facut ca in 1997 sa apara un standard cu privire la simboluri, notatii, tipuri de diagrame, tipuri de modele, etc. Acesta este cunoscut sub numele de Unified Modeling Language sau UML.
UML nu numai ca a standardizat dezvoltarea de produse soft bazate pe obiecte, dar a pus bazele unui proces iterativ de dezvoltare a sistemelor informatice. Acesta se bazeaza pe urmatoarele etape:
definirea problemei;
structurarea solutiei cu subetapele:
stabilirea actorilor
stabilirea cazurlor de utilizare;
stabilirea relatiilor dintre cazurile de utilizare;
construirea diagramelor cazurilor de utilizare;
analiza sistemului care cuprinde:
identificarea cazurilor de utilizare
diagrama cu structura domeniului claselor;
initializarea diagramei de clase, a diagramei obiectuale, diagramele de stare sau dupa caz, diagramele de activitate;
pentru clasele cu comportament dinamic se construiesc diagramele de secventa si diagramele de colaborare;
construirea solutiei;
proiectarea sistemului: proiectarea arhitecturii si proiectarea de detaliu;
implementarea sistemului.
Ulterior s-a dezvoltat un ghid practic pentru utilizarea UML, numit Rational Unified Processes sau RUP caruia i s-a asociat si un CASE (Computer Aided System Engineering) foarte cunoscut astazi, numit Rational Rose.
Functionalitati de modelare UML ca si round-trip engineering (combinarea generarii automate de cod cu reverse engineering - generare de diagrame prin analiza codului) ofera si Visual Studio prin modulul Visual Modeler.
Intr-un ghid practic ca RUP utilizatorul trebuie sa descrie cine, ce si cum face, intrebari carora in RUP le corespund conceptele de rol, document si activitate.
In cazul RUP etapele ciclului de dezvoltare au o configuratie mai stranie prin faptul ca desi ele vizeaza procese, in documentatie este specificat obiectul activitatii (de aceea in original este vorba de workflow, adica fluxul de lucru).
Aceste etape/procese sunt:
modelarea activitatii;
cerinte
analiza si proiectare;
implementare;
testare;
dezvoltare;
managementul schimbarii;
managementul proiectului;
mediul.
Se pleaca de la premiza ca parcurgerea acestui flow se va face iterativ de mai multe ori si din puncte diferite. De asemeni se mai presupune ca in cadrul fiecarei etape se pot parcurge patru faze initiere, elaborare, constructie si tranzitie.
Ca urmare fazele si procesele de parcurs atunci cand folosim un process de tip RUP se reprezinta mai usor sub forma unei matrici continand pe verticala procesele iar pe orizontala cele patru faze pe care le poate parcurge oricare din cele 9 procese. Primele 6 procese sunt grupate sub numele de nucleu sau procese de lucru, iar ultimele 6 constituie suportul sau procese suport. La intersectia unui proces cu fiecare din fazele prin care ar putea trece se marcheaza cu linie curba situata mai sus sau mai jos fata de axa randului respectiv, ponderea fazei in cadrul procesului respectiv ca in randul Analiza si proiectare din tabelul de mai jos (daca in cadrul unei intersectii/casete sunt mai multe iteratii linia se va diviza corespunzator):
FAZE |
||||||||
Procese de lucru |
Initiere |
Elaborare |
Constructie |
Tranzitie |
||||
Modelare afacere |
| |||||||
Cerinte | ||||||||
Analiza si proiectare |
| |||||||
Implementare | ||||||||
Testare | ||||||||
Dezvoltare | ||||||||
Procese suport | ||||||||
Managementul schimbarii | ||||||||
Managementul proiectului | ||||||||
Mediul | ||||||||
Initial |
Elab#1 |
Elab#2 |
Con1 |
Con3 |
Con3 |
Tran#1 |
Tran#2 |
|
Iteratii |
||||||||
CONCLUZII
- Sistemul informational este un ansamblu tehnico-organizatoric de proceduri de constatare, consemnare, culegere, verificare, transmitere, stocare si prelucrare a datelor, in scopul satisfacerii cerintelor informationale necesare conducerii procesului fundamentarii si elaborarii deciziilor;
- Sistemul informatic consta din partea automatizata a sistemului informational (utilizatorii implicati in automatizare si cadrul organizatoric aferent) careia i se adauga si alte elemente necesare pentru automatizarea obtinerii informatiilor necesare conducerii in procesul de fundamentare si elaborare a deciziilor si anume : echipamente (hardware), programe (software), comunicatii, o baza stiintifica si metodologica precum si baza informationala;
- In afara sistemelor informatice traditionale exista si sisteme informatice dedicate cum ar fi sistemele suport de decizie si sistemele expert, dar si unele sisteme informatice de tip nou ca cele pentru proiectare asistata de calculator, sistemele multimedia, sistemele pentru comertul elctronic si sistemele deschise;
- Sistemul informatic se elaboreaza pe baza unei metodologii. Exista un ciclu de dezvoltare a sistemului informatic, iar metodologia de elaborare a sistemului informatic trebuie sa prevada printre altele si etapele ciclului de dezvoltare a sistemului informatic;
- Metodologia elaborarii sistemelor informatice este un ansamblu de principii si indicatii, tehnici si metode grupate si ordonate ca sa duca la realizarea sistemului informatic. Exista metodologii structurate si metodologii cu abordare orientata obiect;
- In conformitate cu abordarea functionala, sistemele informatice sunt organizate pe subsisteme, aplicatii si unitati functionale sau proceduri logice. Pentru programatori mai sunt relevante inca doua nivele, inferioare unitatii functionale si anume, unitatea de prelucrare sau procedura automata si modulul program;
- Pentru automatizarea elaborarii sistemelor informatice se folosesc softuri de tip CASE, cum ar fi AMC Designer (MERISE) si Easy Case (SSADM) pentru metodologii structurate sau Oracle Designer (mediu CASE integrat), Rational Rose (RUP) si Visual Modeler (Visual Basic) pentru metodologii orientate obiect .
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 2502
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved