Sunteți pe pagina 1din 68

UNIVERSITATEA "VASILE ALECSANDRI" DIN BACAU Facultatea de Stiinte Economice Programul de masterat Contabilitate, Audit si Informatica de Gestiune

PROIECTAREA SISTEMELOR INFORMATICE


Note de curs
Master, CAIG, anul I 2012-2013

Lect. univ. dr. Romic Adam

CUPRINS
1. Noiuni generale privind sistemele informatice 1.1. Conceptul de sistem informatic 1.2. Rolul sistemului informatic n procesul decizional 2. Tehnici de proiectare a sistemelor informatice 2.1. Principii de baza in proiectarea si realizarea sistemelor informatic 2.2. Modele ale ciclului de viata al sistemului informatic 2.3. Etape de realizare a sistemelor informatice 3. Metodologii de analiza si proiectare a sistemelor informatice 3.1. Metodele sistemice 3.2. Metodele orientate obiect 3.3. Metodele orientate agent 4. Fundamentele sistemelor multiagent 2 2 6 8 8 11 17 18 18 18 19 21 21 22 26 27 29 29 33 35 37 40 42 42 45 46 49

4.1. Concepte i caracteristici ale agenilor


4.2. Taxonomia agentilor software

4.3. Sistemele multiagent 4.4. Aplicaii i avantaje ale sistemelor multiagent


5. Virtualizarea afacerilor cu tehnologia agent 5.1. Modele de afaceri electronice 5.2. ntreprinderea virtual versus ntreprinderea tradiional 5.3. Caracteristici i tipuri de ntreprinderi virtuale 5.4. Abordarea sistemului informaional din perspectiva tehnologiei agent 5.5. Modelarea avansurilor spre decontare prin tehnologia workflow bazat pe ageni 6. Modele de referin pentru standardizarea sistemelor bazate pe tehnologia agent 6.1. Modelul FIPA 6.2. Comunicarea ntre ageni 6.3. Limbajul KQML Bibliografie

Capitolul 1.
NOIUNI GENERALE PRIVIND SISTEMELE INFORMATICE 1.1. Conceptul de sistem informatic

Definit iniial de ctre Academia Francez (n 1966), ca fiind tiina prelucrrii raionale, ndeosebi prin maini 1 automate, a informaiei, considerat ca suport al cunotinelor umane i al comunicrilor n domeniile tehnicii, economice i sociale, informatica se contureaz ca activitate practic i concepie teoretic, pe msura dezvoltrii calculatoarelor electronice i a perfecionrii tehnologiei de prelucrare a datelor. Ca domeniu distinct de activitate, informatica preia treptat toate sarcinile dintr-un sistem economico-social privind elaborarea de metode, tehnici, concepte i sisteme pentru prelucrarea automat a informaiei. Din acest punct de vedere informatica este definit ca fiind tiina care se ocup cu studiul i elaborarea metodelor de prelucrare a informaiei cu ajutorul sistemelor automate de calcul. Ca activitate practic, informatica are o existen dinamic; ea apare i se dezvolt dintr-o necesitate obiectiv, aceea de a rezolva problemele complexe privind prelucrarea datelor. n stadiul actual de maturizare a informaticii, aceasta trebuie s urmreasc dou obiective majore: pe de o parte, s realizeze prin metode i tehnici proprii, sisteme informatice performante prin care s se asigure accesul larg la informaie, iar pe de alt parte, s asigure utilizarea eficient a tuturor resurselor sistemelor de calcul. Activitatea uman, indiferent sub ce form se desfoar, este generatoare de informaii. Cu ct aceast activitate este mai complex i mai dinamic, cu att volumul de informaii crete i se diversific tinznd s frneze sau chiar s blocheze procesul decizional. Apare astfel un conflict ntre creterea volumului de informaii i posibilitile limitate ale sistemelor clasice de prelucrare, sisteme ce nu pot furniza informaii ct mai rapide, complete i corecte necesare lurii deciziilor. n aceste condiii, rolul informaticii este decisiv n deblocarea i fluidizarea sistemelor informaionale i decizionale, prin asigurarea gestiunii, prelucrrii i distribuirii informaiei ntr-un mod ct mai eficient ctre utilizatori. Ca domeniu de activitate, informatica cuprinde toate activitile legate de proiectarea, realizarea i exploatarea sistemelor de prelucrare automat a datelor, n scopul creterii eficienei activitilor umane, Informaiile i cunotinele au o mare importan att pentru dezvoltarea personalitii umane, ct i pentru evoluia vieii i societii democratice. Nici societatea i nici indivizii ei, nu pot evolua, nu pot progresa satisfctor dac nu dispun de informaii. Prin intermediul informaiilor se asigur transferul cunotinelor de la o generaie la alta, se asigur accesul la cele mai avansate realizri ale omenirii2. Conceptul de informaie reprezint o noiune de maxim generalitate care semnific o tire, un mesaj, un semnal, etc. despre evenimente, fapte, stri, obiecte, etc. n general despre forme de manifestare a realitii care ne nconjoar. Forma de exprimare i transmitere a informaiilor o reprezint comunicarea. Informaia are sens de noutate pentru cel cruia i se adreseaz, indiferent de forma pe care o ia (tire, semnal, comunicare). Se poate spune deci c informaia este un mesaj, dar cu precizarea c nu orice mesaj este o informaie. Dac mesajul nu transmite nici o noutate i nu are un suport real, atunci acesta nu prezint interes pentru receptor i deci nu are caracter de informaie. Informaiile dobndite n urma unui proces de informare ntr-un anumit domeniu, formeaz cunotinele despre acel domeniu, iar mulimea acestora reprezint patrimoniul de cunotine. Cunotinele reprezint o nsumare n timp a tuturor informaiilor dobndite ntr-un anumit domeniu. Data este forma de reprezentare material a informaiei. Datele reprezint suportul formal al informaiei care se concretizeaz n cifre, litere, simboluri, coduri i alte semne plasate pe supori tehnici de date. Datele reprezint obiectul prelucrrii pentru informatic, materia prim a acesteia i numai prin asociere cu realitatea pe care o reflect, se poate spune c informatica genereaz informaii.
1 2

Arsac, J., Informatica, Editura Enciclopedica Romna, Bucuresti, p. 71 Trauth, E.M., Kahn, B.K., Warden, F., Information literacy. An introduction to information systems, MacMillan Publishing Company, 1991

Datele obinute n urma procesului de prelucrare pot avea calitatea de informaii pentru o anumit categorie de utilizatori sau rmn simple date dac i pierd calitatea de noutate semantic. n practic, de multe ori termenul de informaie este utilizat pentru a desemna date, iar expresia "prelucrarea informaiilor" nlocuiete expresia "prelucrarea datelor". Se poate considera c datele prelucrate, n msura n care afecteaz n sens pozitiv comportamentul receptorilor (oameni sau maini), au calitatea de informaii. n procesul prelucrrii i utilizrii informaiilor, acestea sunt privite din trei puncte de vedere: - din punct de vedere sintactic, cnd se urmrete aspectul formal al reprezentrii acestora, n sensul c datele care se prelucreaz se supun riguros anumitor reguli de validitate; - din punct de vedere semantic, urmrindu-se semnificaia, nelesul informaiei (coninutul real al informaiei) ce deriv din datele prelucrate; - din punct de vedere pragmatic, urmrindu-se utilitatea, adic msura n care sunt satisfcute cerinele utilizatorilor. Dei informatica are n vedere n primul rnd aspectul formal al informaiei, n procesul prelucrrii datelor nu se poate face abstracie de nici unul dintre cele trei aspecte (sintactic, semantic i pragmatic). Chiar dac n procesul prelucrrii datelor se pornete de la un interes pragmatic, acesta nu se poate realiza dac nu se respect anumite reguli de sintax i semnificaie privind datele supuse prelucrrii. Sistemul informaional asigur gestiunea tuturor informaiilor din cadrul unui sistem economic, folosind toate metodele i procedeele de care dispune. La studierea unui sistem trebuiesc analizate in principal urmatoarele aspecte: mediul in care acesta functioneaza partile componente ale sistemului relatiile care se manifesta in cadrul sistemului intrarile si iesirile sistemului obiectivul(ele) sistemului Sistemul informatic este un ansamblu tehnico-organizatoric de metode, procedee, echipamente de calcul si personal de specialitate, prin care se asigura culegerea, verificarea, transmiterea, stocarea si prelucrarea informatiilor in vederea fundamentarii si elaborarii deciziilor Dupa cum rezulta si din definitie, putem spune ca sistemul informatic este format din urmatoarele componente principale: - resursele materiale (hardware-ul) - totalitatea elementelor necesare pentru introducerea datelor, prelucrarea datelor, stocarea programelor si rezultatelor obtinute, comunicarea rezultatelor - resursele logice (software-ul) totalitatea programelor ce asigura functionarea si exploatarea controlata a sistemului: sistemele de operare, sisteme de gestionare a bazelor de date, programe utilitare, pachete de programe, software de aplicatii etc - baza de date ansamblul datelor stocate in vederea prelucrarilor prin programele de aplicatii. - personalul intregul personal care intr-un fel sau altul folosesc sistemul informatic: specialisti (analisti de sistem, programatori, proiectanti de sisteme, ingineri de sistem, administratori baze de date, operatori) si nespecialisti (consultanti, utilizatori finali beneficiari ai serviciilor oferite de sistemele informatice etc.) - metodologiile principiile, proiectele si procedurile aplicate in sistemele informatice pentru a fi realizate sarcinile stabilite Ansamblul informaiilor i deciziilor (caracterizate prin coninut, frecven, calitate, volum, form, suport), necesare desfurrii unei anumite activiti sau operaii i care se transmit ntre dou posturi de lucru, formeaz un flux informaional. ntre circuitul informaional i fluxul informaional exist o strns dependen n sensul c circuitul informaional reflect traseul (drumul) i mijlocul care asigur circulaia unei informaii de la generarea ei i pn la arhivare, iar fluxul informaional reflect ansamblul informaiilor vehiculate, necesare unei anumite activiti. Sistemul informaional cuprinde, ntr-o concepie unitar, circuitele i fluxurile informaionale, la care se adaug metodele i tehnicile de prelucrare a informaiilor. Fluxul informational este compus din informatii strategice, tactice si operative. La nivel strategic sistemul informational sprijina luarea deciziilor de catre conducere. Acestea sunt rezultate pe termen lung, privesc intreaga activitate desfasurate in intreprindere. Informatiile se refera la: - valoarea rezultatelor financiare necesare stabilirii modului de repartizare a profitului - starea financiara actuala 3

modul de utilizarea a capacitatilor de productie. planificarea

La nivel tactic, informatiile oferite de sistemul informational sprijina luarea deciziilor privind activitatilor ce vor fi desfasurate in firma pe termen mediu.

La nivel operational sistemul informational sprijina luarea deciziilor pentru desfasurarea activitatilor curente ale firmei, informatii referitoare la productie (stoc de materii prime, materiale), aprovizionare cu materii prime, materiale, la desfacere, situatia mijloacelor fixe, situatia necesarului de mijloace de plata, a obligatiilor de plata , cu termene de scadente. Sistemul informatic este o component a sistemului informaional3 i anume, acea parte a acestuia care preia i rezolv sarcinile de culegere, prelucrare, transmitere, stocare i prezentare a datelor, cu ajutorul sistemelor de calcul. Pentru a-i ndeplini rolul n cadrul sistemului informaional, sistemul informatic cuprinde ansamblul tuturor resurselor, metodelor i tehnicilor, prin care se asigur prelucrarea automat a datelor. Procesul de prelucrare automat a datelor n cadrul unui sistem informaional, reprezint tocmai procesul prin care datele sunt supuse operaiilor de culegere, transmitere, prelucrare i stocare.

Principalele activiti dintr-un sistem informatic sunt cele de prelucrarea informaiilor. Acestea includ4: a - Introducerea datelor; b - Procesarea datelor pentru obinerea de informaii; c - Ieirea produselor informaionale; d - Stocarea resurselor informaionale; e - Controlul performanelor sistemului. Introducerea datelor datele despre tranzaciile comerciale sau despre alte evenimente trebuie s fie adunate i pregtite pentru prelucrare. Introducerea se refer la editarea de nregistrri. Odat introduse, datele pot fi transferate pe un suport (magnetic/optic) pn la prelucrare.

3 4

Reix, R., Informatique applique la gestion, Les Editions Foucher, Paris, 1990, vol.2, p.7 Bernard-Faqouillet, E., Boufares F., Informatique pour la comptabilite et la gestion, Editions Eska, Paris, 1995, p.18.

Prelucrarea datelor datele care sunt subiectul activitilor de prelucrare cuprind: calcule, comparri, sortri, clasificri sau nsumri. Aceste activiti organizeaz, analizeaz i manipuleaz datele convertindu-le n informaii pentru utilizatori. Ieirea produselor informaionale informaiile rezultate n urma prelucrrii apar n forme variate pentru a fi transmise utilizatorilor n forma solicitat de acetia. Informaiile trebuie s ndeplineasc anumite condiii de calitate ce se refer n general la: timp viteza cu care informaia ajunge la utilizator; coninut atributele care confer valoare informaiei; form felul n care ajunge la utilizator; Stocarea produselor informaionale aceast activitate nu constituie o component foarte important n cadrul sistemelor informatice. Ea reprezint activitatea dintr-un sistem informatic n care datele i informaiile sunt depozitate ntr-un mod organizat n vederea unei utilizri ulterioare. Atunci procesul de regsire este necesar utilizatorilor prin rapiditatea i acurateea sa. Suporturile utilizatorilor pentru stocarea datelor i informaiilor sunt n general magnetice sau optice. Controlul performanelor sistemului reprezint o activitate de mare importan n cadrul sistemului informatic o reprezint controlul performanelor sale.

1.2. Rolul sistemului informatic n procesul decizional


Sistemele informatice joac un rol important n a asigura suportul activitilor manageriale i operaionale n 5 business. Din acest motiv exist posibilitatea de a clarifica tipologia sistemelor informatice la nivel conceptual n : - Sisteme informatice operaionale - sisteme pentru procesarea (prelucrarea) tranzaciilor - sisteme pentru controlul proceselor; - sisteme pentru colaborarea la nivelul organizaiei - Sisteme informatice pentru management - sisteme informatice pentru management (n general); - sisteme informatice pentru fundamentarea deciziei;

Sistemele informatice operaionale sunt necesare pentru a prelucra datele generate i utilizate n operaiile de business. Aceste sisteme produc a varietate de produse informaionale pentru uz intern sau extern care vor fi prelucrate mai departe de ctre sistemele informatice pentru management. n general acestea au rolul de a procesa date privind business-ul si de a controla procese industriale. Sistemele informatice de prelucrare a tranzaciilor sunt orientate ctre prelucrarea datelor rezultate din business sau operaionale: vnzri, cumprri, inventar i ofer o varietate de produse informatice (liste, situaii etc.) de uz intern sau extern. Prelucrarea datelor se face n urma acumulrii (la o perioad de timp) sau n timp real. Sistemele informatice pentru controlul proceselor sunt acele sisteme care utilizeaz computerul pentru a controla anumite procese fizice (linii de producie robotizate, fabrici automate etc.) Sistemele informatice pentru colaborarea la nivelul organizaiei sunt sisteme care utilizeaz o gam larg de tehnologii informatice pentru a asigura colaborarea, comunicarea dintre angajaii (membrii) unei organizaii. Aceasta ajut la schimbul de idei, mprirea resurselor, coordonarea ntre membrii. Scopul acestor sisteme informatice este de a crete productivitatea i creativitatea echipelor i grupurilor de lucru dintr-o ntreprindere modern. Sistemele informatice pentru management sunt orientate spre a oferi suport i informaii pentru autoritatea efectiv de luare a deciziei. Ele asigur suportul pentru necesitile decizionale de la nivelul de vrf (strategic), la cel de mijloc (tactic) sau cel operaional. Sistemele informatice pentru management ofer o varietate de rapoarte
5

Nitchi, S., Racovitan, D., si colectiv, Bazele prelucrrii informaiilor i tehnologie informaional, Editura Intelcredo, Deva, 1996, pp. 2124. 6 Mawhinney, C.H., Millet, I., Executive information systems: A critical perspective, in Information and Management, nr. 23, 1992, pp. 83-92.

specifice folositoare n activitile manageriale curente. Produsele informatice pot fi obinute la cerere, periodic sau cnd apar necesiti excepionale. Sistemele informatice pentru fundamentarea deciziei ofer managerilor utilizatori informaii ntr-un mod interactiv ori de cte ori este nevoie. Managerii i genereaz informaiile de care au nevoie pentru decizii, folosind modele decizionale i baze de date specializate. Sistemele informatice pentru activitatea executiv sunt sistemele care asist nivelul mediu i de vrf al managementului organizaiei. Ofer un acces imediat i uor la informaiile necesare atingerii obiectivelor strategice ale firmei. Au un mod uor de operare i nelegere. Inteligena artificial - este o combinaie ntre tiin i tehnologie, al crei scop este de a dezvolta computere care pot gndi. Se pornete de la ideea c dezvoltarea de funcii ale computerului sunt asociate n mod normal cu inteligena uman. Sistemele expert - sunt sistemele bazate pe computer i care i utilizeaz cunotinele n aplicaii specifice cu o complexitate ridicat i care acioneaz similar cu un consultant uman. Aceste sisteme se compun dintr-o baz de cunotine (informaii) i nite module software care se interfereaz i comunic apoi rspunsul la ntrebrile utilizatorului. Sistemele de management a cunotinelor. Cele mai multe organizaii au realizat c au devenit companii de creare de cunotine pentru a supravieui i se dezvolt ntr-un mediu de business ntr-o continu i rapid schimbare. Aceste sisteme sunt dezvoltate pentru a gestiona nvmntul organizaional i business know-how-ul. Sisteme informatice strategice - asigur rolul strategic al sistemelor informatice care implic utilizarea tehnologiei informaiei pentru dezvoltarea de produse, servicii, care se vor constitui n avantaje strategice fa de competitori pe piaa global. Aceast necesitate a creat sisteme informatice strategice care sprijin poziia competitiv i strategia ntreprinderii. Un sistem informatice strategic poate fi orice tip de sistem informatice care ajut organizaia s ctige un avantaj competitiv, s reduc din distana competitiv sau s-i ndeplineasc obiectivele strategice. Sistemele informatice pentru business - aceste sisteme pot sprijini direct att activitile operaionale ct i pe cele de management din zona business-ului: contabilitate, finane, managementul resurselor umane, marketing, turism i management operaional. Pot fi att sisteme informatice operaionale ct i sisteme informatice pentru management. Sistemele informatice integrate - sistemele informatice din lumea real sunt de fapt combinaii integrate a mai multor tipuri de sisteme informatice. Acestea sunt sisteme informatice bazate pe computere care combin activitile desfurate de mai multe tipuri de sisteme informatice. Cele mai multe sisteme informatice sunt elaborate pentru a produce informaii i pentru a sprijini luarea deciziilor la diferite niveluri ale managementului, dar i pentru inerea de diverse evidene i prelucrare a tranzaciilor8.
7

7 8

ERMES, Systemes dinformation. La perspective du management, Edition Masson, Paris, Milan, Barcelone, 1994, p.32 Oprea, D., Premisele i consecinele informatizrii contabilitii, Editura Graphix, Iasi, 1994,p.22

Capitolul 2. Tehnici de proiectare a sistemelor informatice


2.1 Principii de baza in proiectarea si realizarea sistemelor informatice Proiectarea si realizarea sistemelor informatice are la baza urmatoarelor principii generale: 1. fundamentarea realizarii sistemelor informatice pe criterii de eficienta economica. Acest principiu presupune: - evaluarea cheltuielilor necesare pentru conceperea, realizarea, implementarea si exploatarea curenta a sistemelor informatice - compararea cheltuielilor cu efectele economice directe si indirecte obtinute in urma implementarii 2. participarea nemijlocita a beneficiarului la conceperea si realizarea sistemului, presupune: - adoptarea si transpunerea in practica de catre beneficiar a tuturor masurilor cu caracter organizatoric necesar desfasurarii proiectarii si introducerii in exploatare a sistemului - participarea beneficiarului cu specialistii proprii la elaborarea conceptiei si realizarii efective a sistemului informatic - definirea obiectivelor si performantelor viitorului sistem - definirea cerintelor informationale la care urmeaza sa raspunda sistemul - stabilirea si mobilizarea resurselor umane si financiare pentru realizarea sistemului - pregatirea personalului din compartimentele functionale pentru angajarea in activitatea de informatica 3. asigurarea calitatii solutiei adoptate, presupune: - aplicarea celor mai eficiente metode si tehnici de proiectare - specificarea unor caracteristici de calitate care sa fie validate si controlate pe parcursul realizarii sistemului adoptarea de solutii in concordanta cu resursele disponibile, presupune: - corelarea permanenta a proiectarii SI si caracteristicile echipamentelor de tehnica de calcul existente sau prevazute a intra in dotare - integrarea si valorificarea cat mai completa a echipamentelor de calcul de diverse tipuri existente deja in dotarea beneficiarului.

4.

Proiectarea sistemelor informatice de gestiune se realizeaza in functie de particularitatile sistemelor de conducere, operational si informational ale fiecarei organizatii. n vederea proiectrii abordarea sistemic reprezint cea mai bun soluie, si are in vedere parcurgerea mai multor etape din aa numitul ciclu al dezvoltrii de sisteme informatice9, respectiv: 1. Investigarea sistemului -> Studiul de fezabilitate 2. Analiza sistemului existent -> Necesitile funcionale 3. Proiectarea sistemelor -> Specificaiile de sistem 4. Implementarea sistemelor -> Sistemul operaional 5. ntreinerea sistemului -> mbuntirea sistemului Investigarea sistemului10 Primul pas n procesul de elaborare este de a investiga sistemele existente. Aceast investigaie poate include studii preliminare ale sistemului informatic propus cu soluii pentru rezolvarea problemelor ce vor urmri: determinarea faptului c exist sau nu o problem;

elaborarea unui studiu de fezabilitate;

Hoffer J.A., George J.F., Valacich J.S., - Modern Systems Analysis and Design, The Benjamin/Cummings Publishing Company, Inc., Menlo Park, CA, 1996 10 Lungu I., Sabau G., Velicanu M., Muntean M., Ionescu S., Posdarie E. - Sisteme informatice, Editura Economica, 2003

dezvoltarea unui plan de management.

Studiul de fezabilitate este un studiu preliminar care investigheaz necesarul de informaii i determin necesarul de resurse, costuri, avantaje precum i fezabilitatea proiectului propus. n acest sens, fezabilitatea poate fi: - fezabilitate organizaional care se canalizeaz asupra modului n care sistemul informatic propus atinge obiectivele organizaiei; - fezabilitate economic care pune accentul pe costurile i beneficiile sistemului propus n relaie cu osturile dezvoltrii i operrii sale; - fezabilitate tehnic care se ocup de necesitile de hardware i software i de modul n care acestea pot fi achiziionate n timp; - fezabilitate operaional ce analizeaz dac managerii, angajaii etc., pot opera, utiliza sistemul propus. Analiza sistemului existent Analiza sistemelor reprezint un studiu asupra necesitilor informaionale ale utilizatorului final. Ea implic studii detaliate asupra: 1. informaiilor necesare pentru organizaie i utilizatorii finali; 2. activitile, resursele i produsele existente n cadrul sistemului informatic prezent. Premergtor elaborrii unui nou sistem trebuie fcut o analiz a sistemului prezent (manual sau informatic). Aceasta analiz implic studiul activitilor, resurselor i produselor. Se mai analizeaz modul n care sistemul actual utilizeaz: hardware, software, persoanele, convertirea lor n produse informatice; cum se efectueaz introducerea, transmiterea, prelucrarea i controlul datelor. Proiectarea sistemelor Design-ul sistemului dac analiza sistemului descrie ce fel de sistem trebuie folosit pentru ndeplinirea scopului, design-ul sistemului specific cum sistemul i va atinge obiectivele. Design-ul este constituit din specificaii utilizate pentru: - dezvoltare de softuri; - achiziia de hardware; - testarea sistemului; - alte activiti legate de implementarea sistemului. Totodat, design-ul sistemului are la baz trei activiti: - designul interfeei cu utilizatorul; - datele utilizate; - procesul. Design-ul interfeei se refer la interaciunea ce va avea loc ntre utilizatorul final i program (aplicaie). Acesta trebuie s fie atractiv i uor de utilizat, s poat fi folosite i alte echipamente de introdus date (de exemplu un scanner). Interfaa cu utilizatorul are n vedere: - ecranele de afiare; - dialogurile interactive calculator/utilizator; - formulare de introducere a datelor; - documente; - rapoarte; Design-ul datelor are n vedere structura bazei de date i a fiierelor ce vor fi utilizate de noul sistem informatic. n acest caz trebuie avut n vedere: - atributele sau caracteristicile entitilor (obiecte, oameni, locuri, eveniment) prin care sistemul informatic propus - relaiile ce se stabilesc ntre aceste entiti; - specificarea elementelor prin care fiecare entitate va fi urmrit de ctre SI propus; - stabilirea condiiilor pentru ca datele utilizate s fie valide. Design-ul procesului aceast activitate are n vedere resursele software, adic programele utilizate precum i procedurile prin care acestea vor fi utilizate de sistem. Astfel, n aceast etap, se vor elabora: - specificaii detaliate de programe i proceduri; - specificaii care s ntrein controlul funcional i s analizeze performanele sistemului. Specificaiile de sistem - vor fi orientate ctre: - resursele hardware; - resursele software;

- resursele de personal. Implementarea sistemului Implementarea de sisteme informatice bazate pe computer ntr-o organizaie implic, din punct de vedere managerial schimbri majore n procesele comerciale, n structurile organizaionale precum i n relaiile de munc. Implementarea de sisteme informatice trebuie vzut ca un proces care asigur respectarea planului elaborat. Astfel, procesul de implementare urmrete investigarea, analiza i designul ca etape ale dezvoltrii sistemului. Activitile principale ale procesului de implementare sunt: 1. Achiziionarea de software, hardware i servicii; 2. Dezvoltarea de software; 3. Pregtirea (trainingul) personalului; 4. Elaborarea documentaiei de sistem; 5. Elaborarea sistemului pilot. ntreinerea sistemului n general ntreinerea sistemului privete testarea, documentarea, trainingul i alte activiti legate de ea. 1. Testarea sistemului, implic urmtoarele activiti: - testarea hardware-ului i a conexiunilor; - testarea i modificarea (dac e cazul) a programelor; - testarea procedurilor de prelucrare a informaiilor. 2. Documentarea Servete ca o metod de comunicare a personalului responsabil cu dezvoltarea, implementare i ntreinerea sistemelor informatice. Aceasta e important n diagnoza erorilor i a reparrii lor. Documentarea implic: - manuale pentru procedurile operaionale; - mostre de formulare pentru introducerea datelor; - mostre de rapoarte. 3. Trainingul Este un component vital care servete la buna funcionate a sistemului. Acesta poate include: - pregtirea introducerii datelor - pregtirea procedurilor de lucru - pregtirea personalului n nelegerea necesitii sistemului - pregtirea specific pentru anumite elemente de hardware i software 4. ntreinerea propriu zis Este reprezentat de activitile de monitorizare, evaluare i modificare operaional a sistemului prin care se pot face i unele mbuntiri. Funciile de ntreinere includ: - o postimplementare care vine s asigure c sistemul i ndeplinete obiectivele i corespunde ateptrilor - efectuarea de corecii n dezvoltarea sau utilizarea sistemului care include i o revizuire periodic sau un audit pentru sistem pentru a se asigura c sistemul funcioneaz corespunztor - efectuarea de schimbri n sistem datorate modificrii mediului de afaceri sau a activitii n general.

10

2.2. Modele ale ciclului de viata al sistemului informatic


n timp au fost elaborate mai multe modele ale ciclului de via al SI , autorii ncercnd s identifice, n viziune proprie, etapele de dezvoltare a produsului software. Modelele elaborate au cunoscut mbuntiri permanente ncercndu-se adaptarea lor la noile cerine ale modelrii orientate obiect, precum i inserarea unor etape specifice managementului proiectelor. Modelul cascad 12 Modelul cascad (Waterfall Model) a fost elaborat de W.W. Royce la nceputul anilor 70. Este un model de referin n literatura de specialitate caracterizat prin parcurgerea secvenial a fazelor ciclului de via, faze care la rndul lor sunt formate din activiti iar acestea din urm din subactiviti. Modelul prezint urmtoarele avantaje: - controlul total al fazelor, datorit modului de ordonare a acestora; - uor de nsuit de ctre membrii echipelor de analiz i proiectare; - fiecare faz se ncheie cu o verificare a soluiei oferite i asigur o documentaie prezentnd soluia elaborat. Ca dezavantaje, se pot enumera: - sistemul se pred doar dup parcurgerea etapelor anterioare, ceea ce nseamn o lung perioad de timp; - acord o foarte mare importan fazei de analiz; - nu corespunde inteniilor de abordare dinamic a sistemelor; - nu este deschis schimbrilor ce pot interveni pe parcurs; n timp au fost propuse variante mbuntite ale modelului: - modelul cu revenire la pasul urmtor (waterfall model with back flow) - modelul cu reluare de la faza iniial (Da Capo Waterfall Model). n versiuni mai noi ale modelului cascad, primele faze grupeaz activiti specifice gestiunii proiectului aceste elemente lipsind n modelul iniial.
11

Figura 1- Modelul cascad

Modelul in V Modelul n V este o variant a modelului cascad care aduce elemente calitative noi importante. Un element caracteristic al modelului este introducerea conceptelor de sistem i componente (subsisteme) aplicndu-se teste explicite pentru creterea controlului asupra modului n care se desfoar etapele. Fazele plasate n partea superioar a modelului se caracterizeaz prin implicarea direct a viitorului utilizator.

11 12

Digital - A Guide to Use Digital Program Methodology, 1996 Royce W. W., - Managing the Development of Large Systems, Proceeding of WESTCON, CA, USA, 1970

11

Braul stng al diagramei, parcurs descendent, reunete fazele n cadrul crora se realizeaz, pas cu pas, proiectarea i realizarea sistemului informatic. Detalierea activitilor de proiectare, codificare i asamblare a componentelor se realizeaz gradual. De altfel, Ould, creatorul modelului n forma lui consacrat, a prevzut doar latura din stnga unde efortul principal de proiectare se focalizeaz pe descompunerea sistemului pe componente. Braul drept al diagramei cuprinde reprezentarea fazelor asigurnd asamblarea progresiv a componentelor sistemului pe msura testrii lor individuale, pn la obinerea sistemului global i acceptarea acestuia de ctre beneficiar. n cadrul modelului se remarc realizarea distinciei dintre verificare i validare. Prima se refer la testarea sistemului n diversele stadii pe care le parcurge, iar validarea urmrete s identifice n ce msur sistemul corespunde cerinelor iniiale, ceea ce constituie un punct slab al modelului datorit ntrzierii cu care se produce 13 aceast validare . Avantajele modelului sunt: - sistemul poate fi livrat i pe componente independente, realizate la perioade scurte de timp; - proiectul sau sistemul final poate fi realizat de mai multe echipe sau persoane datorit modularizrii lui. Dintre dezavantaje pot fi enumerate: - imposibilitatea aplicrii lui n toate cazurile, deoarece n unele cazuri nu exist elementele necesare descompunerii ntregului; - componentele pot fi realizate numai dup ce ntregului sistem i se defineste arhitectura, ceea ce presupune cunoasterea si formularea cerintelor din faza de nceput de abordare a sistemului; - de fiecare dat cnd se adaug o noua component, sistemul poate fi considerat unul nou, astfel nct eforturile de integrare a acestora n ntreg sunt destul de mari. Modelul n V i-a oferit lui Rumbaugh elementele necesare pentru modelul pe care l-a elaborat n 1991 i totodat este punct de plecare pentru modelele n W i X.

Figura 2 - Modelul n V

13

Sommerville I., - Software Engineering, lth Edition, Addison-Wesley, UK, 1989

12

Modelul in W Acest model reia ideea modelului n V pe care l dezvolt i perfecioneaz prin integrarea activitilor de validare la nivelul fazelor de proiectare.

Figura 3 - Modelul W

Modelul incremental Modelul incremental14 este o alt variant a modelului cascad care promoveaz ideea proiectrii i realizrii independente a componentelor dup definirea arhitecturii globale a SI.. Sistemul va putea fi livrat beneficiarului i etapizat pe msura realizrii componentelor (n funcie de prioritile formulate de beneficiar) dar ntr-o astfel de abordare pot aprea dificulti legate de integrarea componentelor n sistemul final. Din figur se observ faptul c primele dou etape definirea cerinelor i analiza sunt identice cu cele dou etape de nceput ale modelului cascad, ns din momentul definirii arhitecturii SI fiecare component i urmeaz propriul ciclu de via. Spre deosebire de modelul n V care presupunea integrarea componentelor, testarea i validarea acestuia, de aceast dat se ofer i posibilitatea livrrii independente a componentelor SI ctre beneficiar fr a se exclude i posibilitatea livrrii SI final avnd toate componentele integrate.

14

Stanciu V. (coordonator) Sisteme informatice financiar-monetare, ASE, p.

30

13

Modelul spiral Modelul spiral, elaborat de Barry Boehm, se bazeaz pe acelai principiu ca i modelul evolutiv. Modelul presupune construirea mai multor prototipuri succesive n condiiile realizrii unei analize a riscului pe fiecare nivel. Fazele de dezvoltare sunt reluate la fiecare iteraie n aceeai succesiune i presupun: 1. Analiza riscurilor 2. Realizarea unui prototip 3. Simularea i testarea prototipului 4. Determinarea cerinelor n urma rezultatelor testrii 5. Validarea cerinelor 6. Planificarea ciclului urmtor Ultimul ciclu conduce la realizarea versiunii finale a sistemului informatic.

Figura 4 - Modelul spiral n centrul spiralei este plasat cunoaterea cerinelor i estimarea costurilor la nivel preliminar. Evoluia SI urmeaz desfurarea spiralei nregistrnd acumulri succesive ale costurilor i este marcat de succesiunea prototipurilor, fiecare dintre acestea valorificnd acumulrile realizate al nivelul prototipului anterior. Interaciunea dintre faze nu este reliefat direct atta timp ct modelul prevede o succesiune continu a rafinrii legate de decizii pe care riscurile proiectului le asociaz cu urmtoarea detaliere. Modelul evideniaz atenia acordat planificrii, cutrii de soluii alternative, evalurii riscurilor i validrii soluiilor pentru fiecare prototip, vzut ca un stadiu distinct n realizarea sistemului informatic. n ingineria software, un prototip este folosit att pentru validarea ct i pentru identificarea cererilor utilizatorilor, pentru verificarea soluiei de proiectare i a oferi baza dezvoltrii ulterioare a proiectului de sistem informatic. Apelarea la utilizarea prototipului este consecina faptului c un model funcional este mai uor de neles de ctre viitorul utilizator dect un set de diagrame nsoite de documentaie. Prototipul funcional presupune proiectarea sistemului, realizarea primului prototip funcional, verificarea msurii n care rspunde cererilor formulate de utilizator i rafinarea acestei prime soluii, prin dezvoltri viitoare care adaug noi funcionaliti pn la obinerea variantei finale a sistemului.

14

Modelul fntn artezian Modelul fntn artezian i are izvoarele n modelul spiral (ierarhic) i modelul vrtej de ap. Pornete de la cunoaterea lumii reale, a cerinelor i elaborarea studiului de fezabilitate. Se parcurg apoi etapele de: analiz, proiectarea sistemului, proiectare component, codificare, testare component, testare sistem, utilizare, ntreinere, dezvoltare.

Figura 5 - Modelul fntn artezian n cazul sistemelor informatice realizate pe baza modelelor de proiectare orientat obiect (POO) modelul fntn artezian este preferat modelului cascad i acesta datorit necesitii fuzionrii unor etape ale ciclului de via i creterii gradului de iteraie. De aceast dat se pune accentul mai degrab pe clase dect pe sistem. Se consider mai adecvat s nu se aib n vedere doar ntregul sistem la fiecare etap a ciclului de via, ci mai degrab la identificarea claselor ce-i urmeaz propriul ciclu de via.

Modelul evolutiv Modelul evolutiv15 pornete de la realizarea unui studiu iniial privind obiectivele viitorului SI a crui arhitectur este definit ulterior. Fiecare component astfel definit i va urma propriul su ciclu de via (definirea cerinelor, analiz, proiectare, realizare, testare, utilizare) urmnd s fie livrat beneficiarului n momentul finalizrii. SI reprezint ansamblul unor componente n interaciunea lor, fiind rezultatul unei concepii bazate pe arhitecturi deschise i flexibile. O astfel de abordare este apropiat celei orientat obiect caracterizate prin ncapsularea datelor i funcionalitii obiectelor. Reprezentarea grafic a modelului evolutiv este influenat de modelul circular a crui caracteristic o reprezint marcarea unui ciclu complet al SI printr-un cerc.

Figura 6 - Modelul evolutiv

15

Carmichael A.R., Object Development Methods, SIGS Books, New York, 1994

15

Modelul minge de baseball Modelul minge de baseball (dezvoltarea concurenial) propus de CODD, Yourdon i Nicola pleac de la ideea renunrii la paii succesivi n realizarea sistemului n favoarea promovrii activitilor desfurate n paralel. Este vorba de analiza orientat obiect (AOO), proiectarea (design) orientat-obiect (DOO) i programarea orientatobiect (POO). ntr-o astfel de abordare, AOO ar beneficia de rezultatele DOO i POO; DOO, beneficiaz de rezultatele AOO i POO, iar POO valorific rezultatele AOO i DOO.

Figura 7 Modelul minge de baseball Modelul pinball Modelul pinball elaborat n 1994 de S.W.Ambler este caracteristic ciclului de via al produselor software realizate cu ajutorul metodologiilor orientate-obiect. Modelul este realizat dup principiul deplasrii aleatoare a unei bile ntr- un sistem mecanic cu arc (de tip flipper) n vederea atingerii unor inte, reprezentate de obiective ale proiectrii i programrii OO. Tampoanele, obstacolele i braele mobile (din partea de jos) aparinnd spaiului de joc corespund urmtoarelor activiti: aflarea clasei de apartenen a atributelor i metodelor, determinarea relaiilor dintre obiecte, definirea agregrilor, motenirilor, scrierea codului, testarea, implementarea sistemului.

Figura 8 - Modelul pinball

Modelul RAD 16 Modelul RAD (Rapid Application Development), cu varianta sa european PD (Participatory Design), se caracterizeaz printr-un numr redus de faze, utilizarea prototipurilor n faza de realizare i participarea activ a viitorilor utilizatori. Etapele prevzute de model sunt: iniializare, formularea cerinelor, proiectare, realizare, implementare.

Figura 9 - Modelul RAD Fiecare din etapele enunate se descompune n faze prezentnd urmtoarea structur: lucrri preliminarii, sesiunea participativ (la activitatea grupului de specialiti se altur i utilizatorii), lucrri de sintez (concluzii).
16

Martin, J., Rapid Application Development, New York, MacMillan, 1991

16

2.3. Etape de realizare a sistemelor informatice


In opinia celor mai multi autori, metodologia de proiectare si realizare a sistemelor informatice se desfasoara prin parcurgerea urmatoarelor etape: 1. identificarea cerintelor si a fezabilitatii sistemului: - determinarea a ceea ce nu functioneaza in vechiul sistem si identificarea obiectivelor noului sistem - analize de prefezabilitate tehnica, operationala, economica, juridica si a programarii in timp - stabilirea comitetului coordonator a proiectului noului sistem si a echipei de proiectare 2. analiza de sistemului informational existent - studierea si documentarea sistemului curent si depistarea problemelor cu care se confrunta - colectarea informatiilor despre cerintele noului sistem - integrarea cerintelor si realizarea unui model al noului sistem 3. proiectarea conceptuala (de ansamblu) a sistemului - realizarea modelului conceptual al noului sistem - luarea deciziei asupra modului de realizare a softului de aplicatii - descrierea detaliata a noului sistem 4. proiectarea de detaliu a noului sistem - proiectarea formularealor si a rapoartelor - proiectarea interfetelor si a dialogurilor - proiectarea bazelor de date 5. elaborarea si testarea programelor - construirea unei versiuni operationale a sistemului 6. implementarea sistemului - conversia de la vechiul sistem la noul sistem - instruirea utilizatorilor pentru exploatarea noului sistem - test final pentru acceptarea noului sistem 7. exploatareasi intretinerea noului sistem informatic - punerea in functiune a noului sistem - evaluarea performantelor noului sistem si a modului de satisfacere a ceintelor - inregistrarea tuturor modificarilor aparute in sistem

17

2.4 Analiza

sistemului informational existent

Tehnici de culegere a datelor Analiza sistemului informational existent are scopul de a efectua un studiu complex asupra activitatilor si fluxurilor informationale, a volumului de informatii prelucrate, a ariei de cuprindere a sistemului informational, in vederea stabilirii cerintelor generale ce vor fi asigurate prin intermediul noului sistem informatic. In vederea culegerii cu succes a datelor se recomanda sa se tina seama de urmatoarele principii: - nu se considera nimic cunoscut dinainte - orice informatie trebuie sustinuta prin date certe - nu se porneste cu idei preconcepute in privinte solutiilor de imbunatatirea a sistemului informational contabil - in timpul culegerii datelor nu se elaboreaza solutii - sa se tina seama in permanenta de obiectivele analizei In general, la culegerea datelor colectivul de analiza poate intimpina doua categorii de dificultati: - din partea sistemului (conducatorii compartimentelor cand sunt intrebati in detaliu cu privire la sistemul existent, impotriva aparentelor, de multe ori nu stiu sau mai curand raspund ce cred sau cum ar vrea sa functioneze sistemul pe care il conduc). - din partea analistor din cadrul colectivului de analiza, care pot fi superficiali, slab pregatiti profesional, fara spirit analitic, lipsiti de tenacitate etc. In analiza unui sistemu informational contabil se utilizeaza mai multe procedee sau metode de culegere a datelor: - observarea directa - studierea documentatiei existente - participarea personala la intocmirea activitatilor - inventarierea documentelor sistemului informational - chestionarul - interviul Folosirea unui procedeu nu exclude folosirea concomitenta sau ulterioara si a unui alt procedeu. Alegerea unui anumit procedeu de culegere a datelor depinde de: - complexitatea si particularitatile sistemului informational - aria de cuprindere a acestuia - conditiile de lucru si experienta personalului implicat Observarea directa a activitatilor desfasurate - se realizeaza prin deplasarea analistilor de sistem in compartimentele functionale, pentru a surprinde sfera si particularitatile activitatilor desfasurate de fiecare compartiment. Observarea directa se foloseste pentru o analiza cat mai obiectiva a modului de efectuare a operatiilor de prelucrare, a documentelor utilizate, a timpului necesar realizarii fiecarei operatiuni. Studierea documentatiei existente poate include: bugetem, planuri de conturi, corespondenta firmei, diagramele fluxurilor de date, regulamentul de ordine interioara, regulamentul de organizare si functionare, manuale de referinta si alte materiale privind procedurile manuale si cele executate pe calculator. Participarea la executare activitatilor din sistemul informational consta in executarea efectiva a anumitor lucrari complexe in paralel cu personalul compartimentelor respective. Procedeul permite obtinerea de date certe cu privire la volumul activitatilor si gradul de dificultate in
18

realizarea acestora, inclusiv timpul de raspuns al compartimentelor implicate in rezolvarea lucrarilor cu caracter complex. Inventarierea documentelor utilizate in sistemul informational contabil consta in identificarea si descrierea tuturor documentelor din sistemul informational. Prin acest procedeu se verifica gradul de utilizare a documentelor tipizate si alte tipuri de documente care se vehiculeaza in sistem. Chestionarul este un procedeu care are la baza o lista de intrebari adresate personalului din compartimentele functionale, pentru a raspunde in scris cu privire la anumite elemente necesare studiului sistemului informational Interviul consta in studiul sistemului informational prin dialog direct intre analisti si personalul din compartimentele implicate. Acest procedeu este eficient deoarece reprezinta modalitatea principala de investigare a aspectelor pozitive si a neajunsurilor sistemului informational analizat. In vederea culegerii cu succes a datelor se recomanda sa se tina seama de urmatoarele principii: - nu se considera nimic cunoscut dinainte - orice informatie trebuie sustinuta prin date certe - nu se porneste cu idei preconcepute in privinte solutiilor de imbunatatirea a sistemului informational contabil - in timpul culegerii datelor nu se elaboreaza solutii - sa se tina seama in permanenta de obiectivele analizei In general, la culegerea datelor colectivul de analiza poate intimpina doua categorii de dificultati: - din partea sistemului (conducatorii compartimentelor cand sunt intrebati in detaliu cu privire la sistemul existent, impotriva aparentelor, de multe ori nu stiu sau mai curand raspund ce cred sau cum ar vrea sa functioneze sistemul pe care il conduc). - din partea analistor din cadrul colectivului de analiza, care pot fi superficiali, slab pregatiti profesional, fara spirit analitic, lipsiti de tenacitate etc. In analiza unui sistemu informational contabil se utilizeaza mai multe procedee sau metode de culegere a datelor: - observarea directa - studierea documentatiei existente - participarea personala la intocmirea activitatilor - inventarierea documentelor sistemului informational - chestionarul - interviul Folosirea unui procedeu nu exclude folosirea concomitenta sau ulterioara si a unui alt procedeu. Alegerea unui anumit procedeu de culegere a datelor depinde de: - complexitatea si particularitatile sistemului informational - aria de cuprindere a acestuia - conditiile de lucru si experienta personalului implicat Observarea directa a activitatilor desfasurate - se realizeaza prin deplasarea analistilor de sistem in compartimentele functionale, pentru a surprinde sfera si particularitatile activitatilor desfasurate de fiecare compartiment. Observarea directa se foloseste pentru o analiza cat mai obiectiva a modului de efectuare a operatiilor de prelucrare, a documentelor utilizate, a timpului necesar realizarii fiecarei operatiuni.

19

Studierea documentatiei existente poate include: bugetem, planuri de conturi, corespondenta firmei, diagramele fluxurilor de date, regulamentul de ordine interioara, regulamentul de organizare si functionare, manuale de referinta si alte materiale privind procedurile manuale si cele executate pe calculator. Participarea la executare activitatilor din sistemul informational consta in executarea efectiva a anumitor lucrari complexe in paralel cu personalul compartimentelor respective. Procedeul permite obtinerea de date certe cu privire la volumul activitatilor si gradul de dificultate in realizarea acestora, inclusiv timpul de raspuns al compartimentelor implicate in rezolvarea lucrarilor cu caracter complex. Inventarierea documentelor utilizate in sistemul informational contabil consta in identificarea si descrierea tuturor documentelor din sistemul informational. Prin acest procedeu se verifica gradul de utilizare a documentelor tipizate si alte tipuri de documente care se vehiculeaza in sistem. Chestionarul este un procedeu care are la baza o lista de intrebari adresate personalului din compartimentele functionale, pentru a raspunde in scris cu privire la anumite elemente necesare studiului sistemului informational Interviul consta in studiul sistemului informational prin dialog direct intre analisti si personalul din compartimentele implicate. Acest procedeu este eficient deoarece reprezinta modalitatea principala de investigare a aspectelor pozitive si a neajunsurilor sistemului informational analizat. Studiul sistemului informational existent Studiul sistemului informational existent presupune o cunoastere detaliata a : a) structurii organizatorice a unitatii b) activitatilor si mijloacelor de calcul folosite c) fluxului informational rezultat d) determinarea volumului de date din sistemului informational e) identificarea cheltuielilor de functionare a sistemului informational existent a) Studiul structurii organizatorice vizeaza urmatoarele aspecte: cunoasterea obiectivelor activitatii de baza descrierea operatiilor tehnologice, a fluxului de productie determinarea modului de ierarhizare a sectoarelor de productie si a compartimentelor functionale referiri la forma de contabilitate, metode de evidetierea valorilor materiale si cea de calculatie a costurilor

Fiecare compartiment si post din organigrama este privit sub aspectul legalitatii si oportunitatii, al sarcinilor ce-I revin, al functiilor si numarului de personal incadrat, a posibilitatilor de perfectionare a organizarii si functionarii, avand in vedere avantajele prelucrarii automate a datelor. b) Studiul activitatilor si a dotarii cu tehnica de calcul vizeaza: natura si specificul activitatilor desfasurate documentele utilizate in cadrul fiecarei activitati si compartimentele functionale implicate dotarea cu tehnica de calcul si gradul de utilizare a acesteia Studierea documentelor utilizate in unitate are in vedere determinarea informatiilor privitoare la:

20

felul documentelor utilizate frecventa si termenul intocmirii temeiul legal al emiterii acestora numarul de exemplare utilizate pentru fiecare document stabilirea fluxului informational al fiecarui document daca documentul este sub forma tipizata sau nu ce decizii se iau be baza datelor din document care sunt informatiile din documentele existente care raman nevalorificate ce echipamente de calcul sunt folosite pentru intocmirea fieacarui document determinarea gradului de incarcare a compartimentului cu documente

Analiza are menirea sa puna in evidenta gradul de automatizare a executarii lucrarilor sistemului informational contabil, limitele mijloacelor de calcul folosite si posibilitatile de integrare a acestora in sistemele de calcul mult mai evoluate. c) Studiul fluxurilor informationale are ca obiective: sa stabilieasca activitatile in detaliu si circulatia privind fiecare fel de document si exemplar, de la aparitia (emiterea) lui pana la arhivare sa stabileasca compartimentele implicate in emiterea documentelor, prelucrarea datelor si valorificarea rezultatelor prelucrarii datelor prezentarea intr-o forma grafica cat mai sugestiva, uzand de semne conventionale, a prelucrarilor la care sunt supuse datele din documente in cadrul compartimentelor unde circula identificarea deficientelor de circulatie a documentelor (fluxuri informationale paralele, inutile, stationari prelungite in cadrul compartimentelor), pentru a fi eliminate din sistemul informational determinarea gradului de utilizare a documentelor tipizate verificarea oportunitatii datelor din documentele utilizate, in scopul precizarii datelor neutilizate, nevalorificate in totalitate sau neincluse in continutul documentelor determinarea gradului de incarcare si solicitare a fiecarui compartiment implicat in cadrul functionarii intregului sistem integrarea sistemului informational specific cu alte sisteme informationale externe

d) Studiul volumului datelor in sistemul informational contabil Informatiile pentru stabilirea volumului de date din sistemul informational contabil se culeg odata cu studiul documentelor si al circulatiei acestora. Analiza volumului datelor se realizeaza prin intocmirea unui tabel cuprinzand elementele cantitative de date despre fiecare document cum ar fi: - denumirea documentului - frecventa intocmirii - nr. maxim si mediu de documente intocmite pe perioada frecventei - nr. mediu de randuri completate pentru fiecare fel de document pe perioada frecventei - nr. de exemplare pentruu fiecare fel de document - evolutia probabila a numarului mediu din fiecare fel de document in urmatorii 5 ani Concomitent cu descrierea acestor documente se vor urmari si sistemul de coduri utilizat in unitate pentru a fi preluate in viitorul sistem informatic, facand astfel sa existe o compatibilitate a datelor preluate. Analiza documentelor sub aspectul volumului de date, corelata cu numarul de posturi din statul de functiuni sau cu acela al personalului efectiv incadrat pe compartiment, permite se se puna in evidenta : volumul de ansamblu al documentelor, al datelor continute, exprimat in numa de randuri (inregistrari, articole) volumul de munca necesar

21

gradul de incarcare-solicitare a personalului incadrat gradul de folosire a tehnicii de calcul Pe baza evaluarilor facute prin studierea volumului datelor din sistemul informational, echipa de analiza poate formula recomandari privind: - tipul configuratiei echipamentelor de calcul necesare viitorului sistem informatic - numarul si capacitatea unitatilor periferice , etc. e) Studiul costurilor de functionare a SIC asigura determinarea categoriilor de cheltuieli efectuate in scopul comensurarii efortului financiar al unitatii pentru intretinerea sistemului. 2.5. Structurarea cerintelor sistemului. Modelarea proceselor Toate metodologiile folosite in realizarea unui sistem apeleaza la operatiunea de modelare logica a datelor si a prelucrarilor sub forma diagramelor fluxurilor de date (DFD). Scopul diagramelor fluxurilor de date (DFD), pentru o anumita componenta organizatorica sau functionala (sectie, birou, compartiment, intreaga unitate, o anumita activitate vanzari, cumparari, incasari, plati etc) este de a scoate in relief urmatoarele aspecte: - sursa datelor de prelucrat - operatiunile de prelucrare prin care trec datele - destinatia datelor prelucrate - legatura existenta intre prelucrari si activitatea de memorare a datelor Diagrama fluxurilor de date poate fi utilizata in doua moduri: pentru documentarea unui sistem existent sau pentru schitarea unuia in curs de proiectare. DFD pot fi clasificate in : - Diagrame de context - Diagrame ale fluxului de date logic - Diagrame ale fluxului de date fizic In practica cele mai multe produse de proiectare automata a sistemelor informatice (produsele CASE), apeleaza la doua tehnici de construire a DFD: Gane&Sarson si Yourdon & DeMarco. Aceste tehnici, in general, folosesc patru simboluri de baza pentru a reprezenta sistemele informationale si anume : Obiect Entitate externa Simbolul Gane & Sarson Patrat ingrosat Simbolul Yourdon & DeMarco Patrat

Sageata Flux de date

Loc de memorare / pastrare Proces (prelucrare)

Dreptunghi deschis la dreapta Dreptunghi cu colturi rotunjite


22

Sageata care poate lua diverse forme Linii paralele

Cerc

a) Diagrama de context este diagrama de pe cel mai inalt nivel al sistemului informational, prin care se descriu fluxurile datelor in si din sistem, din si spre entitatile externe sistemului analizat.

Plata

CLIENT
Depunere
Proces de incasare

BANCA
Fig. 4.1. Descrierea activitatii de incasare a unui client

Entitatile externe cele mai relevante: Client si Banca Fluxurile de date ale sistemului cu mediul sau: Plata si Depunere b) Diagrama fluxului de date logice (DFDL) este o reprezentare simbolizata a unui sistem, prin care se evidentiaza procesele sistemului, precum si intrarile sau iesirile de date in/din procese. Prin ea se reprezinta ce activitati efectueaza sistemul, fara sa specifice cum, unde sau de catre cine sunt executate activitatile. DFDL pentru exemplul anterior ar putea arata astfel:

Plata

CLIENT
Incasare

Validare incasari

Depunere
Pregatire depunere bani

Contabilizare
Inregistrare vanzare

BANCA

Jurnal_vanzari

Fig. 4.2 DFDL incasare client

23

Dupa cum se observa, din aceasta diagrama nu putem sti cum este efectuata "plata", sub forma de cec, bani lichizi ? etc. c) Diagramele fluxului de date ale sistemului fizic sunt o reprezentare schematica a sistemului prin care sunt scoase in evidenta entitatile interne si externe ale sistemului, precum si fluxul datelor in si din aceste entitati. O entitate interna poat fi o persoana, un loc (sectie, compartiment) sau un echipament (calculator) din sistem cate contribuie la transformarea datelor. Din aceasta cauza diagrama fluxului de date fizice (DFDF) specifica unde, cum si de cine este realizat acest proces al sistemului.

Bani

CLIENT
Vanzator

Monetar + Bani Foaie de varsamant + Bani


Casier

Contabilitate

BANCA
Registru de casa

Jurnal_vanzari

Fig. 4.3. DFDF incasare client

In DFDF cercurile definesc entitatile interne. In figura de mai sus : Client Plateste la Vanzator Vanzator Jusitificare-Vanzari la Casier etc. Deci, se observa unde merg banii si cum sunt pastrate informatiile privind incasarile, dar de exemplu, nu stim cu exactitate ce face Vanzatorul. Concluzie: a. DFDL permit reprezentarea activitatilor sistemului, in timp ce DFDF descriu infrastructura sistemului, ambele fiind necesare pentru intelegerea completa a sistemului. b. DFD nu scot in evidenta factorul timp. De exemplu, nu rezulta daca un flux de date apare constant, cu repetitie zilnica, saptamanala sa.m.d. De asemenea, nu reiese ca un proces este executat intr-un moment sau altul. Aceste aspecte pot fi evidentiate prin intermediuldiagramele starilor de tranzitii.(DST). DST reliefeaza modul in care procesele unei diagrame a fluxului de date si stari diferite in timp ale aceluiasi proces sunt ordonate in timp. DST sunt forme de redare a logii folosite indeosebi in analiza si proiectarea orientata-obiect. c. Procesul de descompunere a analizei unui sistem este foarte subiectiv. El poate inceta in orice moment, dar poate fi reluat si ulterior daca se considera utila descompunerea, o importanta deosebita avand-o DFD logice. d. Atunci cand se intentioneaza realizarea unor diagrame ale fluxurilor de date mai complexe, se recomanda ca inainte de demararea procesului de construire a diagramei, sa se inceapa cu crearea unei liste a entitatilor externe si a intrarilor/iesirilor cu aceste entitati.. e. Prin analiza DFD finale pot rezulta urmatoarele concluzii : - fluxuri de date redundante

24

- date care intra in prelucrari, dar nu sunt folosite - date ce sunt actualizate identic in mai multe locuri. f. Diagramele fluxului de date prezinta atat datele stocate in sistem, cat si procesele de prelucrare prin care trec acestea, indicand relatiile existente intre datele sistemului si procesele de prelucrare. 4.4. Tehnica Yourdon & DeMarco Tehnica Yourdon & DeMarco sugereaza ca un sistem sa fie reprezentat prin urmatorul set de diagrame: - o diagrama de context - se recomanda ca nici o diagrama sa nu cuprinda mai mult de 7 procese de prelucrare (cercuri) - o diagrama de nivel 0 indicand principalele subsisteme ale sistemului - pana la 7 diagrame de nivel 1, indicand principalele functii (aplicatii) ale fiecarui subsistem - pana la 49 de diagrame de nivel 2, indicand detaliile fiecarei functii sai ale fiecarei aplicatii Ex. Diagrama de context pentru procesul de vanzare-cumparare:
CLIENTI

Comenzi

Documente de
BANCA

Prelucrare stocuri vanzari si cunmparari de marfuri

Comenzi aproviziona
FURNIZORI

Date vanzari

MANAGEMENT

Diagrama fluxurilor de date pentru vanzarea produselor


PRODUSE

Date

Clienti

Comen zi

Prelucrare comenzi

Date vanzari

VANZARI

25

2.6 Implementarea sistemului informatic Obiectivele pe care trebuie sa le realizeze implementarea unui sistem informatic fac ca momentul punerii in functiune sa se identifice cu momentul trecerii in exploatare a sistemului. Orice intrerupere a mentinerii in exploatare dupa momentul punerii in functiune, inseamna nereusita acestei actiuni. Sunt unele metodologii care recomanda punerea in functiune a noului sistem informatic in paralel cu vechiul sistem de prelucrare a datelor. Este evident ca, in asemenea cazuri, obiectivul urmarit nu este acela de punere in functiune, ci este acela de experimentare a noului sistem. Implementarea sistemului informatic proiectat depinde de modul in care beneficiarul asigura conditiile de punere in functiune. Acesta activitate presupune:

B. Instruirea personalului utilizator A. Difuzarea instructiunilor de executare a procedurilor mnuale si automate

C. Asigurarea conditiilor organizatorice D. Asigurarea resurselor hard Asigurarea conditiilor de implementare E. Asigurarea fondului informational

A. Difuzarea instructiunilor de executare a procedurilor manuale si automate Aceste instructiuni se pot grupa astfel: instructiuni pentru beneficiar - au rolul de a da posibilitatea beneficiarului sa cunoasca procedurile manuale si automate ce trebuie sa le execute. Ele cuprind: - prezentarea succinta a aplicatiei si a fluxurilor informationale - prezentarea noilor documente proiectate si a instructiunilor de completare aferente - prezentarea situatiilor de iesire (listelor, ecranelor), a modului de folosire si interpretare a acestora instructiuni pentru unitatea de prelucrare. Ele cuprind: - modalitatile de prezentare si receptie a documentelor primare si a situatiilor cu rezultate finale - modalitatile de pregatire si verificare a purtatorilor tehnici de informatii precum si de corectare a erorilor aferente - modalitatile de operare pe parcursul fluxului de prelucrare si de interventie in cazul unor incidente ce pot apare in timpul executiei programelor. B. Instruirea personalului utilizator, presupune: sensibilizarea beneficiarului in probleme de informatica - urmareste sa aduca la cunostinta avantajele folosirii tehnicii de calcul precum si noua disciplina informationala impusa. Aceasta se poate face prin cursuri de initiere de scurta durata organizate de proiectant la sediul acestuia sau la sediul beneficiarului. atragerea personalului cu putere de decizie in activitatea de implementare - este garantia asigurarii la timp si integrale a conditiilor necesare implementarii, lucru ce va duce implicit la incadrarea acestei etape in termenele stabilite de proiectant pregatirea psihologica a personalului unitatii beneficiare - are drept scop convingerea acestuia ca introducerea tehnicii moderne nu urmareste reducerea personalului ci usurarea muncii acestuia, preluarea unei parti din personal in activitati de informatica si reorientarea altei parti in activitati utile unitatii. Acest lucru va da posibilitatea crearii unui climat favorabil implementarii solutiei proiectate.
26

Pregatirea utilizatorului consta in instruirea acestuia cu privire la: - noile modele de documente de intrare, regulile de completare si de utilizare a acestora, inistandu-se asupra necesitatii completarii clare, precise, fara ambiguitati a tuturor rubricilor din documente - modalitatile de verificare si de transmitere a documentelor, atributiile fiecarei persoane in completarea si verificarea documentelor de intrare - utilizarea corecta a codurilor - descrierea continutului informational al situatiilor de iesire, analiza si folosirea acestora pentru luarea deciziilor, modul de interpretare a rezultatelor si a mesajelor. C. Asigurarea conditiilor organizatorice necesare Conditiile organizatorice ce trebuie asigurate implementarii noului sistem se refera in primul rand la asigurarea transpunerii in practica a modificarilor organizatorice preconizate in etapa de proiectare, la lansarea efectiva a documentelor proiectate si la instituirea noilor fluxuri informationale. In al doilea rand se refera la constituirea nucleului de informaticieni in cadrul unitatii beneficiare, nucleu ce trebuie format inainte de inceperea proiectarii si implementarii si apot dezvoltat cantitativ si calitativ pe parcursul realizarii sistemului informatic. O alta problema care permite o buna organizare a implementarii este planficarea activitatilor specifice acestei etape, lucru ce se poate face cu ajutorul unor grafuri Grantt, a metodei A.D.C. (analizei drumului critic), PERT. D. Asigurarea resurselor hard , se poate realiza in trei moduri: prin dotarea unitatii beneficiare cu unul sau mai multe sisteme de calcul prin perfectarea accesului la o unitate de informatica pentru un anumit numar de orecalculator printr-o solutie mixta, care presupune rezolvarea unot probleme de volum mic in cadrul unitatii, iar pentru problemele mai complexe sa se apeleze la capacitatea unei unitati de informatica cu o dotare corespunzatoare, lucrandu-se eventual in regim de teleprelucrare. O alta conditie este asigurarea unui spatiu corespunzator desfasurarii activitatii nucleului de informatica, care sa permita realizarea unor lucrari de calitate, asigurarea integritatii, securitatii si confidentialitatii fondului de date manipulat, precum si asigurarea multiplicarii documentelor primare reproiectate in concordanta cu prevederile proiectului tehnic de detaliu, a instructiunilor de completare si utilizare aferente. De o deosebita importanta este de asemenea asigurarea materialelor consumabile specifice functionarii sistemelor informatice. E. Asigurarea fondului informational Presupune pregatirea datelor reale si incarcarea fisierelor sau bazei de date in vederea testarii si punerii in functiune a noului sistem, pregatire ce se face prin: - constituirea fisierelor sau entitatilor bazei de date, prin culegerea fondului informational necesar si stocarea a cestuia pe purtatori tehnici de informatie. Pentru aceasta va fi necesara, in prealabil, o ampla munca de colectare, ordonare, codificare, incarcare si validare a datelor. - preluarea partiala sau integrala a datelor dintr-o serie de fisiere deja create, cu ajutorul unor programe de conversie a fisierelor. Executarea procedurilor de conversie se aplica atunci cand exista deja un sistem informatic sau aplicatii informatice in functiune, ce trebuiesc inlocuite. De asemenea, conversiile se impun atunci cand prin realizarea si implementarea esalonata in timp a componentelor noului sistem informatic, pentru realizarea legaturilor functionale dintre acestea, sunt necesare proceduri de conversie cum ar fi: conversii de fisiere, conversii de programe sau conversii de proceduri.

27

2.7 Strategii de implementare a sistemelor informatice Strategiile de implementare urmaresc gasirea celor mai adecvate cai, metode, proceduri fata de conditiile si situatiile concrete existente, pentru realizarea obiectivelor de realizare si utilizare a sistemelor informatice. Dintre variantele de solutii posibile pentru punerea in functiune a unui sistem informatic, pot fi mentionate: a) punerea in functiune simultana a tuturor componentelor sistemului informatic si pe intreaga lui sfera de actiune. O asemenea solutie se recomanda in cazul unor sisteme de o complexitate mai redusa sau in cazurile cand sistemele informatice respective nu pot functiona prin punerea in functiune esalonata a componenetelor sistemului informatic. b) punerea in functiune simultana a tuturor componentelor sistemului informatic, dar cu esalonarea in timp in ceea ce priveste sfera de cuprindere. Se aplica de regula la sistemele informatice generalizabile pe un numar mai mare de unitati. Punerea in functiune a sistemului respectiv la toate unitatile prevazute se poate esalona pe o perioada mai mare, in funcite de numarul unitatilor si de posibilitatile de asigurare a conditiilor si resurselor necesare. c) punerea esalonata in functiune a componentelor sistemului informatic. Aceasta varianta se aplica in cazul sistemelor informatice complexe, in functie de criteriile care stau la baza stabilirii prioritatilor in esalonarea punerii in functiune a diferitelor componente a sistemului informatic. Perioada de esalonare a punerii in functiune a unui sistem informatic complex este determinata intr-o mare masura de dimensiunea, calitatea si modul de alocare a resurselor financiare, umane si materiale pentru proiectarea si darea in exploatare a acestor sisteme. Alegerea momentului punerii in functiune Momentul punerii in functiune a unei componente a unui sistem informatic corespunde datei cand prima sa aplicatie informatica se da in functiune. Declansarea momentului punerii in functiune se plaseaza in zona operatiilor de culegere, inregistrare si transmitere a datelor, corespunzand astfel debutului ciclului de operatii tehnologice ale aplicatiei. Momentul punerii in functiune trebuie sa corespunda cu inceputul unei perioade (ciclu) semnificativ din activitatea unitatii respective (inceput de an calendaristic, introducerea unei noi forme de organizare, lansarea in productie a unei noi tehnologii etc.) Inainte de activitatea de punere in functiune trebuie sa se asigure o perioada de timp corespunzatoare cerintelor de indeplinire a conditiilor de pregatire calitativa a momentului punerii in functiune. Momentul punerii in functiune se alege si in functie de posibilitatea de pregatire a categoriilor de personal in realizarea noilor sarcini. Activitatile de punere in functiune a noului sistem sau a unei componente nu reprezinta inlocuirea unui sistem informational, ci ea are si sarcina dificila de a inlocui si unele conceptii depasite cu privire la rolul, locul si calitatea acestui sistem. Aceste activitati in mod aproape inevitabil, reprezinta o confruntare directa intre nou si vechi. Pentru exploatarea sistemului se pot folosi mai multe procedee: - functionarea concomitenta atat a sistemului manual existent cit si a sistemului automat proiectat - experimentarea sistemului proiectat pe baza datelor provenite din perioade precedente - inlocuirea directa a sistemului existent cu cel proiectat a) Functionarea in paralel atat a sistemului manual existent cat si a sistemului proiectat cuprinde o perioada de cca 1-3 luni in care se verifica si se compara rezultatele obtinute de sistemul de prelucrare automata a datelor si de catre sistemul existent. Renuntarea la sistemul manual se va

28

face numai dupa ce intregul lant de programe a fost executat fara incidente si fara erori, de mai multe ori. Cu toate ca functionarea in paralel este mai dificila si mai costisitoare, implicand eforturi mai mari, este totusi mai eficienta deoarece permite sa depisteze unele erori si anomalii de la cadrul proiectat. Printre cauzele care conduc la aparitia erorilor se mentioneaza: - intocmirea necorepunzatoare a documentelor de intrare - atribuirea incorecta a codurilor - erori de programare - utilizarea necorespunzatoare a programelor Avantaje: - asigura eliminarea eventualelor erori exitent fara ca aceasra sa impiedice desfasurarea normala a activitatii beneficiarului - evidentiaza cauzele generatoare de erori - verifica si compara in permanenta rezultatelel celor doua sisteme - realizeaza actualizarea si intretinerea bazei de date in ambele sisteme - organul de decizie poate folosi informatiile sistemului existent pana cand noul sistem informatic intra definitiv in functiune b) Experimentarea sistemului proiectat folosind date provenite din perioade precedente prezinta aceleasi avantaje ca procedeul anterior. In plus, evita aglomerarea excesiva a personalului, in perioadele de varf si nu are timpul de executie limitst in raport cu perioada pentru care se face experimentarea c) Inlocuirea imediata (directa) a sistemului existent cu cel proiectat poate fi aplicata numai in situatii deosebite, in functie de volumul si importanta problemei, de marimea unitatii beneficare si de masurile organizatorice intreprinse. Etapa de implementare a sistemului informatic se finalizeaza atunci cand noul sistem functioneaza in conformitate cu cerintele stabilite prin proiect, atunci cand se realizeaza corelarea procedurilor manuale si automate, se completeaza corect documentele de intrare, se obtin in timp util informatiile dorite pe toate nivelele de conducere, se atinge ritmul de exploatare si se obtin performatenle scontate. Etapa de implementare nu poate fi considerata incheiata daca nu se definitiveaza intreaga documentatie a proiectului. Aceasta presupune definitivarea atat a manualelor de prezentare cat si a celor de utilizare si exploatare. Lucru impus de necesitatea realizarii unei concordante depline intre sistemul proiectat si documentatia sa. 2.8. Exploatarea si intretinerea sistemelor informatice Activitatile de exploatare si intretinere a sistemului informatic pus in functiune, urmaresc asigurarea realizarii continue a parametrilor tehnici, economici si functionali ai sistemului respectiv, in concordanta cu proiectul elaborat si cu dinamica cerintelor activitatii de conducere si operative din unitatea respectiva. Acestor activitati le revine sarcina de realizare a exploatarii curente si a consolidarii functionarii sistemului informatic pus in functiune pe intreaga perioada pentru care s-a preconizat a fi utilizat, perioada care se inscrie intr-un ciclu. Acest ciclu de viata al sistemului informatic, este determinat de frecventa perfectionarilor de fond in domeniul tehnicii de calcul, precu, si in domeniul evolutiei produselor program. Totodata, acest ciclu corespunde si cerintelor de perfectionare a metodelor si tehnicilor utilizate in activitatile de conducere din unitatile economico-sociale. Activitatile de exploatare si intretinere se pot grupa astfel: - activitati de exploatare - activitati de intretinere

29

activitati de inregistrare a cerintelor de reproiectare

Activitatile de exploatare se concentreaza in principal asupra executiei curente a operatiilor de culegere, transmitere, validare, prelucrare, vizualizare a datelor, prin respectarea stricta a instructiunilor tehnice de lucru. Ele vizeaza responsabilitatea utilizatorului si a personalului din informatica in exploatarea sistemului informatic. Activitatile de intretinere a sistemului informatic se refera atat la realizarea constanta a parametrilor sistemului proiectat si aflat in exploatare, cat si la introducerea in sistem a unor perfectionari curente, care conduc la ridicarea nivelului parametrilor tehnico-functionali si economici ai sistemului respectiv. Activitatile de inregistrare a cerintelor de reproiectare a sistemului informatic in functiune vizeaza pregatirea trecerii la reproiectare, respectiv la un nou ciclu de parcurgere a etapelor de realizare a sistemelor informatice. Dintre sarcinile avute in vedere la exploatarea si intretinerea sistemului informatic pot fi mentionate: - organizarea si urmarirea executiei operatiilor de actualizare a fisierelor si/sau a bazelor de date la momentele stabilite, operatii de importanta deosebita pentru mentinerea in functiune a sistemului informatic - imbunatatirea continua a calitatii datelor, reducerea timpului de raspuns a sistemului si reducerea costurilor pe unitate de informatie prelucrata si valorificata - introducerea perfectionarilor in tehnologia de prelucrare automata a datelor - organizarea si intretinerea arhivelor de date inregistrate pe suporti magnetici - asigurarea reviziilor tehnice si reparatiilor echipamentelor de prelucrare a datelor Practica demonstreaza ca neglijarea activitatilor de mentinere in functiune, intretinere si dezvoltare a sistemelor informatice implementate, conduce la inregistrarea unei scaderi constante dupa momentul punerii in functiune, mergand uneori pana la nivelul de periclitare a functionarii sistemului. In momentul in care se ajunge ca perfectionarile ce se impun in cadrul sistemul informatic sa afecteze o buna parte a sistemului in functiune, cand ele sunt mai generale ca sfera de actiune si mai radicale din punct de vedere al tehnicilor si procedeelor utilizate, inseamna ca s-a ajuns la o situatie conflictuala intre cerinte si existente si se cere o reproiectare a intregului sistem, o trecere evidenta la un nou ciclu de perfectionare. Perfectionarile curente ce se cer a fi aduse sistemului informatic in functiune nu trebuie sa afecteze solutiile tehnice si organizatorice de fond prevazute de catre proiectul initial, ci sa le completeze, sa le perfectioneze.

30

Capitolul 3. Metodologii de analiza si proiectare a sistemelor informatice


Exista mai multe metode de abordare privind realizarea sistemului informatic. In mod general, ele pot fi grupate astefel: - metode empirice, nefundamentate sistemic - metode sistemice, orientate spre sistem: metoda descompunerii functionale - orientate spre functii metode ale fluxurilor de date - orientate spre procese metoda analizei informationale - orientate spre date, bazate pe diagramele entitate-relatie. - metode orientate-obiect - metode orientate agent 3.1.Metodele sistemice - propuse si utilizate in anii 1980 - se bazeaza pe aplicarea teoriei sistemelor in analiza intreprinderii - sistemul informational/informatic este abordat prin prisma datelor si prelucrarilor, care sunt studiate si modelate independent si reunite cat mai tarziu cu putinta - acorda prioritate datelor fata de prelucrari a) Metoda descompunerii f unctionale (orientate-functii) presupune descompunerea fiecarei functii in subfunctii, pana cand se obtin forme usor de transpus in intructiunile limbajelor de programare. Conceptele au fost introduse mai intai in programarea structurata si apoi in proiectare, urmate de analiza. Dintre autorii remarcabili care au abordat descompunerea functionala enumeram pe: DeMarco, Yourdon, Constantine, Jakson, Warnier. b) Metoda fluxurilor de date (orientate-proces) are un mare grad de asemanare cu descompunerea functionala si este deseori descrisa ca analiza structurata. Prin aceasta metoda sunt definite cu claritate evenimentele din lumea reala la care sistemul trebuie sa raspunda si interactiunile dintre utilizator si sistem. De asemenea, sunt descrise incluse fluxurile datelor si transformarile la nivel inferior prin intermediul dictionarului de date, respectiv al specificatiilor de procese. Ex. Diagrama fluxurilor de date pentru vanzarea produselor foloseste liniile pentru reprezentarea fluxurilor de date si a cercurilor pentru procese.
PRODUSE
Date despre produse

Comenzi vanzare

Clienti

Prelucrare comenzi

Date vanzari

VANZARI

c) Metode orientate spre date presupune sa se identifice obiectele lumii reale si apoi descrierea lor cu ajutorul atributelor. Aceasta metoda are la baza modelarea datelor cu ajutorul diagramelor entitate-relatie (Peter Chen 1976).

3.2. Metodele orientate obiect Metodele de analiza si proiectare orientate obiect au aparut dupa anul 1990 preluand cele mai bune idei ale programarii structurate pe care le-a combinat cu concepte noi. La 17 noiembrie 1997, OMG (Object Management Group - un consortiu american format din peste 800 de companii ce produc si distribuie aplicatii la orientate obiect) a hotarat unificarea celor mai utilizate si mai apreciate metode de analiza si proiectare, prin realizarea unui standard in domeniul construirii sistemelor software, respectiv a unui LIMBAJ DE MODELARE UNIFICAT - UML (Unified Modeling Language).

31

Limbajul de modelare unificat (UML) utilizeaza simbolisitici grafice in simbioza cu adnotarile textuale care conduc la: - o intelegere mai rapida si completa a domeniului problemei - schimbarea instantanee a nivelului de abstractizare a prezentarii cu ajutorul instrumentelor - automatizarea activitatilor In cadrul metodelor orientate obiect, sistemul informatic este perceput ca o structura de obiecte autonome, ce se organizeaza si coopereaza intre ele. Un obiect este o abstractizare a datelor elementare si poate fi descris astfel: Obiect = Identitate + Comportament + Stare Datele si prelucrarile prin care este implementat comportamentul obiectului sunt incapsulate si sunt inaccesibile celorlate obiecte. De asemenea, fiecare obiect poate participa la compunerea altor obiecte mai complexe. Un obiect apartine unei clase, iar o clasa este o grupare logica a obiectelor care au aceeasi structura si un comportament similar. In incheiere, ii citam pe autorii James Martin si James Odell, care in lucrarea Object-Oriented Methods: A Foundation, spunea Exista multe metode de realizare a sistemelor, ele vor exista intotdeauna si trebuie sa existe intotdeauna. Diferite activitati pot avea caracterisitici diferite care sa necesite moduri diferite de abordare. Provocarea consta in selectia si integrarea acestor metode.

3.3. Metode orientate agent Metodologiile orientate agent i tehnicile de modelare aferente au devenit o prioritate pentru dezvoltarea sistemelor multiagent. n ultimii ani au fost propuse numeroase metodologii pentru proiectarea sistemelor orientate-agent: Kendall .a. (1995), Burmeister (1996), Kinnz i Georgeff (1996), Brazier (1997), Drogoul i Zucker (1998), Lind (2000), Odell (2000), Wooldridge (2000), Shehorz i Sturm (2001), DeLoach (2001), Bresciani (2002), Wagner (2002), Burrafato i Cossentino (2002), Padgham i Winikoff (2002). Multe din metodologiile orientate-agent existente nu sunt nc finalizate pentru a fi utilizate efectiv n industria dezvoltrii software: ele au rmas nc n sfera cercetrii sau sunt destinate numai proiectrii unui unor ageni specifice, sau nu sunt descrise cu detalii suficiente. Dintre metodologiile care au fost considerate complete de ctre specialiti - sunt descrise n detaliu, ofer instrumente de sprijin n proiectare se numr metodologiile MaSE (DeLoach, 2001), Tropos (Bresciani, 2002), Gaia (Wooldridge, 2000) i PASSI (Burrafato i Cossentino, 2002), Prometheus (Padgham i Winikoff, 2002).

32

Metodologia Prometheus, elaborat de Lin Padgham i Michael Winikoff [PadgWini04] n colaborare cu compania Agent Oriented Software ( http://www.agent-software.com), definete n detaliu procesele pentru specificarea, proiectarea, implementarea i testarea sistemelor software orientate-agent. Metodologia const din trei faze principale : 1. specificarea sistemului se concentreaz pe identificarea obiectivelor i funciilor de baz ale sistemului, a intrrilor (percepiilor) i ieirilor (aciunilor); 2. proiectarea arhitecturii sistemului utilizeaz rezultatele fazei anterioare pentru a determina ce tipuri de ageni va conine sistemul i cum acetia vor interaciona; 3. proiectarea detaliat a sistemului urmrete arhitectura intern a fiecrui agent i cum va reaciona acesta n cadrul sistemului pentru ndeplinirea obiectivelor stabilite.

33

Capitolul 4. FUNDAMENTELE SISTEMELOR MULTIAGENT 4.1. Concepte i caracteristici ale agenilor Tehnologia agenilor reprezint o nou paradigm pentru conceptualizarea i dezvoltarea sistemelor informatice, care astzi i gsete aplicaii n diverse domenii de activitate: industria energetic, aeronautic, robotic, psihologie, comer electronic, financiar-contabil, instruire interactiv, medicin etc. Tehnologia agent i are originea la nceputul anilor 1980, cnd companii ca Apple i Hewlett-Packard au promovat dezvoltarea sistemelor pentru automatizarea secvenelor de comenzi folosite frecvent de ctre utilizatori. Caracteristica principal a acestor sisteme a fost caracterul lor de programe de independente, capabile de a soluiona sarcini ce preau a fi de competen pur uman. Cercetrile din domeniu au reuit s treac de la abordrile pur teoretice la aplicaii concrete ce utilizeaz tehnologia agent: comerul electronic, managementul reelelor de telecomunicaii, modelarea i optimizarea traficului de cltori i de marf, coordonarea traficului aerian, regsirea informaiilor n mediul Internet, optimizarea proceselor de producie industrial, jocuri virtuale pe calculator, proiectri de aplicaii tehnice, simulri de fenomene sociale i multe altele. Originea tehnologiei agent este nrdcinat n tiina inteligenei artificiale, care are ca obiectiv explorarea bazelor sociologice i psihologice i dezvoltarea acelor mecanisme, metode i echipamente capabile de comportament inteligent, care s permit sistemelor (agenilor) s interacioneze la fel ca oamenii, n scopul rezolvrii unor probleme complexe. Eterogenitatea celor implicai direct n cercetarea i crearea de aplicaii orientate agent, a mpiedicat pn acum apariia unei definiii unice pentru conceptul de agent software", sau agent inteligent". Termenul de agent deriv din limba latin, provenind de la participiul verbului agere a conduce, a interpreta, a face. Conform dicionarului Collins English Dictionary, termenul de agent se refer la o persoan, care acioneaz sau este capabil s acioneze sau este mputernicit s acioneze pentru altcineva. Oxford Dictionary definete agentul ca fiind o persoan ce acioneaz n numele cuiva, o persoan sau companie care acioneaz ca un broker i ofer un serviciu specific. Conform Dicionarului Explicativ al Limbii Romne, un agent este un reprezentant al unei instituii, organizaii, etc. care ndeplinete anumite nsrcinri"; sau un factor activ, eficient, care provoac diverse fenomene fizice, chimice, etc." [DEX]. Definiia unui agent scoate n eviden dou atribute cheie ale acestuia: (i) un agent execut sarcini i (ii) un agent acioneaz n numele cuiva. Aceste caracteristici au stat la baza definirii agentului software ca fiind acea entitate de calcul, care execut autonom activitile ordonate de un anumit utilizator. Orice agent are un proprietar, care i stabilete obiectivele de realizat i i asigur implementarea ntr-un anumit mediu. Pentru a putea aciona n acel mediu agentul trebuie s dein acea arhitectur care s-i permit nelegerea mediului respectiv, s-l perceap i s acioneze asupra acestuia (figura nr. 4.1).

Figura nr. 4.1 Arhitectura abstract a unui agent

Un agent este o entitate situat ntr-un mediu, pe care l percepe i asupra cruia acioneaz continuu - n concordan cu propria agend - pentru a atinge anumite scopuri. Dup Michael Wooldridge [Wooldridge99] pentru ca o entitate s fie considerat agent, trebuie s aib cel puin urmtoarele caracteristici: autonomie, reactivitate, comportament orientat spre scop, abilitate social. Autonomia este una din caracteristicile eseniale ale unui agent, respectiv capacitatea acestuia de a aciona independent, n funcie de modificrile survenite n mediul pe care acesta l monitorizeaz i conform obiectivelor pe care agentul le urmrete. A fi reactiv nseamn ca agentul s perceap mediul n permanen, prin intermediul senzorilor i imediat s reacioneze la modificrile survenite, prin executarea anumitor aciuni. n aciunile pe care agentul le ntreprinde, acesta urmrete ntotdeauna ca acestea s aib ca efect atingerea unui anumit obiectiv, respectiv s poat s identifice cile de atingere a obiectivului, iar dac acest lucru nu mai este posibil s sesizeze din timp posibilele variante de schimbare a obiectivului. Aceasta nseamn s aib un comportament dirijat spre scop.

34

Abilitatea social presupune ca agentul s aib acea arhitectur intern care s-i permit s schimbe informaii cu ali ageni sau alte entiti, adic s comunice cu acetia i s fie capabil s negocieze i s coopereze pentru atingerea obiectivelor. Din punctul de vedere al schimbului de informatii cu mediul, aciunile pot fi (i) de perceptie capacitatea agentului de a-i percepe mediul de execuie, (ii) de micare abilitatea de a migra de la sine de pe o platform pe alta, (iii) de comunicare capacitatea agentului de a intereaciona cu alti ageni.prin intermediul unui limbaj de comunicare inter-agent. Literatura de specialitate abund n definiii, caracterisitici i proprieti ale agenilor. Termenii tehnici i de pia sub care agenii sunt ntlnii n literatura de specialitate pot fi confuzi, deoarece numele lor descriu diferite componente ale ageniilor, mediul n care ei triesc, activitile executate i arhitectura modulului de cunotine. Stuart Russell i Peter Norvig [Russell02] au definit agentul ca fiind acea entitate care poate percepe mediul prin senzori i poate aciona asupra acestui mediu prin efectori. Problema fundamental a agentului este s aleag dintre toate aciunile posibile la un moment dat, pe cea care l ajut cel mai mult la ndeplinirea obiectivelor pentru care a fost proiectat. Pattie Maes (Massachusetts Institute of Technology) [Maes07] a definit agenii ca fiind acele sisteme de calcul care se regsesc ntr-un mediu dinamic complex i care acioneaz autonom n acest mediu prin realizarea unui set de scopuri sau sarcini, pentru a-i ndeplini obiectivele planificate. De regul, un agent are o anumit gam de aciuni pe care le poate efectua. Mulimea tuturor aciunilor posibile ale unui agent poart denumirea de capacitate efectoric. Ted Selker de la IBM Almaden Research Center a lansat o definiie interesant, pornind de la ideea c activitile de rutin sau cu un caracter repetitiv, pot fi delegate unui agent software: "un agent este acea entitate software care tie s fac lucrurile aa cum probabil le-ai face tu nsui dac ai avea timp" . Agentul care poate s interacioneze cu ali ageni, s se adapteze la schimbrile survenite n mediu i s-i mbuntaeasc comportamentul - adic s nvee din fiecare situaie ntlnit - este un agent inteligent. Inteligena unui agent este dat de capacitatea de nvare i nelegere pe care o posed. S-a scris mult pe seama proprietilor minimale pe care s le dein un agent pentru a fi considerat agent inteligent. Concluzia este c dezvoltatorii agenilor, i-au nzestrat cu anumite proprieti, n funcie de mediul n care urmau s activeze. Astfel un agent care are ca obiectiv dirijarea unei nave de zbor, respectiv suinerea echipajului navei n pstrarea traseului spre destinaie i executarea acelor manevre n funcie de modificrile condiiilor meteo i de ali participani la traficul aerian, va avea o arhitectur diferit de a unui agent de cutare pe Internet sau a unui agent personal.

4.2. Taxonomia agenilor software Agenii sunt proiectai s acioneze ntr-un mediu particular, cum ar fi un sistem de operare, o aplicaie, o reea de calculatoare. Internetul, sistemul de operare i agenii web sunt exemple de ageni etichetai n funcie de mediul lor. Asistenii, experii i vrjitorii pentru o anumit aplicaie, sunt ageni de asemenea etichetai n concordan cu mediul n care acetia acioneaz. Caracteristicile unui agent referitoare la coordonare, cooperare, comportament etc., nu sunt uor de realizat avnd n vedere c mediile n care poate aciona agentul sunt foarte diferite. De aceea, deocamdat vom ntlni o diversitate de tipuri i arhitecturi de ageni, care sunt specifice anumitor medii i care pot aciona doar n mediul respectiv. Tipul unui agent este stabilit n concordan cu sarcinile acestuia (agent de cutare, de filtrare etc.) i n concordan cu arhitectura modulului de cunotine cu care este nzestrat - nva de la utilizatori, acumuleaz cunotine, utilizeaz reguli de inferene etc. De regul, numele agentului descrie mediul n care acioneaz, obiectivele, aptitutidinile cu care acesta este nzestrat sau aciunile specifice pe care acesta le ntreprinde. O clasificare de referin a agenilor a fost realizat de Stan. Franklin i Art Graesser (Institute for Intelligent Systems University of Memphis) [FrankGra96], care n analogie cu arborele filogenetic din biologie, au identificat opt categorii de ageni (figura nr. 4.2)

35

Hyacinth Nwana (Advanced Applications & Technology Department BT Laboratories) [Nwana96], consider c atributele ideale pentru ageni sunt autonomia, capacitatea de nvare i capacitatea de cooperare cu ali ageni. Ponderea acestor caracteristici n totalul structurii conduc la obinerea agenilor colaborativi de nvare, a agenilor interfa, a agenilor colaborativi i a agenilor inteligeni, care au fost considerai ca fiind acele entiti care dispun de autonomie, interacioneaz n permanen cu mediul, posed capaciti de cooperare i comunicare cu ali ageni i sunt nzestrai cu mecanisme de raionament (figura nr. 4.3)
Ageni inteligeni Ageni colaborativi de nvare

Cooperare

nvare

Ageni colaborativi

Autonomie

Ageni interfa

Figura nr. 4.3 Taxonomia agenilor dup H. Nwana [Nwana96]

Michael.R. Genesereth i Steven.P. Ketchpel (Computer Science Department Standford University) [GenesKetch94], au propus urmtoarea taxonomie agent: (figura nr. 4.4)

Tipuri de agenti

Ageni colaborativi

Ageni interfa

Ageni mobili

Ageni de informaii

Ageni reactivi

Ageni hibrizi

Ageni inteligeni

Figura nr. 4.4. Taxonomia agenilor dup M.R. Genesereth i S.P. Ketchpel [GenesKetch94]

n funcie de mediul software n care sunt situai i de activitile desfurate, agenii pot fi clasificai astfel [CagHarr97]: Ageni desktop o Ageni sistem operare: sunt agenii care ofer asisten utilizatorilor cu interfaa sistemului de operare; de exemplu ei pot monitoriza evenimentele de la nivelul sistemului de operare i executa diverse sarcini atunci cnd utilizatorul nu mai lucreaz o anumit perioad; o Ageni aplicaie: agenii interfa care ofer asisten utilizatorilor ntr-o aplicaie particular; o Ageni aplicaii multiple: agenii care ajut utilizatorii n rezolvarea unei suite de aplicaii. Ageni Internet o Ageni de cutare Web: ageni Internet care ofer utilizatorilor servicii de cutare; o Ageni de server Web: ageni Internet care locuiesc pe un site Web pentru a oferi servicii agent; o Ageni de filtrare a informaiilor: ageni Internet care filtreaz informaiile electronice n concordan cu preferinele specifice ale utilizatorilor; o Ageni de regsire a informaiilor: ageni Internet care transmit un pachet de informaii personalizate n concordan cu preferinele utilizatorilor; o Ageni de notificare: ageni Internet care notific un utilizator de apariia unor evenimente de interes personal al utilizatorului ; o Ageni de servicii: ageni Internet care ofer servicii specializate utilizatorilor; o Agenii mobili: ageni Internet care migreaz dintr-un loc n altul, s excute sarcini specificate de utilizator. Ageni Intranet o Ageni de colaborare: ageni care proceseaz o schem de lucru automat; o Ageni de automatizare a proceselor: ageni care execut o schem automat a unui proces de afaceri; o Ageni baz de date: ageni care ofer servicii pentru utilizatorii bazelor de date; o Ageni de brokeraj a resurselor: ageni care execut alocarea resurselor n arhitecturile client/server.

36

Dup complexitaea problemelor, obiectivele i activitile concrete pe care agenii le rezolv, acetia pot fi grupai n: asisteni personali o agent de informare - ex. MAXIMIS [Maes, a994] pentru gestionarea i filtrarea emailurilor, NewT [Maes, 1994] pentru filtrarea tirilor; o agent de cumprare - ex. Jango [Doorembos, 1997]; o agent interfa ex. Mailtalk [Cohen, 1994], COLLAGEN [Rich&Sidner, 1997]; o agent pentru jocuri i realitate virtual ex. [Hayes-Roth, 1995], [Cassel, 1994]; o agent de control pentru roboi ex. [Burgard, 1998]; o agent de control al aparatelor de zbor ex. [Muscettola, 1998]; sisteme distribuite o managementul proceselor de afaceri i a sistemelor workflow ex. ADEPT; o managementul sistemelor industriale - ex. ARCHON; o controlul traficului de zbor - ex. OASIS; o sisteme informaionale cooperative, biblioteci digitale - ex. Carnot [Huhns, 1992]; o sisteme de control multi robot; o simulari sociale - ex. proiectul EOS [Doran&Palmer, 1995]. Taxonomia agenilor poate fi fcut i dup alte criterii cum ar fi: dup mediul n care se desfoar, dup sarcinile pe care le execut, dup arhitectura lor de control, dup mecanismele de control utilizate, dup starea lor intern, dup tipul de interfa cu care sunt nzestrai, dup aplicaiile pe care le rezolv, dup rolul acestora etc. Agenii inteligeni, numii i ageni cognitivi, au toate proprietile agenilor software (autonomie, abilitate social, reactivitate, proactivitate) dar n plus, sunt conceptualizai folosind noiuni ce se aplic de obicei oamenilor, cum ar fi: - noiuni mentale epistemice : convingeri, cunotine; - noiuni mentale de atitudine: intenii, obligaii, angajamente, decizii; - raionalitate; - adaptabilitate sau capacitate de nvare. Modulul de cunotine al unui agent inteligent conine regulile dup care acesta se ghideaz pentru ai atinge obiectivul. Cunotinele pot fi cptate prin tehnicile menionate n figura nr. 4.5.
Agent

Cunotine

Agenda de activiti

Aptitudini de comunicare

Cunotine apriori

nvare

Activiti

Utilizator

Alti ageni

Specificate de: -dezvoltator -utilizator -sistem

Dialog Reele neuronale Memorie Cazuri Expertiz

Cutare iinformaii Filtrare informaii

Interfa sociala

Limbaj de comunicare interagent

Figura nr. 4.5 Arhitectura general a unui agent inteligent

Deprinderile de comunicare ale agentului afecteaz modul cum interacioneaz el cu utilizatorul. n mediile distribuite, modulul de comunicare controleaz interaciunea cu ali ageni. Interfaa utilizator (uman) servete ca un canal de comunicaie cu utilizatorul, folosind diverse tehnici de comunicare (mesaj de email, interfee multimedia). Pentru comunicarea interagent, se folosete un limbaj de comunicare agent (ex. KQML, Telescript, Agent Tcl, Knowledge Interface Format (KIF), Agent Communication Language (ACL)) Dup Paulo Leitao (Polytechnic Institute of Braganca Portugal) [Leito00] arhitectura unui agent inteligent este bazat pe patru module i o baz de cunotine, care conine toate informaiile relevante despre comportamentul agentului i a mediului (figura nr. 4.6): - modulul de luare a deciziilor controleaz toate activitie agentului i include un rezolvitor de probleme i luare decizii. Procesul de luare a deciziilor cuprinde analiza informaiilor disponibile, aplicarea mecanismelor de decizie, evaluarea deciziei i nvarea. Pentru luarea deciziilor, modulul utilizeaz baza de cunotine local i cnd nu dispune de suficiente informaii pentru luarea unei decizii, este pornit procesul de cooperare cu ali ageni;

37

- modulul de cooperare gestioneaz cooperarea cu agenii externi, solicitarea cooperrii cu ali ageni, colectarea rspunsurilor i trimiterea acestora ctre modulul de luare a deciziilor. Acest modul implementeaz mecanisme de negociere (de ex. un protocol de negociere Contract Net Protocol); - modulul de comunicare urmrete interaciunea cu ali ageni i definete un limbaj de comunicare. Nivelul fizic al acestui modul conine acele protocoale de comunicare care s permit interaciunea dintre aplicaii (ex. CORBA);

Figura nr. 4.6. Arhitectura unui agent generic, dup P. Leitao [Leito00]

- modulul de control i monitorizare are menirea de a monitoriza activitile din mediu i de aciona asupra acestuia conform deciziilor luate pentru atingerea obiectivului. - baza de cunotine memoreaz toate cunotinele despre mediu i despre comportamentul agentului, sub diferite dipuri de cunotine cum ar fi: constrngeri, obiective, proceduri, reguli, experine, tehnici i structuri organizaionale. Michael Wooldridge [Wooldridge99], clasific agenii inteligeni, dup arhitectura acestora, n patru categorii: - ageni bazai pe logic deciziile sunt luate pe baza deduciilor logice (Yves Lesperance, 1996 York University Canada; Klaus Fischer, 1994); - ageni reactivi luarea deciziilor este implementat ca o mapare direct a situaiei de aciune (Brooks, Maes); - ageni BDI luarea deciziilor depinde de manipularea unor reprezentri a convingerilor, dorinelor i inteniilor agentului (Anand Rao, Michael Georgeff, 1992); - ageni multi-nivel luarea deciziilor este realizat printr-un anumit numr de niveluri software, fiecare reprezentnd explicit diferite niveluri de abstractizare a mediului (Muller, 1995 ; Fergusson, 1995). Dintre aceste tipuri de ageni, o atenie deosebit o merit agenii BDI, a cror arhitectur a devenit un standard pentru diferite modele de ageni. Arhitectura BDI a unui agent inteligent dup Michael P. Georgeff (Australian Artificial Intelligence Institute) convingeri (engl. Beliefs), dorine (engl. Desires), i intenii (engl. Intentions). Acest model are ca punct de plecare filosofia raionamentului practic, care presupune mai nti stabilirea scopului, printr-un proces deliberativ, i apoi identificarea mijloacelor disponibile pentru atingerea acelui scop.

Platforma agent Sistem gazd Servicii sistem

Platforma agent Sistem gazd

Platforma agent Sistem gazd

Figura nr. 4.7. Arhitectura de baz a unui agent mobil

38

O caracteristic special a agenilor este mobilitatea. Un agent mobil este acel agent care poate transfera codul i starea sa n cadrul reelei, acolo unde poate s-i execute cel mai bine taskurile. Astfel, agenii mobili sunt entiti ce posed un comportament, o stare i o locaie. Acetia pot migra pe diverse platforme, n fiecare moment identificndu-se cu o anumit locaie (site-ul pe care a ajuns), un anumit comportament (sarcina pe care o realizeaz n acea situaie/stare) i starea corespunztoare (figura nr. 4.7.). Aspectele suplimentare pe care trebuie s le defineasc arhitectura unui agent mobil se refer la: - migrarea agentului pe diferite platforme respectiv cum i unde se mut un agent mobil; - autentificarea cum sa se identifice corect un agent mobil de un alt cod care poate fi un virus; - secretizarea - pstrarea confidenialitii datelor transportate de agent; - securitatea cum se poate proteja un agent mobil moptriva virusilor sau de gazde distructive i cum se poate proteja un sistem gazd de un agent mobil distructiv; - performana care va fi efectul n situaia aglomerrii unei reele de multipli ageni mobili; - interoperabilitatea cum comunic un agent mobil cu alti ageni sau platforme agent.

4.3. Sistemele multiagent Un sistem multiagent este o aplicaie software capabil s rezolve o problem, prin structurarea sistemului ntr-un numr de ageni, amplasai ntr-un anumit mediu, cu scopul de a atinge diferite cerine funcionale i de calitate a sistemului. Capacitatea unui singur agent este limitat de cunotinele sale, de resursele de calcul disponibile, de perspectiva sa asupra domeniului studiat, fiecare agent avnd o perspectiv parial i imprecis asupra sistemului (figura nr. 4.8.).
Agent Interaciuni

Relaii

Sfera de influen
Figura nr. 2. 1. Viziunea unui agent asupra mediului (adaptare dup http://www.csc.liv.ac.uk/mjw/pubs/imas/)

Astfel, pentru un domeniu problem complex, soluia este dezvoltarea unui numr specific de ageni, specializai n rezolvarea unor aspecte particulare a problemei. Prin utilizarea expertizei proprii, a resurselor i informaiilor locale, agenii pot lucra cooperativ pentru formularea de soluii pariale i ulterior prin integrarea soluiilor pariale cu a altor ageni, pot construi o soluie global care s conduc la ndeplinirea obiectivele sistemului. Sistemele multiagent abordeaz modul cum mai muli ageni pot lucra mpreun pentru rezolvarea unor probleme complexe, pornind de la premisa c un agent este capabil s lucreze autonom i s rezolve o anumit sarcin. Cercetrile din acest domeniu s-au concentrat pe tehnicile de distribuire a datelor i a controlului i de coordonare a activitilor agenilor, astfel nct fiecare s-i rezolve propriul interes sau s satisfac un obiectiv comun. Un sistem multiagent este caracterizat prin urmtoarele aspecte [Weiss99]: - fiecare agent are informaii sau abiliti incomplete sau insuficiente pentru rezolvarea problemei globale; - agenii au diferite sfere de influen asupra mediului (care pot s se ntreptrund); - agenii sunt reunii de anumite relaii organizaionale; - agenii interacioneaz prin comunicare; - nu exist un sistem global de control; - datele sunt descentralizate; - calculele sunt asincrone. Un agent are una sau mai multe limitri: cognitive, fizice, temporale, instituionale [MostRanaFou04]. Limitrile cognitive provin de la faptul c un agent poate deine datele i cunotine limitate. Un anumit agent poate fi limitat fizic, datorit arhitecturii sale sau datorit resurselor disponibile la un moment dat. Putem ntlni limitri temporale, n cazul n care atingerea unui anumit obiectiv depete durata planificat pentru execuia acelei sarcini

39

sau perioada de timp pentru care sunt disponibile anumite resurse. Limitrile instituionale pot fi de ordin juridic sau politic. n proiectarea unei aplicaii multiagent, plecnd de la arhitectura agenilor i a sistemului, este necesar s se stabileasc dou aspecte generale: care sunt cunotinele pe care le deine un agent i cum poate un agent s acceseze i utilizeze cunotinele unui alt agent. Dup tipul de ageni utilizai putem avea sisteme multiagent cu: - ageni omogeni agenii au aceeai structur intern (scopuri, aciuni, cunotine) i aceeai procedur de selecie a aciunilor; - ageni eterogeni agenii au scopuri diferite, aciuni diferite i arhitecturi diferite. Dup gradul de cooperare deinut de agenii individuali avem: - ageni cooperativi ageni care coopereaz n rezolvarea problemei distribuite; - ageni auto-interesai agenii sunt concureni i i urmresc propriul interes. Pentru meninerea unei coerene globale asupra sistemului, agenii trebuie s fie capabili s-i determine propriile scopuri i s comunice cu ceilali ageni, astfel nct s-i coordoneze comportamentul i aciunile. Mediile multiagent furnizeaz o anumit infrastructur ce specific protocoalele de comunicare i de interaciune ntre ageni. Comunicaia trebuie definit pe niveluri diferite, plecnd de la nivelul cel mai de jos, folosit de cel mai slab agent. Pentru a comunica, agenii trebuie s ntre n dialog, unde pot avea rolul de master (activ), slave (pasiv) sau poate fi un dialog egal de tipul peer-to-peer. Motivele pentru care este necesar coordonarea ntr-un sistem multiagent sunt: - previne haosul nici un agent nu deine o privire de ansamblu asupra ntregului sistem; - agenii posed cunotine i aptitudini de exemplu, personalul unui spital. ce este format din infirmiere, anesteziti, asisteni, doctori etc, trebuie s se coordoneze pentru a trata pacienii; - aciunile agentului sunt frecvent n relaie cu a celorlali ageni - un agent trebuie s atepte un alt agent s execute o alt sarcin n prealabil. Planificarea distribuit permite agenilor s-i modeleze planurile unii altora. Agenii comunic pentru a construi i actualiza planurile i modelele individuale pn cnd toate conflictele sunt nlturate. Activitatea de rafinare a modelelor are loc pn cnd toate converg ctre un plan global coerent. Rezolvarea unei probleme complexe presupune descompunerea planului general i alocarea de subplanuri ctre diferii ageni. Alocarea sarcinilor se poate efectua dup mai multe variante. O prim variant presupune existena a doi ageni specifici: un agent supervizor, care cunoate cum s descompun un anumit plan, i un agent mediator, care cunoate care ageni sunt capabili s execute acele sarcini. A doua variant este cazul n care agentul mediator nu are abilitile necesare pentru a executa o alocare complet a sarcinilor. n acest caz, supervizorul mai nti va descompune planul complex i apoi va trimite o descriere a fiecrei activiti ce trebuie executate de ctre mediator. Mediatorul ataeaz la fiecare descriere abilitile i calificrile necesare, apoi efectueaz o licitaie. Agenii poteniali utilizeaz aceste informaii pentru a decide dac se nscriu sau nu la aceast licitaie. Structura organizaional este cel mai simplu scenariu de coordonare, deoarece organizaia are implicit definite responsabilitile, abilitile, conectivitatea i fluxul de control al agenilor. Ea ofer cadrul necesar desfurrii activitilor i interaciunilor prin definirea rolurilor, cilor de comunicare i relaiilor de autoritate.

4.4. Aplicaii i avantaje ale sistemelor multiagent


Sistemele multiagent reprezint o nou tehnologie software cu avantaje n rezolvarea distribuit a problemelor i n rezolvarea problemelor de natur distribuit. Rezolvarea unei probleme complexe de ctre un sistem multiagent se poate face prin distribuirea de sarcini mai multor ageni din cadrul sistemului. Fiecare agent va fi specializat n rezolvarea de subprobleme n domeniul su., iar pentru soluionarea unor probleme comune, va interaciona cu ali ageni. Exist mai multe modaliti de a clasifica aplicaiile tehnologiei agent: dup tipul de ageni, dup tehnologia utilizat pentru implementarea agenilor, sau dup domeniul de aplicare. Dup acest ultim criteriu, avem urmtoarele aplicaii ale sistemelor multiagent: a) Aplicaii industriale Aplicaiile industriale ale tehnologiei agent au fost printre primele dezvoltate, nc de prin 1987. De exemplu, s-a folosit protocolul de contractare n reea pentru medii de fabricaie. Astzi agenii sunt folosii ntr-o mare varietate de aplicaii industriale. - Controlul proceselor. Exist o platform software numit ARCHON, pentru construirea de sisteme multiagent pentru aplicaii de control al proceselor, cum ar fi administrarea transportului energiei electrice (nordul Spaniei) i controlul acceleratoarelor de particule [JennCor98]; - Fabricaie. Parunak descrie sistemul YAMS (Yet Another Manufacturing System [Parunak87]), care aplic protocolul de contractare n reea la controlul fabricaiei, n care o ntreprindere este modelat ca o ierarhie de celule de lucru, fiecare celul de lucru ocupndu-se de un anumit aspect al fabricaiei; celulele de lucru vor fi ulterior grupate n sisteme de fabricaie flexibile, care vor forma o uzin, iar o companie poate avea mai multe uzine, care i pot partaja funcionalitatea i capacitile. Scopul lui YAMS este de a administra eficient procesul de producie al acestora;

40

- Controlul traficului aerian. Kinny i colaboratorii descriu un sistem de control al traficului aerian, bazat pe tehnologia agent, numit OASIS, folosit cu succes la aeroportul din Sydney; agenii sunt folosii pentru a reprezenta att avioanele, ct i diferitele sisteme de control aerian care opereaz [KinnyGeorgeff96]; - n robotic colectiv un ansamblu de roboi coopereaz pentru un scop comun; roboii sunt ageni inteligeni fizici ce compun un SMA. n robotica colectiv exist dou domenii principale: robotica celular i robotica cooperativ; robotic celular se refer la construirea de roboi modulari, n care micarea este rezultatul coordonrii unui ansamblu; n robotica cooperativ, roboii i coordoneaz micrile i coopereaz pentru a-i ndeplini sarcinile atribuite; un exemplu este controlul vehiculelor aeriene autocomandate (UAV - unmanned air vehicle); b) Aplicaii comerciale - Administrarea informaiei; Volumul imens de informaie disponibil prin Internet reprezint o problem real foarte serioas; n acest sens, agenii inteligeni se ocup de filtrarea i de informaiei; - Comerul electronic; Comerul este aproape n ntregime condus de interaciunea uman, dar anumite activiti comerciale pot fi automatizate, deci anumite decizii comerciale pot fi lsate n sarcina unor ageni; - Administrarea afacerilor; directorii companiilor iau decizii pe baza unei combinaii de judeci i informaii de la mai multe departamente, dar obinerea de informaie pertinent, consistent i actualizat n cadrul unei mari companii este un proces complex i consumator de timp. Din acest motiv, unele companii au dezvoltat sisteme multiagent necesare managementului. Proiectul ADEPT [JenningsNor98] abordeaz aceast problem privind un proces de afaceri ca o comunitate de ageni furnizori de servicii, care negociaz ntre ei. Fiecare agent reprezint un rol sau un departament diferit din ntreprindere i este capabil s ofere unul sau mai multe servicii. c) Aplicaii medicale Sistemele multiagent s-au dezvoltat i n urmtoarele domenii ale informaticii medicale: - monitorizarea pacienilor; Sistemul Guardian descris de Barbara Hayes-Roth [HayesRoth98] este conceput pentru a ajuta n administrarea i monitorizarea pacienilor din laboratorul de chirurgie intensiv; - ocrotirea sntii; J., Huang [Huang95] a descris un prototip de sistem de ngrijire medical bazat pe un sistem multiagent. d) Alte aplicaii - amuzament Agenii au un rol evident n jocurile pe calculator, n teatrul interactiv i n aplicaiile legate de realitatea virtual. aceste sisteme tind s conin caractere animate semi-autonome, ce pot fi n mod natural implementate ca ageni; - simulare i lumi artificiale. Sistemele multiagent au fost folosite i pentru simularea unor sisteme vii, de exemplu a unui ecosistem cu animale de prad i victime. Exist mai muli parametri care intr n calcul, iar fiecare animal (de prad sau victim) poate fi vzut ca un agent inteligent, care are scopul fie de a vna, fie de a se feri din calea vntorilor. Aa cum unele animale atac n grupuri (ex. haitele de lupi), se poate simula negocierea agenilor prdtori n vederea atingerii scopului comun; - instruire asistat de calculator, dac ne gndim la sistemele bazate pe agenii pedagogici. Sistemele multiagent sunt capabile s ofere mai multe avantaje: - vitez i eficien agenii pot opera asincron i n paralel, fapt ce duce la creterea vitezei; - robustee eecul unuia dintre ageni nu implic cderea sistemului deoarece ali ageni sunt gata s preia acele sarcini; - flexibilitate sistemul poate fi extins pentru rezolvarea de probleme de dimensiuni mai mari adaugnd noi ageni; - costuri reduse un sistem multiagent poate fi construit la un cost mai sczut dect un sistem centralizat; - dezvoltare i reutilizare ageni individuali pot fi proiectai separat de specialiti, sistemul poate fi testat i ntreinut mai uor i este posibil reconfigurarea i reutilizarea agenilor n diferite scenarii de aplicaii. n concluzie, tehnologia sistemelor multiagent este una dintre cele mai promitoare tehnologii ale momentului.

41

Capitolul 5. Virtualizare afacerilor cu tehnologia agent 5.1. Modele de afaceri electronice


Se poate spune c odat cu intrarea n era Internetului i a e-business-ului, s-au produs transformri fundamentale ale structurilor socioeconomice. Succesul n afaceri implic din partea organizaiilor, n primul rnd apel la tehnologia informatic i extinderea relaiilor de afaceri n afara limitelor teritoriului naional. Tehnologia i n special Internetul au schimbat modul n care se fac afacerile. Internetul ofer infrastructura tehnic ce permite prezena online, respectiv abilitatea de a comunica cu clieniii, partenerii de afaceri, de a avea acces usor i rapid la informaii direct de la serviciu sau de acas. Internetul reprezint infrastructura prin care se vehiculeaz informaia de orice fel: text, sunet, voce, imagine, video. In esen, el este o reea global realizat din reele mai mici, prin care se reunesc milioane de calculatoare din ntreaga lume, prin infrastructura telecomunicaiilor. Tehnologia World Wide Web (www) introdus Tim Berners-Lee n anul 1990, a schimbat fundamental Internetul, astfel nct astazi nu se mai face de fapt o distincie ntre Web i Internet. Din punct de vedere tehnic, spaiul Web pune la dispoziie un sistem global i standardizat de comunicare multimedia, informaiile fiind organizate asociativ i distribuite n funcie de cerinele utilizatorilor. Pe msur ce Internetul a devenit mai sofisticat, i site-urile Web i-au adaptat cerinele. Schimbrile din Internet pot fi grupate n patru generaii de siteuri web17 : - generaia I - site-uri web simple de tip "brosura on-line". Iniial companiile erau mulumite s aibe o simpl prezen pe Internet. Dezavantajele acestor tipuri: nu erau site-uri interacive, cititul coninutului on-line consuma timp i tindea s fie dificil, timp mare de download a informaiilor; - generaia a II-a - site-uri web structurate pe specificul intern al companiei: informaii despre strategia i misiunea companiei, locuri de munc, tiri din pres, mesajul preedintelui companiei. Aceasta generaie este mult mai apropiat de un site Intranet i se caracterizeaz prin prezena numeroas a imaginilor n pagini, fr multe informaii afiate, vizitatorii trebuind s selecteze anumite imagini pentru a obtine informaii mai detaliate cu privire la produse, preuri. - generaia a III-a - site-uri web ce utilizeaz elemente simple de navigare (cuvinte pentru navigare n loc de imagini), iar coninutul este orientat spre vizitator. Elementele de navigare utilizeaz explicaii text pentru un download rapid. Vizitatorii pot accesa informaiile dorite din cteva click-uri fr a atepta ncarcarea unor imagini mari. Imaginile tind s fie ct mai reduse n dimensiune, informaiile interne despre companii pot fi gasite pe site, dar nu mai sunt afiate/centrate pe pagina home. - generaia IV-a reprezint viitorul Internetului. Ea seaman cu generaia a III-a, diferenele fiind n spatele scenelor. Ele sunt strns legate de toate aspectele companiei. Cnd un client cauta o informaie dntr-un astfel de site, informaia este generat dintr-o baz de date specific pentru clieni. De exemplu, pe site-ul Dell Computers http://www.dell.com/ poti s configurezi dinamic calculatorul pe care doreti s-l cumperi, prin alegerea opiunilor din meniurile afiate pe site. Chiar dac nu cumperi acel calculator, compania pstreaz opiunea pentru o cercetare de marketing, respectiv pentru a o ajuta s identifice caracteristicile mai mult sau mai putin cutate. Internetul face posibil i usor pentru ca companiile s ofere clienilor o prezenta pe intreg globul. Prin intermediul Internetului, produsele companiei pot fi accesate direct i de asemenea: - face nerelevant mrimea companiei: fie c sunt mai mari sau mai mici, firmele au acelai acces la clieni i pot crea acelai tip de prezen n mediul Internet; - face nerelevant locaia companiei. Clienii localizai oriunde pot uor accesa site-ul companiei. De asemenea, timpul zonal este nerelevant. Internetul este accesibil 24 de ore din 24, apte zile din apte. Bazele de date i email-urile au caracteristici tipice interacive. Nici una dintre ele nu necesit interaciune uman pentru a oferi clienilor informaii despre produse i servicii; - crete feedback-ul - poi avea acces instantaneu la reacia clientului i un feedback la programele de marketing i la preurile produselor lansate pe web. Din acest punct de vedere, se poate spune c ntreprinderile mici au un avantaj. Pentru ele este mai usor si modifice infrastructura intern i s se adapteze la noile cerine ale comerului online, fa de marile companii care vor necesita schimbri ale infrastructurii interne pentru a deveni sisteme flexibile i funcionale n mediul Internet.

17

Rosen, A., E-Commerce Question and Answer Book, AMACOM Books, 1999, p. 10

42

Internetul aduce mult mai aproape compania de clieni i de furnizori. Un site Internet permite o prezen web pentru publicul general. Un site Intranet utilizeaz tehnologia Internet pentru a oferi angajailor proprii acces la informaiile interne. Aceste site-uri sunt separate de Internet prin intermediul unor metode de securitate, astfel nct persoanele din afara organizaiei s nu poat avea acces la informaiile private. Pe un site Extranet, partenerii de afaceri - pe baza unei parole protejate - pot accesa informatii pe care publicul general nu poate (figura nr. 5.1)

Angajatii firmei

Parteneri de afaceri

Consumatori

Intranet

Extranet

Internet

Figura nr. 5.1. Tehnologia Internet i modele de afaceri electronice

Comerul electronic (e-commerce), n concepia Organizaiei Economice de Cooperare i Dezvoltare (OECD), reprezint desfurarea unei afaceri prin intermediul reelei Internet, vnzarea de bunuri i servicii avnd loc offline sau online. Exist deja multe modele pentru derularea afacerilor pe Internet. Acestea pot fi clasificate n funcie de numrul de furnizor i, prestatori de servicii ctre clieni, astfel: 1-catre-1 (e-shop) mai muli-ctre-1 (e-mall) mai muli-ctre-mai muli (e-licitaie). Dup tipul clientului, ce are o anumit formare profesional, anumite interese i preferine, putem avea urmtoarele modele de afaceri de comer electronic (figura nr. 5.2) un consumator - Business-to-Consumer (B2C sau BTC) - se refer la relaiile dintre comerciant i consumatorul final, fiind considerat comer electronic cu amnuntul; o alt firm - Business-to-Business (B2B sau BTB) - cuprinde toate tranzaciile ce se efectueaz ntre doi sau mai muli parteneri de afaceri, care actioneaz pe Internet prin utilizarea de nume i parole pentru paginile de web proprii; administraia public - Business-to-Government (B2G sau BTG) acoper toate tranzaciile dintre firme i autoriti administrative locale sau centrale (pentru acest model de afaceri se mai utilizeaz i termenul Business-to-Administration); un angajat - Business-to-Employee (B2E) se refer la tranzaciile din interiorul unei firme, destinate personalului angajat al firmei i efectuate prin sistemul intranet propriu.

Figura nr. 5.2. Modele de afaceri de comer electronic

Alte relaii stabilite prin intermediul reelei Internet, adiacente comerului electronic, sunt: government to government (G2G), government to business (G2B), government to consumer (G2C), consumer to government (C2G), consumer to business (C2B) i consumer to consumer (C2C), fiind sintetizate n tabelul de mai jos:

43

Guvern (G) G2G coordonare

Intreprinderi (B) G2B informare

Consumatori (C) G2C informare

Guvern (G)

Intreprinderi (B)

B2G administraie, logistic

B2B comer electronic

B2C comer electronic

Consumatori (C)

C2G C2B achitare taxe online comparaie preuri

C2C licitaii online

Tabel 1 - Tipuri de relaii n comerul electronic

Analiznd evoluia comerului n mediul Internet, prin analogie cu clasificarea site-uri-lor web efectuat de A. Rosen, se poate spune c aceasta ar putea fi mprit n 4 faze distincte: informare electronic. n aceasta etap, companiile au recepionat valoarea Internetului n primul rnd ca un mediu de comunicaie. Interaciunea consumatorului cu un site web tip "brosura" al unei companii, este limitat doar la citirea unor texte i a vizualizrii unor imagini. Realizarea tranzaciilor i interaciunea cu clienii sunt nc conduse de medii tradiionale cum sunt telefonul sau faxul. business-to-consumer. Modele de comer electronic sau concentrat pe aplicaiile care permit tranzacii i interaciuni ntre companie i consumator (modelele de afaceri B2C). business-to-business. n aceasta faz iniiativele de comer electronic sunt concentrate pe aplicatiile B2B care permit tranzacii i interaciuni ntre companii i partenerii de afaceri. e-enterprise. Aceast faz este caracteristic acelor companii ale cror piee conin att aplicaii B2C ct i B2B. Practic acestea au implementat acele tehnologii comune care s le permit utilizarea diferitelor categorii de eaplicaii care s deserveasc ambele segmente de piaa (ex. American Express, Dell Computers) n figura nr. 5.3 sunt reflectate fazele evoluiei comerului prin intermediul Internetului, cu precizarea c nu este indicat o dat de ncepere i de finalizare a unei anumite faze. n fapt aceste etape se suprapun, astfel nct unele companii opereaz n faza de informare electronic iar altele n etapa e-business. Puine firme i-au integrat diferitele faze ntr-o form coerent astfel inct s poat trece la faza urmtoare de integrare, respectiv faza de eEnterprise.
Integrare

e - Enterprise

Business to business Business to customer Informare electronica

1995

1997

1999

2000

Figura nr. 5.3. Fazele de evoluie a comerului prin Internet

Dac n trecut sistemele informatice ale firmelor s-au dezvoltat n jurul unor necesiti legate n principal de gestiunea resurselor ntreprinderii - planificarea produciei, gestiunea stocurilor i livrrilor, evidena contabil i financiar, evidena resurselor umane, astzi accentul se pune din ce n ce mai mult pe deschiderea acestor sisteme informatice pentru a e-interaciona cu mediul de afaceri nconjurator. Implementarea acestui potenial n cadrul unei ntreprinderi, presupune culegerea datelor din sistemele operaionale, transformarea datelor n informaii, a informaiilor n cunotine i a cunostinelor n decizii i aciuni.

44

Astfel, o serie de companii au investit masiv pentru dezvoltarea unor sisteme i procese care s permit integrarea operaiunilor proprii cu partenerii de afaceri i oferirea unor servicii mai bune clienilor finali. n era e-Enterprise, ntregul lan valoric de la procurarea de materii prime i livrarea mrfurilor ctre consumatori i managementul clienilor, se realizeaz prin combinarea proceselor interne i externe i a relaiilor cu clienii, furnizorii, distribuitorii, partenerii i competitorii. n acest mod, e-ntreprinderile evolueaz rapid spre organizaiile virtuale (figura nr. 5.4).

ntreprinderi
Intreprindere

Comer

B2

Intreprindere

Intreprindere

Client

B2

Figura nr. 5.4. Evoluia ntreprinderii ctre organizaiile virtuale

Avantajul competitiv al unei e-ntreprinderi este viteza i agilitatea de care d dovada n stabilirea unui model de afaceri electronic. Impactul fa de relaia tradiional productor-consumator este profund. Prin oferirea informaiilor n timp real n intregul lant valoric, companiile ii pot indrepta modelele de afaceri ce au n centrul ateniei clientul (tabelul nr. 2)
Tabel 2 - Etape n evoluia ctre o organizaie virtual

1. Firme independente 2. Anumite firme incep s coopereze n lanul valoric

3. Cooperarea continu n interiorul ierarhiei pentru a proteja resursele de concurena din exterior 4.. Unitile nalt ierarhizate continu s evolueze

Funcia de baz a unei piee, electronic sau nu, este de a facilita tranzaciile de bunuri i servicii. Pentru muli vnztori de produse fizice, comerul electronic se simplific doar la un canal alternativ de vnzare a produselor. Dar spre deosebire de alte canale alternative de distribuie (vnzarea prin pot, vnzarea la domiciliu), comerul electronic lucreaz cu produse fundamental diferite - i anume produsele digitale - care sunt altfel fabricate, livrate i consumate dect produsele fizice. Soluiile de comer electronic ofer o gam larg de avantaje companiilor de orice mrime: Venituri mai mari - comerul electronic permite diversificarea surselor de venituri prin includerea de noi produse i servicii Web; Lrgirea pieelor - comerul electronic permite vnzarea produselor i serviciilor dincolo de limitele pieei fizice actuale, la un cost mai redus dect n cazul altor alternative tradiionale; Culegerea on-line de informaii despre clieni - comerul electronic ofer informaii importante privind comportamentul de cumprare al clienilor. Aceste informaii pot fi folosite pentru a stabili i pstra relaii solide cu toi clienii, pentru a cerceta dorinele i impresiile cumprtorilor despre produsele firmei; Costuri reduse - comerul electronic mrete volumul de vnzri al firmei, reduce costurile de marketing i de vnzare; Cooperarea ntre firme - comerul electronic faciliteaz coooperarea ntre firme i ofer acces pe noi piee. Comerul electronic permite chiar i celor mai mici furnizori, indiferent de poziia lor geografic, s fac afaceri n ntreaga lume.

45

5.2. ntreprinderea virtual versus ntreprinderea tradiional


Urmare a competiiilor foarte puternice la care trebuie s fac fa ntreprinderile, acestea caut soluii de a intra pe pia cu produse i servicii de calitate i la preuri atractive. Scderea ciclurilor de inovare, schimbarea situaiilor pe pia ca i creterea specializrii n segmente de pia individuale, au condus la noi moduri de gandire economic, ncurajnd ntreprinderile s coopereze, chiar dac uneori ele se afl ntr-o direct competiie. Descoperirile recente din domeniul comunicaiilor i tehnologiilor informatice distribuite, au schimbat modul de conducere a afacerilor. Avnd c tehnologii drept agenii software i comerul electronic, ntreprinderile nu mai au granie geografice i socio-culturale i au devenit enititi care nu acioneaz doar pe o pia global, ci i dimensioneaz resursele pe piaa internaional. Trendul existent este de crearea de aliane strategice, unde ntreprinderi individuale lucreaz mpreun pentru atingerea unui obiectiv comun. Aceast cooperare permite ntrepriderilor s mpart aptitudini, costuri, s acceseze reciproc pieele i resursele i uneori s reduc riscul investiional. Noiunea de ntreprindere virtual (virtual enterprise) conine un numr mare de modele, cu diferite caracteristici, n funcie de formele i mediile n care le putem ntlnim. Teoria ntreprinderilor virtuale a aprut n SUA, n completarea teoriei ntreprinderilor agile care se referea la acele ntreprinderi, capabile s-i modifice rapid producia n funcie de evoluia pieei i s integreze din mers tehnologiile informaionale. Obiectivul cheie al unei organizaii virtuale este de a capta o agilitate maxim: s produc orice, oricnd i oriunde cu o productivitate i eficien crescut. O ntreprindere virtual poate fi definit c fiind o alian temporar de companii independente, reunite prin intermediul tehnologiei informaionale cu scopul de a exploata oportunitile pieei. Fiecare partener va contribui cu propria cunoatere, pricepere i iscusin pentru realizarea obiectivului ntreprinderii virtuale. Cand obiectivul a fost atins sau a oportunitatea pieei a disprut, ntreprinderea virtual se dizolv.

. VE
Oportunitate de afaceri Membru VE

Oportunitate de afaceri

Companie tradiionala

Oportunitate de afaceri

Membru VE

Oportunitate de afaceri

Membru VE

Oportunitate de afaceri

Membru VE

Figura nr. 5.5- ntreprinderea virtual versus ntreprinderea tradiional (dup ALIVE project - Katholieke Univerisitet Leuven - Law School)

Dac pentru a iniia o afacere este nevoie de un anumit capital fizic, o ntreprindere virtual poate potential demara n jurul unei oportuniti a pieei, cu ajutorul capitalului uman. Economisind bani prin necheltuirea acestora pe spaii de producie, de desfacere, mijloace de transport, utilaje, echipamente, etc, companiile sunt capabile s investeasc mai mult n acele activiti ce permit obinerea unui avantaj competitiv. Astfel, o ntreprindere virtual poate angrena mai multe resurse dect o ntreprindere posed n mod curent. Caracteristic pentru o ntreprindere virtual este oportunitatea de afaceri aparut pe pia i faptul c diferite companii ii unesc forele pentru atingerea unui anumit obiectiv (obtinerea unui profit ct mai mare). Modelul unei companii tradiionale, comparativ cu unul al unei ntreprinderi virtuale, arat ca n figura nr. 5.5. Cum se creaz o ntreprindere virtual? S presupunem c dorim s fabricm un model de ui de o calitate deosebit, dintr-o materie prim relativ ieftin. Pe Internet gsim suficiente informaii despre diferite locuri de unde putem procura materia prima. Pentru transportul materiei prime trebuie s atragem o companie specializat, care s le transporte la fabricantul care va produce uile pentru firma noastr. De asemenea, dorim ca usile s fie atractive, s aibe un design placut. Penrtu aceasta, nu vom angaja o echipa de designeri ci vom contacta o agenie de designeri care s participe alturi de noi la acest proiect. Mai rmne de stabilit unde i cum vom vinde usile pe care le-am fabricat. Pentru a fi siguri c atingem cerinele clienilor, contactm o agenie de marketing pentru a explora piaa i care de asemenea, ne va deveni un partener strategic. In final, nu vom investi bani ntr-un magazin de vnzare cu amanuntul, dar vom contacta diveri comerciani care sa distribuie prin reelele lor de magazine produsele noastre. Astfel am creat o ntreprindere virtual. Dac ne imaginm c ajungem o firma de top n industria fabricrii uilor, 46

populatia va percepe compania noastr ca avnd circa 1000 de salariati, spaii de producie extinse, o reea de distribuie lrgit etc. Practic, pentru crearea unei ntreprinderi virtuale nu se utilizeaz dect tehnologia informaional ntr-un mod anume. Instrumentele groupware i tehnologiile de informaionale i de comunicaii permit micilor firme s acioneze ca unele mari. ntreprinderile tradiionale (prin contrast cu ntreprinderile virtuale) integreaz sub o singur umbrel toate funciile necesare pentru oferirea produselor i serviciilor pe care acestea le creaz. Beneficiul major al acestei structuri este acela c toate resursele i toate activiile desfurate sunt sub un singur punct de control, lucruri ce permit integrarea rezultatelor, monitorizarea activitilor i luarea deciziilor pentru atingerea obiectivelor pe termen scurt i lung. De asemenea, existnd un singur punct de control, sunt uor de optimizat diferite fluxuri de operaiuni (detaarea angajailor de la o activitate la alta, schimbarea locatiilor pentru optimizarea logisticii etc). n schimb, integrarea ntr-o singur organizaie a tuturor activitilor necesit investiii masive i capital. John Byrne n 1993, n lucrarea sa The Virtual Corporation18, a definit ntreprinderea virtual c fiind o reea temporar de companii independente - furnizori, clieni - reunite prin intermediul tehnologiilor informatice, pentru a partaja aptitudinile i costurile i de a accesa oportunitile pieei. Companiile se reunesc rapid pentru a exploata oportunitile pieei i ntreprinderea virtual se dizolv dup realizarea obiectivului stabilit. O.F. Arnold19 a definit ntreprinderea virtual c fiind o alian ntre ntreprinderi independente, instituii sau indivizi, care furnizeaz un serviciu pentru realizarea unei afaceri comune. Entitile actioneaz la exterior ca o singur corporaie prin cooperarea cu capaciti, aptitudini i resurse proprii. Cooperarea este coordonat prin utilizarea de tehnologii de comunicaie i informatice foarte flexibile. Procesul de producie nu este suplinit doar de un singur partener. Fiecare partener reprezint un nod al ntreprinderii virtuale care adaug o anumit valoare (un pas n fluxul de producie). ntreprinderea virtual se materializeaz prin selectarea resurselor i a competenelor de baz din diferite firme i gruparea lor intr-o singura entitate de afaceri (figura nr. 5.6).

Figura nr. 5.6. ntreprindere virtual realizat pe lanul valoric aprovizionare-producie-desfacere

J.E. van Aken (1998) a definit ntreprinderea virtual ca fiind o organizaie retea, care este structurat i condus n asemenea maniera nct opereaz fa de clieni i alte entitati externe ca o organizaie complet i cu identitate. A. Mowshowitz20 a subliniat importana cooperrii i coordonrii activitilor ntre membrii unei organizaii virtuale i a definit metamanagementul - managementul activitilor organizate virtual - ca fiind esena 21 unei organizai virtuale. Bob Travica a definit organizaia virtual c fiind o colecie temporar sau permanent de indivizi, grupuri, departamente organizaionale sau ntregi organizaii, dispersate geografic, care sunt dependente de comunicaiile electronice pentru a susine proceselor lor de producie.
ntreprinderea 1 ntreprinderea 2

ntreprindere virtual

ntreprinderea 3

ntreprinderea 4
22

Figura nr. 5.7. Crearea unei ntreprinderi virtuale prin unificarea competenelor de baz ale partenerilor (dupa Fischer, K.

Byrne, J., The Virtual Corporation, in Business Week, p. 98-103, Feb. 8, 1993 Arnold, O.F., Wolfgang H.M., Seiber P., Virtual Integration, 2000, http://www.itvd.uni-stuttgart.de/wa/man/projects/virtex Mowshowitz, A., Virtual Organisation: A Vision of Management in the Informaion Age, in: The Informaion Society vol. 10, United Kingdom, 1994, p.267-288 21 Travica, B., The Design of the Virtual Organizaion, www.hsb.bay lor.edu/ramsover/ais.ac.97/papers/travica/ 22 Fischer, K., Mller, J., Heimig, I., Agents in Virtual Enterprises http://citeseer.nj.nec.com/ fischer96intelligent.html, 1996
18 19 20

47

W. Jansen, H. Jgers i G.Steenbakkers (1997) au definit organizaia virtual ca fiind o combinaie de diferite entiti (persoane i/sau organizaii) dispersate geografic, care i-au propus s realizeze un obiectiv comun, prin unificarea competenelor lor de baz. Entitile componente se bucur de un statut egalitar i sunt dependente de infrastructura informaional i de telecomunicaii pentru coordonarea activitilor lor. Pentru atingerea obiectivului ntreprinderii virtuale, fiecare entitate component particip cu competenele lor forte (de baz), respectiv acele activiti, produse, servicii, tehnologii, cunotine i iscusine care reprezint fora i inima meseriei ntreprinderii (figura nr. 5.7). n figura nr. 11, ntreprinderile 1-4 sunt uniti independente, care pentru a profita de o oportunitate a pieei i pentru a obine un avantaj competitiv, s-au reunit ntr-o ntrepindere virtual pentru a realiza un flux de activiti Ai- Ei, mai eficient dect al concurentilor. Fiecare ntreprindere executa un lan valoric n cinci pai i va furniza ctre ntreprinderea virtual procesele pariale de afaceri pentru care detine cele mai nalte competene de baz .

5.3. Caracteristici i tipuri de ntreprinderi virtuale


Pieele globale i competiia motiveaz crearea organizaiilor virtuale. ntreprinderea virtual este o form de joint venture dar cu importante diferene. Ea este o alian temporar a companiilor membre care se reunesc pentru a ctiga avantajul unei oportuniti a pieii. Fiecare companie membr va oferi toate competenele sale de baz pentru reuita ntreprinderii virtuale. Caracteristica cheie a unei ntreprinderi virtuale este dependenta de oportuniti. Oportunitatea de afaceri este inima unei ntreprinderi virtuale. Companiile care se reunesc caut s ntmpine o oportunitate a pietii i i unesc forele pentru a atinge un set de obiective. Cnd oportunitatea pieii a disprut, ntreprinderea virtual se dizolv. La nfiinarea unei ntreprinderi virtuale este important de identificat care este scopul sau motivaia unei companii de a se reuni ntr-o reea. Motivaia poate fi extinderea granielor companiei pentru a mentine un control asupra partenerilor vitali (de ex. pentru mentinerea unui control al calitatii) sau poate fi participarea cu anumite competene de baz pentru a fructifica alturi de ali parteneri oportunitile pieei. O ntreprindere virtual poate fi descris ca un scenariu unde entiti individuale - oameni, ageni software sau organizai - se reunesc ntr-o echip pentru a realiza un obiectiv specific. n vederea atingerii obiectivelor propuse, partenerii coopereaz, schimb informaii, partajeaz cunotine i aptitudini. ntreprinderile virtuale nu sunt rigide, ele nu au n permanen aceeai structur - fiind posibil retragerea unui partener din cadrul alianei sau asocierea concomitent la mai multe ntreprinderi virtuale. ntreprinderile virtuale sunt o echip de parteneri ce au obiective comune i conlucreaz pentru atingerea acestor obiective. ntreprinderile virtuale sunt caracterizate de o multitudine de aspecte specifice. Literatura de specialitate ncearc s le clasifice i s le ordoneze dup importana fiecrui aspect, s sublinieze care din factori sunt opionali sau nu pentru a exista o ntreprindere virtual, sau care din factori sunt factorii cheie ai unei ntreprinderi virtuale. Ce ce este unanim acceptat, este faptul c ntre toi factorii care caracterizeaz un model de ntreprindere virtual, exista o interdependen ce asigur atingerea scopurilor propuse. ntreprinderile virtuale pot fi caracterizate dup urmtoarele aspecte eseniale: a) Structura O ntreprindere virtual este o reea de organizaii, dispersate geografic, dar care sunt reunite prin intermediul tehnologiilor informaionale i de comunicaie. ntreprinderea virtual difer de o organizaie retea n principal prin rolul important pe care -l joac tehnologiile informaionale, prin gradul nalt de cooperare i de ncredere al tuturor partenerilor (orice organizaie virtual este o organizaie retea, dar nu orice organizaie reea este o organizaie virtual). Structura ntreprinderei virtuale se caracterizeaz prin aceea c este o structur dinamic -organizaiile parsi sau ataa alianei n orice moment. nu exist o schem organizatoric - o ntreprindere virtual este o reea de toate tipurile de structuri organizaionale i este dificil de a schia o schem organizatoric. De asemenea, nu exist ierahii n structura unei ntreprinderi virtuale, deoarece partenerii sunt egali (structur egalitar). ntreprinderea virtual este o organizaie bazat pe ncredere i pe o participare egalitar concentrat pe atigerea unui anumit obiectiv. n alianele strategice, ncrederea este reglementat prin proceduri i contracte. O structur egalitar conduce la sporirea eficienei i responsabilitii, fiecare partener jucnd un anumit rol pentru atingerea rezultatului final. Independen temporal i geografic - o ntreprindere virtual se caracterizeaz prin dispersia geografic a partenerilor. Comunicarea ntre acetia se face prin intermediul tehnologiilor nformaionale i de comunicaie, astfel nct distana nu mai constituie o problem (de exemplu asistena tehnic pentru Sun Microsistems poate fi obinut printr-un singur numr de telefon rutat n funcie de ora zonei locale, la centre de servire din California, Anglia sau Australia). Distana este de exemplu irelevant pentru transmiterea informaiei sau pentru comercializarea produselor digitale, dar este o constrngere important cu privire la durata transportului de materii prime sau mrfuri. Locatiile partenerilor i distana dintre ei reprezint probleme strategice n funcie de cerinele lanului valoric aprovizionare-desfacere a ntreprinderii. Durata de via. Pe aceast tem au fost multe discuiii din partea specialistilor, majoritatea ns descriind ntreprinderea virtual ca o alian temporar. Conceptul deriv n parte din ct rapiditate i flexibilitate este

48

nevoie pentru a capta scurta oportunitate a pieii. Vzute din aceast perspectiv, ntreprinderile virtuale sunt organizaii bazate pe proiect, care exist pn cnd acesta este realizat sau abandonat. Unele ntreprinderi virtuale sunt bazate pe proiect, altele au o durat limitat, n timp ce altele cum ar fi ntreprinderile mari multinaionale exist de ani de zile i se adapteaz continuu la schimbrile mediului. Capacitatea de a se transforma rapid i de a se adapta la condiiile pieei, redau flexibilitatea ntreprinderilor virtuale. n cazul unor condiii stabile, ntreprindere virtual poate reine aceeai parteneri pentru o perioad considerabil de timp, n timp ce n cazul unor condiii instabile, ntreprinderil virtuale vor schimba constant partenerii cu scopul de a ntmpina noile cerine. Astfel, putem avea ntreprinderi virtuale temporare sau permanente. b) Procesele O alt caracteristic estenial a ntreprinderilor virtuale este aceea ca au la baz o nalt specializare i calificare a membrilor si, respectiv partajarea competenelor forte ale fiecrui partener - capacitati, tehnologii, know-how, aptitudini etc. (n englez core competence). Cu toate c outsourcing-ul proceselor de susinere este o practic de afaceri modern, n cazul ntreprinderilor virtuale este o caracteristic esenial. Pentru ntreprinderea virtual este specific externalizarea nu numai pentru activitile de susinere ci chiar i pentru activitile operaionale pentru care nu se posed o nalt expertiz (competen de baz). ntreprinderea virtuala va reine numai procesele care ofer un avantaj competitiv semnificativ i care sunt dificil de copiat/realizat de competitori23. Excelena n afaceri a partenerilor este foarte important deoarece fiecare partener, prin competena sa, face posibil ca s creeze o organizaie care are cea mai nalta calificare pentru procesele respective ("best- of -everything"). Flexibilitatea, agilitatea i adaptabilitatea sunt elementele cheie al partenerilor dintr-o ntreprindere virtual. Intr-o ntreprindere virtual ideal, toi partenerii contribuie cu competenele lor de baz pentru a atinge obiectivele ntregii organizaii. Partenerii colaboreaz, i impart resursele, costurile, profiturile, riscurile i pieele. Aceasta ns presupune un grad nalt de ncredere i implicare din partea tuturor membrilor ntreprinderii virtuale. Soarta fiecarui partener i ntreprinderii virtuale depinde de ceilali parteneri. Relaiile semi-stabile i partajarea riscului fac ca partenerii s devin dependeni, iar ca urmare a partajrii informaiilor i cunotintelor, trebuie s existe o cantitate mare de ncredere ntre toi partenerii. c. Tehnologia informaional i a comunicaiilor Tehnologia informaional i a comunicaiilor reprezint un alt factor cheie pentru existenta unei ntreprinderi virtuale. ntreprinderile virtuale au nevoie de flexibilitate i rapiditate de la membrii lor i necesit un sistem de cooperare inter-ntreprinderi capabil s susin schimbul de informaii i cunotinte ntre partenerii dispersai geografic. Cerinele tehnologice pentru o ntreprindere virtual sunt: - aplicaii de prelucrare distribuit a datelor - groupware pentru procese de integrare - sisteme interoperabile ntre toi partenerii - conectivitate intern i extern ntre indivizi. Tehnologiile informaionale i de comunicaii reprezint motorul ntreprinderii virtuale i au misiunea este de a procesa i distribui informaiile n timp real n intregul sistem, pentru a permite luarea rapid a deciziilor i coordonarea aciunilor. d. Identitate ntreprinderea virtual este o alian dintre mai multe ntreprinderi independente, care nu are o suprastructur, dar care este perceput de teele pari c o singura entitate. Entitatea central a ntreprinderii virtuale este responsabil de formularea deciziilor pentru anticiparea i adaptarea rapid la cerinele pieei i va armoniza ntreaga reea de firme independente. Membrii ntreprinderii virtuale sunt parteneri i i mentin independena pe toata durata existenei alianei. Problemele care se ridic din punct de vedere juridic, nc nu au rspunsuri foarte clare. Totul graviteaz n jurul prevederilor legale cu privire la existena i funcionarea ntreprinderii virtuale. Faptul c tere pari percep ntreprinderea virtual c o singur entitate, acestea pot invoca fie faptul c au fost induse n eroare la semnarea unui anumit contract fie c ntreprinderea virtual nu avea competena legal de a semna acel contract ntruct nu este o entitate cu personalitate juridic. Fr personalitate juridic, ntreprinderea virtual nu poate avea legal bunuri, nu are o naionalitate, nu are un sediu, nu poate angaja salariati Dac partenerii doresc s dea legal personalitate ntreprinderii virtuale, nu se nc bine precizat legea crui stat este aplicabil atta timp ct ntreprindere virtual nu are un sediu social localizat ntr-o anumita tar. O soluie ar fi s i se dea ntreprinderii virtuale o entitate legal sau s se dezvluiasc identitatea unora sau a tuturor membrilor alianei. Aplicarea acestei soluii afecteaz caracteristica legat de flexibilitatea ntreprinderii virtuale la oportunitile de afaceri, care presupune o structur dinamic, n permanent schimbare. Este prioritar interesul legitim al ntreprinderii virtuale sau protejarea terelor pri cu care aceasta intr n contact? Prea multe formaliti i informaii solicitate vor pune n pericol fundamentele pe care se bazeaza ntreprinderea virtual. Prea puine informaii sau identificri neclare pericliteaz drepturile terilor pri i activitatea de afaceri n general.

23

Boudreau M.C., LochDaniel, K., Straud, R.D., Going Global: Using Informaion Technology to Advance the Competitiveness of the Virtual Transnaional Organisation, Academy of Management, No. 12.4, 1998

49

5.4. Abordarea sistemului informaional din perspectiva tehnologiei agent


Dup cum am observat, agentul inteligent este acea entitate implementat ntr-un anumit mediu, cu scopul de a studia i capta, prin intermediul unor senzori, modificrile acestuia i de a aciona autonom sau de a coopera cu alte entiti, astfel nct s-i ating obiectivul pentru care a fost implementat. Agenii prezint un alt mod de abordare i de gestionare a complexitii problemei ntruct ofer o nou variant de descriere a proceselor i sistemelor complexe. Considernd, de exemplu, proiectarea unui sistem pentru aprobarea unor aplicaii de credit, acesta implic interdependene ntre sucursalele bncii, firma care depune cererea de credit, instituia unde se raporteaz creditele acordate i automatizarea procesului de aprobare. Construind acest sistem utiliznd tehnologia curent, vom observa dificultatea i complexitatea activitilor, deoarece descompunerea sistemului oblig proiectantul s considere concepte de nivel de baz (ex. aplicaia de credit, balana de verificare, ratingul creditului etc.) la definirea arhitecturii generale a sistemului. Mai mult, definirea protocolului de comunicaie i interfeelor care vor permite bncii s schimbe date cu CRB i solicitanii de credit, va necesita un timp suplimentar. n proiectarea unui sistem orientat agent, soluia sistemului va include un agent client, un agent consilier credit, un agent analist credit etc. Proiectarea unui sistem din aceasta perspectiva se va focaliza pe comportamentul agenilor i pe comunicarea dintre acetia. Astfel, se va uura procesul de proiectare deoarece nivelul de abstractizare este mult mai nalt i programarea problemei insist pe comportamentul specific al agentului. Pentru proiectarea unei aplicaii bazate pe ageni, Y. Lesperance [Lesper03], propune abordarea problemei n dou etape principale, la nivel micro (agent) i la nivel macro (sistem multiagent), respectiv clarificarea urmtoarelor aspecte: - arhitectura agentului stabilirea specificaiilor formale ale proprietilor agentului, strile mentale ale acestuia i modul cum reacioneaz la anumite evenimente; - limbajul de programare agent stabilirea limbajelor utilizate pentru programarea agenilor i implementarea lor; - protocoalele de negociere proiectarea mecanismele pentru atingerea acordurilor dintre agenii competitivi; - alocarea sarcinilor i coordonarea proiectarea mecanismelor de alocare a sarcinilor, partajarea resurselor i planificarea multiagent; - limbajul de comunicare agent stabilirea limbajelor de comunicare, coninutul acestora, ontologiile; - platforma multiagent proiectarea platformelor multiagent i a infrastructurii necesare, serviciile de baz pentru ageni (yelow pages, white pages, servicii de reea etc.). Jennings N.R., Sycara K. i Wooldridge M.J., [JennSyc98] au abordat proiectarea aplicaiilor bazate pe ageni plecnd de la o ntrebare foarte simpl, dar plin de coninut: ce ofer n plus tehnologia agent fa de celelalte tehnologii, astfel nct s utilizm acest model de proiectare? Proprietile i caracteristicile agenilor / sistemelor multiagent, pot descrie cazurile n care paradigma tehnologiei agent este recomandat, iar avantajele utilizrii tehnologiei agent trebuiesc judecate din prisma a dou direcii: abilitatea sa de a rezolva noi tipuri de probleme i abilitatea sa de a mbunti eficiena soluiilor curente. Tehnologia agent reprezint nivelul superior de abstractizare n modelarea ntreprinderilor i a aplicaiilor economice. Modelarea bazat agent este o tehnic puternic de simulare, n care un sistem este modelat ca o colecie de entiti autonome de luare a deciziilor, numite ageni. Multe din aciunile executate de utilizatori pot fi acum delegate ctre diferii ageni software. Utilizarea tehnologiei agent n sistemele informaionale presupune s dispunem de diferite tipuri de ageni cooperativi, nzestrai cu obiectivele fiecrei activiti, cu procedurile standard aplicabile i cu un tezaur de informaii i cunotine, pentru a putea executa sarcinile trasate. Caracteristicile cheie ale agenilor, prin care sunt difereniai de alte entiti software sunt: autonomia, abilitatea de a percepe, de a nelege i de a aciona n mediul lor, respectiv abilitatea de a coopera cu ali ageni pentru rezolvarea problemelor complexe. Inteligena unui agent este dat de cantitatea de cunotine cu care este nzestrat, la care se adaug capacitatea de nvare i raionament pe care o poate etala agentul, n vederea atingerii unui comportament orientat spre obiectivele de ndeplinit. n sistemul informaional al unei organizaii, putem utiliza agenii software n activiti precum: - cutarea pentru culegerea, analiza, integrarea i arhivarea informaiilor; - informarea utilizatorilor cu privire la disponibilitatea informaiilor despre un domeniu de interes; - negocierea pentru achiziia de informaii, servicii sau bunuri; - explicarea relevanei i calitii unei informaii; - nvarea i adaptarea la schimbrile condiiilor din mediul monitorizat. Sistemul informaional al uniti bancare, modelat cu ajutorul tehnologiei agent, poate arta ca n figura 5.8 n modelul prezentat, agenii pot executa activiti specifice compartimentelor sau structurilor organizaionale pe care le reprezint cum ar fi relaii clieni, credite, logistic, resurse umane, contabilitate etc., comunic ntre ei i n plus sunt capabili s rezolve i s anticipeze anumite comportamente. Modelrile complexe ncorporeaz reele neuronale, algoritmi i tehnici de nvare i reprezentare a lumii reale. Comportamentul unui agent trebuie neles i descris n relaie cu structura social a organizaiei i cu obiectivele generale ale acesteia. Astfel, agenii sunt entiti individuale situate ntr-un mediu, care reacioneaz la acest mediu i la ceilali ageni, negociaz i se coordoneaz pentru atingerea obiectivelor trasate.

50

Contabilitate Res. Umane Credite Logistic Relaii clieni

Structura organizaionala

Casierie

Agent Personal

Agent Contabilitate

Sistem multiagent
Agent Rel. clienti

Agent Logistic

Agent Credite

Agent Casierie

Mediul tranzaciilor

Figura 5.8. Modelul conceptual al sistemului informaional bazat pe ageni

Figura 5.9. exemplific un model conceptual al procesului de analiz i acordare a unui credit unei societi comerciale, cu ajutorul agenilor. Ipoteza problemei de modelat este urmtoarea: o societate comerciala solicit un credit de la banc, agentul ofier relaii clieni comunic cu clientul n vederea completrii documentaiei necesare, pe care o transmite ulterior agentului analist credit, prin intermediul a agenilor coordonatori director relaii clieni i director credite. Cererea de credit este aprobat n urma deciziei colective dintre agentul director banc, agentul analist risc, agentul analist risc, agentul director relaii clieni i agentul director credite. Acordarea creditului se realizeaz prin intermediul agenilor ofier relaii clieni, ofier de cont i casier, iar monitorizarea i rambursarea creditului se realizeaz prin intermediului agent administrator credite.
Agentul Director banca

Agentul Director Relatii clienti

Agentul Director credite

Agentul Analist risc

Agentul ofiter relatii clieni

Agentul ofier de cont

Agentul casier

Agentul Analist de credit

Agentul Adtor credit

Figura 5.9. Model conceptual de analiz i aprobare credit bazat pe ageni

Mike Papazoglou, profesor la Tilburg University - Olanda, [Papazoglou01], face o clasificare a agenilor utilizai n aplicaiile e-business, plecnd de la ideea c este necesar s se organizeze agenii n funcie de competenele i funcionalitile acestora. Astfel, se pot distinge patru categorii de ageni (figura 5.10): 1. Agenii aplicaie. O aplicaie B2B implic un numr mare de ageni aplicaie, n care fiecare agent este specializat ntr-un domeniu de expertiz, ofer acces la cunotinele disponibile din domeniul respectiv i lucreaz cooperativ cu ali ageni pentru rezolvarea unei probleme complexe. 2. Agenii personali lucreaz direct cu utilizatorii pentru a le oferi ajutor n prezentarea, organizarea, colectarea i regsirea informailor. Agenii personali observ i monitorizeaz aciunile ntreprinse de utilizator, i nva comportamentul i modul de raionament dup care i sugereaz metode mai bune de rezolvarea a sarcinilor. Metodele de nvare folosite de ageni sunt: observarea i imitarea utilizatorului; recepionarea unui feedback negativ sau pozitiv de la utilizator; recepionarea unor instruciuni explicite de la utilizator.

51

3. Ageni de activiti generale sunt agenii care execut o variat gam de activiti comerciale cu caracter general, care pot fi adaptate la nevoile specifice ale unei organizaii. De exemplu, ageni de cutare care navigheaz prin mediul electronic pentru a cuta parteneri de afaceri sau informaii despre produse; ageni de negociere pentru vnzare sau cumprare produse; ageni marketing pentru prospectarea produselor i serviciilor de pe Internet; ageni juridici i financiari care ofer informaii cu privire la legislaie, taxe, prghii de control. Agenii brokeri pentru ebusiness ofer faciliti precum localizarea informaiilor pe Web sau a altor ageni care pot fi solicitai n rezolvarea unor probleme (agenii de tip pagini albe, pagini aurii, ageni de rutare etc). Agenii de cutare i negociere sunt agenii care pot negocia termenii unei tranzacii (descrierea ofertei, propunerilor, termenele de plata, modaliti de livrare, penaliti, documente necesare etc.).
Tipologia agenilor business Ageni marketing

Ageni aplicaie Ageni juridici Ageni pentru activiti generale Ageni personali Ageni financiari Ageni nivel sistem Ageni workflow Ageni de negociere

Ageni wrapper Ageni de tranzacii Ageni brokeri

Ageni translatori

Ageni de integrare

Ageni de cautare

Ageni informaionali

Figura 5.10. Tipologia agenilor e-business (adaptare dup Mike Papazoglou [Papazoglou01])

4. Ageni suport nivel sistem n aceast categorie intr agenii pentru interoperabilitate (agenii translatori, agenii de integrare), agenii workflow i agenii de tranzacii. Agenii pentru interoperabilitate suport interfaa ce permite schimbul de informaii cu diferite sisteme informaionale sau aplicaii software. De exemplu, integrarea companiilor n jurul lanului de aprovizionare, face posibil ca un agent aplicaie ce deine informaii din sisteme, s acceseze sistemul ERP al unei alte companii, unde verific stocul la produsele descrise n comand i ulterior s acceseze sistemul unei companii de distribuie/transport, unde programeaz un transport, utiliznd adresa clientului i informaiile despre condiiile de livrare. Tranzaciile n e-business sunt utilizate pentru a interschimba orice de la informaii despre produs i propuneri de pre la nelegeri financiare i juridice. Utilizarea agenilor workflow n aplicaiile e-business, simplific procesarea, monitorizarea i controlul tranzaciilor prin automatizarea unui numr de activiti i aplicarea restriciilor n timpul proceselor. n literatura de specialitate, sunt descrise mai multe metodologii de proiectare a sistemelor multiagent, cu variaii de reprezentri formale sau de semantic: Gaia (Wooldridgce, Jennings, Kinnz, 2000), PASSI (Cossentino, Potts, 2002), MASSIVE (Lind, 2001), MaSE (Wood, DeLoach, 2001), AUML (Odell, Parunak, Bauer, 2001) etc. Metodologiile de proiectare a sistemelor bazate pe ageni, propun anumite etape de analiz i proiectare. Obiectivul etapei de analiz este de a nelege sistemul i structura sa. Organizarea sistemului este vzut ca o colecie de roluri, ntre care exist anumite relaii. n Gaia, de exemplu, exist dou modele: modelul rolurilor i modelul interaciunilor. Modelul rolurilor identific rolurile cheie din sistem, iar modelul interaciunilor exprim relaiile i dependenele dintre diferite roluri. n faza de proiectare, se transform modelele de analiz, n trei modele: modelul agent care identific tipurile de agent care vor fi implementate n sistem i instanele agent pentru fiecare tip; modelul serviciilor identific serviciile principale care sunt apelate la executarea rolurilor de ctre ageni; i modelul cunotinelor care documenteaz legturile de comunicaie dintre diferii ageni. Toate metodologiile utilizate pot fi rezumate ca avnd dou scopuri bine conturate, ce se finalizeaz cu obinerea a dou modele: proiectarea nivelului domeniu modelul extern care surprinde identificarea tipurilor de ageni, a scopurilor lor, a responsabilitilor, a interaciunilor dintre acetia i definirea protocoalelor de coordonare pentru fiecare tip de interaciune. Acest model trebuie s rspund la urmtoarele ntrebri: - de cai ageni avem nevoie? - ce canal de comunicaie utilizeaz agenii? - ce protocoale de comunicaie utilizeaz agenii?

52

- cum este structurat o conversaie ntre ageni? - cum este configurat o comunitate agent? - cum i coordoneaz agenii aciunile? proiectarea nivelului agent modelul intern - care are ca obiectiv definirea arhitecturii pentru fiecare tip individual de agent, respectiv definirea aciunilor i structurilor de date identificate: - cum va modela fiecare agent realitatea? - care este structura intern a unui agent? - agenii sunt identici sau eterogeni Concluzia este c un sistem multiagent care modeleaz o organizaie, trebuie s simuleze structura acesteia, s fie capabil s se adapteze la schimbrile structurale, la interaciunile i obiectivele care apar, iar integrarea tehnologiei workflow cu tehnologia agent, presupune crearea unui agent sarcin pentru fiecare activitate corespondent unei instane a procesului.

5.5. Modelarea avansurilor spre decontare prin tehnologia workflow bazat pe ageni
S presupunem un alt scenariu: la nivelul unei organizaii exist urmtorul flux n solicitarea unei sume n avans pentru o deplasare n delegaie (figura 5.11): - angajatul completeaz ordinul de deplasare i solicit suma necesar pentru aceast deplasare; - eful de departament i directorul aprob aceast cerere; - o secretar, n baza aprobrii obinute, vireaz banii n contul angajatului.

Salariat

Sef departament

Director

Secretariat

Solicitare avans

Aprobare sef direct

Aprobare director

Virare suma n cont

Ordin de deplasare

Informaii despre delegaie

Confirmare sum Confirmare deplasare Suma aprobat Creditare cont salariat

Figura 5.11. Fluxul pentru ridicarea unui avans spre decontare

Acest workflow este un ablon pentru multe instane de acelai tip. O instan a acestui workflow va fi creat ori de cte ori un angajat va pleca de exemplu, n delegaie la un curs de instruire. n acest caz, un workflow bazat pe ageni este un flux de activiti n care agenii interpreteaz, coordoneaz i sprijin executarea respectivului proces. ntr-un astfel de sistem exist mai multe tipuri de ageni care conduc un workflow, respectiv: - agentul workflow (AW) reprezint i sprijin o instan a unui workflow i controleaz ntreaga execuie a procesului; - agentul proces (AP) pentru fiecare definire de proces, este creat un agent proces. El poate fi vzut ca un depozit care conine unul sau mai multe abloane pentru fiecare proces definit; - agentul sarcin (AS) este responsabil pentru o sarcin dintr-o instan a procesului. El este creat de AW i trebuie s caute un subiect, s transmit acestuia descrierea sarcinii i, dup execuia acestuia, s trimit rezultatele ctre agentul workflow; - agentul list_subiect (ALS) memoreaz structura organizaiei mediului workflow. n exemplul nostru o mapare a tuturor salariailor i rolurile asignate; - agentul personal (APe) este un agent interfa ntre subiect i agenii sarcin care vor fi creai i vor coordona comunicarea dintre salariai i agenii sarcin. Ideea de baz n manipularea activitilor dintr-un workflow bazai pe agenti este crearea unui agent sarcin pentru fiecare activitate corespondent unei instane a procesului. n cazul nostru, fluxul se execut astfel (figura 5.12): 1. Execuia fluxului ncepe cu agentul workflow (AW) iniiat de salariatul X, care are nevoie de o sum de bani pentru deplasarea la un curs. Agentul workflow (AW) ntreab pe agentul proces (AP), ce sarcin trebuie s execute. Agentul workflow, primete de la agentul proces (AP) o list de sarcini ce trebuiesc executate i n baza acestei liste va crea cte un agent sarcin (AS) pentru fiecare sarcin;

53

2. Agentul sarcin (AS) trebuie s gseasc un subiect pentru a executa sarcina. Pentru aceasta, el migreaz ctre agentul list_subieci (ALS), de unde obine o list cu subiecii ce pot executa sarcina. Din aceast list, alege un subiect s i migreaz ctre acesta (alegerea unui subiect din list se poate face aleatoriu sau pe baza unor criterii); 3. Dup ce agentul sarcin (AS) a migrat la subiectul selectat, agentul personal al subiectului S (APe), este informat despre faptul c un task nou ateapt s fie executat; 4. Agentul personal (APe) informeaz acum subiectul, respectiv eful care trebuie s semneze ordinul de deplasare, prin scrierea unui mesaj pe ecran sau printr-un mesaj audio. Subiectul execut sarcina n conformitate cu informaiile transmise de ctre agentul sarcin (AS);
Agent Proces Aprobare decont

Agent Workflow Instana nr 122

Agent Task Aprobare cerere Agent Personal dl. Popescu

Agent Task Aprobare cerere

Agent Task Aprobare cerere

Agent Personal dl. Ionescu

Agent Lista_Subiecti Director Sef Serviciu 1 Sef Serviciu 2 dl. Popescu dl. Ionescu dl. Vasikescu Agent Task Aprobare cerere

Figura 5.12. Fluxul bazat pe ageni pentru ridicarea unui avans spre decontare

5. Cnd operaia este gata, agentul sarcin migreaz napoi ctre agentul list_subieci (ALS) pentru a actualiza baza dinamic cu privire la informaiile colectate despre subiectul S n execuia taskului.

54

6. Modele de referin pentru standardizarea sistemelor bazate pe tehnologia agent 6.1. Modelul FIPA
O serie de organisme internaionale cum ar fi FIPA - The Foundation for Intelligent Physical Agents, OMG - Object Management Group, IFAAMAS - International Foundation for Autonomous Agents and Multiagent Systems, KAoS - Knowledgeable Agent-oriented System, General Magic Group etc., i-au propus s standardizeze anumite concepte i infrastructuri pentru tehnologia agent, care s permit implementarea unor sisteme deschise, respectiv definirea unui cadru de dezvoltare a platformelor pentru ageni inteligeni, care s permit interoperabilitatea ntre diferite sisteme software, o direcie de cercetare extrem de actual. Pentru dezvoltarea sistemelor bazate pe tehnologia agent, trebuie determinate i standardizate anumite caracteristici att ale platformelor ct i ale agenilor. Aspectele care fac obiectul standardizrii se refer la modul de nscriere a unui agent ntr-o anumit platform, modul de transport al codului agentului, comunicarea cu ali ageni i nu n ultimul rnd, securitatea agenilor i a informaiilor deinute de acetia. Interoperabilitatea dintre diferite sisteme agent (respectiv platforme n care agenii pot fi executai, transferai i gestionai) va fi cu att mai mare cu ct conveniile privind transferul, transportul i ciclul de via al agenilor vor fi mai standardizate. Conform IFAAMAS, interoperabilitatea survine din trei domenii [IFAAMAS07]: - din conveniile de reprezentare a numelui i locaiei agenilor; - din definirea unui modul comun IDL1 privind tipul, structura i operaiile sistemului agent; - din informaii privind modul de utilizare a acestor standarde. Din cercetrile noastre a rezultat c, pentru realizarea interoperabilitii ntre diferite sisteme bazate pe tehnologia agent, trebuie s se respecte o serie de cerine cu privire la managementul platformei agent, transportul agenilor, comunicarea ntre ageni, managementul i execuia agenilor, securitatea i integritatea agenilor. Aceste cerine pot fi clasificate astfel: a) cerine pentru o platform agent: - s fie un mediu deschis, distribuit i eterogen - platforma nu trebuie s limiteze un anumit tip de hardware sau software; - s suporte un anumit nivel de abstractizare care s-i permit distincia dintre obiectele mobile i cele staionare; - s ofere un set generic de ageni care s poat fi extini de ctre programatori i integrai n propriile aplicaii; - s garanteze execuia corect a codului unui agent programatorul trebuie s fie informat corect (transparena platformei) despre regulile sau restriciile de programare ale platformei agent, astfel nct s poat determina corect comportamentul sistemului de ageni; - s defineasc precis modelul comportamental al agentului cum i cnd sunt executate metodele invocate de agent i n ce ordine de prioritate; - s ofere posibilitatea execuiei mai multor ageni n acelai timp; - s asigure flexibilitatea i robusteea interaciunii ntre ageni; - s poat calcula necesarul de resurse pentru ageni i s decid dac resursele pot fi alocate sau nu unui agent; - s ofere mecanisme care s permit agenilor s-i nregistreze serviciile disponibile; - s in un fiier de tip "log" despre starea agenilor cnd un agent sosete n sistem, agentul sistem creeaz pentru agentul respectiv un profil de date ntr-un format predefinit, recunoscut de ceilali ageni din sistem; - s notifice utilizatorii, ageni sau un alt sistem bazat pe tehnologia agent dac a aparut o eroare n sistem; b) cerine privind transportul agenilor: - agenii pot migra pe orice platform accesibil migraia nu este limitat la un singur domeniu; - agenii mobili trebuie s fie capabili s-i planifice execuia i migrarea ctre alte platforme agent; - migrarea agentului nu presupune doar transportul datelor agentului ci i reconstruirea agentului n platforma de destinatie - o platform trebuie s transporte la locaia de destinaie toate datele definite de agent i trebuie s cunoasc cum s reconstruiasc fiecare element; - dup migrare, activitatea agentului trebuie s continue i nu doar s fie repornit; - un agent care se pierde n spaiu n timpul transportului trebuie s informeze agenia despre aceast eroare; c) cerine privind comunicarea ntre ageni: - agenii trebuie s fie capabili s comunice cu ali ageni sau obiecte CORBA agenii trebuie s interacioneze ntre ei i cu mediul lor pentru a oferi informaii i servicii; - obiectele externe trebuie s fie capabile s comunice cu ageni; - agenii mobili trebuie s fie capabili s execute comunicaii sincrone i asincrone; - agenii trebuie s fie capabili s trimit un mesaj la mai muli ageni simultan; - platforma trebuie s ofere o separare arhitectural i funcional a facilitilor de comunicare de baz de cele inteligente nu este obligatoriu pentru un agent s utilizeze tehnici de comunicare inteligente; - platforma agent trebuie s ofere o interfa standard care s permit schimbul de mesaje ntre ageni cu interfa de comunicaie necunoscut fiecare agent trebuie s gestioneze comunicaiile cu ali ageni, urtiliznd interfaa standard n cazul n care agentul nu este din aceeai agenie; - agenii trebuie s fie capabili s-i execute propriile sarcini, n paralel cu munca altor ageni;

55

- agenii nu trebuie s se influeneze ntre ei excepie fiind doar cnd doresc s fac acest lucru prin metodologiile de comunicare; - un agent trebuie s fie capabil s-i manipuleze i controleze starea - autonomia agentului se reflect i n cunoaterea propriei stri interne; d) cerine de securitate: - o platform trebuie s fie protejat mpotriva viruilor; - agenii i agentul sistem trebuie s detecteze buclarea execuiei unui cod pentru prevenirea blocrii sistemului; - un agent trebuie s fie protejat mpotriva schimbrii codului i datelor; - stocrile locale ale agentului sistem trebuiesc protejate mpotriva accesului neautorizat; - pentru meninerea secretului mesajelor, platforma agent trebuie s ofere faciliti de codificare a comunicrilor; - un agent de sistem bazat pe tehnologia agent trebuie s fie capabil s controleze utilizarea resurselor procesorului; - un agent de sistem trebuie s fie capabil s se autentifice n faa unui alt agent de sistem; - un agent de sistem trebuie s verifice originea unui alt agent, nainte de a-l accepta; - un agent trebuie s posede un istoric al traseului parcurs un agent de sistem poate decide acceptarea sau nu a unui agent, verificnd istoricul platformelor pe care a funcionat agentul respectiv; - un agent de sistem trebuie s controleze accesul la interfeele sale externe; - un agent trebuie s fie protejat mpotriva terminrii neautorizate sau copierii neautorizate; - un agent trebuie s pstreze un fiier "log" despre activitile importante aprute i s le raporteze proprietarului su. Modelul FIPA [FIPA0100] este un model de referin logic, pentru crearea, nregistrarea, comunicarea, migrarea i terminarea execuiei unui agent i cuprinde urmtoarele componente (figura 6.1):

1. Agentul actorul fundamental de pe o platform agent (engl. Agent Platform, AP), care combin una sau mai multe aptitudini ntr-un model de execuie integrat. Un agent trebuie s aib cel puin un proprietar o organizaie / o persoan i trebuie s permit accesul la un software extern, utilizatori umani i alte faciliti de comunicare. Pentru identificarea sa fr echivoc, un agent are o etichet Agent Identifier (AID). Agent Identifier (AID) este o colecie extensibil de perechi de valori-parametru, ce poate fi completat dinamic cu ajutorul lui Agent Platform n funcie de cerine, cu nume, funcie, roluri etc. Exemplu: (agent-identifier :name director@ banca.com :addresses (sequence iiop://banca.com/acc)) Un AID cuprinde parametrul name, care este un identificator global unic i se recomand a fi format din numele agentului i adresa de domiciliu a platformei agent (HAP Home Agent Platform Adress), separat prin caracterul @. Numele unui agent nu poate fi schimbat pe parcursul ciclului de via al unui agent. Parametrul addresses, este o list de adrese de transport unde un mesaj poate fi livrat. O adres de transport este o adres fizic la care un agent poate fi contactat i este specificat n protocolul de transport mesaje. Un anumit agent poate suporta mai multe metode de comunicare i poate conine mai multe valori de adrese n parametrul addresses. Parametrul resolvers este o list de nume de adrese de servicii. Numele unei rezoluii este un serviciu oferit de Agent Management Services - AMS prin intermediul funciei search. 2. Platforma2. Platforma Agent (AP) ofer o infrastructur fizic n care agenii pot fi elaborai, respectiv un sistem de calcul, sistem de operare, software suport pentru ageni, componente de management a agenilor (DF, AMS, MTS) i ageni;

56

3. Facilitatorul Director (DF) este o component esenial a platformei agent, ce ofer servicii de tip "pagini aurii" pentru ali ageni. Agenii i pot nregistra serviciile lor prin DF sau pot interoga DF pentru a afla ce servicii sunt oferite de ali ageni. Pe o platform agent pot exista mai muli ageni facilitatori. Funciile acceptate de un DF sunt: register, deregister, modify i search. Orice agent care dorete s-i publice serviciile ctre ali ageni, trebuie s gseasc un facilitator director i s solicite nregistrarea descrierii sale. n orice moment, un agent poate solicita facilitatorului director s-i modifice descrierea. De asemenea, tot prin intermediul facilitatorului director, un agent poate solicita cutarea anumitor servicii oferite de ali ageni . Facilitatorul Director are o identificare unic ntr-o platform agent, respectiv: (agent-identifier :name df@hap :addresses (sequence hap_transport_address)) 4. Message Transport Service (MTS) asigur comunicarea propriu-zis dintre agenii din diferite platforme agent; 5. Software entitatea ce descrie toate coleciile de instruciuni executabile non-agent accesibile printr-un agent. 6. Agent Management System (AMS) este un agent care exercit un control de supervizor asupra accesului i utilizrii platformei agent. Pe o platform agent exist doar un singur agent AMS. El conine un repertoar cu identificatorii agenilor nregistrai n platform i ofer servicii de tip "pagini albe" pentru ali ageni. Fiecare agent iniiat pe o platform trebuie s se nregistreze cu agentul AMS pentru a obine un identificator valid, nregistrare care implic autorizarea de a accesa MTSul platformei agent pentru a trimite i recepiona mesaje. Agentul AMS are un identificator AID rezervat i anume: (agent-identifier :name ams@hap :addresses (sequence hap_transport_address)) Un agent AMS trebuie s fie capabil s execute urmtoarele funcii: register, deregister, modify, search i getdescription. Agentul AMS este responsabil de managementul operaiunilor din platforma agent, respectiv crearea i tergerea agenilor sau migrarea ctre alte platforme. AMS asociaz fiecrui agent din platform un ciclu de via. El poate s dea instruciuni platformei agent pentru ca aceasta s execute urmtoarele operaii: suspend agent, terminate agent, create agent, resume agent execution, invoke agent, execute agent, resource management.

Figura 6.2. Ciclul de via al unui agent [FIPA2300]

Agentul AMS are urmtoarele responsabiliti n legtur cu mesajele transmise n fiecare stare a ciclului de via al unui agent (figura 6.2) : - active MTS transmite normal mesajele agentului; - initiated/waiting/suspended MTS reine mesajele pn cnd agentul revine n starea activ; - transit aceast stare este specific doar agenilor mobili. MTS reine mesajele pn cnd agentul revine n starea activ; - unknown MTS reine sau respinge mesajele n funcie de politica de configurare a acestuia. Strile de tranziie ale unui agent pot fi atinse prin urmtoarele metode: create creaz sau instaleaz un agent nou; invoke - apeleaz un agent nou; destroy terminarea forat a unui agent - poate fi iniiat doar de AMS i nu poate fi ignorat de ctre ageni; quit terminarea cu succes a unui agent; suspend trecerea unui agent ntr-o stare de suspendare aceast stare poate fi iniiat doar de AMS;

57

resume - activeaz un agent din stare suspendat - aceast stare poate fi iniiat doar de AMS; wait pune agentul ntr-o stare de ateptare - poate fi iniiat doar de ageni; wake up activeaz un agent aflat n stare de ateptare - poate fi iniiat doar de AMS; move valabil doar pentru ageni mobili pune agentul ntr-o stare de tranzit - poate fi iniiat doar de ctre ageni; execute valabil doar pentru ageni mobili aduce agentul din starea de tranzit - poate fi iniiat doar de ctre AMS. Toate aceste aspecte vor fi folosite n abordrile noastre referitoare la utilizarea tehnologiei agent n aplicaiile financiar contabile.

6.2. Comunicarea ntre ageni


ntruct agenii pot avea arhitecturi interne i abiliti diferite, este necesar s se utilizeze anumite specificaii privind infrastructura agenilor i a aplicaiilor bazate pe tehnologii agent, care s permit o interoperabilitate n transportul mesajelor i o compatibilitate n ceea ce privete formele de reprezentare a limbajului de comunicare agent i a coninutului limbajului. n sistemele bazate pe ageni, agenii interacioneaz ntre ei, schimb informaii, cunotine i servicii (figura 6.3):

Pentru a interaciona i schimba informaii, agenii trebuie s comunice ntr-un anumit limbaj. Plecnd de la aceast premis, Genesereth M.R. i Ketchpel S.P. [GenesKetch94] au elaborat urmtoarea axiom privind definiia unui agent: un program software este agent software dac i numai dac el comunic corect ntr-un limbaj de comunicare agent. Din cercetrile noastre a rezultat c limbajele de comunicare agent trebuie s ndeplineasc anumite cerine legate de: - form, respectiv un limbaj de comunicare agent trebuie s fie declarativ, cu sintactic simpl, uor de neles de ctre utilizatori. Deoarece limbajul de comunicare va fi integrat ntr-o gam variat de sisteme, sintaxa lui trebuie s fie extensibil; - coninut, respectiv un limbaj de comunicare agent trebuie s fie structurat ntr-un mod care s fie util pentru toate sistemele. Trebuie fcut distincie ntre limbajul de comunicare care exprim acte comunicative - i coninutul limbajului care exprim lucruri despre un domeniu. Limbajul trebuie s aib definit un set de primitive care s poat fi extins; - semantic, respectiv descrierea semantic a limbajelor de comunicare i a primitivelor este de regul limitat la descrierile n limbaj natural, dar este necesar i o descriere formal, care s permit interaciunea dintre diverse aplicaii; - implementarea, adic trebuie s fie eficient att n ceea ce privete viteza, ct i lrgimea de band utilizat; - reeaua, respectiv un limbaj de comunicare agent trebuie s se potriveasc foarte bine cu tehnologiile moderne din domeniul reelelor. Astfel, el trebuie s suporte toate tipurile de conectare de baz i conexiuni sincrone i asincrone. Protocoalele de nivel nalt trebuie s fie independente de mecanismele de transport utilizate; - mediul. Mediul n care agenii opereaz va fi foarte distribuit, eterogen i extrem de dinamic. Pentru a oferi un canal de comunicaie cu lumea din afara acestui mediu, un limbaj de comunicare agent trebuie s ofere instrumente pentru tratarea acestor fenomene, s suporte interoperabilitatea cu alte limbaje i protocoale; - fiabilitate. Un limbaj de comunicare agent trebuie s faciliteze securitatea comunicaiilor dintre ageni, s garanteze autenticitatea agenilor i s asigure mecanisme pentru identificarea i semnalarea erorilor n procesul de comunicare. Din punct de vedere tehnic, comunicarea ntre ageni se realizeaz utiliznd protocoalele de transport ultracunoscute gen TCP-IP, HTTP, IIOP. Noi am constatat c limbajul care tinde s devin standard pentru comunicarea ntre ageni este KQML (Knowledge Query and Manipulation Language). KQML a fost conceput att ca un format al mesajelor ct i ca un protocol de manipulare a mesajelor, care s permit partajarea cunotinelor ntre ageni.

58

6.3. Limbajul KQML


KQML este un protocol pentru schimbarea informaiilor i cunotinelor i se caracterizeaz prin faptul c toate informaiile pentru nelegerea coninutului mesajului sunt incluse n structura comunicaiei. KQML poate transporta expresii codificate n orice limbaj de reprezentare, inclusiv ASCII. Caracteristicile limbajului KQML [FininLabrou95] , sunt: - mesajele KQML sunt opace la coninutul pe care l transport; - primitivele limbajului sunt numite performative i definesc aciunile pe care agenii le pot ntreprinde n comunicare; - mediul n care agenii comunic prin KQML, trebuie s conin un agent special numit facilitator (mediator, router), care coordoneaz comunicaiile dintre ageni, respectiv: - localizeaz agenii dup nume sau abiliti; - descompune i trimite mai departe mesajele agenilor; - furnizeaz servicii de traducere i mediere; - stocheaz temporar informaii. Protocolul de baz este definit de urmtoarea structur: (KQML performativa : sender <word> : receiver <word> : language <word> : ontology <word> : content <expression> ) Pentru a nelege mesajul, receptorul trebuie s neleag limbajul i s aib acces la ontologie. O ontologie este o specificaie a obiectelor, concepiilor i relaiilor dintr-un anumit domeniu [FininLabrou95]. Un agent trebuie s-i reprezinte cunotinele ntr-un vocabular specific unei ontologii. Toi agenii care partajeaz aceeai ontologie pentru reprezentarea cunotinelor pot s neleag cuvintele n limbajul de comunicare agent. Agenii care vorbesc KQML apar unii fa de alii drept clieni i servere, iar comunicaiile pot fi sincrone sau asincrone. Mesajele KQML pot fi imbricate, adic coninutul unui mesaj KQML s fie un alt mesaj KQML. De exemplu, dac Agent1 nu poate s comunice direct cu Agent2 (dar poate s comunice cu Agent3), Agent1 l poate ruga pe Agent3 s trimit mesajul mai departe pentru Agent2. Limbajul KQML este alctuit pe trei niveluri: (figura 6.4) - nivelul comunicaiei permite identificarea emitorului i a receptorului i obinerea unui identificator unic asociat cu comunicaia; - nivelul mesaj specific protocolul utilizat pentru a transmite mesajul, ontologia i anumite descrieri despre coninut; - nivelul coninut coninutul efectiv al mesajului.

Figura 6.4. Structura unui mesaj KQML

Performativele utilizate de KQML pot fi grupate n urmtoarele categorii: - interogri de baz : evaluate, ask-one, ask-all; - interogri multi-rspuns: stream-in, stream-all; - performative de rspuns: reply, sorry; - performative informative generice: tell, cancel, achieve, unachieve; - performative generatoare: standby, ready, next, rest; - performative de notificare: advertise, subscribe, monitor; - performative de facilitare: broker, recommend, recruit. Considerm cazul n care agentul A dorete s cunoasc adevrul despre propoziia x i agentul B poate avea rspunsul la propoziia x n baza sa de cunotine i exist un facilitator F disponibil. Exist urmtoare situaii: a) Dac A cunoate c agentul B are cunotine despre x, atunci el poate trimite cererea direct la B, utiliznd un protocol simplu point-to-point (figura 2.13).

59

Figura 6.5. Comunicare prin performativa ask

b)

Dac A nu cunoate ce ageni sunt disponibili sau care din ei au cunotine despre domeniul lui x, atunci A utilizeaz o performativ subscribe, prin care cere facilitatorului F s monitorizeze adevrul despre x. Dac dup aceea B l informeaz pe F n legtur cu adevrul despre x, atunci F poate s-l informeze pe A despre acest lucru (figura 6.6):

Figura 6.6. Comunicare prin performativa subscribe

c) O alt situaie puin diferit este cea n care A l roag pe F s gseasc un agent care poate procesa performativa ask(x). Independent, agentul B l informeaz pe F c dorete s accepte performative de genul ask(x). F avnd aceste dou mesaje, i trimite mai departe agentului A, rspunsul despre domeniul lui x (figura 6.7.)

Figura 6.7. Comunicare prin performativa broker

d) Dac agentul A utilizeaz o alt performativ prin care l informeaz pe agentul F c este interesat s cunoasc adevrul despre x, atunci performativa recruit roag receptorul s gseasc un agent care dorete s recepioneze i s proceseze aceast performativ. n acest caz, rspunsul va fi transmis direct agentului care a iniiat cererea (figura 6.8)

Figura 6.8. Comunicare prin performativa recruit

60

e) O ultim variant este aceea n care agentul A i cere lui F s-I recomande unui agent cruia s-i adreseze o performativ ask(x). Agentul F, tiind c agentul B accept performative ask(x), i transmite lui A numele agentului B. Agentul A este liber s iniieze dialog cu agentul B (figura 6.9):

Figura 6.9. Comunicare prin performativa reccomend

Unul dintre cele mai importante rezultate ale eforturilor FIPA este limbajul de comunicare ntre ageni FIPA ACL (FIPA Agent Communication Language). Acest limbaj se bazeaz pe teoria actelor de vorbire: mesajele sunt aciuni sau acte de comunicare. Specificaiile limbajului ofer descrierea unor protocoale de nivel nalt, cum ar fi solicitarea unor aciuni, Contract Net i mai multe tipuri de licitaii. Sintaxa FIPA ACL este identic cu cea a limbajului KQML, cu excepia unor nume diferite pentru anumite primitive. Limbajul KQML a fost considerat o bun perioad de vreme limbajul care tindea s devin standard pentru comunicarea ntre ageni. Probabil din ncercarea de a standardiza prea devreme, existnd prea puine sisteme multiagent implementate, limbajul KQML a rmas un limbaj de comunicare inter-agent de referin. Comunicarea ntre agenii FIPA are loc n limbajul de comunicare implicit fie FIPA-ACL, fie ACL/XML. Folosind XML se pot specifica ontologiile dorite pentru diferite domenii de aplicaie. Conform FIPA, coninutul unui mesaj poate fi exprimat n orice limbaj de coninut. Utilizarea XML ca limbaj de coninut are avantajul prezentrii facile a mesajelor de comunicare dintre ageni i aplicaiile web existente.

61

BIBLIOGRAFIE
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. Adam, R., Contributii la utilizarea sistemelor multiagent in aplicatiile financiar bancare, Teza de doctorat, Universitatea A.I. Cuza, Iasi, 2009 Adam, R., The management of business processes aided by the agent technology, Studii i Cercetri tiinifice, seria tiine Economice, ISSN 1224-9858, Nr. 12, Universitatea Bacu, 2007 Adam, R., Oportuniti ale utilizrii tehnologiei agent n sistemele informaionale financiar-contabile, Studii i Cercetri tiinifice, seria tiine Economice, ISSN 1224-9858, Nr. 11, Universitatea Bacu, 2006 Adam, R., Using Agent Technology for Customer Relationship Management in banking, InfoBUSINESS 2004 "Innovative Applications of Information Technologies in Business and Management", International Symposium, 2004, Iai Adam, R., Noua economie i mediile de afaceri moderne, Studii i Cercetri tiinifice, seria tiine Economice, ISSN 1224-9858, Nr. 9, Universitatea Bacu, 2004 Adam, R., ntreprinderile virtuale versus ntreprinderile tradiionale, Revista INFOREC nr. 29, ASE Bucureti, 2004 Andone, I., Tabr, N., (coordonatori), Contabilitate, tehnologie i competitivitate, Editura Academiei Romne, Bucureti, 2006 Andone I., Tugui Al., s.a., Dezvoltarea sistemelor inteligente in economie, Editura Economica, Bucuresti, 2001; Andone, I., Arhitecturi pentru afaceri electronice bazate pe ageni inteligeni, n Informatica Economic, Nr. 3, Dec 2001 Andone, I., Tugui, A., Sisteme inteligente n management, contabilitate, finane, bnci, marketing, Editura Economic, Bucureti, 1999 Arnold, O.F., Wolfgang H.M., Seiber P., Virtual Integration, 2000, http://www.itvd.unistuttgart.de/wa/man/ projects Arsac, J., Informatica, Editura Enciclopedica Romna, Bucuresti, Bernard-Faqouillet, E., Boufares F., Informatique pour la comptabilite et la gestion, Editions Eska, Paris, 1995 Boudreau M.C., LochDaniel, K., Straud, R.D., Going Global: Using Informaion Technology to Advance the Competitiveness of the Virtual Transnaional Organisation, Academy of Management, No. 12.4, 1998 Byrne, J., The virtual Corporation, Business Week, pp. 36-41, 1993 Caglyan, A., Harrison, C., 1997, Agent Sourcebook, John Wiley & Sons, Inc., Canada Carmichael A.R., Object Development Methods, SIGS Books, New York, 1994 DeLoach, S., Wood, M., Sparkman, C., 2001, Multiagent Systems Engineering, International Journal of software Engineering and Knowledge Engineering, Vol. 11, No. 3 Digital - A Guide to Use Digital Program Methodology, 1996 ERMES, Systemes dinformation. La perspective du management, Edition Masson, Paris, Milan, Barcelone, 1994 Finin, T, Labrou, Y., Mayfield, J., KQML as an agent communication language, in Jeff Bradshaw (Ed.), Software Agents, MIT Press, Cambridge, 1995 FIPA00001 - Abstract Architecture Specification, Foundation for Intelligent Physical Agents, 2000, www.fipa.org FIPA00023 - Agent Management Specification, Foundation for Intelligent Physical Agents, 2000, www.fipa.org Fischer, K., Mller, J., Heimig, I., Agents in Virtual Enterprises http://citeseer.nj.nec.com/ fischer96intelligent.html, 1996 Fotache, D., Groupware. Metode, tehnici i tehnologii pentru grupuri de lucru, Editura Polirom, Iai, 2002 Franklin, S., Graesser, A., 1996, Is It an Agent or Just a Program? A Taxonomy for Autonomous Agents. In Proceedings of the Third International Workshop on Agent Theories, Architectures, and Languages, New York: Springer-Verlag. Genesereth, M.R., Ketchpel, S.P., 1994, Software Agents, Communications of the ACM, vol. 37, no. 7. Ghilic-Micu, B., Afacerile n economia digital, Revista Informatica Economic, nr. 3(23)/2002 Ghilic-Micu, B, Stoica, M., Organizaia virtual, Ed. Economic, Bucureti, 2004 Hoffer J.A., George J.F., Valacich J.S., - Modern Systems Analysis and Design, The Benjamin/Cummings Publishing Company, Inc., Menlo Park, CA, 1996 Jennings, N. R., Norman, T.J., Faratin, P., ADEPT: An Agent-based Approach to Business Process Management, 1998, http://www.ecs.soton.ac.uk/~nrj/ Jennings, N., Sycara, K., Wooldridge, M., A Roadmap of Agent Research and Development, Int. Journal of Autonomous Agents and Multi-Agent Systems, 1, 1998. Joldes, R., Olteanu, E., Ciortea, M., Deaconu, S., Proiectarea sistemelor informatice, Editura Universitii 1 Decembrie 1918 din Alba Iulia, 2004 Leito, P., An Agile And Cooperative Architecture For Distributed Manufacturing Systems, Proceedings of ASI2000 International Conference, Bordeaux, France, 2000 Lesperance, Y., Introduction to Intelligent Autonomous Agents and Multiagent Systems, Knowledge Representation/ Intelligent Agents, Fall, 2003

62

36. Lungu I., Sabau G., Velicanu M., Muntean M., Ionescu S., Posdarie E. - Sisteme informatice, Editura Economica, 2003 37. Maes, P., Agents that Reduce Work and Information Overload, MIT Media Laboratory, CHI97 Software Agents Tutorial, 1997 38. Maes, P., 2007, pagin web personal , http://web.media.mit.edu/~pattie/ 39. Martin, J., Rapid Application Development, New York, MacMillan, 1991 40. Mawhinney, C.H., Millet, I., Executive information systems: A critical perspective, in Information and Management, nr. 23, 1992 41. Mostfaoui, S.K., Rana, O., Foukia, N., Self-Organising Applications: A Survey, http://www.hec.unige.ch/ recherches_publications/cahiers, 2004 42. Mowshowitz, A., Virtual Organisation: A Vision of Management in the Informaion Age, in: The Informaion Society vol. 10, United Kingdom, 1994 43. Nitchi, S., Racovitan, D., si colectiv, Bazele prelucrrii informaiilor i tehnologie informaional, Editura Intelcredo, Deva, 1996 44. Nwana, H.S., 1996, Software Agents: An Overview, Knowledge Engineering Review, 11(3): 205-244 45. Oprea, D., Airinei, D., Fotache, M., Sisteme informaionale pentru afaceri, Ed. Polirom, Iai, 2002 46. Oprea, D., Mesni, G., Sisteme informaionale pentru manageri, Ed. Polirom Iai, 2002 47. Oprea, D., Analiza si proiectarea sistemelor informationale economice, Ed. Polirom, Iasi, 1999 48. Oprea, D., Premisele i consecinele informatizrii contabilitii, Editura Graphix, Iasi, 1994 49. Padgham, L., Winikoff, M., Developing Intelligent Agent Systems: A Practical Guide, John Wiley and Sons, 2004 50. Padgham, L., Winikoff, M., Prometheus: A Methodology for Developing Intelligent Agents, RMIT University, Melbourne, http://www.jamesodell.com/ AOSE02-papers/aose02-04.pdf 51. Papazoglou, M., Agent-Oriented Technology n Support of E-Business, Communications Of The ACM, April 2001, Vol. 44, No. 4 52. Patrut V, Adam R., Orzanizatia virtuala ca entitate contabila, Revista CECCAR, nr. 5, Mai 2011, Bucuresti 53. Popescu, G., Popescu, E., Elaborarea sistemelor informatice n contextul informatic actual, Editura Universitii din Constana, 2001; 54. Reix, R., Informatique applique la gestion, Les Editions Foucher, Paris, 1990 55. Roca, I., Macovei, E., Davidescu, N., Proiectarea sistemelor informatice financiar-contabile, Editura Didactic i Pedagogic, 1993; 56. Royce W. W., - Managing the Development of Large Systems, Proceeding of WESTCON, CA, USA, 1970 57. Rosen, A., E-Commerce Question and Answer Book, AMACOM Books, 1999 58. Russell, S., Norvig, P., 2002, Artificial Intelligence - A Modern Approach, second international edition, Prentice Hall 59. Shoham, Y., Agent-oriented programming, Artificial Intelligence, (60):51-92, 1993. 60. Sommerville I., - Software Engineering, lth Edition, Addison-Wesley, UK, 1989 61. Stanciu V. (coordonator) Sisteme informatice financiar-monetare, ASE 62. Sycara, K., Multiagent Systems, AI Magazine Vol. 19, No. 2. Intelligent Agents, 1998 63. Travica, B., The Design of the Virtual Organizaion, www.hsb.baylor.edu/ramsover/ais.ac.97/papers/travica/ 64. Trauth, E.M., Kahn, B.K., Warden, F., Information literacy. An introduction to information systems, MacMillan Publishing Company, 1991 65. Wooldridge, M., Intelligent Agents, in Multiagent Systems. A Modern Approach to Distributed Artificial Intelligence, Weiss, G., The MIT Press, 1999 66. Weiss, G., Multiagent Systems. A Modern Approach to Distributed Artificial Intelligence, The MIT Press, 1999

63

S-ar putea să vă placă și