Magazin Virtual Folosind Php Si Mysql
Cuprins
Cuprins
Capitolul 1 Studiul și analiza sistemului existent
1.1. Prezentarea succintă a societății și identificarea domeniului aplicației
1.2. Activitățile desfășurate în unitatea economică
1.3. Studiul sistemului de conducere
1.4. Studiul sistemului condus
1.5. Studiul sistemului informațional
1.6. Analiza critică a sistemului existent
1.7. Direcții de perfecționare
1.8. Spațiul virtual al afacerilor
1.9. E – commerce – componentă a procesului de e-business
1.10. Mijloace de plată în comerțul electronic
Capitolul 2 Proiectarea de ansamblu a sistemului informartic
2.1. Obiectivele sistemului formatic
2.2. Estimarea necesarului de resurse 2.3. Definirea situațiilor finale (ieșirilor) 2.4. Definirea intrărilor sistemului 2.5. Modelarea datelor și modelarea prelucrărilor 2.6. Tehnologia de prelucrare 2.7. Limbajul unificat de modelare – UML 2.7.1. Identificarea cerințelor
2.7.2. Analiza și proiectarea orientată obiect
Capitolul 3 Proiectarea de detaliu a sistemului informartic
3.1. Proiectarea logică și fizică a ieșirilor
3.2. Proiectarea logică și fizică a intrărilor
3.3. Proiectarea logică și fizică a bazei de date
3.4. Descrierea unor funcții utilizate în aplicație
Capitolul 4 Prezentarea produsului software
4.1. Structura magazinului
4.2. Implementarea aplicației
4.3. Testarea aplicației
Codul sursa
Bibliografie
Capitolul 1
Studiul și analiza sistemului existent
1.1. Prezentarea succintă a societății și identificarea domeniului aplicației
S.C. “VirtualPC” S.A. este o persoană juridică română, având forma juridică de societate pe acțiuni, cu doi asociați.
S.C. “VirtualPC” S.A. a fost înființată în februarie 2004 și înregistrată la Oficiul Registrului Comerțului sub nr. J001/0032004/04, cu sediul în București, Dristor, sector 3.
Obiectul principal de activitate al S.C. “VirtualPC” S.A. constă în distribuirea și comercializarea de produse IT în țară, intermedierea între producători și terți.
Societatea este organizată în patru mari departamente ce interacționează continuu între ele (Departamentul Ecomonic, Departamentul de Resurse umane, Departamentul de marketing și Departamentul Informatic), acestea divizându-se în subdepartamente specifice, după cum sunt illustrate ăn următoarea figură:
Conceptul de distribuție se referă, mai întâi, la "traseul" pe care îl parcurg mărfurile pe piață, până ajung la consumatori; producatorul, societatea de distribuție/vânzare și consumatorul – participanți la deplasarea succesivă a mărfurilor de-a lungul acestui traseu – alcătuiesc ceea ce în terminologia marketingului se numește "canal de distribuție".
Conceptul de distribuție se referă apoi la ansamblul operațiunilor (vânzare, cumpărare, concesiune, consignatie etc.) prin care se realizează transferul drepturilor de proprietate asupra mărfurilor, de la un agent de piață la altul, până la intrarea lor definitivă în sfera consumului. El include, totodată, lanțul proceselor operative la care sunt supuse mărfurile în traseul lor spre consumator, respectiv, distribuția fizică a produselor finite.
Noțiunea de distribuție se mai referă, în al treilea caz, la aparatul tehnic – rețea de unități, dotări, personal – care realizează asemenea procese și operațiuni.
Obiectul activității de distribuție îl formează produsele finite/mărfurile (bunuri sau servicii), fluxul lor neîntrerupt de la producător până la consumator.
În economia modernă, producția și consumul nu mai sunt posibile fără prezența distribuției, astfel că sectorul comerțului cuprinde ansamblul societăților care au ca activitate principală distribuția.
Poziționată între producătorii care realizează produse și servicii, și consumatorul care caută să-și satisfacă nevoile, distribuția este tocmai cea care permite punerea la dispoziția consumatorilor a produselor și serviciilor în cauză, utilitatea ei economică constând în facilitarea circulației produselor finite și informațiilor.
S.C. “VirtualPC” S.A. a comandat o analiză exigentă a sistemului informațional existent pentru a se pune bazele unui sistem informatic modern, care să permită automatizarea și mai ales, eficientizarea și rentabilizarea activității de distribuție a produselor finite.
Prin realizarea sistemului informatic pentru vânzarea produselor finite în sistem on-line, S.C. “VirtualPC” dorește să valorifice la maximum oportunitățile pieței de desfacere, astfel încât mărfurile distribuite prin intermediul său să ajungă la consumatorii și la utilizatorii finali în siguranță și în condițiile cele mai eficiente. Se dorește, de asemenea, un sistem de evidență corect, operativ și eficient al tuturor activităților pe care le presupune distribuția și vânzarea produselor.
1.2. Activitățile desfășurate în unitatea economică
Obiectul principal de activitate al firmei îl reprezintă activitatea de distribuție, prin care se urmărește asigurarea livrării produselor finite către clienți în următoarele condiții, care, de altfel, sunt și componentele calității: produsele trebuie să ajungă la clienți în stare bună, în cantitatea comandată, la locul stabilit și la timpul stabilit.
Prin dezvoltarea unei rețele proprii de canale de distribuție,dacă firma are această putere, ea poate să-și păstreze astfel controlul deplin asupra prețului de distribuție/vânzare și a cantităților vândute, prin contactul direct (chiar și cel virtual) cu cumpărătorii. În general, prețul de distribuție este stabilit de societăți în funcție de condițiile specifice pieții respective, iar firma care face apel la societățile de distribuție (daca nu este o societate care să producă și să-și desfacă propriile produse finite) le plătește acestora un comision sau le asigură, într-o altă formă, prin contract, participarea directă la afacere.
Obiectivele activității de distribuție se orientează atât după beneficiarul final, cât și după societățile comerciale asociate – fiind împărțite în trei categorii:
Obiectivele de distribuție orientate economic, care sunt:
cantități ale distribuțiilor,
cifre de afaceri;
contribuții de acoperire;
cotele de piață;
fixarea nivelului de pret;
costurile de distribuție.
Obiectivele de distribuție orientate spre aprovizionare, care sunt:
gradul de distribuție (numeric, ponderat);
atitudinea de preconsiliere a comerțului (a stocului disponibil);
timpul de livrare;
disponibilitatea de livrare;
seriozitatea livrării.
Obiectivele de distribuție orientate psihologic, care sunt:
imaginea canalului de distribuție;
calificarea consilierii;
disponibilitatea de cooperare a comerțului.
Obiectivele de distribuție pot avea atât importanță strategică (de exemplu, imaginea canalului de distribuție), cât și importanță operativă(de exemplu, creșterea pe scurtă durată a cifrei de afaceri).
Stabilirea canalelor de distribuție și formularea strategiei și tacticii referitoare la distribuția fizică, respectiv logistica produselor distribuite, face parte din elaborarea politicii de distribuție a firmei, contribuind la înfăptuirea obiectivelor sale de marketing.
Derularea contractului:
Baza pentru un flux fără obstacole al proceselor logistice este îndeplinirea sarcinilor. Aici este necesară o cuprindere sistematică a datelor referitoare la îndeplinire:
datele sarcinii, cum ar fi: cantități, prețuri, termene de livrare, numărul clienților și sarcinilor etc.
proceduri de îndeplinire, cum ar fi: confirmarea sarcinii de îndeplinit, efectuarea calculelor și facturilor, statistici etc.
Prelucrarea comenzilor:
Activitatea logistică începe cu primirea unei comenzi din partea clientului. Comenzile pot fi trimise în mai multe moduri – prin poștă sau telefon, prin agenți de vânzări sau prin intermediul calculatorului și al schimburilor electronice de date (S.E.D.).
Modulul de procesare a comenzilor din cadrul sistemului de distribuție pregătește facturile și trimite informații referitoare la comandă către cei care au nevoie de ele.
Mărfurile expediate sunt însoțite de documente de transport și de facturi, în timp ce copii ale acestor documente vor fi trimise mai multor departamente ale firmei.
Depozitarea:
Depozitarea este apreciată de multe societăți de distribuție exclusiv drept o problemă de costuri.
La nivelul activității practice, se pot identifica trei tipuri de depozite: depozite de provizii (sunt amenajate în societăți); depozite de mutare (există doar la transportatori); depozite de livrare (sunt în apropierea beneficiarilor finali sau în centrele comerciale).
Stocarea:
Nivelul stocurilor influentează, de asemenea, satisfacția clientului. Problema de bază constă în găsirea unei soluții de mijloc: nici stocuri prea mari, dar nici stocuri prea mici.
Stocurile exagerat de mari determină costuri de depozitare ridicate și contribuie la uzura morală a a produselor aflate în stoc.
Stocurile mai mici decât cele necesare conduc la o penurie de produse, la cheltuieli de urgență pentru expedierea mărfurilor, precum și la nemulțumirea clienților.
În luarea deciziilor legate de stocuri, conducerea firmei trebuie să pună în balanță costurile necesare menținerii unor stocuri mai mari cu vânzările și cu profiturile care vor rezulta din aceste stocuri.
Transportul:
Decizia asupra mijloacelor de transport se ia prin metoda de comparație costuri-performanțe. Costurile relevante (totale sau parțiale) trebuie comparate cu criteriile de performanță (timp de transport, siguranța livrării, adecvarea calitativă și cantitativă a mijlocului de transport pentru performanța programată a societății distribuitoare, distanța geografică, etc).
1.3. Studiul sistemului de conducere
Sistemul de conducere din cadrul S.C. “VirtualPC” este alcătuit din:
directorul general
Atribuții:
primește rapoarte zilnice de la ceilalti directori pe care îi are în subordine;
coordonează activitatea firmei în plan general și stabilește direcțiile de dezvoltare;
ia decizii privind angajarea/demiterea salariațiilor.
Obligații:
asigură buna funcționare a firmei;
prin contractul pe care îl are, se obligă să realizeze trimestrial valori
corespunzătoare ale indicatorilor de performanță economică: mărirea volumului de export, creșterea vânzărilor interne, deschiderea de noi magazine.
director department resurse umane
Atribuții:
negociază și încheie contractele de muncă cu angajații în baza unor discuții purtate cu Directorul General;
operează în carnetele de muncă evoluția salariilor;
întocmește și eliberează adeverințe pentru diverse nevoi ale salariaților;
colaborează și raportează periodic Oficiului Teritorial de Muncă evoluția mișcărilor de personal din societate;
întocmește rapoarte lunare pentru Oficiul de Șomaj, Casa de Pensii, Casa de Asigurări de Sănătate.
Obligații:
raportează Directorului General evoluția personalului și a fondului de salarizare;
solicită aprobări cu privire la acordarea de prime.
director economic
Atribuții:
verifică și semnează bilanțul contabil, înscrierile în contul de Profit și Pierdere;
întocmește lunar situația indicatorilor economici.
Obligații:
raportează Directorului General situația economică a firmei;
susține și reprezintă firma în fața controalelor de la Administrația Financiară sau Garda Financiară
director de marketing
Atrță costurile necesare menținerii unor stocuri mai mari cu vânzările și cu profiturile care vor rezulta din aceste stocuri.
Transportul:
Decizia asupra mijloacelor de transport se ia prin metoda de comparație costuri-performanțe. Costurile relevante (totale sau parțiale) trebuie comparate cu criteriile de performanță (timp de transport, siguranța livrării, adecvarea calitativă și cantitativă a mijlocului de transport pentru performanța programată a societății distribuitoare, distanța geografică, etc).
1.3. Studiul sistemului de conducere
Sistemul de conducere din cadrul S.C. “VirtualPC” este alcătuit din:
directorul general
Atribuții:
primește rapoarte zilnice de la ceilalti directori pe care îi are în subordine;
coordonează activitatea firmei în plan general și stabilește direcțiile de dezvoltare;
ia decizii privind angajarea/demiterea salariațiilor.
Obligații:
asigură buna funcționare a firmei;
prin contractul pe care îl are, se obligă să realizeze trimestrial valori
corespunzătoare ale indicatorilor de performanță economică: mărirea volumului de export, creșterea vânzărilor interne, deschiderea de noi magazine.
director department resurse umane
Atribuții:
negociază și încheie contractele de muncă cu angajații în baza unor discuții purtate cu Directorul General;
operează în carnetele de muncă evoluția salariilor;
întocmește și eliberează adeverințe pentru diverse nevoi ale salariaților;
colaborează și raportează periodic Oficiului Teritorial de Muncă evoluția mișcărilor de personal din societate;
întocmește rapoarte lunare pentru Oficiul de Șomaj, Casa de Pensii, Casa de Asigurări de Sănătate.
Obligații:
raportează Directorului General evoluția personalului și a fondului de salarizare;
solicită aprobări cu privire la acordarea de prime.
director economic
Atribuții:
verifică și semnează bilanțul contabil, înscrierile în contul de Profit și Pierdere;
întocmește lunar situația indicatorilor economici.
Obligații:
raportează Directorului General situația economică a firmei;
susține și reprezintă firma în fața controalelor de la Administrația Financiară sau Garda Financiară
director de marketing
Atribuții:
primește rapoarte zilnice cu privire la evoluția pieței;
analizează realizările serviciului de aprovizionare cu privire la produsele noi intrate în portofoliu;
coordonează în mod direct Serviciul Informatic.
Obligații:
raportează Directorului General situația vânzărilor, realizările Departamentului Informatic cu privire la evoluția sistemului informatic;
întocmește rapoarte zilnice despre evoluția vânzărilor și realizările tuturor compartimentelor, pe baza constatărilor și a rapoartelor pe care le primește de la departamentele aflate în subordine.
1.4. Studiul sistemului condus
Sistemul de conducere din cadrul S.C. “VirtualPC” este alcătuit din:
serviciul financiar – contabil
șef serviciu (1 angajat)
Atribuții:
întocmește lunar rapoarte de activitate;
întocmește Balanța deverificare și situațiile de informare-raportare cu privire la activitatea economico-financiară.
Obligații:
analizează zilnic bugetul de venituri și cheltuieli;
asigură înregistrarea corectă și cronologică a tuturor achizițiilor de produse finite;
raportează Directorului economic situația contabilă;
se conformează reglementărilor financiar-contabile apărute în Monitorul Oficial.
personal serviciu (1 angajat)
Atribuții:
urmărește buna încasare a obligațiilor de plată de la clienți;
planifică și onorează obligațiile față de terți;
întocmește Registrul de Casă zilnic pentru operațiile de plăți și încasările în numerar;
pe baza Fișei de Pontaj lunare, primită de la Departamentul Resurse Umane, întocmește ștatele de plată;
înregistrează zilnic în contabilitate operațiunile cu privire la aprovizionarea-distribuirea de produse finite, mijloace fixe, obiecte de inventar;
înregistrează în contabilitate amortizările mijloacelor fixe, uzura obiectelor de inventar etc.
Obligații:
raportează Directorului Economic situația financiară curentă;
înregistrează în evidențele contabile extrasele de cont ridicate zilnic de la bancă, unde sunt evidențiate încasările și plățile cu ajutorul mijloacelor de plată electronice;
urmărește și înregistrează încasările de la clienți.
gestiunea (1 angajați)
Atribuții:
întocmește N.I.R. pentru mărfurile achiziționate;
întocmește Fișa de magazie pentru fiecare produs;
transmite zilnic stocul de mărfuri disponibil.
Obligații:
raportează Directorului economic și Directorului de vânzări situația stocurilor de mărfuri;
întocmește situații cu privire la stocurile greu vandabile.
department vânzări (4 angajați)
Atribuții:
prelucrarează comenzile primite de la clienți;
gestionează comenzile clienților, de la înregistrarea precomenzii transmise de client, parcurgerea etapelor interne de verificare și analiză a cererii, până la centralizarea comenzile pe fiecare client în parte, în cadrul Fișei clientului;
totalizează comenzile la finele zilei curente, operând scăderea din stocuri a fiecărui produs;
mediază negocierile și dialogul între clienți și factorii decizionali din firmă.
Obligații:
raportează directorului de marketing evoluția comenzilor clienților;
solicită Directorului de Marketing aprobare pentru acordarea de termene de plată flexibile, în funcție de particularitățile fiecărui client;
lansarea în execuție a comenziIor;
anularea comenzilor/precomenzilor;
gestiunea corespunzătoare a procesului de distribuție.
departament transport(2 angajați)
Atribuții:
are ca personal șoferi care se ocupă cu distribuirea propriu-zisă a mărfurilor către clienți.
Obligații:
Distribuirea la timp a mărfurilor și în stare perfectă.
departament aprovizionare(2 angajați)
Atribuții:
achiziționează mărfuri destinate vânzării în funcție de comenzile primite de la Departamentul de Vânzări;
analizează prețurile comenzilor și negociază termenele de plată.
Obligații:
emite documentele de plată la chizițiile de mărfuri, documente înscrise într-un registru special care este transmis zilnic Serviciului Financiar-Contabil pentru ca sumele tranzacționate să poată fi ulterior incluse în Bugetul de venituri și cheltuieli.
departament informatic(2 angajați)
Atribuții:
realizează programe de urmărire a comenzilor clienților;
în caz de necesitete achiziționează echipamente pentru noile sisteme;
informatizează – prin sistemele informatice realizate – activitatea de bază a societății, automatizând și eficientizând întreg lanțul economic: aprovizionare – stocare – transport – distribuție mărfuri.
Obligații:
asigură buna funcționare a sistemului informatic în firmă;
răspunde de punerea în aplicare a tuturor soluțiilor informatice stabilite de conducere.
1.5. Studiul sistemului informațional
Pentru executarea activităților de bază ale procesului decizional: planificare, urmărire, control și decizie, sistemului de conducere îi sunt necesare informații despre starea și evoluția sistemului de execuție, despre legăturile acestuia cu exteriorul. De la sistemul de conducere spre sistemul condus vor circula decizii Acest circuit de informații și decizii reprezintă un proces permanent care se realizeaza prin existența sistemului informațional.
Prin sistemul informațional se pot cunoaște, la timp și în cantități necesare, toate elementele de caracterizare a activităților desfășurate, el cuprinzând fondul de informații, tehnicile de colectare și stocare, mijloacele și metodele necesare în vederea prelucrării și transmiterii informațiilor. Deci, sistemul informațional este un ansamblu de fluxuri și circuite informaționale organizate într-o concepție unitară. El utilizează modele, proceduri, resurse umane și materiale pentru colectarea, înregistrarea, prelucrarea, stocarea și/sau transmiterea datelor și a informațiilor, prin intermediul cărora asigură interconexiunile informaționale dintre sistemul de conducere și sistemul condus, dintre elementele componente ale acestor sisteme, dintre organismul social economic pe care îl servește și mediul social economic extern.
Un sistem informațional reprezintă deci un ansamblu de oameni, echipamente, software, procese și date destinate să furnizeze informații active sistemului decizional, informații necesare în elaborarea de soluții pentru problemele cu care se confruntă managerii agenților economici.
În funcție de mijloacele și procedeele utilizate pentru executarea operațiilor, acestea pot fi grupate în proceduri manuale, proceduri automate, proceduri mecanizate sau mixte. În cazul când metodele, procedurile și mijloacele utilizate pentru colectarea, înregistrarea, prelucrarea, stocarea și/sau transmiterea datelor și a informațiilor sunt cu preponderență automatizate, sistemul informațional devine un sistem informatic.
Fig.2. Interdependența subsistemelor informaționale în firmă
Fluxul documentelor
Descrierea procedurilor
În cadrul activității de aprovizionare – distribuție se disting următoarele proceduri/operații identificate din fluxul documentelor:
Trimiterea cererii de ofertă către potențialii furnizori sau a condițiilor contractuale încheiate cu un furnizor existent;
Se primesc oferte de produse de la furnizori pe baza contractului/cererii de oferte;
Se examinează ofertele în cadrul departamentului de Marketing;
Transmiterea listelor de opțiuni cu produsele de interes din oferte către departamnetul de Aprovizionare;
Centralizarea listelor de către departamentul de Aprovizionare;
Se transmite cererea de achiziție către furnizor;
Furnizorul completează Factura și livrează marfa;
Gestiunea întocmește Nota de Intrare Recepție la primirea mărfii;
Gestiunea completează Fișa de stoc pentru fiecare produs;
Se înregistrează documentele în departamentul Financiar – Contabil;
Clientul formulează cererea de ofertă;
I se răspunde cu lista de oferte;
Clientul formulează o comandă;
Pe baza comenzii, la vânzarea produselor cerute, se facturează atunci când s-a stabilit termenul de plată, sau se completează un aviz de expediție, când nu s-a stabilit termenul de plată;
Documentele sunt înregistrate în departamentul Financiar – Contabil;
Se emit bonuri fiscale pentru marfa vândută;
Bonurile fiscale se înregistrează în departamentul Financiar – Contabil.
Principalele documente utilizate în cadrul activității comerciale sunt:
Cererea de produse este documentul completat de firmă către furnizor sau de către client către firmă și cuprinde produsele ce vor fi comandate;
oferta este o listă a produselor deținute de firmă și destinate comercializării, specificându-se prețurile aferente unei unități de produs, descrierea produsului, condițiile de livrare și de plată;
comanda este o listă a produselor cerute unui furnizor, în care se specifică produsul, unitatea de masură, cantitatea, prețul de achiziție, valoarea fără TVA și cu TVA și data solicitată pentru livrare;
bonul fiscal este un document intocmit la vânzarea produselor, în care se specifică datele societății, numărul documentului, date despre produs și valoarea sa;
facturi fiscale ce conțin denumirea furnizorului, datele cumpărătorului, denumirea produselor cumpărate, cantitatea, prețul unitar, valoarea produsului fără TVA, valoarea TVA-ului, valoarea produsului(elor) cu TVA, totalul de plată, adresa și datele firmei, termen de garanție;
nota de gestiune este un document de gestiune ce însoțește marfa și marchează schimbarea gestiunii, în care se specifică date despre produse, unitatea de măsură, cantitatea livrată, prețul unitar și valoarea produsului;
cererea de oferte este o exprimare scrisă către un furnizor, cu scopul obținerii de informații privind gama de produse pe care o deține și prețurile aferente, condițiile de livrare și de plată;
lista de cerințe este lista ce cuprinde toate produsele de care firma este interesată în achiziționarea de la furnizor, produse care vor fi comandate în cererea de produse;
contractul este un document legal încheiat de comun acord între două părți, prin care se stabilește obiectul contractului, condițiile și perioada pentru care este valabil contractul;
nota de intrare este un document de gestiune întocmit la primirea produselor în proprietatea societății, specificându-se numărul și data documentului, date despre furnizor, numărul comenzii, al avizului de expediție și al facturii, codul creditor, date despre produs și valoarea acestuia;
fișa de stoc este un document de gestiune a produselor din stoc, în care se specifică date despre produs cum ar fi intrările și ieșirile din stoc, cât și tipul și numărul documentelor pe baza cărora s-au făcut tranzacțiile.
1.6. Analiza critică a sistemului existent
În analiza activităților de distribuție a mărfurilor în cadrul S.C.”VirtualPC” s-au descoperit principalele deficiențe :
firma nu dispune pentru activitatea de distribuție de un sistem informatic pentru preluarea comenzilor de la clienți și stabilirea conținutului initial al precomenzii;
preluarea comenzilor se face prin deplasarea agenților de vânzari la clienți, aceasta necesitând foarte mult timp;
comenzile sunt prelucrate manual;
activitatea de distribuție prezintă per ansamblu o utilizare ineficientă, greoaie și fără perspective a tehnicii de calcul sau a procedurilor de control existente;
nu există o rețea de tip Intranet care să permită transferul on-line de informații și redactarea automatizată, rapidă și eficientă de situații de raportare, între Directorul General și subordonații firmei (prin care să se gestioneze corespunzător fluxul activității de distribuție);
nu există o rețea de distribuție prin intermediul Internetului, care să permită clienților vizualizarea produselor pe o pagină web și comandarea celor dorite on-line.
1.7. Direcții de perfecționare
Înlăturarea neajunsurilor descoperite prin analiza sistemului existent, presupune realizarea următoarelor activități:
se va avea în vedere dezvoltarea unei rețele Intranet, cu conectarea on-line a sistemelor de calcul din toate departamentele fiemei (pentru o bună comunicare, o rapidă informare și o analiză eficientă a datelor din sistem);
se va realiza o rețea on-line de sisteme de calcul pentru activitatea de distributie, prin care se fie preluate automat toate comenzile clienților, fără a mai fi necesară deplasarea agentului de vânzări la clienți și fără a se mai executa o actualizare manuală a datelor – pentru operațiile de adăugare, modificare, ștergere, listare date;
se vor realiza și gestiona direct printr-o rețea de calculatoare bine pusă la punct rapoartele finale către Directorul General – necesare pentru asistarea sau fundamentarea deciziilor și organizarea corespunzatoare a procesului de distribuție;
se va realiza un produs program de evidență a clienților și de gestiune a comenzilor pentru Departamentul Vânzări, care să includă urmatoarele aspecte:
se vor defini machete video de tip formular pentru preluarea tuturor clienților într-o tabelă, prelucrarea rapidă a datelor introduse, listarea acestora și gestiunea eficientă a beneficiarilor;
se va realiza o machetă video de tip formular pentru introducerea de bonuri de comandă;
se vor defini machete video de tip formular, pentru realizarea registrului de evidență a comenzilor și pentru evidența comenzilor pentru fiecare agent de vânzări;
se vor realiza situații de informare prin generarea de rapoarte, cum ar fi cele privind situația vânzărilor în fiecare zi, evidenta comenzilor achitate, situația comenzilor neachitate (și a clienților restanți) etc;
se vor defini interogări parametrizate care să permită informarea factorilor de decizie cu acele tipuri de informații care sunt necesare pentru fundamentarea actului decizional, în orice moment.
Proiectarea și realizarea unui sistem informatic modern, care să facă posibilă prezența firmei pe piața virtuală în mijlocul potențialilor săi clienți.
În urma propunerilor de dotare, firma va realiza pe de o parte achiziționarea unor calculatoare ca platformă hardware pentru noul sistem informatic, iar pe de altă parte, legatura la Internet, pentru a fi permanent conectată la pulsul pieței interne și externe privind produsele din domeniul de
interes.
Astfel, se propune în primul rând, proiectarea și realizarea unui site pe Internet, în care să fie prezentate toate produsele pe care le comercializează firma. Posturile de lucru vor fi conectate într-o rețea locală la nivelul compartimentului funcțional și la rețeaua de calcul a unității.
În spatele site-ului se va afla o bază de date și programele necesare pentru întreținerea acesteia, pentru interogările și prelucrările necesare sistemului de conducere pentru realizarea unui management mai bun. Aplicația care se va proiecta va ține evidența operativă a vânzărilor, va putea prelua direct comenzi de la potentiali clienti care, vizitând site-ul, găsesc aici produsele dorite.
1.8. Spațiul virtual al afacerilor
Evoluția globală a economiei actuale și dimensiunea internațională a gestiunii afacerii are, în acest moment de debut al secolului XXI, o importanță capitală. Un lucru este cert: în lumea plină de hățișuri a afacerilor, Internet-ul a schimbat mersul economiei și continuă să aducă noi modalități de desfășurare a business-urilor pe o piață tot mai pretențioasă.
Pentru ca o afacere să supraviețuiască astăzi, este necesar ca potențialii ei clienți să știe de existența acesteia. World Wide Web oferă o oportunitate unică, aceea de a permite lumii să afle despre existența companiei, despre produsele și serviciile pe care ea le oferă și dispune de mijloacele care permit clienților să comande produsele și serviciile pe care firma le oferă, toate acestea utilizând Internet-ul.
Un sondaj realizat la nivel european pe 7.662 de IMM-uri (micro, mici și mijlocii), a evidențiat că 85,3% dintre microfirme, 91% din firmele mici și 95% dintre firmele mijlocii au în dotare computere. De asemenea, 73% dintre microîntreprinderile investigate au conexiune la Internet.
În Romănia dotarea cu computere a firmelor se apropie de nivelul atins în Uniunea Europeană, dar procentul celor care au conexiune la Internet este sensibil mai mic decât cel înregistrat la nivel european. Aceasta este una dintre concluziile studiului realizat de Consiliul Național al Întreprinderilor Private Mici si Mijlocii din România (CNIPMMR) în lunile aprilie-mai 2005 pe un eșantion de 1.399 de IMM-uri ce activează în întreaga economie, din toate cele opt regiuni de dezvoltare ale țării. Studiul dat publicității arată că 81,90% dintre firmele autohtone au în dotare computere, 64,16% accesează Internet-ul, iar 56,51% utilizează e-mail-ul. Circa 27,97% dintre IMM-uri dețin site-uri proprii și 7,51% din întreprinderi recurg la vânzările/cumpărăturile on-line. Totuși, un procent destul de ridicat de IMM-uri (15,52%) nu dețin computere/site propriu și nu utilizează Internet-ul, e-mail-ul si vânzările/cumpărăturile on-line, in vreme ce 0,79% dintre firme folosesc alte componente IT, cum ar fi telefonia IP, programe de proiectare asistată sau Intranet-ul.
Amploarea pe care a luat-o Internet-ul în ultimii ani, a condus la apariția de noi termini, cum ar fi:
E-economia (economia digitală);
E-business (afaceri electronice);
E-commerce (comerț electromic);
E-auction (licitații electronice);
E-procuremment (achiziții electronice).
Desfășurându-se în spațiul virtual al Internet-ului, actorii economiei digitale sunt aceeași ca și în economia reală: vânzătorii, cumpărătorii, magazinele virtuale, produsele digitale.
Structura economiei digitale este detaliată pe patru niveluri și anume:
Infrastructura Internet – firmele care asigură infrastructura rețelei;
Aplicații Internet – serviciile și produsele care asigură infrastructura necesară desfășurării afacerilor pe Internet;
Intemediarii Internet;
Comerțul pe Internet.
Ultimele două niveluri sunt cele în care investițiile din nivelurile 1 și 2 sunt transformate în afaceri profitabile.
Totuși, în ciuda creșterii pe care o înregistrează numărul tranzacțiilor electronice, o parte a populației este destul de reticentă în a cumpăra de pe Internet, datorită incertitudinii relative în care te găsești atunci când nu ești fizic într-un magazin.
Noile tehnologii ale Internet-ului, cum sunt cele de Intranet și Extranet, reprezintă piste noi care merită exploatate și care aduc multiple beneficii celor care le implementează. Rețelele Intranet inaugurează o nouă generație a sistemelor informatice orientate în principal pe organizarea întreprinderii. Intranet-ul funcționează după aceleași concepte și protocoale care stau și la baza rețelei Internet, numai ca la un nivel mai redus, ca un WWW particular, pentru un grup de utilizatori, de obicei la nivelul unei firme. Dacă există informație partajată de mai multe Intranet-uri se utilizează noțiunea de Extranet. Diferența esențială între Internet, Intranet și Extranet (fig.1) se situează la nivelul drepturilor de acces la informații și la partajarea acestora.
Fig.3 Partajarea bazelor de date în contextul Internet/Intranet/Extranet
În toate cele trei categorii, vehicularea informațiilor se concentrează pe serviciul WWW, care în cazul Extranet și Intranet îmbracă forma unui WWW local și pe un client WEB (browser sau navigator). Așa cum se observă și din figura de mai sus, între Intranet-uri / Extranet-uri și Internet se interpun așa-numitul firewall, care este un serviciu de securitate, implementat pe diferite niveluri (între Intranet-urile mai multor grupuri de utilizatori, între Extranet și Intranet sau direct, între Intranet și Internet). Acesta are rolul de a filtra pachetele de date transmise în vederea reducerii riscului privitor la pătrunderi și la accese neautorizate pe nivelul respective, filtrarea mesajelor de e-mail, etc.
Afacerile derulate pe Web sunt asemănătoare afacerilor realizate într-o manieră tradițională: oferă posibilitatea de a vă prezenta potențialilor clienți sau parteneri, să afle cine sunteți, ce faceți, ce produse le puteți oferi și unde puteți fi găsiți. Prezența companiei pe Web, prin intermediul unui site are câteva avantaje clare comparativ cu deschiderea unui sediu fizic al firmei. Avantajele pot fi împărțite, în funcție de beneficiarul lor direct, în avantaje directe ale firmei, avantaje ale beneficiarilor produselor și serviciilor firmei și avantaje ale societății.
Principalele avantaje aduse activității firmelor de care diferitele tipuri de afaceri electronice sunt:
• Facilitează extinderea activității, asigurând acces rapid la piețele locale și naționale, dar mai important și la piețele internaționale;
• Scăderea costurilor cu desfășurarea activității firmei, în special acelea cu realizarea, procesarea, distribuirea, păstrarea și regăsirea informațiilor păstrate pe hârtie; în cazul afacerilor electronice sunt folosite soluții informatice, automatizate, pentru aceste activități;
• Creează posibilitatea modelării facile a produselor și serviciilor conform nevoilor cumpărătorilor;
• Costuri de comunicație, transport sunt mult reduse.
Avantajele consumatorilor sunt numeroase, dintre care sunt enumerate:
• Oferă posibilitatea consumatorilor să cumpere sau să efectueze tranzacții 24 h/zi, în tot timpul anului din aproape orice locație;
• Acordă consumatorilor mai multe posibilități de alegere;
• Cumpărătorii pot să aleagă mai ușor cel mai mic preț pentru un produs sau serviciu;
• Permite livrarea rapidă a produselor și/sau serviciilor (în unele cazuri);
• Consumatorii pot să primească informație relevantă într-un timp scurt: în câteva secunde și nu în zile sau chiar săptămâni cum este cazul în multe afaceri tradiționale;
• Face posibilă participarea la licitații virtuale;
• Facilitează competiția, ceea ce duce la scăderea prețurilor produselor și serviciilor;
• Permite consumatorilor să interacționeze cu alți cumpărători prin intermediul comunităților electronice, să schime impresii și să-și compare experiențele.
De asemenea, afacerile electronice aduc o serie de avantaje societății, printre care:
• Oferă posibilitatea mai multor persoane să lucreze de acasă și să cumpere de acasă, ceea ce poate duce, în timp, la scăderea traficului auto și la scăderea poluării;
• Anumite mărfuri pot fi vândute la prețuri mai mici, acest lucru avantajându-i pe cei cu venituri mai mici, contribuind astfel la protecția socială;
• Afacerile electronice contribuie la creșterea eficienței și/sau îmbunătățirea calității produselor și serviciilor.
Pe lângă aceste avantaje, afacerile electronice au și o serie de limite. Cele mai importante neajunsuri ale afacerilor electronice sunt:
• Lipsa unor standarde universal acceptate pentru calitate, securitate și încredere în afacerile electronice;
• Instrumentele de dezvoltare software pentru derularea afacerilor electronice sunt încă în plină evoluție;
• Existe unele dificultăți în ceea ce privește integrarea aplicațiilor software de comerț electronic cu unele aplicații existente și bazele de date;
• Accesul Internet este încă scump și/sau inoportun pentru o mare parte a populației.
Afacerile electronice sunt în strânsa legătură cu comerțul electronic (e-commerce), care reprezintă procesul de cumpărare, vânzare sau schimb de produse, servicii sau informații prin intermediul rețelelor de calculatoare. Afacerile electronice (e-business) nu se limitează la cumpărarea și vânzarea de bunuri sau servicii, ci includ și facilități pentru servirea cumpărătorilor, colaborarea cu partenerii de afaceri sau conducerea unei organizații prin mijloace electronice.
Există posibilitatea ca numai anumite activități din cele ale afacerilor tradiționale să fie automatizate. Astfel afacerile electronice pot fi parțiale sau totale și ele presupun desfășurarea a cel puțin uneia din următoarele activități:
• Prezenta on-line ( existența unui site de prezentare);
• Comanda on-line;
• Plata on-line;
• Transmiterea on-line a produsului sau serviciului.
Strâns legată de comerțul electronic este piața virtuală (eMarket), aceasta reprezentând locul unde se întâlnesc cumpărătorii și vânzătorii pentru schimbul de produse, servicii sau informații contra bani.
Activitățile din categoria afacerilor electronice sunt acele părți ale afacerilor tradiționale care pot fi automatizate și mai mult, se pot desfășura pe Internet.
Afacerile electronice existente la ora actuală au fost împărțite în câteva mari categorii și anume:
Business to Business (B2B) reprezintă un model de comerț electronic în care toți participanții la tranzacții sunt companii sau organizații. Acest tip de afaceri folosesc ca mediu de comunicare extranetul vânzătorului de servicii. Celelalte categorii de afaceri electronice folosesc ca mediu de comunicare rețeaua Internet.
Business to Consumer (B2C) este un model de comerț electronic în care companiile oferă persoanelor fizice o serie de servicii similare celor ale comerțului tradițional,însă prin intermediul magazinele on-line: informări despre produsele/servicii, oferte speciale, discount-uri, plata electronică a produselor achiziționate, achiziționarea de produse. Magazinele electronice au la bază un site Web care este administrat de o firmă pentru promovarea și vânzarea de produse și/sau servicii.
Consumer to business (C2B) este o categorie de afaceri electronice în care persoanele fizice (consumatori) utilizează Internetul pentru a-și vinde produsele sau serviciile firmelor și/sau caută vânzători să liciteze pentru produsele sau serviciile de care au nevoie.
Consumer to consumer (C2C)/e-auction – consumatorii își vând direct altor consumatori produsele și serviciile prin intermediul unor licitații on-line.
M-commerce sau comerțul mobil în care tranzacțiile și activitățile de comerț electronic sunt mijlocite prin intermediul telefoanelor mobile.
E-banking presupune realizarea de tranzacții bancare on-line, transfer de bani din conturile deschise la bănci, plăți electronice, consultanță bancară.
E-directories sau cataloage de informații, sunt site-uri care își organizează informațiile pe categorii de concepte. Regăsirea informațiilor se face pe baza unor arbori de căutare.
E-engineering pentru proiectarea electronică distribuită realizată pe Web.
E-gambling oferă jocuri de noroc virtuale.
E-learning reprezintă sisteme instruire virtuală.
E-mailing sunt foarte cunoscutele serviciile de poșta electronică.
E-working reprezintă un model de întreprindere virtuală.
E-operational resources management oferă echipamente de calcul, produse pentru întreținere și reparații etc.
E-procurement (aprovizionare electronică) folosită de către marile companii și autorități publice pentru procurarea bunurilor și serviciilor.
E-trading/e-brokering sisteme de bursa virtuală folosite pentru cumpărarea și vânzarea on-line a acțiunilor.
Prin e-leasing sunt oferite sisteme de leasing electronic.
Government-to-business (G2B) este modelul în care o instituție guvernamentală cumpără sau vinde bunuri, servicii sau informații persoanelor juridice.
Government-to-consumer (G2C) – modelul definit pentru relațiile guvern-cetățeni la nivel de informare și prestare de servicii publice. În această categorie intră site-urile pentru plata on-line a taxelor și impozitelor.
Este de menționat că dificultățile cu implimentarea și folosirea e-business-urilor este cu atât mai mare cu cât este mai slabă economic țara, firma etc. Dacă în țările dezvoltate economic lucrurile se pot dezvolta relativ bine și de la sine prin eforturile și cooperarea unităților economice, în țările slab dezvoltate se cere o susținere din partea statului. Multe din țările dezvoltate (SUA, Marea Britanie, Germania, Franta) duc o politică de stat activă privind e-afacerile, creând comisii sau grupuri de lucru si centre de cerecetare speciale privind e-business-ul, fiind un exemplu și pentru țările în curs de dezvoltare: Peru (1998), Cuba (1999), Philipines(1999) ș.a.
1.9. E – commerce – componentă a procesului de e-business
Comerțul electronic reprezintă multitudinea proceselor software și comerciale necesare afacerilor să funcționeze, utilizând fluxuri digitale de date. Comerțul electronic presupune utilizarea Internetului, comunicații digitale și aplicații software în cadrul proceselor de vânzare/ cumpărare, el fiind o componentă a procesului de e-business.
În momentul de față există o multitudine de firme care utilizează comerțul electronic, în domenii diverse ca marketing direct, vânzări, servicii pentru clienți, servicii bancare, distribuirea sigură a informațiilor etc.
Principalele cerințe pentru aplicațiile de comerț electronic sunt :
interfețe puternice
fiabilitate foarte mare
securitate ridicată
viteză ridicată de prelucrare și transmitere a datelor.
Software pentru comerț electronic include componente pentru realizarea prezentării, componente pentru efectuarea sigură a plăților cu ajutorul cărților de credit sau de debit și componente pentru securizarea tranzacțiilor.
Principalele caracteristici ale aplicațiilor electronice care oferă servicii de succes sunt: capacitatea de utilizare, scalabilitatea, siguranța, fiabilitatea, mentenabilitatea, disponibilitatea și eficiența.
În cadrul comerțului electronic sunt implicați o serie de actori, dintre care vânzătorul, cumpărătorul, furnizorul și banca sunt cei mai importanți.
Cumpărătorul vizualizează produsele și serviciile din catalog, gestionează contul, face comenzi de produse și servicii și primește informații cu privire la starea comenzilor.
Vânzătorul primește și analizează comenzile primite de la clienți, verifică efectuarea plăților și expediază produsele la clienți.
Furnizorul livrează produse vânzătorului. Furnizorul este fie producătorul de produse, fie comercianți en-gros.
Banca procesează date despre cărțile de credit, ordinele de plată sau cecurile. Există și posibilități de plată prin ramburs.
Fig.4. Principalii actori implicați în activitatea de comerț
O aplicație de comerț electronic conține module pentru gestiunea:
catalogului de produse;
clienților;
comenzilor clienților
plăților efectuate.
De asemenea, aplicațiile de comerț electronic trebuie să colecteze informații cu privire la clienți, produsele și serviciile comandate de aceștia în scopul îmbunătățirii serviciilor oferite și a creșterii profitului.
Dezvoltarea și întreținerea aplicațiilor de comerț electronic necesită resurse umane importante la nivel:
tehnic (arhitect, programatori, asigurarea calității),
logistic (administrator de rețea și baze da date),
funcțional (manager de produse și afacere)
design (Web designer și grafician).
Plățile efectuate pentru produsele sau serviciile cumpărate se realizează prin diferite mijloace de plată. Cele mai importante mijloace de plată utilizate în afacerile electronice sunt: cărțile de credit, certificatele de cadouri (gift certificates), cecuri electronice (e-checks), PayPal, CyberCash și carduri inteligente (SmartCards).
Un accent deosebit în cadrul comerțului electronic este acordat securizării tranzacțiilor efectuate, în special acele tranzacții care presupun transmiterea de date personale despre clienți și despre cardurile de credit, SSL (Secure Socket Layers) ocupând având un rol important.
După Paul Timmers pot fi identificate opt tipuri de comerț electronic :
magazin electronic (e-shop);
aprovizionare electronică (e-procurement);
magazin universal electronic (e-mall);
piața unui terț (3rd party marketplace );
comunități virtuale (virtual communities);
furnizor de servicii cu valoare pentru canalele de comerț electronic (value chain service provider);
platforme de colaborare;
brokeraj de informații și alte servicii.
Magazinul electronic este tipul de comerț electronic care vizează conducerea și gestionarea marketingului și vânzărilor produselor sau serviciilor specifice unei firme. Un astfel de magazin conține catalogul de produse sau servicii care include pentru fiecare poziție, descrieri tehnice și comerciale. Catalogul poate fi prezentat într-un limbaj (html, html dinamic, java, etc.) interpretabil de browserele de web. Informațiile de prezentare ale produselor sunt gestionate de un sistem general de baze de date (SGBD). Varianta extinsă oferă pe lângă funcțiunile de mai sus și posibilitatea efectuării on -line a plății (prin cărți de credit sau alte metode electronice).
Veniturile sunt realizate prin reducerea costurilor de promovare și vânzare, concomitent cu mărirea volumului vânzărilor.
Aprovizionarea electronică se întâlnește frecvent în licitațiile organizate de marile companii și organizațiile publice pentru procurarea bunurilor și serviciilor de care au nevoie. Fazele procesului sunt:
· publicarea pe web a specificațiilor ofertei (caietul de sarcini);
· primirea ofertelor;
· adjudecarea licitației.
Prin utilizarea acestei forme de comerț se realizează: scăderea timpului, a costului de transmisie și a prețului de achiziție.
Magazinul universal electronic este o colecție de magazine electronice, reunite sub un nume comun, o marcă bine cunoscută. Un exemplu este Electronic Mall Bodense (www.emb.ch), care oferă intrare în fiecare magazin individual.
Piața unui terț este extensia pe Internet a unui sistem de distribuție clasic. Rolul distribuitorului cu piață proprie este preluat de o interfață utilizator pentru catalogul de produse al firmei. Această interfață aparține unui terț (în general, un furnizor de servicii Internet sau o bancă). Prin atașarea la unele din canalele de informații accesate frecvent, ea devine conoscută.
Comunități virtuale sunt organizații formate din grupuri de clienti sau parteneri care au interese comune, care au posibilitatea de a adauga informațiile proprii peste un mediu de bază furnizat de comunitate. Pentru a putea fi membru al unei comunități virtuale se plătește o taxă. Fiecare membru poate oferi spre vânzare sau poate adresa cereri de cumpărare a unor produse sau servicii.
Furnizori de servicii cu valoare adăugată pentru canalele de comerț electronic. Furnizorii de servicii sunt firme specializate pe servicii cum ar fi: asigurarea logisticii, plata electronică sau expertiza în controlul producției și stocurilor. Plata acestor servicii se face pe baza unor tarife sau a unei cote procentuale.
Platformele de colaborare sunt forme de organizare orientate pe acțiuni de cooperare între firme (activități legate de concepția sau proiectarea integrată a unor produse sau servicii). Veniturile provin din managementul platformei (taxa de membru sau taxa de utilizare) și din vânzări de tehnici si instrumente specializate.
Brokerajul de informați și alte servicii au rolul de a mijloci activitățile de informare sau de afaceri. Printre aceste servicii se pot enumera: furnizarea de cataloage de clienți organizați pe diferite criterii de căutare (profile, sectoare de activitate, piețe specifice), vânzarea de oportunități de afaceri, consultanță.
1.10. Mijloace de plată în comerțul electronic
I. Tipuri de carduri:
După modul de stocare al caracteristicilor de securitate:
carduri cu bandă magnetică
carduri cu microprocessor (smart cardurile)
După sursa de acoperire a cheltuielilor:
debit – cardurile
credit – cardurile
După calitatea emitentului:
carduri emise de bănci
carduri emise de societăți nonbacare (lanțuri de magazine, cluburi, parcaje)
II. Principalele sisteme de carduri la nivel mondial:
Visa International (organizație non-profit, alcătuită din organisme financiare, cum ar fi bănci comerciale, case de economii etc.)
Europaz International (organizație non-profit care cuprinde MasterCard International cu sediul in SUA și EuroCard cu sediul în Belgia, și emite două tipuri de carduri: MasterCard și EuroCard)
American Express ( sistem de carduri eliberate de banca American Express)
III. Tipuri de sisteme electronice de plăți în Internet
Sisteme de plăți în Internet bazate pe transmiterea criptată a cardurilor clasice
Cea mai răspândită modalitate de plată în lumea e-commerce este aceea de a face plata pe baza unui card de credit. Totodată, plata cu card este cea mai riscantă, deoarece transmiterea numerelor de cărți de credit în clar dau acces la furtul lor de către hackeri, specialiști care le pot folosi neautorizat. De aceea, în ultimul timp, s-au căutat soluții pentru a reuși transferul sigur al numerelor de cărți de credit prin rețelele publice, cea mai sigură și cea mai folosită fiind metoda preînregistrării detaliilor cardului.
Aceasta presupune o înregistrare la intermediar a numărului cărții de credit a cumpărătorului. În momentul în care se dorește cumpărarea unui bun sau serviciu, posesorul cardului va trimite un mesaj de autorizare a plății către intermediar. Intermediarul utilizează un mecanism convențional (EFT/POS (Electronic Founds Transfer / Point of Safe), EFTS etc.), pentru a realiza efectiv plata către firma vânzătoare în cauză. Mesajul mai poate fi transmis de plătitor direct celui care primește plata, iar acesta din urmă ia legătura cu intermediarul pentru a confirma autenticitatea și legimitatea celui care plătește.
Intermediari în Internet sunt:
First Virtual cu Infohaus
CyberCash
First Bank of the Internet (FBOI)
CARI
Transmiterea mesajelor între entitățile care participă la comerțul electronic se face de cele mai multe ori folosind standardul SET (Secure Electronic Transactions). Acest standard a fost dezvoltat de Visa și MasterCard în anul 1996, fiind destinat realizării tranzacțiilor cu carduri de credit pe Internet, fie într-un mediu Web, șie prin e-mail.
Cerițele minime de funcționare a unor tranzacții prin protocolul SET sunt :
Confidențialitatea informațiilor, criptarea mesajelor pentru a asigura confidențialitatea informațiilor legate de plată și a informațiilor de cerere, care sunt transmise odată cu informațiile de plată;
Integritatea datelor, se referă la informațiile de plată trimise de cumpărător la vânzător, informații ce conțin date de cerere, date personale și instrucțiuni de plată. Aceste informații trebuie să ajungă la vânzător nealterate, pentru că, dacă una dintre informații este alterată, tranzacția nu s-ar mai executa în mod corect și pentru siguranța acestor informații, protocolul SET folosește semnătura digitală pentru integritatea datelor;
Autentificarea cumpărătorului, vânzătorul este obligat să testeze valabilitatea cardului, al numărului de cont valid și dacă acesta este utilizatorul legitim al acestuia. Protocolul SET utilizează pentru autentificarea cumpărătorului semnătura digitală și certificatele cumpărătorului pentru autentificarea acestuia;
Autentificarea vânzătorului, pentru a asigura cumpărătorului (clientului) siguranța că furnizorul are o relație cu o instituție financiară ce îi permite acestuia să utilizeze cărți de credit. Protocolul SET folosește pentru autentificarea vânzătorului semnătura digitală și certificatul vânzătorului pentru autentificarea acestuia;
Securitatea, bazată pe cele mai bune metode de securitate, pentru a proteja părțile antrenate în comerț;
Protocolul să nu depindă de mecanismele de securitate ale rețelei de comunicație și să nu împiedice folosirea acestora;
Interoperabilitatea dintre furnizorii de softweare și cei de rețea.
Protocolul SET folosește criptografia pentru:
Garantarea confidențialității informațiilor;
Asigurarea integrității plăților;
Autentificarea reciprocă a părților implicate în tranzacție prin utilizarea a două perechi de chei asimetrice: o pereche de chei “de schimb”, folosită în criptare și decriptare, și o pereche “de semnătură” pentru crearea și verificarea semnăturii digitale.
Sisteme de plăți bazate pe portofel și bani electronici
Sistemele bazate pe portofel etse reprezentat, în principal, de carduri inteligente ce au un chip încorporat în stratul de plastic, ceea ce îi dă acestuia posibilitatea să proceseze, memoreze și să securizeze informația. Smart cardurile se pot folosi pentru a implementa scheme noi de plată, care permit asigurarea securității și reducerea riscului unor fraude prin folosirea unor tehnici de autentificare prin protocoale criptografice, semnătură electronică.
Etapele operațiunii de debitare sau creditare a unui portofel electronic:
Autentificarea cardului de catre furnizorii de servicii pe baza cheii;
Se determină valoarea tranzacției și se verifică soldul cardului;
Se verifică deținătorul (prin introducerea codului PIN – Personal Identification Number);
Se execută operațiuniea de creditare / debitare;
Se generează de către card operațiunea de debitare, certificatul de debitare este verificat de cititorul de card.
Există două tipuri de portofele:
Portofele electronice fizice, pe carduri inteligente;
Portofele electronice virtuale, sub forma unor fișiere pe disc ce conțin monedă electronică.
În lume sunt implementate mai multe scheme de plată electronică sub formă de portofele virtuală:
DigiCash (David Chaun);
NetCash (Cliff Neumann);
CAFE (Conditioonal Access For Europe).
Sistemul de micro – plăți
În prezent, se află doar în stadiu de experimentare și se bazează pe existența unei scheme simple, ieftine, care poate suporta, economic, plăți foarte mici. Acest sistem de plăți este întâlnit pe site-urile de Internet ale:
Millicent (proiect Digital) – protocol sigur și simplu pentru Internet, care a fost conceput pentru tranzacții ce implică costuri mai mici de un cent, bazat pe o validare descentralizată a banilor pe serverele vânzătorilor fără metode de criptare complicate;
CyberCoin (proiect CyberCash) – sistem de microplăți, ce poate realiza plăți în Internet cu valori cuprinse între 25 cenți și 10 dolari, acoperind piața în care sistemul cărților de credit nu este fezabil din punct de vedere economic;
Protocolul Micro – Payment (Consorțiul W3) (MPTP) – protocol inspirat din MilliCent și este destinat transferului de valori mici sau foarte mici între părți ce se află în relație o perioadă limitată de timp. Are un grad ridicat de protecție împotriva fraudelor și este folosit în magazinele virtuale de mărfuri;
NetBill – protocol destinat vânzărilor sau cumpărărilor prin Internet a unor bunuri sau servicii cu un cost mediu sau redus. Cumpărătorul este reprezentat printr-un calculator client care dorește să cumpere informații de pe un server al unui vânzător. Un NetBill server deține conturile ambelor părți implicate într-o tranzacție, client și vânzător și are legătură cu o instituție financiară convențională (bancă). Entitățile implicate într-o tranzacție sunt: cumpărători, vânzători și servere de tranzacții NetBill. O tranzacție în sistemul de plăți NetBill implică trei faze: negocierea prețului, livrarea produsului și plata acestuia.
Cecurile electronice
Acest sistem se bazează pe scheme în care plătitorul trimite celui care primește plata un document electronic ce conține date echivalente cu conținutul unui cec: numele plătitorului, instituția sa bancară, numărul de cont, numele celui care acceptă plata și suma transferată. Sunt necesare măsuri de protecție și securitate prin criptare.
Avantajele sistemului de cecuri electronice sunt:
timpul scurt de a efectua o plată;
reducerea costurilor privind hârtia folosită;
confirmarea instantaneee a solvabilității plătitorului;
flexibilitatea și marea varietate de implementare.
O slăbiciune a acestui sistem de cecuri electronice îl constituie caracterul privat și confidențialitatea plăților ținând cont că băncile sunt obligate, prin reglementări, să poată documenta, în detaliu, fiecare transfer.
Capitolul 2
Proiectarea de ansamblu a sistemului informartic
2.1. Obiectivele sistemului informatic
Cele mai importante obiective ale sistemului informatic ce va fi proiectat, realizat și implementat în cadrul departamentului de marketing din cadrul S.C.”VirtualPC” , derivă în mod direct din necesitatea societății de a stabili target-uri economice performante în ceea ce privește:
micșorarea volumului foarte mare de date prelucrate manual și eliminarea totală a erorii umane din procesul de prelucrare;
reducerea timpului de prelucrare a datelor;
realizarea într-un timp cât mai scurt și într-un mod cât mai corect a unor situații de informare-raportare complexe și diversificate pe obiective economice, necesare fundamentării corespunzatoare a deciziilor luate de conducere.
Acest sistem își propune ca obiectiv principal informatizarea activității de distribuție/vânzare a produselor finite, prin automatizarea procesului de introducere, analiză, prelucrare și transmitere a datelor din cadrul documentelor participante la fluxul informational, având în vedere volumul mare de documente implicate în activitatea economică derulată de societate – de exemplu, pentru comenzile clienților se utilizează ca documente: contracte, facturi fiscale, chitanțe, ordine de plată, avize de expediție etc.
Procesul de automatizare va presupune realizarea unor situații de informare eficiente, privind evoluția vânzărilor, evidența clienților cu care societatea desfășoară relații contractuale, evidența produselor distribuite, gestiunea facturilor etc., dar și creșterea vitezei procesului de prelucrare și analiză a datelor provenite direct din comenzile clienților, pentru reducerea timpului de livrare și a managementul corespunzator al contractelor încheiate cu clienții societății.
Proiectarea videoformatelor de lucru și a rapoartelor de informare trebuie să respecte principiile informatice privind preluarea, prelucrarea și validarea datelor de intrare, automatizarea prelucrărilor și realizarea de situații de informare corecte, foarte bine fundamentate economic.
Un alt obiectiv ce trebuie avut în vedere în informatizarea procesului de distribuție îl constituie posibilitatea de a asigura flexibilitatea sistemului, adaptarea lui din mers la cerințele suplimentare de informare sau la schimbările legislative privind calculele sau evidențele contabile aferente acestei activități.
2.2. Estimarea necesarului de resurse
Categoriile de resurse utilizate în cadrul sistemului informatic sunt :
resurse umane:
personal de specialitate necesar pentru realizarea și exploatarea sistemului informatic;
încă un analist și un programator(pe lângă cei doi angajați pe domeniu IT) pentru proiectarea și realizarea sistemului informatic;
persoană – analist/programator – pentru a inițializa angajații în utilizarea situațiilor proiectate.
resurse hardware sau resurse IT:
constau în achiziționarea de sisteme de calcul noi care să satisfacă performanțele dorite de societatea beneficiară a sistemului informatic, având în vedere faptul că sistemele de calcul existente în unitate sunt uzate moral și nu pot face față cerințelor complexe ale sistemului de gestiune proiectat;
se va investi în procurarea de echipament hardware foarte performant.
resurse software:
prin această categorie de resurse se dorește îmbunătățirea sistemului de operare utilizat de firma care, la acest moment, este depășit moral și nu mai poate realiza performanța necesară pentru a se îndeplini sarcinile ce revin sistemului de gestiune.
resurse financiare:
firma are nevoie de fonduri suplimentare pentru implementarea noului sistem informatic, coroborat cu aducerea de încă doi specialiști;
estimativ, valoarea investiției va ajunge la circa 4000 de Euro.
Planificarea realizării sistemului informatic are la bază principiul proiectării și implementării eșalonate a sistemului.
Eșalonarea reprezintă ordinea în care vor fi abordate componentele sistemului: de la proiectarea de detaliu, până la implementarea și exploatarea curentă a acestora. Eșalonarea se prezintă sub forma unui grafic detaliat care prezintă fiecare modul component, etapele de realizare, durata fiecarei etape, termenele de început și sfârșit ale lucrării.
2.3. Definirea situațiilor finale (ieșirilor)
Satisfacerea cerințelor informaționale ale conducerii, pentru fundamentarea sau asistarea deciziilor reprezintă obiectivele oricărui sistem informatic. Aceasta înseamnă furnizarea, la cerere sau periodic, a situațiilor, a raoartelor de ieșire care grupează informații, date necesare cunoașterii realității curente. Pe baza acestora se fundamentează deciziile pentru dirijarea funcționarij viitoare a unității economice.
Tipul, conținutul și operativitatea cu care se transmit situațiile de ieșire la factorii de decizie determinată utilitatea și viabilitatea sistemului informatic.
Definirea “ieșirilor” fiecărui subsitem informatic la nivel global presupune ,în primul rand, stabilirea la nivel global a informațiilor necesare conducerii pe diferite trepte ierarhice, precizând , pentru fiecare în parte, conținutul informațional, periodicitatea, numărul de exemplare, destinatarul. În definirea ieșirilor vom ține seama de restricțiile privind conținutul și forma de prezentare a acestora, cum ar fi cazul unor rapoarte tipizate(ex. bilanț). Pe baza acestora se va realize apoi poiectarea logică și fizică de detaliu a ieșirilor.
Finalitatea înregistrării operațiilor contabile se regăsește în următoarele categorii de ieșiri informaționale:
rapoarte de bază ale contabilității financiare : fișe de cont, cartea mare, balanța de verificare, jurnalul de operații, situații ale veniturilor și cheltuielilor, fluxurile de numerar plătite și încasate ;
raportări financiar-contabile de sinteză : bilanț, cont de profit și pierdere, note explicative, situații financiare ;
rapoarte întocmite cu ocazia închiderilor lunare, trimestriale, anuale ale anumitor conturi :declarații de TVA, declarații de impozit pe profit, alte declarații privitoare la datorii către stat(asigurări sociale, fond șomaj, asigurări de sănătate etc.) ;
grafice privind dinamica cheltuielilor, veniturilor și a altor componente contabile care se pretează la reprezentări grafice ;
analize ale conturilor, pentru a surprinde anumite stări ale unor indicatori economico-financiari ;
alte analize și rapoarte.
În urma analizei efectuate a sistemului informatic, au fost definite următoarele ieșiri :
listă clienți
este o situație de informare ce permite vizualizarea rapidă a tuturor clienților care au desfășurat activități economice cu societatea;
este definită sub forma unui raport în care sunt incluse toate datele de identificare ale clienților firmei.
listă produse disponibile în stoc
este o situație de informare ce permite vizualizarea rapidă a tuturor produselor disponibile în stoc (cantitatea pentru fiecare tip produs >=1) la momentul în care se cere raportul;
este definită sub forma unui raport în care sunt incluse toate datele de identificare ale produselor disponibile firmei.
situația vânzărilor
este definită sub forma unei liste de prezentare în care sunt evidențiate toate comenzile aferente activității de distribuție, de la o dată specificată până la data curentă;
informațiile privind comenzile derulate cu clienții firmei sunt prezentate în ordinea cronologică realizării lor, evidențiindu-se pentru fiecare în parte produsele care au făcut obiectul tranzacției, prețul de distribuție, cantitatea vândută, numele agentului care a intermediat tranzacția și valoarea totală a comenzii.
vizualizare facturi fiscale
factura fiscală reprezintă documentul prin care un client achită produsele comandate, iar societatea încasează contravaloarea produselor distribuite;
factura fiscală cuprinde datele de identificare ale furnizorului și cumpărătorului, numărul și data facturii curente, numărul avizului de însoțire a mărfii, denumirea produselor, unitatea de măsură, prețul unitar practicat pentru produsele distribuite, cantitatea vândută din fiecare produs, valoarea totală pe fiecare produs, valoarea T.V.A. și totalul de plată aferent facturii.
registrul de evidență a comenzilor
reprezintă documentul prin care societatea poate realiza o gestiune eficientă a tranzacțiilor efectuate cu un anumit client;
documentul permite atât evidența datelor unui client cât și evidența comenzilor derulate de acesta cu firma în cadrul activității de distribuție/vânzare a produselor finite;
pe baza acestui document, în Fișa Clientului se vor introduce date referitoare la numărul, data și valoarea comenzii precum și stadiul achitării comenzii sau comenzilor solicitate de acesta.
listă comenzi
este o situație de informare ce permite vizualizarea rapidă a informațiilor privind toate comenzile ce s-au desfășurat în cadrul societății;
această situație este foarte importantă deoarece identifică fiecare comandă în parte și prezintă, într-o formă simplificată, datele aferente fiecărei tranzacții în parte, evidențiind în special valoarea încasărilor;
pe baza acestui raport se pot întocmi alte două situații de informare, care prezintă structurat lista comezilor, în funcție de stadiul achitării sau neachitării acestora : listă comenzi achitate și listă comenzi neachitate.
listă comenzi achitate
este o situație de informare ce permite conducerii vizualizarea rapidă a tuturor informațiilor privind comenzile ce s-au derulat în cadrul societății și care au fost achitate de clienți în termenele stabilite prin contract;
acest raport permite totodată evidența la zi a veniturilor firmei din activitatea de distribuție, prin însumarea valorilor comenzilor achitate.
listă comenzi neachitate
este o situație de raportare ce permite factorilor de decizie ai societății vizualizarea comenzilor care au depășit termenul scadent de plată;
identificarea comenzilor restante se face după numărul și data efectuării tranzacției, pentru care sunt apoi evidențiate cantitatea, prețul și valoarea de plată, precum și codul clientului rău platnic;
este o situație informativă foarte eficientă, întrucât permite conducerii selectarea viitorilor clienți ai firmei, în funcție de onorarea sau neonorarea la timp a datoriilorlor contractuale.
2.4. Definirea intrărilor sistemului
Intrările sistemului informatic presupun totalitatea datelor primare necesare obținerii informațiilor de ieșire ale sistemului.
Definirea intrărilor trebuie să includă toate elementele necesare realizării tehnice ulterioare a documentelor de intrare și să ofere soluții pentru preluarea datelor în sistemul informatic. Pe baza acestora se va face apoi proiectarea logică și tehnicș de detaliu a intrărilor.
Determinarea intrărilor presupune o analiză ce are ca punct de plecare informațiile de ieșire din sistem. După determinarea "intrărilor" sub aspectul conținutului global al acestora, pentru fiecare document de intrare se va stabili sursa de proveniență, periodicitatea, volumul, numărul de exemplare, etc. Există un număr insemnat de documente primare tipizate, adaptate la prelucrarea automată a datelor care pot fi utilizate în cadrul sistemelor informatice.
În urma analizei efectuate a sistemului informatic, au fost definite următoarele documente de intrare a datelor :
înregistrare date clienți
permite definirea videoformatului pentru înregistrarea datelor despre clienții firmei;
se completează cu datele proprii de identificare de către fiecare client în parte, la solicitarea comenzii.
actualizare date clienți
permite definirea videoformatului pentru actualizarea datelor despre clienții firmei;
se verifică și se completează, unde este cazul, cu datele proprii de identificare furnizate de fiecare client în parte, la solicitarea comenzii.
înregistrare date produse
permite definirea videoformatului pentru înregistrarea datelor despre produsele aflate în nomenclatorul firmei pentru vânzare;
se completează datele de către administratorul bazei de date, la fiecare aprovizionare cu produse noi, ce nu se mai ragasesc în nomenclatorul de produse al firmei.
actualizare date produse
permite definirea videoformatului pentru actualizarea datelor despre produsele comercializate de firmă.
bon de comandă
identifică un document pe baza căruia un client poate solicita o anumită comandă;
permite proiectarea unui videoformat foarte important pentru activitatea de distribuție, pe baza căruia se pot prelua date pentru Evidența comenzilor, constituind totodată și un punct de analiză pentru activitatea agenților de vânzări.
jurnal de vânzări
definește un videoformat complex ce permite actualizarea imediată și automată a tuturor informațiilor referitoare la numărul comenzilor și volumul vânzărilor;
în fapt, această situație de intrare reprezintă un mod eficient de introducere a comenzilor propriu-zise solicitate de clienți, cu toate informațiile necesare realizării unei gestiuni eficiente a comenzilor.
2.5. Modelarea datelor și modelarea prelucrărilor
Orice abordare a sistemului informațional, respectiv a sistemului informatic trebuie să se concentreze, în principal, asupra fluxului datelor și asupra secvenței de prelucrări care se efectuează asupra acestor date, în scopul furnizării factorilor de conducere de informații exacte obținute în timp util.
În acest context se vor aborda următoarele aspecte:
Elaborarea Modelul Conceptual al Datelor (MCD) (urmărind ca finalitate obținerea MEA optimizat);
Elaborarea Modelul Logic al Datelor (MLD) (construirea schemei conceptuale a bazei de date relaționale);
Modelul Fizic al Datelor (MFD) (construirea schemei bazei de date în concordanță cu restricțiile tehnice impuse de SGBD-ul ales);
Modelul Conceptual al Prelucrărilor (MCP);
Modelul Logic (sau organizațional) al Prelucrărilor (MLP);
Modelul Fizic al Prelucrărilor (MFP).
Modelarea conceptuală a datelor
Modelarea conceptuală a datelor este o modalitate de reprezentare a datelor din domeniul analizat, cu scopul de a scoate în evidență toate regulile privind identitatea și legăturile existente între date.
Cea mai utilizată formă pentru modelarea conceptuală a datelor este modelul entitate – asociere (sau entitate – relație). Acest model se crează printr-un proces iterativ, utilizând inițial un volum mare de date descrise care sunt apoi prelucrate și selectate astfel încât să răspundă cerințelor beneficiarului. Modelul Entitate – Asociere care se crează prezintă caracteristicile și structura datelor din domeniul analizat, independent de modul în care acestea vor fi memorate în calculator.
Modelul Entitate – Asociere fiind semantic face abstracție de orice restricție informatică sau organizatorică și reprezintă în fond un instrument de comunicare între realizatorii sistemului precum si între informaticieni și viitorii utilizatori.
Trăim într-o lume formată din obiecte concrete sau abstracte, care se descriu în procesul cunoașterii prin informații. În cadrul acestui model, obiectele se numesc entități, iar proprietățile acestora se numesc atribute. Aceste atribute pot lua diverse valori, definite astfel ca măsură a proprietăților.
Cu apariția bazelor de date ca modele de structurare a datelor, în terminologia curentă au fost introduse și utilizate cele 3 concepte de bază în organizarea datelor, și anume: entitate, atribut și valoare. Cele trei noțiuni sunt strâns legate între ele: o entitate are mai multe atribute, iar unui atribut i se asociază o mulțime de valori.
Fig5. Modelarea conceptuală a datelor a sistemului informațional pentru departamentul de distribuție
Modelarea logică a datelor
Pornind de la modelul conceptual al datelor, mai exact de la modelul Entitate –Asociere, se poate trece relativ ușor la realizarea schemei conceptuale a bazei de date relaționale, respectând niște reguli precise.
În modelarea logică, entitățile și legăturile dintre acestea sunt reprezentate sub formă de tabele(relații) ale unei baze de date relaționale.
Principalele caracteristici ale modelului relațional sunt :
nu există tupluri identice ;
ordinea liniilor și coloanelor este arbitrară ;
articolele unui domeniu sunt omogene ;
fiecare coloană definește un domeniu distinct și nu se poate repeta în cadrul unei relații ;
toate valorile unui domeniu corespunzătoare tuturor cazurilor nu mai pot fi descompuse în alte valori (sunt atomice).
Schema conceptuală a bazei de date relaționale a sistemului informațional pentru departamentul de distribuție, scrisă sub formă condensată, este următoarea :
Produse (cod_produs , denumire_produs, unitate_măsură, preț, producător, garanție)
Produse_comandate (cod_produs, nr_comandă, cantitate_comandată, termen_livrare)
Comandă (nr_comandă, data_comandă, cod_client)
Clienți (cod_client, denumire_client, adresă_client, cont)
Factură_client (nr_factură_client, data_factură_client, cod_client)
Produse_vândute (nr_factură_client, cod_produs, cantitate_vândută, cota_TVA,
preț_vânzare)
Încasare (nr_document_încasare, data_document_încasare, tip_document_încasare,
cod_client, nr_factură_client)
Furnizori (cod_furnizor, denumire_furnizor, adresă_furnizor, cont)
Document_plată (nr_document_plată, data_document_plată, tip_document_plată,
cod_furnizor, nr_factură_furnizor)
Factură_furnizor (nr_factură_furnizor, data_factură_furnizor, cod_furnizor)
NRCD (nr_NRCD, data_NRCD, nr_factură_furnizor, cod_depozit )
Depozit (cod_depozit, denumire_depozit)
Stoc (cod_produs, cod_depozit, stoc_inițial, data_stoc_inițial)
Produse_aprovizionate (nr_factură_furnizor, cod_produs, cantitate_intrată,
preț_aprovizionare, cota_TVA)
Produse_recepționate (cod_produs, nr_NRCD, cantitate_recepționată)
Schema conceptuală a bazei de date relaționale a sistemului informațional pentru departamentul de distribuție, realizată sub formă de diagramă este reprezentată la sfârșitul lucrării în ANEXA B.
Modelarea fizică a datelor
Modelul fizic al datelor pornește de la modelul logic al datelor , care este însă în strânsă dependență cu sistemul de gestiune a bazelor de date (SGBD) ales. El trebuie să conducă astfel la schema bazei de date, adică să precizeze tabelele, structura acestora și relațiile dintre ele.
Se impune respectarea unor cerințe minimale de către SGBD-ul ales, cum ar fi:
timp de răspuns minim;
confidențialitatea și securitatea datelor;
ușurința în exploatare;
portabilitatea aplicațiilor și a bazei de date;
portabilitatea SGBD-ului;
instrumente pentru generare automată de rapoarte, formulare, meniuri;
facilități de gestionare și refacere a bazei de date;
facilități de administrare a bazei de date;
facilități de ordin economic, etc.
După alegerea SGBD-ul, se trece la proiectarea fizică a fișierelor și a bazei de date, la definirea caracteristicilor fiecărui atribut din modelul logic al datelor, la descrierea tehnologiilor utilizate pentru crearea fișierelor și a bazei de date, a timpului de răspuns preconizat, a sistemului de indecși creat în vederea grupării datelor în rapoarte și interogări, a ordonării lor pentru acces rapid la datele necesare. Tot în această etapă se stabilesc structurile de stocare a datelor și suportul acestora.
Modelul fizic al datelor va specifica, pentru fiecare atribut, următoarele:
Numele – numele câmpului, servind pentru identificarea acestuia;
Tipul datei – formatul datei, inclusiv lungimea ei;
Reguli de integritate a datelor – precizează limitele î ntre care se pot înscrie valorile campului respectiv;
Formula de calcul – pentru câmpurile calculate;
Integritatea referențială – precizează dacă valoarea câmpului respectiv
trebuie să coincidă cu valoarea altui câmp din altă înregistrare;
Cifra de control – daca este cazul, se precizează algoritmul de obținere a
acesteia.
Modelarea conceptuală a prelucrărilor
Prelucrările reprezintă partea dinamică a sistemului informațional și descriu acțiunile exercitate asupradatelor în scopul obținerii informațiilor dorite, precum și modul de reprezentare materializată sub formă de acțiuni a regulilor de gestiune specifice activității întreprinderii.
Aceste reguli de gestiune se reprezintă sub o formă schematică, independente de particularitățile organizatorice, mijloacele concrete de realizare și de mijoacele specifice unui domeniu în cadrul firmei.
Modelarea conceptuală a prelucrărilor are rolul de a răspunde la întrebarea :”ce prelucrări se realizează în domeniul investigat?”, arătînd ce trebuie făcut la nivel conceptual, fără a indica “cine?”, “când?”, “unde se realizează?”, “cum se vor realiza în mod concret prelucrările?”.
În aceste cazuri, cel care realizează modelarea trebuie să identifice activitățile desfășurate cu operațiile pe care acestea le presupune și evenimentele declanșatoare ale operațiilor respective.
În accepțiunea MCP, un eveniment trebuie să indice faptul că ceva anume s+a întâmplat și, în consecință, sistemul trebuie să reacționeze.
În reprezentarea înlănțuirii de evenimente declanșatoare și de operații în MCP, se impune respectarea unor cerințe determinate de regulile de gestiune, și anume:
Dacă unele operații s-au realizat, înseamnă că alte activități urmează să se execute;
Unele operații trebuie executate înaintea altora;
Unele operații nu pot fi executeta decât dacă altele au fost deja executate;
Unele operații pot fi declanșate, în timp ce latele sunt în curs de desfășurare;
Un obiect al realității, supus operației, își poate schimba starea sa.
În cadrul departamentului de distribuție, pentru activitatea de primirea comenzilor de la clienți, livrarea produselor și încasare, principalii actori vor fi :
clientul , care emite comenzi către societate în vederea livrării de produse ;
departamentul de vânzări , analizează comanda primită, apoi pregătește loturile pentru livrare ;
gestiunea , gestionează produsele finite (intrările și ieșirile) pentru a stabili în permanență stocul (soldul) pe fiecare produs în parte ;
banca , care decontează sumele datorate de client pentru produsele primite ;
departamentul financiar-contabil al firmei , înregistrează atât livrarea produselor către clienți, cât și încasarea de la clienți a contravalorii produselor expediate.
În cadrul MCP, este necesar să se precizeze, pentru fiecare actor în parte, toate informațiile cu privire la ceea ce trebuie să facă ; astfel :
Clientul emite comanda destinată departamentului de vânzări al firmei.
Departamentul de vânzări al firmei analizează comanda clientului și stabilește pentru fiecare produs comandat dacă :
– se regăsește în nomenclatorul de produse ;
– există în stoc ;
– condițiile de livrare sunt acceptate de firmă.
Departamentul de vânzări al firmei acceptă / refuză comanda clientului.
Acceptarea comenzii impune înregistrarea (înscrierea) în evidența operativă a departamentului de vânzări al firmei.
Se emite (întocmește) dispoziție de livrare care va fi trimisă la gestiune pentru :
– pregătirea lotului de mărfuri pentru livrare ;
– înregistrarea(înscrierea) livrării în fișa de magazie.
Întocmirea facturii este obligatorie, pentru că lotul de mărfuri trebuie să fie însoțit pe timpul transportului de către factură. Pentru cazurile de excepție, marfa poate fi însoțită de avizul de expediție, pe care trebuie să fie consemnată justificarea avizului de expediție de către directorul societății și ștampila societății respective.
Clientul primește marfa și factura.
Clientul achită contravaloarea facturii prin ordin de plată sau chitanță.
Departamentul financiar-contabil informează serviciul de desfacere la încasarea facturilor ;
Departamentul contabil, pe baza extrasului de cont și a ordinelor de plată, înregistrează în contabilitate livrarea mărfurilor ți încasarea lor.
Identificarea principalelor evenimente, în vederea realizării modelului :
E1 – comandă primită de la client
E2 – comandă refuzată
E3 – comandă acceptată în lucru
E4 – comandă acceptată în așteptare
E5 – comandă livrabilă
E6 – dispoziție de livrare întocmită
E7 – factură întocmită
E8 – mijloc de transport disponibil
E9 – livrare efectuată
Întocmirea tabloului evenimente – rezultate
Identificarea operațiilor :
Op1 – Analiză comandă
Op2 – Analiză stocuri
Op3 – Întocmire dispoziție de livrare
Op4 – Întocmire factură
Op5 – Expediere mărfuri
Op6 – Comandă în așteptare
Identificarea sincronizărilor:
Precizarea regulilor (condițiilor) de emisie pentru operații :
R1 – produsele comandate se află sau nu în nomenclatorul de produse
R2 – livrarea produselor se va face în funcție de prețul acceptat, mijlocul de transport
R3 – cantitatea comandată <= stocurile existente pe o anumită perioadă
R4 – livrarea zilnică a produselor se va face în funcție de capacitatea maximă de transport
Fig.6. Modelarea conceptuală a prelucrărilor a sistemului informațional pentru departamentul de distribuție
Modelarea logică a prelucrărilor
Modelarea logică a prelucrărilor trebuie să țină cont de particularitățile organizatorice ale societății, presupunând repartizarea prelucrărilor pe posturi de lucru și stabilirea nivelului de automatizare a prelucrărilor.
Un post de lucru reprezintă unitatea de activitate elementară în cadrul societății, care reunește :
resursele umane
softul de prelucrare
comunicațiile necesare pentru a executa prelucrările stabilite.
Modelarea logică a prelucrărilorcaută să dea răspuns la toate întrebările :”cine realizează sistemul?”, “cum sunt realizate prelucrările?”, “când sunt realizate aceste prelucrări?”.
În MLP fiecare operație se descompune în faze, iar o succesiune de faze aparținând aceluiași proces va forma o procedură. MLP ia în considerație restricțiile de ordin tehnic impuse de platforma hardware și software și de natura prelucrărilor.
Schema modelării logice a prelucrărilor este redată la sfârșitul lucrării în ANEXA C
Modelarea fizică a prelucrărilor
Modelul fizic al prelucrărilor realizează descrierea efectivă a procedurilor automate de prelucrare a datelor. În funcție de solușia aleasă, procedurile de prelucrare automată a datelor îmbracă diverse forme, în funcție de sistemul de programare și cel de gestiune alese:
Noțiunea de procedură și cea de funcție – în sisteme de gestiune a bazelor de date, cum ar fi: FOXPRO, Dbase, ACCESS, sau în limbaje de programare, cum sunt: Visual Basic, Visual C++, Borland C++, Builder, etc.;
Noțiunea de procedură stocată – implementată de SGBD-uri, cum ar fi : SQL Server, Oracle, InerBase, etc ;
Noțiunea de macroinstrucțiune – structură de comenzi simplă/relativ complexă implementată, de exemplu, de SGBD ACCESS ;
Noțiunea de modul – structură care poate include mai multe definiții de proceduri/funcții, definiții de structuri de date, etc. ;
Obiecte pentru interfață – cum ar fi : formularele, rapoartele, graficele, etc. Sunt SGBD- uri care dispun de posibilitatea generării unor astfel de obiecte (MS Access, spre exemplu), însă sunt și SGBD-uri, care nu dispun de astfel de instrumente, și acestea, obligatoriu, se definesc în cadrul altor medii de dezvoltare, SGBD-uri, etc. ;
Alte facilități incluse în anumite limbaje și medii de programare(spre exemplu, mecanismul template,din limbajul C++), etc.
În ceea ce privește soluția fizică finală, din punct de vedere al datelorși al prelucrărilor este posibli ca modelul fizic al datelor să fie implementat într-un SGBD, iar prelucrările în alte medii de dezvoltare, obținându-se două soluții software diferite, una pentru date și alta pentru prelucrări. Spre exemplu, baza de date poate fi gestionată de SGBD Access, SQL Server, iar prelucrările să fie implementate în limbajul Visual Basic, Visual C++, Borland C++ , Builder, Delphi, PHP, etc.
2.5. Stabilirea colecțiilor de date
Stabilirea colecțiilor se face analizând și grupând datele după următoarele criterii :
după sfera de cunoaștere :
colecții de date primare :
listele de furnizori, clienți
descrierile recepției și a livrării
descrierile documentelor utilizate în tranzacții
colecții de indicatori tehnico-economici cu caracter operativ
prețul de achiziție a produsului
prețul de vânzare a produsului
valoarea cantitativă a stocului
valoarea valorică a stocului
colecții de indicatori tehnico-economici cu cenralizare medie
bilanțuri privind volumul stocului
bilanțuri privind ponderea produselor
după domeniul de activitate :
colecția Clienți – date din nomenclatorul clienți
colecția Furnizori – date din nomenclatorul furnizori
colecția Personal – date din contractele de muncă
colecția Comenzi – date din formularele de comenzi ale clienților
colecția Documente – date despre documente
colecția Produse – date din fișele produselor
colecția Încasări – date din registrul de casă
colecția Plăți – date din registrul de casă
după stabilirea datelor :
colecții de date convențional convențional-constante
colecția Clienți
colecția Furnizori
colecția Produse
colecția Comenzi
colecții de date variabile
colecția Documente
colecția Plăți
colecția Încasări
după prelucrarea datelor :
colecții de date de bază
colecția Clienți
colecția Furnizori
colecția Comenzi
colecția Documente
colecția Produse
colecții de date pentru tranzacții
colecția Încasări
colecția Plăți
colecția Produse
colecția Furnizori
colecția Clienți
colecția Documente
colecții de date intermediare sau de lucru
colecția Produse
colecții de date statistice
colecția de date despre inventar
colecția de date despre stocuri
colecția de date despre clienți
colecții de date istorice
colecția Documente
colecția Comenzi
2.6. Tehnologia de prelucrare
”Un ansamblu structurat de date (legate funcțional între ele) înregistrate pe suporturi accesibile calculatorului pentru a satisface simultan mai mulți utilizatori de o manieră selectivă și într-un timp oportun” – este definiția dată de C.Delobel și M.Adiba pentru baze de date. G.Gardarin o completează insistând asupra faptului că “pentru ca un ansamblu de date neindependente să fie o bază de date, trebuie să fie interogabile prin conținut, după orice criteriu, precum și să fie posibilă regasirea structurii datelor.”
Performanțele înregistrate în implementarea informaticii la nivelul întreprinderii au deschis noi orizonturi cum ar fi:
orientarea spre arhitecturi client-server;
distribuirea bazelor de date, consecință a rețelelor extinse în cadrul întreprinderii;
baze de date avansate (baze de date active, baze de date deductive, baze de date multidimensionale);
accesarea bazelor de date în sisteme Internet/ Intranet/ Extranet și abordarea integratoare a datelor din întreprinderi în viziunea federării datelor structurate și semistructurate.
Bazele de date utilizate într-un mediu Internet/ Extranet sunt considerate daze de date on-line. Acestea sunt baze de date partajate de către mai multi utilizatori prin intermediul unor aplicații specifice WEB.
Metodele de conectare la bazele de date din paginile WEB urmăresc în principal următoarele aspecte:
realizarea unor interfețe cu utilizatorul cât mai attractive;
pagini WEB interactive cu posibilitatea controlării evenimentelor;
accesul la baza de date căt mai performant;
accesul simultan la baza de date;
posibilitatea integrării alor instrumente sau baze de date.
Principalele metode de interconectare între bazele de date și paginile WEB sunt:
Common Gateway Interface (CGI);
Server Slide Include (SSI);
Baze de date care “vorbesc” HTTP;
Accesul derect din navigator la o bază de date prin limbaj Java;
Vizualizarea datelor în afara navigatorului (External Viewer);
Extinderea navigatoarelor cu posibilități de Plug-ins;
Proxy server pentru accesarea bazelor de date;
Utilizarea unui server Hyperware.
Fig. 7. Arhitectura generală, CLIENT-SERVER WEB
Caracteristicile generale ale aplicațiilor realizate folosind aceste tehnologii pe partea de server, indiferent de limbajul de scripting folosit sunt:
Necesită un procesor pentru paginile dinamice sau un mediu de execuție;
Într-o pagină de script pot fi îmbinate limbajul HTML și secvențe de cod;
Secvențele de cod sunt executate pe partea de server, înainte de a trimite pagina la client;
Există astfel posibilitatea de a particulariza paginile în mod dynamic;
Oferă posibilitatea de interacțiune cu baze de date diferite;
Au acces la toate resursele server-ului WEB (fișiere,rețea).
Serverul de Web
Serverul web este un calculator care găzduiește un site web și care e capabil să răspundă cererilor de pagini web din partea clienților. Pentru a realiza acest lucru, serverul trebuie să ruleze o aplicație specială numită httpd (HyperText Transfer Protocol Demon). Ca servere Web, cele mai întâlnite sunt: Apache Server, Microsoft Web Server, Oracle Web Server.
În momentul de față se folosesc foarte multe tipuri de calculatoare și sisteme de operare, majoritatea oferind software server Web de bună calitate. Cele mai cunoscute sisteme de operare pentru calculatoare ce deservesc pagini Web sunt UNIX și Microsoft Windows NT/2000.
Unix este folosit de la crearea Web-ului și majoritatea serverelor Web rulează în continuare acest sistem. Windows NT /2000 este mai nou în domeniu, dar și-a câștigat rapid popularitatea. Din punctul de vedere al designer-ului Web, server-ul utilizat pentru livrarea unei pagini este în general irelevant, cu anumite excepții:
UNIX este dependent de tipul de literă folosit (litera mică sau majuscula), în timp ce Windows NT nu;
UNIX este folosit de mai mult timp și este relativ stabil. Windows NT suferă
actualizări majore și de aceea poate avea probleme în acest sens;
Există foarte multe companii care au baze de date Microsoft Access pe care vor să le integreze în site-ul lor, acest lucru putându-se face numai în mediul Windows NT;
Furnizorii de servicii Internet (Internet Service Provider – ISP) percep în general taxe mai reduse pentru servere bazate pe UNIX, pentru că întreținerea sistemului este mai puțin costisitoare dacât Windows NT.
Între calculatoarele interconectate informația circulă în pachete. Pachetele conțin adresa expeditorului și cea a destinatarului, informația, numele aplicației client care a formulat cererea și numele aplicației de pe server care va primi cererea. Aceste pachete sunt dirijate pentru a ajunge la destinație prin anumite mijloace de dirijare precum Internet Protocol (IP). Rețeaua Internet dispune de asemenea și de mijloace de corecție a
erorilor de transmitere a pachetelor. Un astfel de mijloc este Transfer Control Protocol (TCP) – Protocolul de Control al Transferului.
Site-urile Web reprezintă o serie de pagini Web care sunt interconectate. Site-urile pot conține legături către alte site-uri, lucru care duce la obținerea unor pânze de informații. Primul document dintr-un site se numește Home Page (pagina de pornire). Ea conține legături către toate celelalte documente.
Site-urile Web sunt publicate prin transferul fișierelor HTML și al fișierelor multimedia asociate pe servere Web. Protocolul de transfer al fișierelor (FTP) este un standard care permite mutarea, redenumirea sau ștergerea fișierelor de pe un calculator la distanță.
Serverul de Web Apache
Unul dintre cele mai utilizate servere de web, Apache Web Server este un efort de a oferi o alternativă viabilă necomercială, în domeniul serverelor de web. Reușita acestui proiect este în mare măsură legată de fenomenele, inițiate prin oameni, ca Linux sau Stalman, ce au avut ca rezultat produse extraordinare, puternice , și eficiente (cum ar fi Linux, Emacs) precum și toate pachetele software apărute sub licența GNU.
Crearea unui proiect de sine stătător – The Apache Project este rezultatul reunirii unui mare număr de voluntari, comunicând prin intermediul Internet-ului. Aceștia sunt cunoscuți sub numele de Apache Group. În plus, sute de utilizatori din întreaga lume au contribuit la proiect prin cele mai diverse mijloace, de la cod sursă până la documentație HTML.
Apache își are originea din ideile și codul aflat în cel mai popular server HTTP al timpului – NCSA . În 1995 cel mai performant server de web era practic cel dezvoltat la NCSA , , de către Rob McCool. În momentul în care acesta a plecat și nu a mai continuat dezvoltarea serverului său, au început să apară o mulțime de programatori ce produceau versiuni modificate și îmbunătățite ale acestui server. Un grup de asemenea programatori au decis în februarie 1995 să se reunească într-un proiect de dezvoltare și îmbunătățire a serverului inițial. Pornind de la NCSA httpd 1.3 ei au construit, prin adăugarea celor mai bune patch-uri, versiunea Apache 0.6.2 care a fost lansată în aprilie 1995.
Deși NCSA și-a reînceput dezvoltarea serverului în aceeași perioadă, Apache a continuat să devină cel mai utilizat server de web din comunitatea unix în următorii doi ani. Acesta a fost implicat mai departe în cele mai multe sisteme UNIX care conțin servere HTTP.
Designul unei noi arhitecturi și rescrierea serverului într-o manieră extrem de modulară și eficientă a dus la o popularitate crescândă a serverului. Apache este, din ianuarie 1997, cel mai utilizat server WWW de Internet. De asemenea , Apache a arătat a fi cel mai rapid dintre serverele de tip free.
Serverul oferă majoritatea facilităților găsite în cazul oricărui server de web modern. O îndelungată perioadă de timp, acesta chiar a stabilit standardele în domeniu. Astfel, din punct de vedere al securității găsim suport SSL, protecție de tip username/password asupra directoarelor, HTTPS etc.
Server-side includes a fost o inovație a Apache Group-ului. Suportul modular de adăugare a unor noi facilități la server, content handlers, persistent connections, online statistics (incluzând aici chiar și broadcastingul de informație de logging) etc, toate acestea sunt elemente în care Apache a adus mai mult sau mai puțină noutate.
În present, serverul se prezintă sub forma unui pachet software de tip tar-gzip, existând și o versiune pentru Windows NT, ce conține sursele complete precum și un set de documentație pentru server. Compilarea serverului este extrem de facilă și nu s-a întâlnit nicio platformă uzuală care să aibă vreo problemă la compilare. .
Rezultatul compilării va fi în general un fișier binar executabil, numit în principal Apache.exe, localizat în directorul Apache. Se recomandă copierea acestui binar într-un loc mai sigur, eventual crearea unui director bin/ (de exemplu) și copierea în acel director. În unele versiuni mai vechi, calea (path-ul) către locul unde este instalat serverul, va trebui inserată în unele fișiere sursă, înainte de compilare. Deoarece acest fapt nu mai este de actualitate nu il vom comenta, însă se recomandă instalarea serverului la o locație destul de comună ,de exemplu: în Program Files/Apache.
După instalarea binarului (vom presupune Program Files/Apache Group ca director principal de instalare și Program Files/Apache Group/Apache directorul în care se gasește fișierul binar executabil apache.exe) va trebui configurat serverul prin modificarea unor fișiere de configurare. Acestea se găsesc în acest caz în Program Files/Apache Group/ Apache/conf. Ele sunt httpd.conf, access.conf, srm.conf. Fiecare dintre ele stabilesc parametri diferiți pentru serverul de web. Se recomandă citirea documentației de configurare. Nu trebuie modificate direct fișierele de configurare existente în acel director. De obicei numele acestora are o extensie “-dist”. (Ex. httpd.conf-dist) . Se copie acestea în fișiere cu nume fără extensia respectivă (Ex. cp httpd.conf-dist httpd.conf) și abia apoi se va modifica fișierul copie.
Configurarea serverului în cazul cel mai simplu impune doar modificarea, în httpd.conf, a numelui serverului precum și, în toate fișierele, a căilor (path) ce definesc locul de instalare a serverului, precum și a documentelor html.
După configurarea serverului, se impune pornirea acestuia. Exisă două moduri de rulare a serverului. Modul implicit și, cel mai utilizat mod de rulare, modul daemon. În mod daemon, acesta este pornit și rulează în background, activându-se de la sine de mai multe ori, asigurând astfel un bun timp de răspuns la cereri HTTP. AI doilea mod ar fi rularea serverului prin intermediul daemonului inetd. În acest caz, inetd are grijă de interceptarea unei cereri HTTP și pornirea unei copii a unui server de web pentru tratarea acelei cereri. Nu se recomandă acest mod de rulare decât în cazuri speciale.
Pornirea serverului (modul daemon) se rezumă la executarea binarului cu parametrii adecvați (în principal stabilirea căii fișierului primar de configurare httpd.conf) după care acesta va raporta orice erori sau probleme precum și accesele de web în cazul rulării, prin intermediul unor fișiere de log localizate în directorul logs/. În cazul unor erori sau porniri defectuoase, se recomandă analizarea fișierului error-log din logs/.
După ce s-a pornit serverul, există posibilitatea accesării unei documentații complete, chiar prin serverul proaspăt instalat.
Limbajul PHP (Hypertext Preprocessor)
PHP a fost conceput în anul 1994 de Rasmus Lerdorf. El folosea versiuni personale de PHP ca să monitorizeze cine îi vizita pagina sa personală.
Prima versiune de PHP care putea fi folosită de toată lumea a fost disponibilă în anul1995 și a fost cunoscută sub numele de Personal Home Page Tools. Aceasta consta dintr-un parser foarte simplu care recunoștea câteva macro-uri și un număr limitat de utilități care erau folosite pe paginile personale la acea vreme (cum ar fi guestbook, counter).
Parserul de PHP a fost rescris la jumătatea anului 1995 și s-a numit PHP/FI Version 2. FI vine Form Interpreter, un alt pachet pe care Rasmus l-a scris pentru interpretarea formelor HTML. El a combinat scripturile din Personal Home Page Tools cu Form Interpretor și a adăugat suport pentru mSQL și astfel a apărut PHP/FI. PHP/FI s-a răspândit foarte repede și a devenit foarte popular, deoarece mulți programatori au contribuit cu cod la perfecționarea lui.
Sunt greu de dat niște statistici exacte, dar se estimează că la sfârșitul anului 1996 PHP/FI era folosit de aproximativ 15.000 de site-uri web din toată lumea. Pe la mijlocul anului 1997 numărul acestora a crescut la 50.000.
Tot în anul1997 s-a observat o schimbare în dezvoltarea PHP-ului. PHP nu mai era proiectul propriu al lui Rasmus, ci era rezultatul eforturilor unei echipe de programatori.
Parserul a fost rescris de Zeev Surasky și Andi Gutmans, noul parser formând bazele PHP Version 3. Mare parte din codul PHP/FI a fost portat în PHP3 și altă parte de cod a fost complet rescrisă.
Ultima versiune, PHP4, folosește motorul de script Zend , ca să ofere performanțe mai mari, suportă mult mai multe biblioteci și extensii, și rulează ca un modul natural al server-ului de web.
PHP (oficial "PHP: Hypertext Preprocesor") este un limbaj de script HTML integrat de tip server-side, deci codul se execută pe server.
Este diferit de scripturile CGI scrise în alte limbaje ca Perl sau C++, în care se scrie mult cod pentru a genera HTML, deoarece se scrie script HTML cu cod de PHP încorporat. Codul PHP este încadrat de tag-uri speciale care ne permit să intrăm sau să ieșim din modul PHP.
La o privire de ansamblu, PHP poate să facă tot ceea ce face alte programe CGI, cum ar fi: culegerea de date, generare dinamică de cuprinsuri pentru pagini, trimite și primește cookie-uri.
Probabil cea mai puternică și cea mai importantă caracteristică a PHP este suportul pentru o gamă cât mai largă de baze de date. Cu PHP este foarte simplu de citit din baze de date și de scris în baze de date.
PHP suportă următoarele tipuri de baze de date: AdabasD, dBase, Empress, FilePro, HzperWare,IBM DB2, Informix, Ingres, InterBase, Frontbase, mSQ1, Direct MS-SQL, MySQL, ODBC, Oracle, Ovrimos, PostgreSQL, Solid, Sysbase, Velocis, UNIX dbm.
PHP prezintă suport, de asemenea, și pentru alte servicii de rețea folosind protocoale cum ar fi: IMAP, SNMP, NNTP, POP3, HTTP și altele mai puțin importante. Se pot deschide noduri brute de comunicație în rețea care interacționează folosind alte protocoale de comunicație.
Serverul de baze de date MySQL
MySQL este un server de baze de date SQL (Structured Query Language) foarte
rapid. O bază de date reprezintă o colecție de date organizate după anumite criterii. Pentru a accesa, adăuga sau procesa date conținute în baza de date, este nevoie de un sistem de administrare a bazelor de date, precum MySQL.
MySQL este foarte rapid, dar și ușor de învățat. În plus, este și gratuit; pachetul MySQL este disponibil la www.mysql.com sub forma unei arhive zip care trebuie despachetată într-un folder, de regulă – C:/MySQL. MySQL a fost dezvoltat pentru a lucra cu baze de date foarte complexe. Conectivitatea, viteza și securitatea îl fac foarte potrivit pentru accesarea bazelor de date în Internet.
Server-ul MySQL poate fi gestionat manual cu următoarele linii de comandă:
– mysqld.exe – pornește server-ul;
– mysqladmin.exe – oprește server-ul;
– mysql.exe – afișează consola MySQL.
2.7. Limbajul unificat de modelare – UML
Limbajul unificat de modelare (Unified Modeling Language – UML) reprezintă una dintre cele mai importante tehnici de concepere și modelare a sistemelor informatice, introducând standardizarea în tehnologia, semantica și reprezentarea rezultatelor.
Notația folosită este formată din simboluri grafice, ceea ce conduce la utilizarea sintagmei de “modelare vizuală” pentru UML, motiv pentru care se justifică declararea sa drept un limbaj de vizualizare. Acesta utilizează un set de diagrame (opt categorii) pentru a percepe modelele într-o proiectare obiectuală. Cele opt tipuri de diagrame oferă perspectivele sistemului și, împreună cu documentația aferentă, formează dosarul de bază al analizei și proiectării sistemului informatic.
Procesul unificat de dezvoltare este metoda de proiectare de sisteme informatice bazată pe UML.
Acest proces unificat de dezvoltare poate fi caracterizat prin :
Proces iterativ și incremental
Procesul are loc prin mai multe iterații succesive, ceea ce presupune ca procesul să fie definit în totalitate, cu toate detaliile din prima fază.
Dirijat de cazuri de uilizare
Cazurile de utilizare constituie punctul central al edificiului în stadiul inițial și precizează:
utilizatorii și cerințele acestora sub forma actorilor și a interacțiunile dorite de aceștia cu sistemul;
constituie punctual inițial în definirea cerințelor și referința pentru proiectarea și realizarea sistemului.
Înlănțuirea diagramelor UML se prezintă astfel :
Fig.8. Înlănțuirea diagramelor UML
Centrat pe arhitectură
Pilotat de riscuri
Ciclul de dezvoltare este compus din patru faze :
Stadiul preliminar, urmărește delimitarea ariei de cuprindere, stabilirea obiectivelor, studiul fezabilității în contextual unui sau mai multor modele de afaceri.
Rezultatul îl constituie viziunea asupra sistemului, care conține o descriere în care se precizează:
ce este sistemul;
cine îl va utiliza;
de ce va fi utilizat;
ce facilități trebuie să asigure;
la ce restricții trebuie să răspundă.
Elaborarea, asigură colectarea și precizarea atât a cerințelor funcționale cât și a celor non-funcționaleale viitorului sistem.
Construcția, asigură obținerea sistemului incluzând etapele : analiză, proiectare, programare și testare.
Tranziția, asigură introducerea în exploatare a sistemului la utilizator, unde trebuie să se regăsească problemele cu privire la configurarea și instalarea sistemului, furnizarea documentelor de exploatare, instruirea și formarea personalului etc.
În cadrul procesului unificat de dezvoltare pot să apară mai multe generații (soluții, variante) ale sistemului informatic, deoarece sistemul poate suporta pe parcurs mai multe modificări pentru care se folosesc notații de genul generația1, generația2 etc.
O activitate se realizează prin combinarea mai multor pași, pasul fiind o componentă elementară ce folosește mai multe elemente de intrare pe care le modifică sau pe baza cărora creează alte elemente noi.
În cadrul procesului unificat de dezvoltare apar cinci etape de bază:
Definirea cerințelor
Analiza
Proiectarea
Implementarea
Testarea
2.7.1. Identificarea cerințelor
Definirea cerințelor are drept scop stabilirea cerințelor funcționale ale viitorului sistem informatic ce sunt formulate și prezentare sub forma cazurilor de utilizare.
Principalii pași ce trebuie parcurși în definirea sistemului informatic sunt :
Identificarea actorilor
Identificarea cazurilor de utilizare
Descrierea cazurilor de utilizare
Definitivarea cazurilor de utilizare
Elementele adiționale
Identificarea actorilor
Definirea actorilor se face în funcție de răspunsurile la următoarele tipuri de întrebări :
“Cine este interesat de sistem?”;
“Cine furnizează date sistemului?”;
“Cine beneficiează de funcțiile sistemului?”;
“Cine va administra și întreține sistemul?”;
“Există mai multe personae care îndeplinesc mai multe roluri diferinte?”;
“În ce compartiment sau structură este utilizat sistemul?”;
“Sistemul utilizează resurse externe?”.
Pe baza întrebărilor, lista de actori realizată pentru studiul de caz, care interacționează cu sistemul informatic, este :
Clientul, furnizorul, utilizatorul;
Administratorul;
Interfața cu utilizatorul;
Agent livrări;
Banca.
Identificarea cazurilor de utilizare
Cazul de utilizare reprezintă un dialog între actor și sistemul informatic, prin care actorul beneficiează de una sau mai multe dintre funcționalitățile asigurate de sistem.
Diagrama cazurilor de utilizare constituie o tehnică de modelare pentru a descrie ce trebuie să facă viitorul sistem.
Cazurile de utilizare se stabilesc în funcție de următoarele întrebări :
“Care sunt cazurile de utilizare care asigură actualizarea datelor în sistem?”;
“Care sunt actorii care pot introduce modificări sau șterge date din sistem?”;
“Există actori ce trebuie să informeze despre evoluțiile apărute în sistem?”;
“Care este cazul de utilizare prin care se administrează și întreține sistemul?”;
“Cazurile de utilizare identificate răspund tuturor cerințelor funcționale?”.
Cazurile de utilizare identificate pentru modelarea sistemului informatic din studiul de caz sunt:
inițiate de administrator : login/logout, evidență utilizatori, evidență facturi,
evidență produse, întocmire comandă, realizare comandă, întocmire factură, operațiuni monetare, cu extensiile adăugare, modifică, ștergere
inițiate de client : login/logout, înregistrare în baze de date, actualizare date personale, întocmire factură
inițiate de furnizor : realizare comandă
inițiate de agent livrare : livrarea marfă
inițiate de bancă : operațiuni monetare
Descrierea cazurilor de utilizare
Descrierea unui caz de utilizare presupune obținerea cât mai multor detalii cu privire la acesta și prezentarea tuturor variantelor posibile de înlănțuire a elementelor în cazul de utilizare respectiv.
Sper exemplu, descrierea cazului de utilizare “Înregistrare client – persoană fizică” va fi:
DENUMIRE : Înregistrare client
SCOPUL : Memorarea datelor de înregistrare ale unui client nou
ACTORUL : Administratorul
PUNCT INITIAL : Actorul solicită înregistrarea datelor unui nou client
PUNCT FINAL : Memorarea/ abandonarea / salvarea datelor de înregistrare ale clientului.
DESCRIERE DERULARE : Administratorul deschide formularul pentru înregistrarea unui nou client – persoană fizică. În cadrul formularului introduce : nume, prenume, după care completează CNP-ul clientului, data de naștere, adresa clientului, numarul telefon, e-mail, număr cont bancar, banca, nume utilizator, parola și permisia. La terminare, actorul salvează datele noului client în baza de date.
REZULTATUL MASURABIL : Înregistrarea datelor clientului.
Definitivarea cazurilor de utilizare
Această etapă include atât revenirea la varianta precedentă, cât și corelațiile necesare referitoare la actori și cazurile de utilizare definite inițial.
Elementele adiționale
Se atașează ultimei variante după ce s-a realizat elaborarea și descrierea interfețelor cu utilizatorul.
2.7.2. Analiza și proiectarea orientată obiect
În etapa de analiză se urmărește cunoașterea a ceea ce urmează să fie dezvoltat în sistemul informatic, obținerea unei imagini de ansamblu din interior pentru a stabili sarcinile pe care acesta trebuie sa le realizeze.
În această etapă se definește un model al domeniului problemelor abordate independent de orice detaliu tehnic, model ce va cuprinde obiectele, clasele de obiecte ale domeniului, relațiile și comportamentul lor specific.
Etapa de proiectare presupune extinderea și adaptarea tehnică a rezultatelor obținute în etapa de analiză.
În decursul timpului, metodele de proiectare a sistemelor informatice au evoluat de la proiectarea ierarhică le cea sistemică, apoi la cea obiectuală.
Proiectarea obiectuală (modelarea obiect) a devenit o trăsătură comună generației actuale de metode de proiectare a sistemelor informatice de gestiune, și, în mod special, pentru sisteme de mari dimensiuni și complexe, chiar dacă utilizează pentru implementare bazele de date relaționale sau limbajele de programare fără funcționalități multiple.
În cadrul acestei etape se completează alementele definite în cursul analizei cu toate detaliile necesare trecerii la faza de implementare, cum ar fi :
Adăugarea de noi clase ;
Revederea și definitivarea claselor, atributelor și relațiilor definite în cadrul etapei anterioare ;
Extinderea și completarea laturii logice a arhitecturii sistemului.
Proiectarea orientară pe obiect se caracterizează prin :
Face parte din generația 3 (anii ‘90) ;
Sistemul informatic este perceput ca o structură de obiecte autonome ce se organizează și cooperează între ele ;
Fiecare obiect poate interveni în mai multe funcții sau scenarii diferite și poate participa la conceperea altor obiecte mai complexe ;
Un obiect are un anumit comportament definit prin : ansamblul operațiilor (serviciilor) pe care le poate efectua, datele și prelucrările prin care este implementat acest comportament sunt încapsulate și inaccesibile celorlalte obiecte, transformă structurarea programelor din proceduri (funcții) și date izolate în obiecte cu existență de sine stătătoare, care includ atât datele cât și procedurile care acționează asupra datelor.
Descrierea sistemului informatic se realizează prin intermediul :
Modelului static, care descrie obiectele și relațiile lor în sistem ;
Modelului dinamic, care descrie interacțiunea dintre obiecte în cadrul sistemului ;
Modelului funcțional, care descrie transferul valorii datelor în sistem.
Modelarea funcțională
Modelerea funcțională presupune modelarea cazurilor de utilizare ale sistemului și, respectiv, întocmirea diagramei cazurilor de utilizare.
Un caz de utilizare este întotdeauna inițiat de către un actor și descrie suita de interacțiuni dintre acesta și entitatea respectivă, manifestată printr-un schimb de mesaje, așa cum sunt acestea percepute din afara entității.
Analizând sistemul informațional de distribuție al firmei, diagrama cazurilor de utilizare se prezintă astfel:
Fig.9. Diagrama cazurilor de utilizare pentru departamentul de distribuție
Modelarea dinamicii sistemului
Pentru modelarea dinamicii sistemului, UML furnizează diagrame ce vizează starea (prin intermediul diagramei de stări) și comportamentul (prin intermediul diagramei de activitate, diagramei de colaborări, diagramei de secvențe) claselor de obiecte, obiectelor și a cazurilor de utilizare.
Acest tip de diagrame înlesnește înțelegerea cazurilor de utilizare mai dificile și susțin comunicarea în cadrul echipei de proiectare.
Diagramele de stare au rolul de a captura ciclul de viață al obiectelor, claselor de obiecte prin specificarea stărilor în care se poate găsi un obiect și a evenimentelor care-i afectează starea de-a lungul execuției. O diagramă de stare poate fi atașată oricărei clase care are stări clar identificabile și un comportament complex.
Diagrama de stare pentru clasa de obiecte Client din cadrul sistemului informatic de distribuție, se prezintă astfel :
fig.10. Diagrama de stare – clasa de obiecte CLIENT
O diagramă de activitate constituie o variantă a diagramei de stare, cu un scop puțin diferit, acela de a evidenția acțiuni și rezultate ale acestor acțiuni. Astfel, diagramele de activitate constituie o cale alternativă de descriere a interacțiunilor, cu posibilitatea de specificare a acțiunilor care se vor realiza.
fig.11. Diagrama de activitate – caz de utilizare LOGIN,
INREGISTRARE ÎN BAZE DE DATE
Fig.13. Diagrama de activitate – caz de utilizare EVIDENTA UTILIZATORI
Diagramele de secvență descriu modul în care obiectele interacționează și comunică între ele. Aceste diagrame permit focalizarea atenției asupra secvențelor de mesaje, adică asupra mesajelor care sunt transmise și recepționatede către obiecte.
Acest tip de diagramă este foarte util pentru definirea specificațiilor de funcționare în timp real și pentru scenarii de funcționare complexe, dând posibilitatea de a reprezenta grafic trecerea timpului.
fig.14. Diagrama de secvență – caz de utilizare EVIDENTA UTILIZATORI
ADĂUGARE
Diagrama de colaborare reprezintă o alternativă la diagrama de secvență pentru modelarea interacțiunilor între obiectele sistemului. În timp ce în diagrama de secvență accentul cade pe succesiunea cronologică a mesajelor, în diagrama de colaborare accentul cade pe identificarea și înțelegerea tuturor efectelor pe care scenariul le are asupra unui obiect.
Modelarea structurii statice
Diagrama claselor este instrumentul principal de analiză și proiectare a structurii astatice a sistemului. În cadrul acestei diagrame se precizează structura claselor sistemului, relațiile între clase și structurile de moștenire, însă nu și modul în care interacționează pentru a asigura un anumit comportament.
Construirea diagramei claselor presupune în primul rând identificarea claselor din sistem, proces esențial în cadrul proiectării sistemelor orientate obiect, de succesul acestuia depinzând în mare parte succesul proiectului.
Fig.15. Diagrama claselor
Capitolul 3
Proiectarea de detaliu a sistemului informartic
3.1. Proiectarea logică și fizică a ieșirilor
Ieșirile sistemului informatic proiectat pentru activitatea de distribuție conțin rezultatul prelucrărilor efectuate asupra datelor de intrare și se prezintă atât sub forma unor rapoarte, situații de rapoarte afișate pe ecran, cât și extrase pe suport de hârtie sau înregistrate pe un support extern cum ar fi disc hard sau flexibil, CD, etc.
Proiectarea logică de detaliu a ieșirilor înseamnă de fapt detalierea cerințelor informaționale stabilite în etapa proiectării de ansamblu și stabilirea, pentru fiecare situație în parte, a machetei corespunzatoare și a specificațiilor tehnice de realizare care o însotesc. Astfel, macheta fiecărui raport reprezintă practic formatul de descriere al acestuia și conține un antet, date fixe, date de identificare ale raportului, un cap de tabel, precum și rândurile de date curente și, eventual,rândurile de totaluri, subtotaluri, indicatori calculați.
Machetele se înaintează beneficiarului, care, în urma analizei lor, poate formula modificări ale formatului acestora.
Machetele rapoartelor, împreună cu specificațiile tehnice de realizare se înaintează echipei de programare, pentru a scrie efectiv programele corespunzatoare. În cadrul acestora sunt precizate informații precum: numărul de exemplare, destinația, termene, criterii de validare a datelor, algoritmi de calcu1.
Proiectarea fizică de detaliu a ieșirilor se realizează pe baza specificațiilor de ieșire și presupune definitivarea formei și formatului de prezentare a rapoartelor, așezarea în pagină, spațierea rândurilor, stabilirea procedurilor de interpretare a ieșirilor. Tot acum se alege tipul de suport fizic de ieșire (imprimantă, monitor, disc magnetic fix sau flexibil, CD, etc) în funcție de situația concretă a beneficiarului în ceea ce privește dotarea cu calculatoare și amplasarea acestora, modul de lucru (în rețea sau posturi individuale), costul suportului ales etc.
Principalele ieșiri ale aplicației sunt reprezentate de situațiile de informare obținute prin accesarea meniului din Modulul de administrare, după cum urmează:
NOMENCLATOR CLIENȚI
Descriere document:
aceasta este o situație de informare ce permite vizualizarea datelor de identificare ale tuturor clienților cu care societatea desfășoară activitate de distribuție;
se află inclus în submeniul “Afișare clienți” al meniului “Clienți” din modulul de administrare;
informațiile din acest raport despre clienți sunt structurate după id_user, nume,
localitate, strada, numar și județ de proveniență;
reprezintă sursa primară pentru întocmirea comenzilor și facturilor.
Detalii document:
frecvența – de cîte ori este necesară o analiză a activității de distribuție de către conducere;
numărul de exemplare – (2 exemplare) un raport pentru Directorul Generel și unul pentru Directorul Departamentului de Marketing;
destinația – situațiile de informare privind evidența clienților.
Sursă document:
tabela Utilizatori.
NOMENCLATOR PRODUSE
Descriere document:
permite vizualizarea datelor fiecărui produs, inclutând id-ul produsului din baza de date, denumirea, unitatea de măsură, prețul de vânzare, cantitatea disponibilă din stoc;
se află inclus în submeniul “Afișare produse” al meniului “Produse” din modulul de administrare;
reprezintă sursa primară pentru întocmirea comenzilor și facturilor.
Detalii document:
frecvența – de cîte ori este necesară o analiză a activității de distribuție de către conducere;
numărul de exemplare – (1 exemplare) un raport pentru Directorul Departamentului de Marketing;
destinația – situațiile de informare privind evidența produselor.
Sursă document:
tabela Produse.
VIZUALIZARE FACTURĂ FISCALĂ
Descriere document:
se proiectează o fereastră care cuprinde datele din fereastra Aviz de Expediție(dacă acesta există), datele de identificare ale unei facturi, precum datele despre TVA și valoarea totală de încasat (pentru a se respecta formatul standard al unei facturi).
reprezintă sursa primară pentru întocmirea facturilor.
Detalii document:
frecvența – în cazul tranzacțiilor în care destinatarul este un client persoană juridică, facturite se întocmesc zilnic;
numărul de exemplare – (3 exemplare) pentru Departamentul Financiar-Contabil, pentru Client și pentru institutiile financiare publice;
destinația – Departamentul Financiar-Contabil, pentru Client și pentru institutiile financiare publice.
Sursă document:
datele din acest document se vor prelua din informațiile cuprinse în comanda clientului.
RAPORT PRIVIND SITUAȚIA VÂNZĂRILOR
Descriere document:
permite evidența tuturor vânzărilor înregistrate de firmă într-un anumit interval de timp;
comenzile sunt înregistrate în ordinea cronologică a realizării lor, gruparea informațiilor în raport fiind realizată după câmpul Data comenzii;
structura datelor din raport este una simplă, dar eficientă, accentual punându-se pe evidența comenzii: data efectuării comenzii, produsul tranzacționat și valoarea de încasat.
Detalii document:
frecvența – la cererea factorilor de conducere, ori de câte ori este necesară o evidență a vânzărilor;
numărul de exemplare – (3 exemplare) pentru Directorul General, pentru Departamentul Financiar-Contabil și pentru Directorul Departamentului de Vânzări;
destinația – situațiile de informare privind activitatea agenților de vânzări, gestiunea comenzilor și valoarea totală a încasărilor.
Sursă document:
datele din tabela Comenzi.
VIZUALIZARE COMENZI DUPĂ DATA GENERĂRII
Descriere document:
se proiectează o fereastră care permite vizualizarea datelor tuturor comenzilor derulate în cadrul societății, precizându-se id-ul comenzii, data de realizare, id-ul clientului beneficiar, datele tranzacției (produsele tranzacției respective, cantitatea, preț, valoare), starea curentă a plății comenzii (achitată sau neachitată);
în meniul “Comenzi” din modulul de administrare există opțiunea de vizualizare a comenzilor în funcție de data generării comenzii;
Detalii document:
frecvența – se actualizează automat și se întocmește de câte ori există cerere pentru analiză din partea conducerii ;
numărul de exemplare – (1 exemplare) pentru Directorul Departamentului de Vânzări;
destinația – pentru întocmirea Listelor de evidență a comenzilor și calculul valorilor totale de încasat.
Sursă document:
datele din tabelele Clienți, Comenzi.
VIZUALIZARE COMENZI ACHITATE / NEACHITATE
Descriere document:
se proiectează o fereastră care permite vizualizarea datelor tuturor comenzilor derulate în cadrul societății, precizându-se id-ul comenzii, data de realizare, id-ul clientului beneficiar,starea comenzii, datele tranzacției (produsele tranzacției respective, cantitatea, preț, valoare), starea curentă a plății comenzii (achitată sau neachitată);
în meniul “Comenzi” din modulul de administrare există opțiunea de vizualizare a comenzilor în funcție de starea comenzii – “comenzi noi”, “comenzi în curs de rezolvare”, “comenzi rezolvate”, atributul Neachitat corespunzând stărilor “comenzi noi” și “comenzi în curs de rezolvare”, iar atributul Achitat stării “comenzi rezolvate”;
Starea comenzilor vizualizate în raport este sintetizată prin valorile booleene (True/False) ale atributului Achitat, atribut în,funcție de care se identifică și tipul de situație de informare ce se dorește a se vizualiza: Comenzi achitate, Comenzi neachitate.
Detalii document:
frecvența – se actualizează automat în momentul plății unei comenzi de către client (prin trecerea din starea Neachitat în starea Achitat) și se vizualizează ori de câte ori există cerere de analiză din partea factorilor de conducere;
numărul de exemplare – (3 exemplare) pentru Directorul General, pentru Departamentul Financiar-Contabil și pentru Directorul Departamentului de Vânzări;
destinația – pentru întocmirea Listelor de evidență a comenzilor restante și a totalului datoriilor clienților către firmă.
Sursă document:
datele din tabelele Clienți, Comenzi.
REGISTRU DE EVIDENȚĂ COMENZI
Descriere document:
cuprinde datele de identificare ale fiecărui client coroborate cu datele despre comenzile pe care acesta le realizează;
este inclus în meniul “Comenzi” din modulul de administrare, aici existând opțiunea de vizualizare a comenzilor în funcție de numele de utilizator folosit de fiecare client înregistrat în baza de date;
se proiectează o fereastră care să permită furnizarea de informații atât în ceea ce privește clientul, cât și în privința comenzilor pe care acesta le-a realizat.
Detalii document:
frecvența – se actualizează automat în funcție de comenzile întocmite de client.
numărul de exemplare – (1 exemplare) pentru Departamentul de Vânzări;
destinația – acest document este folosit de către agentul de vânzări pentru evidența comenzilor.
Sursă document:
datele din tabelele Clienți, Comenzi.
3.2. Proiectarea logică și fizică a intrărilor
Proiectarea de detaliu a intrărilor cuprinde, ca și la ieșiri, cele două etape: proiectarea logică de detaliu și proiectarea fizică de detaliu.
În etapa de proiectare logică de detaliu se stabilește lista completa a intrărilor, pentru fiecare document de intrare descriindu-se elementele caracteristice cum, sunt conținutul informațional, natura și structura datelor, frecvența de apariție, volumul, criteriile de control și validare a datelor, etc.
Datele de intrare parcurg o succesiune de etape în cadrul sistemului informatic din momentul generării și culegerii lor până la momentul utilizării și prelucrării lor efective. De aceea, în cadrul sistemului sau aplicației proiectate se impune ca datele de intrare să fie culese de pe documentele primare care atestă diferitele procese economice pentru a asigura principiul nonredundantei datelor în sistem, corectitudinea lor și responsabilitatea celor care le gestionează în cadrul sistemului.
În proiectarea fizică de detaliu, numită și proiectare tehnică de detaliu, se realizează toată această activitate de proiectare a documentelor de intrare și a machetelor (ecranelor, videoformatelor sau formularelor) datelor de intrare, se stabilesc condițiile de validare a datelor și instrucțiuni de corectare a acestora, se alege suportul tehnic pentru memorarea datelor, se definesc procedurile (manuale sau automate) de culegere și transmitere a date lor și se reproiectează, daca este cazul, chiar documentele primare de înregistrare a date lor – pentru a răspunde cerințelor prelucrării automate.
Proiectarea de detaliu a situațiilor de intrare pentru sistemul informatic de distribuție a societății S.C.“VirtualPC” :
ÎNREGISTRARE DATE CLIENȚI
Descriere document:
cuprinde datele de identificare ale unui client ce solicită o comandă, pentru înregistrarea lui în baza de date, dacă acesta este un client nou;
Sursa documentului:
datele de identificare furnizate de clienți pentru conectarea la baza de date, înainte de a putea face o comandă;
Destinația documentului:
situații de informare privind Evidența clienților;
Beneficiarul documentului:
Departamentul de Vânzări.
ACTUALIZARE DATE CLIENȚI
Descriere document:
cuprinde datele noi de identificare ale unui client, dacă este cazul, ce solicită o comandă;
Sursa documentului:
datele de identificare furnizate de clienți la conectarea la baza de date, înainte de a face o comandă;
Destinația documentului:
situații de informare privind Evidența clienților;
Beneficiarul documentului:
Departamentul de Vânzări.
ÎNREGISTRARE DATE PRODUSE
Descriere document:
cuprinde datele despre produsele noi achiziționate de firmă ;
Sursa documentului:
datele furnizate de gestionar administratorului bazei de date, la achiziționarea de produse noi;
Destinația documentului:
situații de informare privind Evidența produselor;
Beneficiarul documentului:
Departamentul de Vânzări.
ACTUALIZARE DATE PRODUSE
Descriere document:
cuprinde datele noi despre un produs deja existent în baza de date a firmei ;
Sursa documentului:
datele de identificare furnizate de gestionar administratorului bazei de date;
Destinația documentului:
situații de informare privind Evidența produselor;
Beneficiarul documentului:
Departamentul de Vânzări.
BON COMANDĂ
Descriere document:
este un document tipizat, astfel că videoformatul proiectat cuprinde toate datele standard ale unui Bon de comandă;
Detalii document:
frecvența – servește pentru tranzacțiile în care destinatarul este clientul;
numărul de exemplare – (3 exemplare) pentru Departamentul Financiar-Contabil, pentru Client și pentru Gestiune;
destinația – Directorul Financiar-Contabil, Clientul,Gestionarul.
Sursa documentului:
datele din tabela Comenzi;
Destinația documentului:
Evidență comenzi, facturi
Beneficiarul documentului:
Departamentul de Vânzări.
JURNAL DE VÂNZĂRI
Descriere document:
Permite identificarea clienților firmei, prin identificarea, în funcție de numele beneficiarului, a datelor comenzilor și a facturilor aferente tranzacțiilor efectuate;
Sursa documentului:
Comanda pe baza căreia s-a realizat tranzacția;
Destinația documentului:
situații de informare privind Evidența vânzărilor;
Beneficiarul documentului:
Departamentul de Vânzări.
3.3. Proiectarea logică și fizică a bazei de date
Structura logică a bazei de date reprezintă forma sub care apare structura
conceptuală a bazei de date pentru un utilizator oarecare.
Programele de aplicație operează asupra elementelor structurii conceptuale prin intermediul structurii logice, având acces doar la acele elemente ale structurii conceptuale care sunt incluse în structura logică.
Elementele care compun structura logică sunt, în general, similare celor care
compun structura conceptuală, totuși depind de tipul de SGBD utilizat. De regulă, fiecărei entități de grup identificate în analiza datelor și a
prelucrărilor lor i se asociază inițial câte o tabelă, definită prin caracteristicile ei.
Această etapă presupune denumirea tabelelor componente ale bazei de date, definitivarea structurii logice a fiecărei tabele, descrierea relațiilor dintre ele și stabilirea restrictiilor de integritate a acestora.
Se observă că, prin separarea nivelului logic de nivelul conceptual, se separă practic funcția de administrare de funcția de utilizare – exploatare a bazei de date.
Principalele activități abordate în cadrul etapei de proiectare a structurii fizice a bazei de date sunt:
Proiectarea machetelor de stocare a datelor
Definirea caracteristicilor fizice le nivelul fișierelor bazei de date
Calculul necesarului de support ethnic de date
Aceste activități sunt în strânsă legătura cu SGBD-ul ales, alegerea sistemului de gestiune a bazei de date fiind o problemă deosebit de importantă în proiectare ce se realizează pe baza unor criterii:
Cerințele utilizatorilor, în legatură cu tipul de aplicații solicitate, timpul de răspuns al sistemului, securitatea datelor, confidențialitatea lor, ușurința de utilizare, etc. E posibil uneori ca utilizatorul să impună chiar el un anume SGBD.
Necesități de ordin tehnic, legate de portabilitatea colecțiilor de date, a programelor și a SGBD-ului ales pe diverse sisteme de calcul, facilități de încărcare, de întreținere și de exploatare curentă a bazei de date.
Proiectarea tabelelor aplicației:
3.4. Descrierea unor funcții utilizate în aplicație
a. Funcții PHP
isset() – funcție care verifică dacă a fost setată o valoare a unei variabile;
require() – funcție care include în scriptul curent conținutul unui fișier;
trim() – funcție care elimină spațiile goale de la începutul și sfârșitul unui șir de caractere specificat ca parametru;
– funcție definită de programator care verifică dacă clientul este autentificat sau nu;
– funcție definită de programator care înlocuiește caracterele speciale dintr-un șir înainte de a-l afișa ;
b. Funcții JavaScript
– funcție definită de programator care afișează un message-box al cărui text conține și diacritice;
– funcție definită de programator care verifică formatul șirului de caractere ce reprezintă o adresă de email;
– funcție definită de programator care returnează coordonata X a unui anumit obiect față de marginea din stânga;
– funcțiile de mai sus sunt definite de programator și ele sunt folosite pentru eliminarea spațiilor fie de la începutul, fie de la sfârșitul, fie și de la începutul și de la sfârșitul unui șir;
– funcție definită de programator care creează un cookie și-i atribuie acestuia o valoare;
– funcție definită de programator care selectează ca valori inițiale ziua, luna și anul pentru trei select-box-uri;
Capitolul 4
Prezentarea produsului software
4.1. Structura magazinului
Aplicația realizată pentru departamentul de distribuție a produselor IT, din cadrul firmei S.C. “VirtualPC” S.A., este structurată pe patru module :
modulul de înregistrare a utilizatorilor ;
modulul de autentificare ;
modulul de administrare ;
modulul de client .
a) Modulul de înregistrare oferă posibilitatea de înregistrare a persoanelor care nu au un cont de acces la baza de date a aplicației, pentru a realiza o comandă trebuind mai întâi să se autentifice.
În funcție de natura juridică (persoană fizică, persoană juridică), există două pagini de introducere a datelor de identificare : „Înregistrare persoane fizice” și „Înregistrare persoane juridice”.
Fig. . Înregistrare persoane fizice
Fig. . Înregistrare persoane juridice
b) Modulul de autentificare permite verificarea identității celui care dorește să se conecteze la baza de date (trebuie să fie deja înregistrat în baza de date a firmei) și să folosească aplicația.
a. b. c.
Fig. . Autentificare utilizator
Figura a. reprezintă starea inițială a formularului de autentificare, iar figura b. starea formularului după autentificarea utilizatorului-client și figura c. a utilizatorului cu drept de administrator.
c) Modulul de administrare are un rol esențial în buna funcționare a aplicației, dar mai ales în gestionarea eficientă a resurselor și activității de comerț electronic desfășurate – punând la dispoziția utilizatorilor cu drepturi de administrator o interfață de control puternică și ușor de utilizat.
Fig. . Modul administrare
Modulul de administrare este format din următoarele secțiuni :
Administrare clienți
Această secțiune conține partea de “Afișare clienți” și partea de “Adăugare clienți”, care, în funcție de tipul utilizatorului (persoană fizică sau persoană juridică), afișarea sau adăugarea în baza de date se realizează folosind pagini diferite : „Afișare persoane fizice”, „Afișare persoane juridice”, „Adăugare persoane fizice” și „Adăugare persoane juridice”.
Fig. . Modul administrare clienți
Administratorul are posibilitatea de a ține evidența utilizatorilor cu ajutorul paginii „Afișare utilizatori”, unde poate efectua operațiuni de modificare sau ștergere a acestora.
Fig. . Afișare persoane fizice
În efectuarea operațiunii de ștergere, prin apăsarea butonului OK, apare mai întîi un mesaj de confirmare din partea administratorului a ștergerii respectivului client, cu posibilitatea anulării operațiunii.
La sfârșitul operațiunii de modificare, administratorul primește un mesaj din partea sistemului cu textul “Modificare reușită”, dacă nu au apărut alte mesaje de atenționare cu privire la regulile de gestiune, implementate în sistem, de introducere a datelor.
Fig. . Ștergere client din baza de date
Fig. . Modificare date client
Adăugarea clienților în baza de date de către administrator se realizează folosind paginile : „Adăugare persoane fizice” și „Adăugare persoane juridice”, care sunt identice ca format cu paginile „Înregistrare persoane fizice” și „Înregistrare persoane juridice” din modulul de Înregistare.
Administrare produse
Această secțiune conține partea de vizualizare și partea de adăugare a produselor în catalog.
Vizualizarea produselor se face în meniul “Afișare categorii produse” după categorie și apoi subcategorie.
Fig. . Vizualizare produse
Administratorul are posibilitatea de a ține evidența produselor cu ajutorul acestei pagini, unde poate efectua acțiuni de modificare sau ștergere a produselor. La fel ca și în secțiunea de administrare a clienților, la efectuarea operațiunii de ștergere, prin apăsarea butonului OK, apare mai întîi un mesaj de confirmare a ștergerii respectivului client, cu posibilitatea anulării operațiunii, iar la operațiunea de modificare, administratorul primește un mesaj din partea sistemului cu textul “Modificare reușită”, dacă nu au apar alte mesaje de atenționare cu privire la introducerea datelor.
Prin meniul “Adaugă produse” sunt introduse în baza de date a firmei de către
administrator a produselor noi achiziționate ce nu au fost niciodată înregistrate în nomenclatorul de produse.
Fig. . Adăugare produse
Administrare comenzi
Adminstratorul vizualizează comenzile clienților după următoarele criterii de căutare, având posibilitatea combinării tuturor criteriilor prin selectarea checkbox-ului:
numele utilizatorului ;
data generării comenzii, cu posibilitatea alegerii unui interval de timp ;
starea comenzii (comenzi noi, în derulare sau rezolvate).
Fig. . Căutare comenzi după diferite criterii
Pentru fiecare comandă, administratorul are posibilitatea de a vedea detalii despre aceasta sau detalii despre clietul care a emis-o.
În momentul în care clientul confirmă comanda, administratorul îi atribuie acesteia starea „Rezolvată” și emite factura.
Administrare facturi
Administratorul poate să vizualizeze, după mai multe criterii de căutare, facturile emise către clienți. În dreptul fiecăreia există un buton „Afișare detalii factură”, care deschide pagina cu detaliile acesteia în formatul unei facturi fiscale.
d) Modulul de client este format din următoarele secțiuni :
Catalog produse
Clientul are posibilitatea de a vizualiza produsele, ca și atunci când nu era autentificat, după o serie de criterii :
Categorie ;
Subcategorie ;
Producător.
Fiecare produs poate fi adăugat la coșul de cumpărături prin intermediul butonului „Cumpără”, iar prin „+”, „-” se poate mări sau micșora numărul de bucăți din respectivul produs . Dacă produsul este cerut într-o cantitate mai mare decât cea din stoc, va apărea incrementată cantitatea maximă aflată în stoc ce poate fi comandată.
Fig. . Vizualizare produse
Coș cumpărături
Această secțiune cuprinde partea de vizualizare a produselor din coșul de cumpărături cu posibilitatea de a modifica cantitatea aleasă dintr-un anumit produs sau de stergere totală a produsului din respectiva comandă. Apoi, prin intermediul butonului “Comandă”, selectând produsele dorite, se generează comanda ce conține pe lângă prețul total al produselor și prețul de transport calculat în funcție de adresa clientului, și prețul total al comenzii respective.
Fig. . Coș cumpărături
Fig. . Comandă
Prin butonul “Trimite”, coșul de cumpărături al clientului se golește, iar comanda este trimisă către administrator.
Comenzile mele
Acest formular permite clientului vizualizarea tuturor comenzilor realizate de el, iar prin schimbarea stării checkbox-ului din “+” în “-”, comanda se detaliază pe produsele ce sunt conținute, numărul de bucăți, prețul unitar și prețul total al produselor calculat ca număr bucăți * preț unitar.
Fig. . Vizualizare comenzi
Date personale
Clientul poate să vadă datele sale cu care s-a înregistrat, și să le actualizeze dacă este cazul.
Fig. . Vizualizare date prsonale
Modifică parolă
Utilizatorul are posibilitatea prin intermediul acestui formular să își modifice vechea parolă.
Fig. . Modificare parolă
4.2. Implementarea aplicației
Implementarea aplicației presupune asigurarea pentru beneficiar a unor condiții de punere în funcțiune, cum ar fi:
manualul cu instrucțiuni de executare a procedurilor manuale și automate;
pregătirea personalului utilizator, atragere personal de decizie, pregătirea psihologică a utilizatorilor informaticieni și neinformaticieni, etc;
asigurarea condițiilor organizatorice necesare funcționării sistemului;
punerea la dispoziție a resurselor hardware și a spațiului corespunzător desfășurării lucrărilor de informatică;
asigurarea fondului informațional – colectare, ordonare, codificare, trecere pe suport a datelor fixe și a datelor variabile, preluare date din fișiere cu ajutorul programelor.
Considerente ce influențează funcționarea noului sistem :
pentru unitățile nou înființate – punerea în funcțiune coincide cu organizarea sistemului informațional al unității;
punerea în funcțiune a sistemului informatic atrage perfecționarea sistemului informațional existent;
punerea în funcțiune a sistemului informatic, în condițiile în care tehnica de calcul este: proprie, închiriată sau mixtă;
punerea în funcțiune simultană a tuturor componentelor sistemului informatic și pe întreaga sferă de acțiune;
punerea în funcțiune a tuturor componentelor sistemului informatic, dar cu eșalonarea în timp în ceea ce privește sfera de cuprindere;
punerea în funcțiune a sistemului informatic, prin punerea în funcțiune eșalonată a componentelor sale.
Operațiile de culegere, înregistrare și transmitere date reprezintă momentul punerii în funcțiune a sistemului, și trebuie să coincidă cu începutul unei perioade semnificative (ex. început de an, de semestru, introducere de noi forme de organizare, lansarea de noi tehnologii etc.).
4.3. Testarea aplicației
Testarea software este procesul căutării erorilor în program, indiferent dacă acestea au cauze logice sau fizice. Obiectivul principal al testării software este găsirea erorilor, altfel spus, de a identifica neconcordanța dintre ceea ce este planificat să efectueze aplicația și ceea ce realizează în realitate. Testarea nu presupune identificarea cauzei erorilor și corecția acestora, acestea fiind activități specifice depanării.
Testarea este privită ca o componentă majoră a calității software. Un produs software testabil se consideră ca fiind inteligibil (structurat, concis și auto-descriptibil) și măsurabil (accesibil și cuantificabil).
Testarea software este necesară pentru asigurarea calității, dar este un process scump și laborios, ce consumă de la o treime până la jumătate din costul unui proiect. În procesul dezvoltării software există un număr de produse care trebuie testate:
modelele cerințelor;
modelele analizei și proiectării;
modelele arhitecturale;
componentele individuale;
codul integrat al sistemului.
De fapt, activitatea de testare trebuie asociată cu fiecare pas în procesul de dezvoltare. Acest lucru permite descoperirea erorilor devreme în procesul de dezvoltare software, având drept consecință costuri mai mici de corecție.
Există două strategii de testare: testarea funcțională și testarea structurală. Testarea structurală necesită înțelegerea structurii interne a programului (codul sursă) și pune accentual pe acoperirea prin test a căilor și ramificațiilor programului. Testarea funcțională necesită cunoașterea a cum ar trebui să fie comportamentul extern al programului, bazându-se pe specificațiile acestuia.
Testarea aplicațiilor bazate pe arhitectura Web, în plus față de testarea aplicațiilor clasice, necesită o serie de teste specifice, cum ar fi: testarea de încărcare, testarea de compatibilitate, testarea funcțională, testarea conținutului, testarea serverului Web, testarea securității, testarea serverului de aplicații și testarea bazelor de date.
Testarea aplicațiilor de comerț electronic se realizează fie de către echipe specializate în testare în cadrul departamentului de asigurare a calității al firmei, fie de către o firmă specializată în testare (din outsourcing). Elementele care stau la baza deciziei de contractare a unei firme specializate în testare sunt: lipsa surselor pentru realizarea pe termen lung a testelor, dorința de asigurare a unei obiectivități asupra evaluării calității și, nu în ultimul rând, analiza cost-beneficiu realizată pe baza estimației costurile privind testarea.
Codul Sursa
<?php
require 'scripts_php/functions.php' ;
if (logged()) {
echo "<input name='login_check' id='login_check' type='hidden' value='" . $_SESSION["nume_utilizator"] . "'/>" ;
echo "<input name='permisii' id='permisii' type='hidden' value='" . $_SESSION["permisii"] . "'/>" ;
echo "<input name='id_user' id='id_user' type='hidden' value='" . $_SESSION["id_user"] . "'/>" ;
} else {
echo "<input name='login_check' id='login_check' type='hidden' value='not logged in'/>" ;
echo "<input name='id_user' id='id_user' type='hidden' value='" . $_SESSION["id_user"] . "'/>" ;
}
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Ştefan – Magazin Virtual</title>
<link href="css/styles.css" rel="stylesheet" type="text/css" />
<script language="javascript" type="text/javascript" src="scripts_js/prototype.js"></script>
<script language="javascript" type="text/javascript" src="scripts_js/functii.js"></script>
</head>
<body>
<div align="center" id="div_main">
<table width="90%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<table width="100%" border="0" ellspacing="0" cellpadding="0">
<tr>
<td width="122"><img src="images/logo.gif" width="122" height="100" /></td>
<td align="center" id="td_header_center">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="73" align="center" id="td_title">
<MARQUEE scrollAmount=6> Virtual PC
</MARQUEE></td>
</tr>
<tr>
<td align="center">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td id="td_menu_left" align="left"> <a href="javascript://" onclick="page('acasa')">Acasă</a> | <a href="javascript://" onclick="page('cine_suntem')">Cine suntem</a> | <a href="javascript://" onclick="page('contact')">Contact</a></td>
<td id="td_menu_right" align="right"> </td>
</tr>
</table>
</td>
</tr>
</table> </td>
<td width="23"><img src="images/header_right.gif"/></td>
</tr>
</table> </td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="180" valign="top" align="left">
<!—
===========================================================
TABELUL CU MENIURILE PRINCIPALE ALE ADMINISTRATORULUI
<table border="0" width="180" cellspacing="0" cellpadding="0" id="table_menu_admin" style="display:none">
<tr>
<td>
<table border="0" width="180" cellspacing="0" cellpadding="0">
<tr>
<td width="10" height="22"><img border="0" src="images/title1.png" width="10" height="22"></td>
<td height="22" background="images/title2.png" align="center" id="td_title_produse">MENU</td>
<td width="10" height="22"><img border="0" src="images/title3.png" width="10" height="22"></td>
</tr>
</table> </td>
</tr>
<tr>
<td id="td_content_menu_admin">
<a href="javascript://" onclick="fill_main_content_clienti('all')">Clienţi</a>
<br>
<a href="javascript://" onclick="fill_main_content_categorii_produse()">Produse</a>
<br>
<a href="javascript://" onclick="fill_main_content_comenzi()">Comenzi</a>
<br>
<a href="javascript://" onclick="fill_main_content_facturi()">Facturi</a>
</td>
</tr>
</table>
<!—
===========================================================
TABELUL CU MENIURILE PRINCIPALE ALE ADMINISTRATORULUI
===========================================================
<!—
===========================================================
TABELUL CU PRODUSE
<table border="0" width="180" cellspacing="0" cellpadding="0" id="table_produse">
<tr>
<td>
<table border="0" width="180" cellspacing="0" cellpadding="0">
<tr>
<td width="10" height="22"><img border="0" src="images/title1.png" width="10" height="22"></td>
<td height="22" background="images/title2.png" align="center" id="td_title_produse">PRODUSE</td>
<td width="10" height="22"><img border="0" src="images/title3.png" width="10" height="22"></td>
</tr>
</table>
</td>
</tr>
<tr>
<td id="td_content_produse">
<script language="javascript" type="text/javascript">populate_produse()</script>
</td>
</tr>
</table>
<!—
TABELUL CU PRODUSE
<br>
<!—
===========================================================
TABELUL CU PRODUCATORI
<table border="0" width="180" cellspacing="0" cellpadding="0" id="table_producatori">
<tr>
<td>
<table border="0" width="180" cellspacing="0" cellpadding="0">
<tr>
<td width="10" height="22"><img border="0" src="images/title1.png" width="10" height="22"></td>
<td height="22" background="images/title2.png" align="center" id="td_title_producatori">PRODUCĂTORI</td>
<td width="10" height="22"><img border="0" src="images/title3.png" width="10" height="22"></td>
</tr>
</table>
</td>
</tr>
<tr>
<td id="td_content_producatori">
<script language="javascript" type="text/javascript">populate_producatori()</script>
</td>
</tr>
</table>
<!—
===========================================================
TABELUL CU PRODUCATORI
===========================================================
</td>
<td align="center" valign="top">
<!—
===========================================================
TABELUL CU CONTINUTUL PRINCIPAL
===========================================================
<table border="0" width="98%" cellspacing="0" cellpadding="0">
<tr>
<td>
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="10" height="22"><img border="0" src="images/title1.png" width="10" height="22"></td>
<td height="22" background="images/title2.png" align="left" id="td_title_main" class="class_title_menu">Acasă</td>
<td height="22" background="images/title2.png" align="right" id="td_inapoi_main"></td>
<td width="10" height="22"><img border="0" src="images/title3.png" width="10" height="22"></td>
</tr>
</table>
</td>
</tr>
<tr>
<td id="td_content_main" align="center">
<?php
include 'pages/acasa.php' ;
?>
</td>
</tr>
</table>
<!—
===========================================================
TABELUL CU CONTINUTUL PRINCIPAL
===========================================================
</td>
<td width="180" valign="top">
<!—
===========================================================
TABELUL LOGIN
===========================================================
<table border="0" width="180" cellspacing="0" cellpadding="0">
<tr>
<td>
<table border="0" width="180" cellspacing="0" cellpadding="0">
<tr>
<td width="10" height="22"><img border="0" src="images/title1.png" width="10" height="22"></td>
<td height="22" background="images/title2.png" align="center" id="td_title_produse">LOGIN</td>
<td width="10" height="22"><img border="0" src="images/title3.png" width="10" height="22"></td>
</tr>
</table>
</td>
</tr>
<tr>
<td id="td_content_login" align="center">
<table border="0" width="170" cellspacing="0" cellpadding="0" id="table_login" style="display:none">
<tr class="tr_sparcer">
<td> </td>
<td colspan="2"> </td>
</tr>
<tr class="tr_sparcer">
<td> </td>
<td colspan="2"> </td>
</tr>
<tr>
<td width="63" align="right" class="login">utilizator : </td>
<td width="54" align="right"><input name="index_nume_utilizator" id="index_nume_utilizator" type="text" size="15" maxlength="20" class="text_box"/></td>
<td width="53"> </td>
</tr>
<tr class="tr_sparcer">
<td> </td>
<td colspan="2"> </td>
</tr>
<tr>
<td align="right" class="login">parolă : </td>
<td align="right"><input name="index_parola" type="password" class="text_box" id="index_parola" size="15" maxlength="20"/></td>
<td> </td>
</tr>
<tr class="tr_sparcer">
<td> </td>
<td colspan="2"> </td>
</tr>
<tr>
<td> </td>
<td align="right">
<a href="javascript://" onclick="login('index')" onmouseover="$('img_login').src='images/login_over.gif'" onmouseout="$('img_login').src='images/login.gif'">
<img id="img_login" src="images/login.gif" alt="Apăsaţi aici pentru a vă trimite datele de autentificare !!!" width="40" height="10" border="0"/>
</a>
</td>
<td> </td>
</tr>
<tr class="tr_sparcer">
<td> </td>
<td colspan="2"> </td>
</tr>
<tr>
<td> </td>
<td align="right">
<a href="javascript:change_title('Înregistrare'); fill_main_content_inregistrare()" onmouseover="$('img_inregistrare').src='images/inregistrare_over.gif'" onmouseout="$('img_inregistrare').src='images/inregistrare.gif'">
<img id="img_inregistrare" src="images/inregistrare.gif" alt="Apăsaţi aici pentru a vă înregistra pe site-ul nostru !!!" width="60" height="10" border="0"/>
</a>
</td>
<td> </td>
</tr>
</table>
<script language="javascript" type="text/javascript">
var login_check ;
login_check = trim($('login_check').value) ;
if (login_check == "not logged in")
$('table_login').show() ;
else
change_content_login(login_check) ;
</script>
</td>
</tr>
</table>
<!—
===========================================================
TABELUL LOGIN
===========================================================
<br>
<!—
===========================================================
TABELUL CU COSUL DE CUMPARATURI
<table border="0" width="180" cellspacing="0" cellpadding="0" id="table_cos_cumparaturi" style="display:none">
<tr>
<td>
<table border="0" width="180" cellspacing="0" cellpadding="0">
<tr>
<td width="10" height="22"><img border="0" src="images/title1.png" width="10" height="22"></td>
<td height="22" background="images/title2.png" align="center" id="td_title_cos"><a href="javascript://" onclick="fill_main_content_cos(trim($('login_check').value))">COŞ CUMPĂRĂTURI</a></td>
<td width="10" height="22"><img border="0" src="images/title3.png" width="10" height="22"></td>
</tr>
</table>
</td>
</tr>
<tr>
<td id="td_content_cos" align="center">
<script language="javascript" type="text/javascript">
var login_check ;
login_check = trim($('login_check').value) ;
populate_cos(login_check) ;
</script>
</td>
</tr>
</table>
<!—
===========================================================
TABELUL CU COSUL DE CUMPARATURI
===========================================================
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="15"><img border="0" src="images/footer_left.gif"></td>
<td background="images/footer_center.gif" align="center" id="td_footer"><a href="javascript://" onclick="window.location = window.location">Virtual PC </a><strong> © toate drepturile rezervate</strong></td>
<td width="15"><img border="0" src="images/footer_right.gif"></td>
</tr>
</table> </td>
</tr>
</table>
</div>
<script language="javascript" type="text/javascript">
if ($('permisii')) {
if (trim($('permisii').value) == "client") {
var string ;
string = "<a href='javascript://' onclick='fill_main_content_comenzile_mele()'>Comenzile mele</a> | <a href='javascript://' onclick='fill_main_content_date_personale()'>Date personale</a> | <a href='javascript://' onclick='fill_main_content_modificare_parola()'>Modifică parolă</a>" ;
$("td_menu_right").update(string) ;
$('table_produse').show() ;
$('table_producatori').show() ;
$('table_cos_cumparaturi').show() ;
$('table_menu_admin').hide() ;
}
else if (trim($('permisii').value) == "administrator") {
$("td_menu_right").update("") ;
$('table_produse').hide() ;
$('table_producatori').hide() ;
$('table_cos_cumparaturi').hide() ;
$('table_menu_admin').show() ;
}
}
</script>
<div align="center" id="div_main_modifica">
<table border="0" width="100%" cellspacing="0" cellpadding="0" style="cursor:move">
<tr>
<td width="10" height="22"><img border="0" src="images/title11.png" width="10" height="22"></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png);
background-repeat:repeat-x">
</td>
<td height="22" align="center" style="background- image:url(images/title2.png);
background-repeat:repeat-x; color:#FFFFFF"><strong>Modificare date client</strong></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png);
background-repeat:repeat-x">
<a href="javascript://" onclick="$('div_main_modifica').hide(); hide_cover('div_main_cover');" style="font-size:16px; color:#FFFFFF; font-weight:bolder; text-decoration:none">X</a>
</td>
<td width="10" height="22"><img border="0" src="images/title31.png" width="10" height="22"></td>
</tr>
</table>
<div id="div_modifica_client" align="center"> </div>
</div>
<div align="center" id="div_main_adauga">
<table border="0" width="100%" cellspacing="0" cellpadding="0" style="cursor:move">
<tr>
<td width="10" height="22"><img border="0" src="images/title11.png" width="10" height="22"></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x"> </td>
<td height="22" align="center" style="background-image:url(images/title2.png); background-repeat:repeat-x; color:#FFFFFF"><strong>Adăugare client</strong></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x">
<a href="javascript://" onclick="$('div_main_adauga').hide(); hide_cover('div_main_cover') ;" style="font-size:16px; color:#FFFFFF; font-weight:bolder; text-decoration:none">X</a>
</td>
<td width="10" height="22"><img border="0" src="images/title31.png" width="10" height="22"></td>
</tr>
</table>
<div id="div_adauga_client" align="center"> </div>
</div>
<div align="center" id="div_main_detalii_produs">
<table border="0" width="100%" cellspacing="0" cellpadding="0" style="cursor:move">
<tr>
<td width="10" height="22"><img border="0" src="images/title11.png" width="10" height="22"></td>
<td width="11" height="22" align="right" style="background- image:url(images/title2.png); background-repeat:repeat-x"> </td>
<td height="22" align="center" style="background-image:url(images/title2.png); background-repeat:repeat-x; color:#FFFFFF"><strong>Afişare detalii produs</strong></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x">
<a href="javascript://" onclick="$('div_main_detalii_produs').hide(); hide_cover('div_main_cover');" style="font-size:16px; color:#FFFFFF; font-weight:bolder; text-decoration:none">X</a> </td>
<td width="10" height="22"><img border="0" src="images/title31.png" width="10" height="22"></td>
</tr>
</table>
<div id="div_detalii_produs" align="center"> </div>
</div>
<div align="center" id="div_main_modificare_produs">
<table border="0" width="100%" cellspacing="0" cellpadding="0" style="cursor:move">
<tr>
<td width="10" height="22"><img border="0" src="images/title11.png" width="10" height="22"></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x"> </td>
<td height="22" align="center" style="background-image:url(images/title2.png); background-repeat:repeat-x; color:#FFFFFF"><strong>Modificare detalii produs</strong></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x">
<a href="javascript://" onclick="$('div_main_modificare_produs').hide(); hide_cover('div_main_cover');" style="font-size:16px; color:#FFFFFF; font-weight:bolder; text-decoration:none">X</a> </td>
<td width="10" height="22"><img border="0" src="images/title31.png" width="10" height="22"></td>
</tr>
</table>
<div id="div_modificare_produs" align="center"> </div>
</div>
<div align="center" id="div_main_modificare_categorie">
<table border="0" width="100%" cellspacing="0" cellpadding="0" style="cursor:move">
<tr>
<td width="10" height="22"><img border="0" src="images/title11.png" width="10" height="22"></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x"> </td>
<td height="22" align="center" style="background-image:url(images/title2.png); background-repeat:repeat-x; color:#FFFFFF"><strong>Modificare categorie</strong></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x">
<a href="javascript://" onclick="$('div_main_modificare_categorie').hide(); hide_cover('div_main_cover');" style="font-size:16px; color:#FFFFFF; font-weight:bolder; text-decoration:none">X</a> </td>
<td width="10" height="22"><img border="0" src="images/title31.png" width="10" height="22"></td>
</tr>
</table>
<div id="div_modificare_categorie" align="center"> </div>
</div>
<div align="center" id="div_main_modificare_subcategorie">
<table border="0" width="100%" cellspacing="0" cellpadding="0" style="cursor:move">
<tr>
<td width="10" height="22"><img border="0" src="images/title11.png" width="10" height="22"></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x"> </td>
<td height="22" align="center" style="background-image:url(images/title2.png); background-repeat:repeat-x; color:#FFFFFF"><strong>Modificare subcategorie</strong></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x">
<a href="javascript://" onclick="$('div_main_modificare_subcategorie').hide(); hide_cover('div_main_cover');" style="font-size:16px; color:#FFFFFF; font-weight:bolder; text-decoration:none">X</a> </td>
<td width="10" height="22"><img border="0" src="images/title31.png" width="10" height="22"></td>
</tr>
</table>
<div id="div_modificare_subcategorie" align="center"> </div>
</div>
<div align="center" id="div_main_modificare_producator">
<table border="0" width="100%" cellspacing="0" cellpadding="0" style="cursor:move">
<tr>
<td width="10" height="22"><img border="0" src="images/title11.png" width="10" height="22"></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x"> </td>
<td height="22" align="center" style="background-image:url(images/title2.png); background-repeat:repeat-x; color:#FFFFFF"><strong>Modificare producator</strong></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x">
<a href="javascript://" onclick="$('div_main_modificare_producator').hide(); hide_cover('div_main_cover');" style="font-size:16px; color:#FFFFFF; font-weight:bolder; text-decoration:none">X</a> </td>
<td width="10" height="22"><img border="0" src="images/title31.png" width="10" height="22"></td>
</tr>
</table>
<div id="div_modificare_producator" align="center"> </div>
</div>
<div align="center" id="div_main_modificare_serie_factura">
<table border="0" width="100%" cellspacing="0" cellpadding="0" style="cursor:move">
<tr>
<td width="10" height="22"><img border="0" src="images/title11.png" width="10" height="22"></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x"> </td>
<td height="22" align="center" style="background-image:url(images/title2.png); background-repeat:repeat-x; color:#FFFFFF"><strong>Modificare serie factura</strong></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x">
<a href="javascript://" onclick="$('div_main_modificare_serie_factura').hide(); hide_cover('div_main_cover');" style="font-size:16px; color:#FFFFFF; font-weight:bolder; text-decoration:none">X</a> </td>
<td width="10" height="22"><img border="0" src="images/title31.png" width="10" height="22"></td>
</tr>
</table>
<div id="div_modificare_serie_factura" align="center"> </div>
</div>
<div align="center" id="div_main_emite_factura">
<table border="0" width="100%" cellspacing="0" cellpadding="0" style="cursor:move">
<tr>
<td width="10" height="22"><img border="0" src="images/title11.png" width="10" height="22"></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x"> </td>
<td height="22" align="center" style="background-image:url(images/title2.png); background-repeat:repeat-x; color:#FFFFFF"><strong>Emitere factura</strong></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x">
<a href="javascript://" onclick="$('div_main_emite_factura').hide(); hide_cover('div_main_cover');" style="font-size:16px; color:#FFFFFF; font-weight:bolder; text-decoration:none">X</a> </td>
<td width="10" height="22"><img border="0" src="images/title31.png" width="10" height="22"></td>
</tr>
</table>
<div id="div_emite_factura" align="center"> </div>
</div>
<div align="center" id="div_main_detalii_client">
<table border="0" width="100%" cellspacing="0" cellpadding="0" style="cursor:move">
<tr>
<td width="10" height="22"><img border="0" src="images/title11.png" width="10" height="22"></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x"> </td>
<td height="22" align="center" style="background-image:url(images/title2.png); background-repeat:repeat-x; color:#FFFFFF"><strong>Detalii client</strong></td>
<td width="11" height="22" align="right" style="background-image:url(images/title2.png); background-repeat:repeat-x">
<a href="javascript://" onclick="$('div_main_detalii_client').hide(); hide_cover('div_main_cover');" style="font-size:16px; color:#FFFFFF; font-weight:bolder; text-decoration:none">X</a> </td>
<td width="10" height="22"><img border="0" src="images/title31.png" width="10" height="22"></td>
</tr>
</table>
<div id="div_detalii_client" align="center"> </div>
</div>
<div id="div_main_cover" class="transparent_class"></div>
</body>
</html>
BIBLIOGRAFIE
Bob, Constantin; Visean, Mirela; Fulea, Mihai; Saseanu, Andreea – “Sisteme informatice în comerț”, Editura ASE;
Botezatu, Cornelia – “Proiectarea sistemelor informatice”, Editura Pro Universitaria, 2007;
Botezatu, Cornelia; Iacob, Ionel – “Proiectarea sistemelor informatice”, Editura Pro Universitaria, 2007;
Chichernea, Virgil – “Proiectarea sistemelor informatice”, Editura Pro Universitaria, 2007;
Gavrilă, Alexandru Adrian – “ Integrarea sistemelor informatice de gestiune pe Internet” Teză de doctorat, București, 2006;
Lupu, Viorel – “Impactul tehnologiilor Internet asupra managementului firmei” Teză de doctorat, București, 2006;
Mihai, Florin – “ Modelarea aplicațiilor financiar –contabile utilizând tehnici moderne de programare ” Teză de doctorat, București, 2004;
Somnea, Dan – “JSP, ASP, XML, XSLT, XHTML/HTML/CSS Made easy!”, Editura ASE, București, 2005;
Stanciu-Timofte, Carmen – “ Baze de date pentru comerț electronic pe Internet”, Editura Oscar Print, București, 2002;
Surcel, Traian; Marsanu, Radu; Pocatilu, Paul – “ Tehnologii web și baze de date”, București;
Surcel, Traian – “Tehnologii Web și Baze de Date”, București, 2004;
BIBLIOGRAFIE
Bob, Constantin; Visean, Mirela; Fulea, Mihai; Saseanu, Andreea – “Sisteme informatice în comerț”, Editura ASE;
Botezatu, Cornelia – “Proiectarea sistemelor informatice”, Editura Pro Universitaria, 2007;
Botezatu, Cornelia; Iacob, Ionel – “Proiectarea sistemelor informatice”, Editura Pro Universitaria, 2007;
Chichernea, Virgil – “Proiectarea sistemelor informatice”, Editura Pro Universitaria, 2007;
Gavrilă, Alexandru Adrian – “ Integrarea sistemelor informatice de gestiune pe Internet” Teză de doctorat, București, 2006;
Lupu, Viorel – “Impactul tehnologiilor Internet asupra managementului firmei” Teză de doctorat, București, 2006;
Mihai, Florin – “ Modelarea aplicațiilor financiar –contabile utilizând tehnici moderne de programare ” Teză de doctorat, București, 2004;
Somnea, Dan – “JSP, ASP, XML, XSLT, XHTML/HTML/CSS Made easy!”, Editura ASE, București, 2005;
Stanciu-Timofte, Carmen – “ Baze de date pentru comerț electronic pe Internet”, Editura Oscar Print, București, 2002;
Surcel, Traian; Marsanu, Radu; Pocatilu, Paul – “ Tehnologii web și baze de date”, București;
Surcel, Traian – “Tehnologii Web și Baze de Date”, București, 2004;
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Magazin Virtual Folosind Php Si Mysql (ID: 149996)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
