You are on page 1of 50
3. Managementul proiectelor informatice 3.1. Aspecte definitorii $i organizatorice Managementul proiectelor' este o strategie manageriala aplicaté mai ales in informatizari si investigii de alta natura. Ea presupune constituirea unor echipe de specialisti in analiza, proiectarea si implementarea de aplicafii informatice si implicarea de specialisti din diferite compartimente functionale, mai ales de contabilitate, comercial si de management a resurselor umane. Echipele de proiect au ca obiectiv lansarea si realizarea proiectului cu respectarea specificatiilor tehnice, a termenelor de execufie si a bugetului de cheltuieli. Existenta si functionarea unor astfel de echipe implica doud probleme organizatorice importante: integrarea echipei de proiect in structura organizatorica a firmei (de investitii) si crearea unei structuri organizatorice pentru proiectul in sine. in structura organizatoricd functional a societatilor comerciale integrarea acestei metode de management se realizazi prin integrarea proiectului in organizarea functional a firmei. Managementul proiectului este subordonat compartimentului functional, de regula, de contabilitate, care poate avea rolul cel mai important in implementarea lui, Pe baza celor mentionate, sinteza avantajelor si a dezavantajeior managementului prin proiecte este redata in tabelul 3.1. Asa cum am menfionat la analiza structurilor manageriale si de control, managementul prin proiecte confera multiple atuuri de finalizare eficienti a unor obiective importante ale societatilor comerciale, cum este cel al informatizarilor, dar implica si capcane, cum este cea a perturbarii sistemului de reglare existent inainte de implementarea noii structuri. Fapi de organizarea functional clasic, organigrama unei societati comerciale in care se implementeaz managementul prin proiecte se poate prezenta ca in figura 3.1, care reflect “organizarea pe proiecte pura”. in cadrul fiectrui proiect (de analize conjucturale, oferta de produse, tehnologii de productie, de informatizare etc.), managerul are autoritate si responsabilitate depling. Un proiect constituie 0 entitate autonomé distinctiva in cadrul siructurii firmei, cu propriul sau personal tehnic, propria administratie, “relafionata” de organizarea de ansamblu (doar) prin rapoartele periodice pe care managerul de proiect trebuie s& le prezinte conducerii strategico-tactice. Unele societati comerciale prevad proceduri foarte detaliate in ceea ce priveste administrarea, finanele, personalul si controlul in cadrul proiectului, in timp ce altele acorda o libertate mai mare sau mai redus’ in 97 acest sens. in ultima instanta, combinatia clasic - modern este dependenté de marimea si perspectivele organizatici, de cerintele si posibilitatile existente. AVANTAJE 1. Centralizarea —_resurselor similare. 2. Disponibilitatea fortei de munci. 3. Stabilitate mare. 4. Standarde profesionale fnalte. 5. Asigura o flexi maxima in utilizarea personalului. Experfii pot fi implicafi temporar in proiect, apoi_setrimisi la munca lor obignuiti. 6. Expertii pot fi utilizafi in cadrul mai multor proiecte. 7. Specialistii implicati in cadrul proiectului pot apela la colegii cadrul compartimentului functional din care provin pentru a face schimburi de cunostinfe si experienta, ceea ce poate constitui 9 sursi de solutii creative si sinergice pentru problemele —proiectului. 8. Posibilitatea asimilarii unor noi tehnologii —performante. 9. Permite utilizarea in cadrul proiectului a acelorasi proceduri tebnice si manageriale folosite si la nivelul firmei. 10. Specializare in cadrul functiilor. 11. Mentine parcursurile normale de evolutie in carieri din cadrul organizatiei. DEZAVANTAJE 1. Numar mare de niveluri ierarhice. 2. Lipsa unei “vederi” de ansamblu a projectului pentru —majoritatea personalului implicat. 3. Clientul nu este in centrul preocupirilor. Unitatea functionala c&reia ti este subordonat proiectul are propriile sale sarcini de realizat si acestea prevaleaz’ de obicei fat& de cele ale proiectului. 4, Unitatea functionala tinde s& fie orientati catre realizarea si controlul activititilor tehnice si nu catre problemele globale ale proiectului. 5, Nu i se acordi unei singure persoane intreaga responsabilitate pentru proiect, 6. Motivatia echipei de proiect este slab’ deoarece proiectul este perceput ca un aspect marginal in cadrul activitatii firmei. 7. Poate favoriza aparifia rivalitatii gi neloiale intre echipele de proiect in lupta acestora pentru acces Ia resursele organizatiei. 8. Succesul este totdeauna insusit, iar egecul nu apartine nimanui. 9, Rezistenfa in 10. Proces lent de luare a deciziei. Tabelul 3.1.- Implicafiile managementului prin proiecte 98, el {ide Amiir | Figura 3.1- Organigrama pentru managemental prin proiecte intro conceptie moderna, aplicabila in “intreprinderi inteligente”, racordate la intemet, managementul prin proiecte este asociabil cu organizarea matriciald, reprezentata in figura 3.2. “Nodurile” structurii pot reprezenta centre de decizie, formate din specialistii antrenafi in rezolvarea problematicii aflate la intersectia linie (manager proiect) — coloana (specialisti de marketing, ingineri, contabili etc.). ia ea Ato | Cool Resa Diretor General | TOOL a Fig, 3.2- Organigrama intreprinderii matriceale 99 ‘Avand in vedere avantajele si dezavantajele specifice fiecdrei forme de organizare, se poate opta pentru o combinatie de structuri, avand in vedere condifiile specifice fiecdrei firme. Managementul si marketingu! informatizate se reali: orizontali (functional) si verticala (ierarhicd) de aplicafii, ca proiecte finale executabile, menite a facilita exercitarea functiilor intreprinderii si ale conducerii. Rezulta sisteme informatice de gestiune si de asistare a deciziilor de tratare si folosire optimal a informafiei economico-financiare si cu caracter social. Datele si cunostintele din colectii pot fi organizate in fisiere independente (relative la 0 ‘anumita problema), in fisiere integrate, in baze de date centralizate sau distribuite (in rejele de calculatoare). Corespunzitor modului de organizare a datelor, aplicariile informatice pot fi: independentes integrate care comunic& direct (on- Tine, in timp teal) sav indirect (off-line) in solutionarea problemelor complexe. Exploatarea unui sistem (aplicafii) informatio(e) se poate face centralizat sau cu distribuire partial sau total’, in functie de posibilitafile sistemelor de calcul disponibile si concepfia de ansamblu prestabilita. in esenti, managementul prin proiecte presupune numirea unui manager general al proiectului de finalizare a unui obiectiv important (automatizare, proiectarea si lansarea de produse noi, realizarea unor retehnologizari etc.) care devine raspunzator de organizarea si desfaésurarea acfiunilor din faza de lansare a proiectului si pane la finalizarea Iui- ‘Managerul isi alege echipa (subordonatii) st rtaboratorii in functie de condifiile specifice ale organizatiei sau ale organizatiilor fo care urmeaz sa fie realizata finalizarea acfiunilor de implementare a proiectalui. avi prin integrarea 3.2. Metodologii de management prin proiecte privind informatizarile 3.2.1. Strategia clasica Principalele etape de Iueru si specificatit de realtzare se unui proiect informatic, in concepfia clasicd, dedust din experienfa specialistilor in analiza gi conceperea de sisteme informatice, sunt: eres laborarea temei de realizare cu specificatea cerinfelor gi & restrictiilor sistemului, ca potentiala baz& juridic’ de reglementare a raporturilor proiectant- peneficiar (utilizator); 2. = profectarea de ansamblu care, in general, este similar acfiunilor de taborare ale unui studiu tehnico-economic pentru investi de naturs industrial’. Ea consta in a stabil, pe coordonatele unui profect director. de informatizare, conceptia globala a sistemului informatic, structura acestuia, prioritifile de 100 realizare, necesititile si posibilitatile economico-financiare ale _utilizatorului, eficienta scontatd. Importanta etapei deriva din faptul c& este ultima in care analiza yieazd ansamblul actiunilor de prefigurare mu numai a viitorului sistem informaional-decizional, ci $i conexiunile acestuia; 3. - proiectarea de detalin sau tehnicd a fiecirei componente de tip subsistem sau aplicatie, prin conceperea, intro maniera analitic’, a tehnologiei tratirii informagiei pe traseul intrdri- pprelucrari- iesiri, prin elaborarea algoritmilor de programare si a specificatiilor de programare $i exploatare viitoare a procedurilor tehnologiei. Un proiect tehnic rezultat trebuie s aibé caracteristicile unui proiect elaborat pentru produse de natura industriald in care desenele de execuie (specificapiile de realizare) si {fisele tehnologice (arborii de programare) definesc tehnologiile si refetele de fabricatie; 1+ programarea fiecdrei componente prin sorierea programelor intr-un mediu adecvat, testarea si integrarea lor in mediul pentru care ou fost concepute; 5. - testarea procedurilor cu date reale in vederea omologitii si acceptirii lor de cAtre beneficiar, implementarea lor in cadrul sistemului informatic (informational); 6. - exploatarea si intrefinerea produsului informatic rezultat, urmarind prin aceasta, imbunatatirea performantelor acestuia. ‘In fiecare etapa se elaboreazit documentatii specifice, iar spre final, se completeaz’ gi definitiveaz’ documentatia de prezentare, operare gi intrefinere a produselor informatie nou create. Studierea realizArilor practice ale informaticii aplicate scot in evident’ faptul c&, in scopul asiguririi unei independente relative, un sistem informatic se Structureazd (in general) funcfional, wrmarind asigurarea conditiilor pentru wurciterea funcfiilor sistemului de reglare. Astfel, intr-o intreprindere, subsistemele informatice sunt: de marketing, de cercetare- dezvoltare, de productie, comercial, financiar- contabil si de personal. Pe domenii de activitafi vw compartimente, un subsistem se detaliaz& in aplicafit (unitati functionale), iar 0 aplicatie in proceduri avtomate si de interfafs, ©a unititi de prelucrare prin care mranagerii si executanfii si poat obfine informatiile dorite. De pilda, subsistemul de productie al unei societati comerciale de tip productiv se constituie din aplicatii de progtamare, lansare, urmatire gi control @ fabricatiei; in functie de necesitai, fiecare aplicafie este conceput ca un program sau ansamblu de proceduri de tratare a informatiei, in concordana cu tehnologia necesart obtinerii informafiilor finale, avind ca punct de plecare documentele primare si centralizatoare privind derularea fenomenelor gi a proceselor de productie {in general, tipologia procedurilor pentru aplicatii de gestiune si de asistare a deciziilor cuprinde: ~ proceduri de culegere (si pregttire) a datelor din documentele primare (ise, facturi, chitante etc.) in documente (borderouri) de control centralizatoare 101 prin proiectarea de formulare de culegere si modificare a datelor. in prezent, culegerea datelor se face, tot mai freevent, direct din documente primare sau Centralizatoare. Adeseori, insagi documentele primare (facturi, chitanfe, fige de evident etc.) sunt emise la calculator ; “proceduri de validare (control) al modului de preluare a datelor in procesul de tratare automata prin: verificarea corectitudinii codurilor utilizate; controlul fneadrarii. confimutului unor cdmpuri in liste sau cataloage de valori admise; Verificarea denumirilor, a unitafilor de masurd si a confinutului altor cdmpuri care ‘au un caracter permanent in descrierile de date etc. Yn noile medii de programare (Microsoft Access, Visual FoxPro, Visual Basic) validarea datelor se poate face prin precizarea condifiilor de validare (optiunea Valid) la descrierea campurilor sau prin ,incapsularea” procedurii de validare la descrierea structurii bazelor (tabelelor) de date; ~ proceduri pentru sortarea si indexarea colectilor de date in functie de cetintele de prelucrare si jnformare. Data fiind importanfa indexarilor pentru regisirea informatiilor in acces direct, cmpurile (atributele) de tip cheie pentru indexiri se pot preciza la crearea structurii tabelelelor care constituie 0 baz de date astfel incdt relatiile dintre tabele s4 se realizeze cu ugurinfa, iar regisirea informatiilor s8 se poatd face rapid. Mai mult, prirmul emp al unui tabel, in mediul de programare Access, ttebuie si fie de tip cheie primara care ia valori diferite (cum sunt numerele matricole, codurile pentru marfuri, numerele de inventar pentru smobiliziri corporale etc.); in cazul in care programatorul nu si defineste cheia primar, sistemul atribuie automat un numa de identificare unic pentru fiecare inregistrare inclusa fntrun tabel; = proceduti relative la popularea structurilor de figiere (tabele gi baze de date) cu date prin definirea formularelor de culegere a datelor in cadrul preluerarilor curente; ~ proceduri care asiguri gestionarea colectiilor de date prin consultarea, actualizarea sau exploatarea figierelor; ~ proceduti prin care se realizeazit conceperea $1 gestionarea modelelor prin care se elaboreazi si fundamenteaza deciziile; ~ proceduri privind protecfia si securitatea datelor, in special prin folosirea facilitatilor oferite de sistemele de operare etc. fntro aplicatie informatica, procedurile sunt grupate in functie de momentele execufiei lor, astfel: proceduri de inifializare a sesiunit de lucru (privind datele de identificare a utilizatorului gi a perioadei de operare, precum si pentru incdrcarea figierelor de Iucru necesare acordand drepturi de acces la date persoanelor autorizate), proceduri curente de culegere a datelor noi gi de prelucrari si consultiri ale fisierelor la cererea utilizatorilor $i proceduri finale de inchidere a 102 sesiunii de lucru (pentru obfinerea situatiilor gi a rapoartelor necesare si de salvare a fisierelor aplicatiei). ‘Integrarea prelucrarilor se face prin comenzi specifiee limbajelor de programare sau meniuri si butoane structurate, astfel incat, Ja un moment dat luilizatorul sa poata selecta procedurile si aplicatile de care are nevoie. Strategia clasic& este rezultanta experienfei dobéindite in crearea si exploatarea de sisteme informatice funcjionale de gestiune economico- financiar& fa deceniile 6-8 ale secolului XX. Aplicarea ei se face si in prezent in multe societati comerciale gi vizeazi ansambiul unei organizfii (societati comerciale) sau 7 si. domenii de activitayi prin parcurgerea etapelor de lucru menfionate, ‘Activitatile si rezultatele specifice au fost prezentate, pe larg, in literatura de specialitate”. 5 clasice se mentioneaz: v -planificarea si urmarirea riguroasé a activitatilor; ¥ -proiectarea completa si consistent& a produselor informatice cu specificatii riguros elaborate; ¥ . integrarea usoaré a componentelor ca urmare a proiectirii riguroase a interfetelor interne gi a celor cu alte componente §.2. ‘in deceniul 8, concomitent cu aparitia calculatoarelor profesionale sia mediilor de programare de generatia a IV-a, ideea crearii de sisteme informatice integrate la nivel de organizafii si domenii de activitati a fost, treptat, abandonaté datorité unor incoveniente, cum sunt: Y - utilizatorii evalueaz% facilitatile produsului informatic abia dupa testarea si integrarea lui in mediul real cand eventualele incompletitudini necesita eforturi insemnate de revizuire a intregului produs; ¥ - proiectantii nu pot stabili concret performantele si eficienta produsului final (sistermului informatic) decat in etapele de experimentare si implementare a luis ¥ - presupun cheltuieli ridicate de intretinere a programelor; ¥ - costurile si duratele de realizare sunt mari; ¥Y ~durata de folosinta relativ mic& ca urmare a uzurii morale generati de evolutiile din tehnologiile de automatizari si din mediile de programare care implica frecvente conversii intre medi de realizare si exploatare, precum si reconsiderari a intregului sistem informatic. ‘in demersul automatizarii unor activitati si lucrdri economico-sociale, aplicarea strategiei clasice a impus concepte si metode specifice teoriei sistemelor, ca de pilda: 2 a se vedea,printe altele, Tribuna economicd,numerele: 5.6,9,51-52/1998; 1/1999,20,22/2000. 3 jnstitutul de Tehnicd de Calcul si Informatica - Indicajii metodologice pentru realizarea sjstemelor informatice $i a produselor program, vol. Il, pag. 91-95, uz intern, Bucuresti, 1987, 103 Y ~ abordarea global (sistemica) de la general la particular (top down) sau / si de la particular spre general (bottom up); ¥ -structurarea i modularizarea sistemelor; ¥ ~accentuarea rolului conexiunilor directe gi inverse intre componente; V -reglarea gi autoreglarea functionarii sistemelor informatice; Y ~ modelarea gi algoritmizarea proceselor informafional- decizionale; V ~aplicarea conceptelor de sistem deschis si de programe glisante (scenarii) 5a. Fforturile analistilor / proiectantilor de sistem s-au concentrat, adeseori, spre cresterea gradului de organizare si rafionalizare a sistemelor informationale din societai comerciale, cu toate ¢ multe realizari s-au concentrat mai mult asupra transpunerii uno proceduri si Iucrdi manuale in proceduri automatizate. Ineficienta unor sisteme sau programe informatice s-a datorat, de multe ori, nu proiectantilor, ci modului in care beneficiarit de informatii au colaborat in organizatea actiunilor gi i-au ajutat pe informaticieni si defineasca corect cerintele si restrictiile tratarii informatici. 3.2.2. Strategia prototipizarii Existenfa unor probleme similare pentru unitafi economico-sociale cu acelasi profil al activitatilor, prioritatea automatizirii unor functii vitale ale unor organizafii, au stat la baza prototipicdrit realizarilor informatice. Scopul vizat prin aplicarea strategiei prototipizarii este structurarea procesului de realizare a unui produs informatic necesar automatizarii functitlor critice ale unei societafi comerciale (cum ar fi funcfia de productie / managementul executiei) sau standardizarea i tipizarea sistemelor informatice pe tipuri de organizafii, Spre exemplu, in preajma anului 1980, un colectiv al Institului Central de Conducere si Informatica din Bucuresti a realizat o tehnologie informatica sub forma unui set de elemente tipizate adaptabil pe tipuri de intreprinderi printr-o abordare de la general ta particular, de la un sistem obiect reprezentativ (standard) la un sistem informatic specific mediului de implementare. fn aplicarea strategiei prototipizarii, principiile de Iucru sunt: Y = realizarea unui produs informatic prin construirea unuia sau a mai multor prototipuri parfiale ale acestuia, ca modele reprezentative pentru functii critice sau pentru facilitatile care pot contribui esential la buna functionare a unei organizafii; V - experimentarea gi / sau dezvoltarea prototipurilor partiale in crearea produsulut (prototipului) final; Y -definitivarea produsului informatie pe baza unui prototip al stu. Un prototip este un model al comportirii produsului dorit care se realizeazi relativ repede cu cheltuieli mici si timp scurt de finalizare. Folosind prototipul, 104 utilizatorul poate aprecia solutiile preconizate de proiectant prin prisma realismului si a completitudinii lor. In acest mod, utilizatorii isi clarificd cerinfele informational decizionale proprii filtréndu-le gi selectand solutiile de produs informatic cele mai eficace in desfigurarea activititilor specifice. Pe baza experientei dobindite, prototipurile partiale se convertesc in produs final prin jmbunatatirea functiilor lor. Metamorfoza se realizeaz& prin dezvoltarea iterativa a prototipului mai reprezentativ (pilot) adaugand noi caracteristici functionale produsului care raspund cerinfelor de informare, performanje si calitate ale realiz&rilor informatice. Tntrun context mai larg, in ideea proiectarii asistate la calculator, folosind instrumente de genul CASE- Computer Aide Systems Engineering, s-au creat sisteme informatice prototip pe tipuri de organizatii. Prin analiza si formalizarea analizei sistemului informational existent, pe baza unui limbaj de descriere a sistemelor, se constituie colectii de date de descriere a sistemului existent (obiect). Cu ajutorul unui program-analizor, din compararea sistemului prototip cu sistemul obiect rezulta liste cu diferentele semnalate. intr-un proces iterativ, se adapteazi prototipul si se reconsider sistemul obiect rezulténd, in final, modelul noului sistem informatic. O astfel de concepfie se apropie de condifiile proiectarii produselor si a tehnologiilor industriale prin care se asigurd’ nw numai tratarea informatiei pentru gestiunea economico- financiara a societdfilor comerciale, ci si asistarea procesului de luare a deciziilor aplicdnd politici manageriale moderne, cum sunt: managementul prin obiective, managementul prin excepfii, managementul prin rezultate Printre avantajele prototipizirii se remarca: Y - identificarea si analiza cerintelor informational- decizionale intr-un context imbunatatit si cu participarea "consumatorilor" de informatii; v -colaborarea eficienta proiectant- utilizatori; ¥ -rezolvarea oportuna si operativa a unor situatii de rise; Y - flexibilitatea si adaptabilitatea programelor create pe baza de prototipuri; ¥ ~corectitudinea $i completitudinea programelor rezultate $i pe baza verificarilor facute de utilizatori; ¥ -interfete om-calculator mai eficente si mai atractive; Y -usurinta intretinerii programelor (softului aplicativ) rezultate cu costuri reduse; Y ~sensibilizarea, familiarizarea $i transformarea managerilor si ale unor administratori in utilizatori nemijlocifi de produse informatice etc. Cu toate atuurile mentionate, aplicarea strategiei prototipizirii are unele neajunsuri, cum sunt: ¥ ~ incoerenta si incompletitudinea proiectirii cnd abordarile sunt orientate pe activitati sau probleme legate de exercitarea functiilor critice aie organizatieis 105 VY -integrarea greoaie a componentelor functionale prin lipsa unor specificatii de realizare complete privind conexiunile sistemului; V ~ineficienta prototipizarii in cazul aplicarii ei pentru rezolvarea de probleme clar definite sau cunoscute de proiectant. Pe baza celor semnalate, se poate aprecia ci, pentru crearea de produse informatice de complexitate medie si ridicatd, este mai eficient aplicarea unei strategii mixte prin conceptia de ansamblu aplicdnd metodologia clasicd si prin programarea si integrarea programelor pe bazé de prototipuri. Pentru solufionarea de probleme mai particulare cu caracter autonom, aplicarea strategiei prototipizirii garanteazi obfinerea de solujii de calitate cu efecte benefice asupra eficienfei sistemelor informational- manageriale din societati comerciale. De altfel, prototipizarea sta la baza noului mod de utilizare a mediilor de programare vizuale, bazat pe asistenti specializati care ofera instrumente de Iucru complexe si pe .Wrajitori” care predefinese structurile de date si pasii de lucru in gestionarea informatiilor. 3.2.3, Strategii orientate obiect Cerintele stocarii unor cantitifi tot mai mari de informafii, dezvoltarea mediilor de programare care pot surprinde si dinamica unei organizafii, orientarea automatizrilor spre realizdri multimedia de integrairi texte- imagini- sunete in convergenta sistemelor informatice spre sisteme expert de inginerie a cunoasterii au dus la aparitia $i dezvoltarea strategiilor orientate obiect. Printre premisele si obiectivele acestor noi metodologii sunt relevate*: ¥ ~- posibilitafi deductive si inductive superioare in argumentarea rezultatelor prin reprezentari directe ale entitatilor lumii reale in mediul informatic; ¥ ~cresterea puterii de modelare a datelor asociind medii de programare bogate, cum este limbajul C++ dezvoltat dup’ anul 1983; Y -ameliorarea interfefelor cu utilizatorii prin accesul Ia produse vizuale de comunicare de mare calitate; - facilitafi de prototipizare rapida a aplicatiilor; - luarea in considerare si a aspectelor dinamice, integrarea descrierilor structurale si comportamentale etc. in modelarea specifica acestei strategii, un object al lumi reale are 0 triplé abordare: este "vazut" ca actor autonom ce raspunde la mesaje cea ce permite simularea de procese paralele; in rolul de concept specific, obiectul asigurd modelarea cunostinfelor ingloband, pe langé date, semnificatii ale datelor (semantica informatiei, cunostinfe si fapte asupra unor metodologii si activitati); ca AN * Lungu I. ¢.a.- Baze de date, Ed. All Educational, Bucuresti, 1995, pag. 219-220. 106 si "cutie neagri" modelul asigura condifii de acfionare asupta lui modularizat si s& fie exploatat prin dialoguri sugestive. Aceste abordari creazi conditii ca un obiect s& aiba o tripla reprezentare: structural, ca o realizare (instantiere) a unui tip de dati, caracterizati printr-o structuré ascuns& prin operafii; conceptuald pentru entitafile lumii reale care pot fi specializate si dinamicd pentru actori la care obiectul este autonom si activ rispunzand la mesaje. Esenja abordarii orientat&- obiect este definirea caracteristicilor obiectelor dintr-o aplicatie si realizarea interacfiunii lor prin schimbul de mesaje. Xavier Castellani consideré ci metodologia si conceptia orientate obiect introduc’: conceptul de serviciu in loc de operatie; notiunea de cunostinfa si conceptul de fransmutafie privind transformarile obiectului. Aplicarea metodologiei presupune: metode de analizi si conceptie a sistemului de obiecte (date/prelucrari independente si modele asociate de tip entitate-atribut-relatie); modelul conceptual al utilizatorului raspunzand la intrebari de genul "ce?", "cand?"; modelul detaliat (operational) optimizat; nivelul logico-organizatoric de rispuns la cerinte de tipul "unde?", “cu ce?", "cdnd?"; nivelul fizic de raspuns fa intrebarea "cum se rezolva problemele?". in abordarea Orientat’ Obiect (OO), wr program devine un ansamblu de obiecte care schimba mesaje generatoare de operafii sau metode de transformare a strii lor interne si de restituire a valorii unor parametrii. O bazd de date- obiect confine obiectele programelor de aplicafii. Un obiect oarecare este persistent prin aceea ci durata sa de viafA este superioara programului care la creat. Prin proiectarea unui obiect, acestuia i se asociazd o structuri (atribute, campuri aparfinatoare) $i funcfionalitatea sa redata prin proceduri si funetii proprii clasei de obiecte. in acest fel, obiectele inglobeaza structuri de date si comportamente (operafii, metode). Strategia OO opereazi cu concepte specifice, cum sunt: Y -identitatea discreté prin carea se distinge dintre alte identitati; ¥ - clasificarea: obiectele cu aceleasi atribute si operafii se grupeaz in clase; fiecare obiect se poate considera ca o instant a unei clase; Y - polimorfism: aceasi operatie, cu acelasi nume poate s4 aib& comportament diferit in clase diferite; implementarea concreta a unei operafii intro anumita clasi poarti denumirea de metod: ¥ ~ mostenire: atributele si operatiile se transmit de-a lungul clasei bazate pe o relatie ierarhic’; ¥ ~ abstractizarea: focalizarea pe aspectele esentiale ale unei entitati; pentru un obiect accentul se pune pe ce este acesta gi ce trebuie si facd, inaintea stabilirii 5 Xavier C.-Methodologie generale d'analyse et de conception de systemes d'objets, Mason, Paris, 1993. 107 detaliilor de implementare ceea ce face sa creasc& importanta analizei (analistul trebuie s& deducd utilitafile informatiei); Y ~ incapsularea sau ascunderea informatie’ presupune separarea aspectelor externe ale unui obiect care sunt accesibile altor obiecte de aspectele interne ale obiectului care sunt ascunse altor obiecte. Utilizatorul obiectului poate accesa anumite atribute si operatii ale obiectului, denumite publice, in timp ce alte atribute si operal sunt inaccesibile, avand un caracter privat. Prin incapsulare se impiedic& modificarea tuturor caracteristicilor unui obiect cénd se perfectioneazé algoritmi sau se elimina erori ceca ce face ca aplicatiile ce utilizeaz& obiectul s4 nu fie afectate; ¥ = impachetarea datelor si a comportamentului in acelasi obiect astfel ineat un obicct sa contin’ structuri de date si operafii ce definesc clasa careia ii apartine o anumita metoda, chiar daca sunt mai multe operatii cu aceasi denumire in clase diferite; Y - partajarea ptin transmiterea acelorasi structuri de date si operafii in clase din jerarhii de clase 5.a. fn abordarea clasici descompunerea unui sistem este functional, procedural; pentru abordarea OO devine esenfialé infelegerea sistemului prin prisma descompunerii lui in entitafi- obiecte gi al stabilirii relatiilor intre obiecte devenind esenfialé diagrama sau diagramele obiectului prin care se rispunde la intrebari de tipul "cine face?", “care sunt relatiile intre cei ce fac?", "ce este sistemul2". O clasi de obiecte poate fi consideraté, la randul ei, un obiect. Caracterizarea unui grup de clase se face prin conceptele de metaclasé si ierarhie de clase. Activarea unui obiect se face prin mesaj de solicitare ca obiectul s4 efectueze actiune sau s& aplice una din metodele sale. Ansamblul mesajelor la care reactioneaz un obiect defineste interfaja obiectului, modul cum obiectul este vazut din exterior. Obiectele comunicd intre ele prin mesaje. Transmiterea si primirea de mesaje stau la baza operatiilor din modelul OO, Comportamentul polimorfic necesita selectarea metodei adecvate clasei obiectului sau superclasei. Metodele pot fi actualizate. Operatiile de creare, modificare si stergere a definirilor de clas se pot implementa ca mesaje. O consecinfa a structurarii modelului si a operafiilor OO sunt regulile de integritate, ca de exemplu: ¥ - toate obiectele trebuie si respecte protocolul specificat prin definirea de clasa. Ca urmare, un obiect poate rispunde doar la mesajele permise de clasa la care apartine; V = incapsularea obiectelor implict accesul limitat prin folosirea numai a protocolului de mesaje definit pentru clasa obiectuluis ¥ -identificatorul unui obiect asigura , integritatea referitoare la acel obiect. 108 Comparativ cu. modelul de date relational, gestionat prin medi de programare de genul FoxPro, modelul OO prezint& noutdfi importante®, cum sunt: v din punet de vedere structural: ~ in locul schemei bazei de date intervine ierarhia de clase; y definitia tabelei este inlocuita cu definitia de clas; Y ~ inregistrarea sau tuplu din reprezentarea relational’ se exprima prin instantiere de clasa in reprezentarea OO; ¥ ~inloc de camp sau coloana apare variabila de instant; ¥ ~conceptul de cheie primara este inlocuit cu cel de identificator obiect; ¥ ~ mostenirea de clas nu are echivalent in modelul relational; v erate operationale: - definirea, stergerea sau modificarea unei relatii de cmp este inlocuiti cu definirea, stergerea sau modificarea unei clase sau variabile de instants; ¥ -adaugarea unei linii sau inregistrari intr-o tabel4 este echivalatd cu crearea unei instante de clas sau a unui obiect individual; ¥ - definirea, modificarea sau stergerea unei metode din modelul OO nu au corespondent in modelul relational; ¥ - selectia, jonctiunea si proiectia din modelul relational nu se regasese in modelul OO; Y careguli de integritate: v -integritatea identitafii este reflectata prin identificatorul de obiect; Y = protocolul de obiect si incapsularea din modelu! OO nu au corespondenge in modelul relational. in aplicarea strategiei OO, un rol esential il au conceperea de diagrame de reprezentare a starilor si a mutafiilor care au loc. Astfel de diagrame sunt: Y - diagramele de flux de date de descriere a modificarilor din sistem. in modetul functional tranzacfiile se pot reprezenta sub forma de grafuri orientate tn care nodurile sunt procese , iar arcele sunt fluxurile de date; v -diagramele de stare, de caracterizare a evolutiilor in timp surprizand "cénd se modifica sistemul”; in cadrul modelului dinamic, se reprezint& prin grafuri in ‘care nodurile sunt stiri, iar arcele sunt tranzifii intre stiri, cauzate de evenimente externe, Se mai pot reprezenta sub forma de retele PERT; ¥ - diagramele obiectelor descriu structura static’ a obiectelor din sistem gi relatiile dintre ele reddnd "ce se modifict in sistem" sub forma de grafuri cu noduri- obiecte gi arce- relatii dintre obiecte. nc in 1978 un grup de cercetitori francezi a elaborat metodologia Merise” prin care se analizau sisteme pe bazd de modele de date asociative entitate- § idem | pag. 228-230 7 Collongus A., Hugues J., Laroche B.- Merise, Bordas, Paris 1989 109 atribute- relaii, completatt ulterior cu celelalte tipuri de modele specifice abordatii 00 $i folosité cu succes si de specialisti romani®. Principalele activitati de analiza si proiectare OO sunt: ¥ - identificarea obiectelor si a claselor de obiecte; ~ elaborarea dictionarului (grilei) de date; - identificarea relafiilor dintre obiecte; identificarea atributelor obiectelor si a leg&turilor dintre atribute; - organizarea claselor bazate pe mostenire; - iterarea si rafinarea modelului grupand gi regrupand clasele identificate si selectind metodele de raspund la cerintele de informare; - organizarea ierarhizaté a sistemului ca in cazul aplicarii strategiei clasice cu stabilirea priorit§tilor; ¥ -alocarea pe subsisteme a procesoarelor si a programelor de gestionare a structurilor de memorare a datelor si a resurselor globale; v -alegerea implementarii programelor de control. Pentru societati comerciale, obiectele pot fi considerate entiféfile care definesc patrimoniul propiu: materii prime si materiale (stocuri pentru productie), costuri, marfuri (stocuri de produse), imobilizri, angajati, furnizori, clienti, capital propriu, capital imprumutat .a. Tot in categoria obiectelor se pot considera rezultatele unor activitifi de cercetare, ca de pilda: tehnologii de fabricatie (operatii de flux), retete de productie (norme de consum), cerea si oferta piefei, programe de lucru etc. Mai pot fi considerate obiecte entititile de tip administrativ: compartimente, centre de profit, centre de productie 3.2. Relafiile dintre obieote sunt generate de procesele gi tranzactiile care au loc in cadrul organizatiei, dar si cele privind legaturile cu mediul exterior. in abordarea obiectelor ca actori, relatiile sunt reflectate de fluxurile care au loc intre “actori”, iar prelucrarea si manipularea informatiei definesc procesele de transformare a fluxurilor. Suportul tehnic al prelucrarilor sunt bazele da obiecte (date, cunostinfe, fapte), iar raspunsurile la mesaje in procesele informational- decizionale sunt rezultate prin inferenfieri (inductii, deduct, abductii- ca deduetii in funcfie de scop). Eficienfa prelucriilor depinde decisiv de experfii- umani care contribuie in echipele de analiza’ si proiectare la acumularea de cunostinte bine formulate, conforme cu cerinfele administrarii si ale managementului, exercitate stiintific. Indiferent de strategia aplicata, pentru conceperea si exploatarea de produse informatice performante un factor esential al reusitei actiunilor il reprezinta stransa colaborare proiectant- utilizatori prin instrumente de lucru simple si sugestive. Un astfel de instrument il poate constitui ehnica diagramelor aplicat’ in succesiunea: diagrame orizontale de flux informational- decizional pentru cunoasterea situatiei v a v v v < isteme informatice financiar-bancare, Ed. AllEducational, Bucuresti,1998 " Davidescu N. 110 existente si prefigurarea noului sistem in perspectiva informatizarii stabilind: modificdrile de flux si necesarul de fisiere permanente si tranzacfionale; scheme (organigrame) de sistem de reprezentare a principalelor proceduri de creare si gestionare a figierelor; arbori de programare pentru meniurile de integrare a prelueririlor; arbori de programare pentru procedurile meniului de prelucrare a fisierelor si de rspuns la cererile de informare. 3.3. Organizarea echipelor de analiza $i proiectare a activitatilor Din experienfa practicd a realizrii tehnologiilor informationale, bazate pe automatiziri, s-au desprins, ca tehnici organizatorice”: (1) echipa programatorului- sef; (2) echipa programatorului- sef revizuiti; (3) echipa chirurgicala; (4) organizarea democratic a programarii, (5) echipe organizationale. 1). Echipa proiectantului /programatorului-sef. Scopurile urmérite in definirea, organizarea si desfigurarea actiunilor sunt: - structurarea procesului de realizare a sistemului informational — decizional automatizat in vederea diversificarii activitatilor realizate de specialisti; ~ asigurarea unui mediu de lucru care si favorizeze utilizarea eficienti a instrumentelor proiectdrii asistate de calculator de tipul generatoarelor (de formulare, de rapoarte, pentru ecranari $.a.), a ,asistentilor” specializati (pentru folosirea butoanelor, a listelor, a casetelor de dialog etc.) si a ,,scurtiturilor” sau a .vragitorilor” pentru folosirea unor componente predefinite prin macrocomenzi ale mediilor de programare; - asigurarea "vizibilitatii" proiectului, a produsului informatic pe intreg ciclul de realizare fie ca prototip, fie ca 0 versiune intormediart de dialog cu utilizatorii ; prevederea unor modalitati de instruire a echipei dezvoltind metode si tehnici noi de Iucru, cum sunt instrumentele proiect&rii asistate si de analize directe (on-line) ale proceselor de finalizare a actiunilor; ~ cunoasterea foarte buna a evolufiei proceselor tehnologice de cétre cel pufin doi membri ai echipei. in indeplinirea scopurilor, regulile de constituire si functionare a echipei sunt: - definirea clara a funcfiei fiecdrui component al echipei si a relafiilor dintre membrii ei; ° D.Oprean,M.R.Abdel- TI&C: Proiectarea de tehnologii informafional-decizionale, Ed, Risoprint, Cluj-Napoca, 2001, pag. 17-19 - existenta unui conducator tehnic permanent, ca sef de proiect, in persoana proiectantului sau a programatorului- sef; ~ facilitarea controlului administrativ, inclusiv privind consumurile si cheltuielile angajate in finalizarea proiectului; = simplificarea comunicarii cu echipele extee si alegerea unui limbaj adecvat de comunicare (cum ar fi, spre exemplu, diagramele de flux informational, descrierile in pseudo- cod sau tabelele de decizii si organigramele); ~ evitarea situatiilor de impas in luarea deciziilor; = repartizarea sarcinilor pentru fiecare membru al echipei pe baza definirii riguroase a responsabilitafilor; - informarea periodic asupra stadiului de realizare a produsului informatic; - evaluarea lejer a efortului depus de membri; -disciplina riguroas’ in proiectarea, programarea si implementarea proiectului. Echipa este alcdtuitd , in principal, din proiectantul (programatorul) - sef, proiectantul / programatorul - verificator (locfiitor), secretar si proiectanti / programatori. Ea este direct rispunzatoare pentru realizarea proiectirii tehnice (de detaliu), a programarii si a integririi proiectelor / produselor informatice. 2). Echipa proiectantului / programatorului-sef revizuita. jmprumutand avantajele altor tehnici, principalele obiective vizate in echipa proiectantului / programatorului-sef revizuita sunt: - disciplinarea muncii ca gi in cazul echipei proiectantului/programatorului- sefs - specializarea pe funcfii, cum se procedeaza in cadrul echipelor chirurgicale; ~ partajarea sarcinilor intre membrii echipei, ca si in cazul organizarii democratice a programarii. Aceste obiective fac ca tehnica sé aiba un caracter integrator al celorlalte tehnici organizationale ceea ce implic& necesitatea ca managerul de proiect s& aiba responsabilitate si autoritate in conducerea echipei, fara ca aceasta si impund neaparat si posedarea unor calitati de super- specialist (programator), asa cum impune tehnica proiectantului / programatorului- sef. Aplicarea acestei tehnici presupune: = formalizarea organizarii procesului de realizare prin definirea clara si coerenti a sarcinilor de executie tehnologica pe membri ai echipei; - stabilirea legiiturilor de comunicare dintre echipa de conducere - utilizatori si echipa de integrare $i intretinere a proiectului/produsului informatic; = crearea unui mediu de lucru deschis in procesul aplicarii tehnologiei informationale si de comunicare; 12 - verificarea produselor intermediare si accentuarea controlului pe stadii de realizare; - evitarea dependentei procesului de realizare a produsului in ansamblul séu de realizarile individuale. Echipa este constituitd din managerul de proiect, locfiitor, persoana care asigura legitura cu utilizatorii, administratorul proiectului si proiectanti / programatori. Optional, din echipi face parte si un editor specializat in claborarea de documentatii. Echipa se poate diviza in colective pentru proiectarea de tchnologii si produse informatice si pentru codificarea- testarea de produse, astfel incat s& se furnizeze solutia organizatorica la nivelul intregului ciclu de realizare a sistemului, Prin modul de definire si de aplicare, tehnica echipei proiectantului / programatorului-sef revizuita imbin& conducerea administrativa cu cea tehnologica. 3). Echipa chirurgicali. Echipa este aledtuita din specialisti de inaltai clasd, sprijinifi in munca lor de un administrator, un editor si unul sau doi secretari, Fiecare specialist are un nume in concordant cu functia detinuta in echipa: instrumentist, grafician, capitan”, testator, specialist in limbaj, specialist in comunicatii etc. Tehnica tsi propune: ~ definirea clara a responsabilitafilor profesionale pe componenti ai echipei; ~ recunoasterea fiecdirui membru al echipei ca un expert in domeniu; “recunoasterea importanfei legiturilor de comunicare in echipa si specializarea lor completa si consistent’; ~ asigurarea comunicarii cu alte echipe printr-un membru, desemnat ca si co- pilot; ~ asiguratea unei documentaii de calitate (prin co-pilot). Tehnica echipei chirurgicaie se aplicd in etapele de proiectare tehnicé si programare. Ea imbin& armonios sarcinile conducerii administrative cu cele de realizare a produsului, crednd un climat de responsabilitate a membrilor, o disciplind si o manierd de lucru unitare. 4). Organizarea democratica a proiectiril / programarii. in aplicarea tehnicii, principiile de lucru sunt: - colaborarea democratic, de pe pozifii de egalitate, intre tofi membrii echipei; ~ verificarea specificatiilor de realizare a fiec&rui parti de proiect / produs- program de cétre un membru al echipei, diferit de cel care le-a elaborat, inainte de codificarea (programarea) produsului; ~ pattajarea efortului de programare intre tofi membrii echipei, in vederea depistarii la timp a eventualelor erori; - folosirea unor metode de lucru unitare care si faciliteze comunicarea; 13 - ridicarea continua a nivelului de pregatire a echipei prin invatarea de noi metode, tehnici gi algoritmi de solutionare a problematicii; - rotafia membrilor la conducerea echipei. Echipa este aleatuitd dintr-un numér restrans de membri. Tehnica se aplicd la proiectarea, codificarea $i testarea programelor, necesare finalizarii proiectelor. Ca dezavantaj, se remarcé dificultatea de a defini clar sarcinile fiecdrui membru in cadrul echipei; de asemenea, in aplicarea tehnicii apar dificultati in comunicarea cu alte echipe si pot interveni controverse intre membrii echipei datorita lipsei unui responsabil permanent. 5). Echipe organizationale”’. Dupa anul 1990 s-au dezvoltat aplicafii in refele de calculatoare care permit echipelor de Iucru multidisciplinare manageri- personal responsabil de gestionarea resurselor umane- informaticieni sA realizeze un model organizational nou de informare si comunicare utilizand instrumente de lucru, cum sunt: mesageria electronica, edititi multiutilizator, discutii de grup, conferinte electronice 5.2. Echipele organizationale igi propun: ~ noi dimensiuni tehnico-economice ale comunicéirii, cam sunt: eliminarea barierelor de comunicare temporale gi spatiale, practici flexibile de munca, sporirea productivitatii capitalurilor investite, in special a celui uman prin managementul bazat pe cunostinfe, cresterea responsabilitatilor bazate pe competenfi si autoritate, imbunatitirea controlului execufiei sarcinilor, flexibilitatea structurilor si a tehnologiilor aplicate 5.a. - sporirea culturii intreprinderii prin: identificare om - organizatie, cooperare+solidaritatetcolaborare, crearea unui climat de incredere si implicare, interes sporit in cunnoasterea gi promovarea obiectivelor organizatiei, cresterca valorii muncii depuse de fiecare, a randamentului capitalului imaterial etc. = asigurarea unui nou climat social prin: cresterea satisfacfiei in munca, cresterea salariilor, reducerea izolarii, posibilitati de instruire continua, sdnatate si siguranta in munca mai bune, aplicarea principiilor ergonomic in munca, utilizarea mai eficienta a (sub)echipelor de lucru etc. Realizarea dezideratelor de genul celor menfionate presupune valorificarea strategiilor si a tacticilor organizafiei in contextul proiectarii si a reproiectirii tehnologiilor de informare si comunicare informatizate. Ca si consecinge ale utilizirii echipelor de lucru, se remarca: valorificarea strategiilor organizationale prin reproiectarea structurilor organizatorice (re-engineering), formarea de echipe autonome de lucru si acces imediat la informafii cu caracter critic asupra "© Fotache D.- Groupware-Metode, tehnici si tehnologii pentru grupuri de lucru,Ed. Polirom, Iasi, 2003 4 sistemului; reducerea costurilor interme gi a timpilor de lucru, ameliorarea si diversificarea serviciilor cditre clienfi s.a. Din continua preocupare pentru specializare si performante, rezulti agenfi inteligenti, ca utilizatori eficienti ai inteligenjei artificiale cu caracteristicile: isi adapteazi comportamentul in functie de caracteristicile mediului tn care functioneazd, “memoreazi” experienta dobandita, se comporté ca un subsistem capabil de intelegere, “imbogateste” sistemul in care functioneazi, utilizind functii automatizate privind tratarea informatiei etc. Astfel de agenfi pot fi: sociabili care invata “gusturile” utilizatorilor, de cautare a informatiei dorite, pentru “navigari” in baza informationala dupa criterii utilitare, ghizi 5.2. Pentru programarea, organizarea $i controlul deruldrii lucratilor de analiza, proiectare, programare si integrare a unui proiect sunt uzuale tehnicile si metodele de coordonare activitatilor mentionate (tehnica Gantt; metoda drumului critic; metoda PERT 5.a.). Indiferent de metodele si / sau tehnicile folosite, managementul prin proiecte poate fi mijlocul de inifiere $i finalizare a unor proiecte viabile, eficace care s& asigure realizarea unor performate superioare, benefice pentru proiectanfi si beneficiari. 3.3. Elaborarea si integrarea aplicatiilor informatice in actiunile de informatizare a societifilor comerciale, managementul prin proiecte'’ presupune ca, dupa stabilirea echipei de lucru, a actiunilor principale de exercitat si a calendarului (programului) de esalonare a utilizdirii resurselor, sit se vealizeze proiectarea $i programarea aplicagiilor informatice necesare automatizdrii proceselor informational-decizionale. De altfel, prin modul de concepere, un program informatic rezultat poate fi asimilat unui produs de naturi industrial a cirei concepere si lansare in fabricafie trebuie precedate de proiectarea in detaliu a produsului sia tehnologiei specifice de realizare si pregatirea condifiilor de productie. Prin urmare, a realiza un project informatic inseamnd, in esenti, elaborarea specificatiilor de proiectare tehnica a produsuluii informatic pe baza cdérora urmeazit finalizarea acestuia prin acfiunile de scriere, testare $i integrare a programelor. ‘Bazati pe rezultatele analizei contextului informatizarii si a proiectitii conceptuale de ansamblu, proiectarea tehnic& presupune delimitarea si agoritmizarea prelucrarilor, in concordant cu cerinfele de informare gi de decizie. Un algoritm, ca numér finit de operatii necesare realizirii unei functii, activititi sau lucriri ale tehnologiei "" Oprean V., Oprean D., IT&C: Managementul prin proiecte,in Tribuna economicd,nr. 47/2004, pag. 20-22 1s informafional- decizionale poate fi descris prin arbori de programare (scheme logice), in pseudo- cod sau cu ajutorul tabelelor de decizii"”. 3.3.1. Algoritmizari si activitati de proiectare procedurale Pe baza analizei de sistem a unei firme sau activititi complexe, echipa de proiect delimiteazd clasele de entitati, ca fisiere / tabele principale si secundare necesare automatizarilor, precum si procedurile si modulele de concreticare a tehnologiei informatice. De pildi, pentru activitatea financiar- contabilé a unei societiti comerciale clasele de entititi distinctive pot fi: planul de conturi propriu (conturile sintetice si desfigurarea lor pe analitice, soldurile initiale si, eventual, sumele precedente debitoare si creditoare), registrele- jurnal pe categorii de operafii (Cumparari, Vanzti, Decontiti cu banca, Operatii prin casierie, Operafii diverse $.2.) care reflect tranzactiile unei perioade, terfi (Furnizori, Clienti, Angajati) cu care firma are relafii economico- financiare, documente gi articole contabile uzuale etc.; pentru fiecare figier aferent trebuie prevazute procedurile si modulele de tratare a informatiei, cum sunt: culegerea si validarea datelor, actualizarea periodic’ a fisierelor (prin adaugari, modificari si stergeri de inregistrari), pentru prelucrari conforme reglementirilor cu caracter normativ si pentru a raspunde la cererile de informare si fundamentare a deciziilor. Corespunzitor schemei de sistem (organigramei) a ansamblului prelucrarilor prefigurate, algoritmul de integrare a prelucrérilor unei aplicafii poate fi dat de ‘meniul principal de integrare a procedurirlor care presupune descrierea ecranului, a formularelor de culegere a datelor si a obiectelor necesare (butoane, casete de dialog, liste de optiuni etc.) exploatdtrii ulterioare a programului aferent meniului. De exemplu, intr-o abordare simpla, daci la o societate comercial oarecare ne propunem elaborarea specificafiilor pentru procedura de creare si actualizare a fisierului privind Planul de conturi al firmei, atunci definirea algoritmului, aferent procedurii integratoare a principalelor prelucrari, P_meniu, necesar gestionétii fisierului principal F_conturi presupune: -stabilirea procedurilor meniului de gestionare a figicrului, cum ar fi: P_creare pentru crearea structurii figierului (simbol cont, denumire cont, functie contabila, sold iniial, sume cumulate) si popularea ei cu datele initiale din balanta contabili a lunii precedente; P_adaug pentru adiugarea de noi atribute si date fisierului initial; P_modific de actualizare a datelor confinute in figier la un moment dat; P_vizor de vizualizare a unor valori dorite de utilizatori; P_list de extragere la imprimant& a unor rezultate (Fige de cont cu solduri si sume la un moment dat, balanfe de verificare, Vaduva L., Programare structurati, Ed. Tehnic&, Bucuresti, 1986, anexe 116 rulaje etc.); P_intrdri pentru actualizarea fisierului F_conturi cu datele_privind conturile noi (similar P_iesiri pentru eliminarea inregistrarilor relative la conturi care nu se mai utilizeazai) 5.2.; -definirea unei variabile de lucru prin cate s& se asigure identificarea $i integrarea optiunilor aplicatiei si incheierea prelucriirilor. De pilda, prin valorile unci variabile ,,conditie-de-sfargit”- csf - 1a intrebarea adresaté _utilizaturului Continuati?[D/*]”, sugerdnd in parantezele patrate valorile de raspuns posibil (D- da;*-orice alt raspuns insemnand nu) se poate da posibilitatea, ca in aceasi sesiune de lucru, s& se execute mai multe opfiuni (adiugari, modificari, operare intrari etc.); printr-o variabila, numité Opfiune, se poate detecta solicitarea utilizatorului la o prelucrare: daci Optiune = ‘1’ atunci executi P_creare...daci Optiune = ‘7’ atunci executa P_iesiri; -elaborarea algoritmului aferent procedurii P_meniu. in pseudo-cod algoritmul se poate descrie astfel: Start *procedura P_meniv executii (modulul) M_ecran esf="d’ (inifializare variabila de lucru) Optiune=’ * execut (modulul M_meniu) pana cénd esf=’d? introduceti (selectati o valoare) Opfiune Daca Optiune="1’ execut P_creare Daca Optiune: execut P_iesiti in caz contrar (Daca nu este tastati o valoare din cele admise) Afiseaza.,,tastati una din valorile meniului” Introduceti esf Sfargit_executa Afiseazi ,,sfarsit normal” Stop *modulul Mecran »Procedura de gestionare a figierului privind conturile” »Opfiunile meniului sunt: 1. creare figier,...,7. operare elimin&ri conturi” La incheierea prelucrarilor tastafi orice valoare diferita de d” Revenire (in P_meniu) Intr-o variant simpli de programare clasic& in mediul FoxPro (avand in vedere ci interpretorul FoxPro recunoaste primele patru caractere ale cuvintelor 47 limbajului, urmatoarele fiind facultative si cA dupa simbolurile && sunt inserate comentarii explicative), procedura aferent& algoritmului este urmatoarea: MODI[FY] COMM[AND] P_meniu &&apelare a editorului pentru crearea figierului cu &Sprogramul-sursi(de transpunere a algoritmului &é&in comenzi si instrucfiuni ale limbajului) CLEAR &inifializare ecran SET TALK OFF &8canulare dialog in timpul executiei DOM ecran &&execut modul pentru mesaje pe ecran esd? Opfiune=’ ° DO WHILE esf='d’ @5,15 TO 20,65 DOUBLE &&din linia 5,coloana 15 pana in 20,65 se creazi un chenar cu linie dubla @6,17 Prompt ‘1 creare fisier’ & &afigare prompter ecran 1 creare figier @13,17 Prompt ‘7 operate elimin’ri conturi? MENU TO Optiune &&plasarea meniuluii descris in variabila Opfiune DO CASE CASE Opfiune="1’ DOP creare CASE Optiune="7" DOP iesiri OTHERWISE WAIT ‘tastafi una din cifrele de la 1 la 7’ TIMEOUT 2 ENDCASE @19,20 SAY ‘Continuati?{d/*]’ GET esf PICT[URE] *x’ &&descriere variabila est READ &&citire (tastare valoare) variabil& ENDDO ?°sfarsit normal’ &&afigarea mesajului pe randul urmator al ecranului RETURN PROC[EDURE] M_ecran &&modul sau subprogram de deseriere a ecranului @2,10 SAY ‘Procedura de gestionare a fisierului privind conturile” @3,10 SAY ‘Optiunile meniului sunt: 1. Creare fisier conturi...” 118

You might also like