Sunteți pe pagina 1din 66

Studiu de caz privind domeniul de licitatii online

INTRODUCERE

Odata cu inceputurile Internetului un nou tip de afacere s-a profilat din ce in ce mai pronuntat pe plan international: comertul online. Au aparut nenumarate site-uri si firme care se ocupa cu vanzarile en-gros de produse prin Internet, cu organizarea de lictitatii online, cu furnizarea accesului contracost la pagini cu informatii, intr-un cuvant abordeaza o forma sau alta de comert electronic, un domeniu aflat in plina expansiune. Avantajul comertului online este evident: piata pe Internet creste exponential de la un an la altul. Un site bine lucrat, cunoscut si care ofera produse de calitate la preturi bune va avea mai multi vizitatori si mai motivati. Afacerile pe internet folosesc tehnologia pentru a eficientiza o afacere. Scopul acestei lucrari este prezentarea aplicatiei Aplicatie web destinata licitatiilor , modul de realizare a acesteia si functionalitatile sale. Aplicatia a fost creata sa satisfaca necesitatile oricarui agent economic si se adreseaza tuturor utilizatorilor de internet care vor sa participe la licitatii online, indiferent daca sunt firme sau persoane fizice, fiind usor de utilizat de catre orice persoana. Aceasta aplicatie este destinata tranzactiilor oricaror tipuri de obiecte cu conditia sa nu fie interzisa comercializarea lor prin lege si daca la inceput nu vor fi prezente toate categoriile, pe baza solicitarilor clientilor vor aparea noi categorii si subcategorii. Scopul site-ului este de a oferi o solutie practica, transparenta, eficienta si profesionala, reflectand dorintele utilizatorilor. Aplicatia urmareste realizarea unei piete care sa puna accent pe dezvoltarea competitiei si cresterea calitatii produselor oferite, care sa ajute la stabilirea mai usoara a relatiilor de afaceri. Site-ul ofera posiblitatea administrarii paginii personalizate a utilizatorilor si pastreaza confidentialitatea datelor utilizatorilor sai si este un loc de intalnire a cererii cu oferta dar

Pagina 1 din 66

tranzactionarea efectiva a produselor si conditiile de plata se stabilesc intre ofertant si castigatorul licitatiei, administratorii site-ului neluandu-si astfel de responabilitati. Ca orice site este in deplina expansiune si ofera posibilitatea clientilor sa contacteze administratorul de site pentru exprimarea noilor necesitati si idei. Site-ul ofera posibilitatea purtarii de conversatii, punerea de intrebari, exprimarea opiniilor asupra produselor licitate si asupra licitatorilor sau a celor care liciteaza. Un feedbak negativ de la mai multe persoane aspra unui licitator, ofertant, produs poate duce la excluderea de pe site, ca si a celora care adreseaza remarci vulgare sau produse ilegale.

Capitolul I- Prezentarea domeniului de licitatii online

Cea mai vehiculata forma la ora actuala de comert electronic cu amanuntul in randul persoanelor fizice sunt licitatiile online. Avantajele inscrierii la o licitatie online se rezuma in principal la posibilitatea obtinerii unor castiguri rapide din vanzarea, practic de catre oricine, in timp record, prin Internet, a oricaror obiecte imaginabile: de la postere, casete, cd-uri, timbre, vederi, monezi, pana la tablouri, obiecte de mobilier vechi, antichitati, masini de epoca. Cel mai cunoscut site la ora actuala de licitatii pe Internet si totodata unul dintre cele mai ramificate ca si gama de oferte este Ebay (www.ebay.com). 1.1 Context romanesc Este de asemenea util de stiut faptul ca, fara un cont PayPal (www.paypal.com autoritate online de intermediere plati electronice pentru persoane fizice), este putin probabil ca cineva sa poata vinde unei piete occidentale - peste 90% dintre tranzactii fiind achitate exclusiv prin aceasta metoda de plata electronica instant. Din pacate PayPal nu opereaza si pentru Romania, astfel incat, in cazul in care un esteuropean doreste sa participe la o licitatie electronica internationala (ca si client sau ca si ofertant), va fi nevoit sa se apeleze la un partener din Vest care sa ii intermedieze prin propriul cont PayPal rularea banilor.

Pagina 2 din 66

Asadar, un deranj destul de mare si destul de putin probabil, dar nu imposibil sau de neintalnit. Daca insa mai luam in considerare si lipsa de credibilitate pe care un nume gen Romania (ca sursa initiatoare a oricarei tranzactii online) o trezeste in randul europenilor din Vest si nivelul in general neprofesional de intelegere a limbii engleze de catre utilizatorul roman de Internet, durata mare de timp pentru tranzactionarea prin Posta Romana a coletelor internationale, precum si valorile relativ mici sau cu grad de interes redus pe care un oarecare utilizator de Internet din Romania este gata sa le scoata la licitatie comparativ cu ofertele consistente din vest, atunci ne permitem sa afirmam ca sansele de esec partial sau total in cazul initierii unei licitatii online direct din Romania sunt mari sau foarte mari. 1.2 Dezavantajele licitatiilor online Dezavantajul participarii la orice forma de licitatie online este acela ca, desi oricine poate vinde (si punerea in vanzare este rareori gratuita, fiind deobicei perceputa o taxa per obiect scos la licitatie ca de altfel si pentru fiecare licitatie incheiata cu succes), doar pentru in jur de 10% dintre obiectele scoase la licitatie exista clienti interesati care si liciteaza ca atare. Explicatia vine atat din faptul ca oferta este mai mare decat cererea, cat si din alte cauze importante cum ar fi: pretul de inceput (deseori mult prea mare), lipsa unei prezentari profesionale care sa puna cu adevarat in valoare obiectul, lipsa de credibilitate a ofertantului in comunitatile Internet specializate, etc... In contextul in care numai pe site-ul Ebay se scot la licitatie saptamanal milioane de obiecte si deci concurenta este acerba, devine foarte important pentru ofertantul de produse, ca prim pas spre succes, crearea si pastrarea unei credibilitati totale, cu ajutorul feedbackurilor pozitive obtinute de la cumparatorii cu care a incheiat tranzactii anterior. Acest feedback se traduce prin aprecierile la adresa unui ofertant, postate in mod public pe site-ul gazda a licitatiei de catre cumparatorii mai vechi, cu privire la: veridicitatea prezentarii initiale fata de produsul final obtinut, frecventa si calitatea raspunsurilor ofertantului la emailurile de contact ale potentialilor clienti, perioada de timp scursa de la incheierea licitatiei pana la primirea produsului si lista nu se opreste aici. Daca se aduna mai multe feedbackuri negative la un comerciant, acesta nu va mai putea vinde niciodata pe site-ul respectiv (si poate nici pe altele) din cauza lipsei de credibilitate datorate feedback-urilor negative.

Pagina 3 din 66

1.3 Avantajele licitatiilor online Exista totusi si un avantaj extrem de important in derularea unei licitatii electronice avand originea intr-o tara est europeana ca Romania: preturile mai mult decat modice la obiectele de interes unanim cum ar fi cele de arta decorativa (ca sa dam numai un singur exemplu) in comparatie cu preturile practicabile in Europa de Vest sau America pentru aceeasi gama de produse. Chiar si numai din acest punct de vedere, credem ca riscurile unor investitii in scopul derularii prin intermediari a unor lictatii "din Romania" se justifica pe deplin in cazul in care oferta trezeste interesul in Vest. Ce este mai usor decat o licitatie online,unde poti face afaceri vanzand sau cumparand. Anunturile de mica publicitate ce apar in ziare sunt acum de domeniul trecutului! Daca doresti sa cumperi ceva - nu mai trebuie sa cauti la nesfarsit in anunturile de la mica publicitate, sa vorbesti cu sute de vanzatori si sa negociezi cu fiecare dintre ei prin telefon - pentru ca aici vei gasi o lista completa cu tot ceea ce iti doresti. Daca vrei sa vinzi ceva - nu mai trebuie sa raspunzi la un sir neintrerupt de apeluri telefonice si sa decizi cui ar trebui sa-i vinzi. Toate aceste probleme sunt rezolvate aici . Cumperi si vinzi foarte usor! Paleta larga a ofertei de articole este visul oricarui cumparator. Nu vei gasi asa o diversitate de produse in nici un alt magazin, nici la mica publicitate si nici macar in targuri. Un numar mare de cumparatori - visul fiecarui vanzator. Un site de licitatii online reprezinta pentru vanzatori oportunitatea de a obtine cel mai bun pret iar pentru cumparatori reprezinta cea mai rapida modalitate de a obtine ceea ce doresc la un pret rezonabil. Articolele pe care doresti sa le vinzi pot prinde viata: ii poti face o descriere completa, poti prezenta fotografii color a acestuia si chiar poti prezenta o scurta istorie a acestuia de cand se afla la tine. Este mult mai eficient si mai ieftin decat reclamele din ziare - singura limita e imaginatia ta.

Pagina 4 din 66

Legi cunostinte in mod interactiv: poti pune intrebari unui vanzator, poti lua legatura cu ceilalti cumparatori - nu exista constrangeri in ceea ce priveste ora la care comunici, varsta, etc. Capitolul II-Metode, instrumente si tehnici utiliate in realizarea aplicatiei 2.1 Limbajul UML (Universal Modelling Language) Tendinta actuala din industria software impune dezvoltarea de sisteme extrem de complexe si in cel mai scurt timp posibil. Se impune cu necesitate adaptarea procesului de dezvoltare a sistemelor informatice la cerintele din ce in ce mai complexe fata de produsele informatice. In plus, odata cu impunerea pe piata a limbajelor orientate obiect si a mediilor vizuale de programare, au aparut in ultimii ani mai multe propuneri de procese de dezvoltare orientata obiect a sistemelor informatice. Trei dintre cei mai importanti autori din domeniul proiectarii de software orientat obiect Ivar Jacobson, Grady Booch si James Rumbaugh au conlucrat pentru realizarea unui limbaj de modelare standard si a unui proces standard de dezvoltare a produselor informatice. Limbajul pus la punct de acestia UML (Unified Modeling Language) inregistreaza un mare succes, fiind adoptat ca standard de Object Management Group (OMG), organismul de standardizare pentru comunitatea orientata obiect. Aparitia acestui standard reprezinta un mare avantaj daca ne gandim la multitudinea de notatii si metode utilizate pana nu de mult in proiectarea orientata obiect si pe care UML le substituie cu succes. In prezent este suficient ca proiectantii sa cunoasca acest unic sistem de notatii. UML-ul reprezinta o sinteza a celor mai multe notatii si concepte utilizate in proiectarea orientata obiect. A inceput ca o coroborare a activitatii lui Grady Booch, James Rumbaugh, si Ivar Jacobson, creatorii a trei dintre cele mai cunoscute metodologii orientate obiect. UML propune notatii standard si semantica corespunzatoare pentru modelarea sistemelor orientate obiect. Inainte de aceasta un proiect orientat obiect putea fi descris utilizand una dintre zecile de metodologii disponibile, ceea ce facea ca in cazul unei revizuiri cei responsabili de aceasta sa piarda mult timp cu analiza notatiilor si semanticii metodologiei inainte de a patrunde logica proiectarii.
Pagina 5 din 66

In acest moment, utilizand UML, diferiti proiectanti ce lucreaza la diverse sisteme pot intelege cu usurinta munca celuilalt. 2.1.1 Componentele UML UML-ul prescrie un set standard de diagrame si notatii pentru analiza si proiectarea orientata obiect a diverselor tipuri de sisteme (sisteme software, sisteme hardware sau organizatii), descriind totodata si semantica acestor diagrame si simboluri. Limbajul unificat de modelare ofera pentru aceasta zece tipuri de diagrame ce pot fi grupate astfel: -diagrama pentru modelarea proceselor de afaceri, respectiv: -diagrama cazurilor de utilizare in cazul metodologiilor orientate pe cazuri de utilizare, aceasta diagrama dirijeaza intreg procesul de dezvoltare al sistemului -diagrame pentru modelarea structurii statice, respectiv: -diagrama claselor pentru modelarea structurii statice a claselor sistemului -diagrama obiectelor pentru modelarea structurii statice a obiectelor sistemului -diagrame pentru modelarea dinamicii: -diagrame de interactiune, respectiv: -diagrama de secventa pentru modelarea circuitului mesajelor intre obiecte -diagrama de colaborare pentru modelarea interactiunilor intre obiecte -diagrame de comportament, respectiv: -diagrama de stare pentru modelarea comportamentului obiectelor din sistem -diagrama de activitate-pentru modelarea comportamentului cazurilor de utilizare, obiectelor sau operatiilor -diagrame de implementare, respectiv: -diagrama componentelor pentru modelarea componentelor -diagrama de desfasurare pentru modelarea distribuirii sistemului -diagrama pachetelor mijloc de grupare a elementelor diagramelor in pachete Diagrama cazurilor de utilizare Cu ajutorul acestei diagrame analistul stabileste aria de cuprindere a sistemului. Diagrama cazurilor de utilizare furnizeaza un mecanism de colectare a cerintelor de exploatare a sistemului. Ea identifica utilizarile solicitate si comportamentul necesar pentru a
Pagina 6 din 66

sustine aceste utilizari si ajuta la identificarea cerintelor sistemului. Atunci cand este utilizata in legatura cu diagrama claselor determina limita antrenarii unui proiect in solutii dezvoltate concurential, de la sumar la descrieri detaliate, care sunt apoi transformate in scenarii de cazuri de utilizare multiple. Fiecare diagrama a cazurilor de utilizare are cel putin un caz si un actor. Un caz de utilizare reprezinta secventa actiunilor pe care sistemul le realizeaza pentru a produce ceva de valoare pentru actorul care interactioneaza cu sistemul. Actorul poate fi o persoana sau un alt sistem extern. Un actor poate participa la mai mult de un caz si, invers, la acelasi caz de utilizare pot participa mai multi actori. O diagrama a cazurilor de utilizare poate contine trei tipuri de asocieri si anume: -asocieri de comunicare (<<communicate>>, <<comunica>>); -asocieri de utilizare (<<uses>>, <<utilizeaza>>); -asocieri de extindere(<<extends>>, <<extinde>>). O asociere de comunicare arata care actor participa intr-un caz de utilizare. Este tipul implicit de asociere astfel incat nu este obligatorie precizarea acestuia prin stereotipul <<comunicate>>. Asocierea de utilizare arata ca un caz de utilizare trebuie sa includa comportamentul altui caz de utilizare. Cu ajutorul stereotipului <<uses>> se evidentiaza un comportament obligatoriu, uneori impartasit in comun de mai multe cazuri de utilizare. Asocierea de extindere arata ca un caz de utilizare poate include optional, in anumite conditii, un alt caz de utilizare (de extindere) si arata dependenta dintre ele. Diagrama claselor Diagrama claselor este cea mai importanta diagrama in cadrul analizei si proiectarii orientate obiect. Scopul diagramei claselor este de a structura natura statica a claselor in termeni de atribute, operatii si asocieri. Celelalte diagrame UML furnizeaza diferite puncte de vedere din care sa fie identificate atributele, operatiile si asocierile dintre clase. Ele ajuta la validarea diagramei claselor, putand servi la clarificarea unei probleme specifice pentru o audienta specifica. Diagrama claselor contine clase si asocieri intre clase. O clasa este un model pentru obiecte cu structura, comportament si relatii similare. Fiecare clasa are un nume, atribute si operatii.

Pagina 7 din 66

O clasa reprezinta cel mai important bloc (structura) dintr-un sistem orientat obiect. Si totusi, in UML clasele sunt doar un tip de clasificatori denumire data mai multor structuri (blocuri) UML. O clasa este o descriere a unui set de obiecte care au aceleasi atribute, operatii, relatii si semantica. Diagrama obiectelor Diagrama obiectelor modeleaza instantele elementelor continute in diagramele de clase. O diagrama obiectuala reprezinta un set de obiecte si relatiile dintre acestea la un anumit moment. O instanta este o manifestare concreta a unei abstractizari a carui set de operatii poate fi aplicat si care are o stare care arata efectele operatiilor. Diagrama de secventa Scenariile cazurilor de utilizare se dezvolta in mod natural din diagrama de secventa. Diagramele de secventa transforma evenimentele identificate in scenariile cazurilor de utilizare intr-o reprezentare grafica a utilizarilor sistemului de catre actor. Fiecare eveniment are ca rezultat un mesaj trimis unui obiect cu perspectiva ca acel obiect va realiza o operatie. Diagrama de secventa descrie cronologic interactiunea obiectelor, identificand mesajele schimbate intre obiecte ca raspuns la un eveniment, impreuna cu secventa mesajelor. Diagrama de stare Modeleaza starea dinamica a unui obiect specific. Diagrama de stare consta din stari, actiuni, activitati si tranzitii Diagrama de stare identifica evenimentele care fac tranzitia unui obiect dintr-o stare in alta. Conform UML, o stare este o conditie sau o situatie din momentul existentei unui obiect care satisface in acel moment anumite conditii, efectueaza anumite activitati sau asteapta anumite evenimente. Diagrama de stare descrie toate operatiile si atributele unei clase in timpul unui eveniment. Diagrama identifica stimulii care declanseaza actiunea. Diagrama de colaborare
Pagina 8 din 66

Diagrama de colaborare descrie o examinare non-secventiala a modului in care interactioneaza obiectul. Diagrama de colaborare suporta multiple modalitati de modelare a obiectului. O modalitate arata modul in care obiectele colaboreaza in cadrul unui singur scenariu al cazurilor de utilizare similar cu diagrama de secventa. Se poate genera din diagrama de secventa. Diagrama de activitate O diagrama de activitate permite o mai buna intelegere a operatiilor, in special a celor foarte complexe. Diagrama de activitate este un tip de grafic de stare care specifica activitatea unei anumite clase. Starea actiunii reprezinta starea unei activitati in cadrul unei operatii. Descrie descompunerea starii de actiune si tranzitiile in cadrul unei anumite stari a obiectului, mai mult decat de la o stare la alta. Diagrama componentelor Diagrama componentelor aduna informatiile din diagrama claselor pentru a crea componente si modeleaza dependenta componentei software in functie de codul sursa, codul binar si componentele executabile. Diagrama de desfasurare Componentele sunt "plasate" pe echipamente hardware prin intermediul diagramei de desfasurare. Diagrama de desfasurare modeleaza procesoare si echipamente fizice, securitatea si componentele care sunt plasate pe procesoarele fizice. Se utilizeaza noduri pentru a reprezenta procesoare si echipamente. Fiecare nod are un nume si, optional, un tip, separate de doua puncte, :. Diagrama pachetelor UML furnizeaza mijloace de grupare a elementelor din cadrul diagramelor, numite pachete. Intr-un pachet pot fi ambalate alte pachete, clase, cazuri de utilizare, colaborari etc. 2.1.2 Avantajele utilizarii UML

Pagina 9 din 66

Desi nu garanteaza succesul unui proiect informatic, UML poate contribui la reducerea costurilor de instruire si schimbare a instrumentelor de lucru atunci cand se face trecerea de la un proiect la altul sau de la o organizatie la alta. UML ofera o baza pentru integrarea instrumentelor, proceselor si domeniilor. In primul rand, UML asigura o terminologie unica si permite realizatorilor de sisteme sa se concentreze asupra obiectivelor proiectelor si nu asupra instrumentelor de modelare. Asa cum a fost precizat in documentul UML Summary, Version 1.1, elaborat la 1 septembrie 1997 de Rational Software si ceilalti realizatori, scopurile pentru care a fost creat UML sunt urmatoarele: -sa puna la dispozitia utilizatorilor un limbaj de modelare vizual usor de folosit, expresiv. Este foarte important ca standardul pentru analiza si proiectare sa suporte un limbaj de modelare care sa fie folosit pentru realizarea de taskuri generale de modelare. Daca standardul ofera numai o descriere de meta-nivel care reclama ajustarea la un anumit set de concepte de modelare, atunci nu se poate realiza schimbul de modele fara pierdere de informatii; -sa asigure extensibilitatea precum si mecanismele de specializare prin care sa fie extinse conceptele de baza; -sa permita formularea de specificatii independente de un anumit limbaj de programare si de procesele de realizare a sistemului; -sa ofere o baza formala pentru intelegerea limbajului de modelare; -sa incurajeze cresterea pietei instrumentelor orientate pe obiecte; -sa suporte concepte, precum: componente, colaborari, cadre, paternuri; UML reuneste conceptele din Booch, OMT si OOSE. Rezultatul il reprezinta un limbaj de modelare posibil de utilizat de catre utilizatorii acestor metode, dar si a altor metode orientate pe obiecte. In plus, UML extinde posibilitatile oferite de metodele mentionate mai sus. De exemplu, prin utilizarea UML se poate realiza modelarea sistemelor concurente si a celor distribuite. 2.2 Rational Rose Rational Rose este un produs al firmei Rational Software Corporation, la conducerea careia stau trei dintre cei mai valorosi autori de metode de analiza si proiectare orientata pe obiecte: Grady Booch, James Rumbaugh si Ivar Jacobson.
Pagina 10 din 66

Daca pana nu demult dezvoltarea metodelor de analiza si proiectare orientata pe obiecte se facea in mod independent, incepand cu anul 1995 s-a constatat o tendinta de unificare a acestora in scopul cresterii eficientei. Acest produs este disponibil pe urmatoarele platforme: sistemele si mediile de operare din familia Windows si OS/2. Este un instrument CASE pentru analiza si proiectarea orientata obiect ce ofera suport in dezvoltarea de aplicatii software, managementul proiectelor, analiza complexa. Interfata cu utilizatorul Din punct de vedere al interfetei grafice putem spune fara doar si poate ca Rational Rose are unele puncte slabe. Editoarele de diagrame prezinta dificultati in manipularea obiectelor grafice, in actualizarea unor portiuni din fereastra, iar comenzile de autoformatare a diagramelor si a textului, desi la prima vedere foarte atragatoare, nu sunt foarte puternice. De asemenea trebuie precizat faptul ca Rational Rose nu este un mediu de dezvoltare integrat. El are mai multe componente (analizor si program de editare de diagrame) care face ca utilizatorul sa migreze intre mai multe aplicatii in timpul proiectarii. In alta ordine de idei, producatorii lui Rational Rose au implementat tool box-uri pentru editarea entitatilor din diagrame si ferestre de dialog. De asemenea, alaturi de ferestrele care contin diverse diagrame corespunzatoare unui model, Rational Rose mai are o fereastra care afiseaza toate mesajele de eroare generate de anumite verificari ale modelului. Pentru a realiza un model al unei anumite probleme este necesara crearea unui proiect, care sa va concretiza pe suport magnetic printr-un fisier cu extensia ".mdl". Nu este posibila deschiderea a mai multor proiecte la un moment dat (deschiderea unui nou proiect implica automat inchiderea proiectului actual). Documentatia Relativ la documentatie, trebuie precizat ca produsul este insotit de un material deosebit de voluminos care explica pe larg functionalitatea acestuia. Aplicatia "Rose Demo" care explica intr-o maniera foarte eleganta (prin intermediul unor mici demonstratii animate) a trasaturilor importante ale produsului Rational Rose si echipa de proiectare a acestuia.
Pagina 11 din 66

De asemenea mediul contine help on-line si un help senzitiv la context foarte bine puse la punct. 2.3 PHP-"PHP Hypertext Preprocessor" Pana nu demult, in Internet erau putini cei care realizau si foloseau fisierele de comenzi - scripturile. Recent, insa, tot mai multa lume isi construieste propriile pagini Web, sau chiar propriile centre Web, iar limbajele de comenzi, pentru realizarea de script-uri, devin tot mai importante. . Ce este PHP? PHP vine de la "PHP Hypertext Preprocessor" si este un limbaj de comenzi-script pentru server (se spune ca actioneaza pe partea serverului - server-side language). Adica fisierele avand comenzi PHP ruleaza pe serverul Web, nu in navigator, pe statia client. Cu alte cuvinte, nu trebuie sa ne ne procupe compatibilitatea soft a calculatorului personal de pe care navigam. PHP este un limbaj relativ nou (comparativ cu alte limbaje precum Perl (CGI) si Java), dar devine rapid unul dintre cele mai raspandite si mai populare din Internet. De ce PHP? Folosirea scripturilor in propriul centru Web ne permite sa adaugam multe elemente de noutate si interactivitate, precum formularele de feedback, cartile de oaspeti, sistemele colaborative numite messa. Ce poate face PHP? Orice PHP este in principal axat pe partea de scripting ce ruleaza pe server, deci poate face orice face si un program CGI, cum ar fi colectarea de date de la formulare, generarea de continut dinamic sau trimitere si primire de cookie-uri. Dar PHP poate face mult mai multe. Exista trei domenii principale unde sunt folosite scripturile PHP. Scripturi ce ruleaza pe server. Acesta este cel mai traditional si cel mai important pentru PHP. Este nevoie de trei lucrui pentru a face sa mearga: interpretorul PHP (CGI sau modul de server), un server de web si un navigator de web. E nevoie ca serverul de web sa fie pornit, cu o conexiune PHP instalata.
Pagina 12 din 66

Scripting la linia de comanda. PHP poate sa ruleze fara a fi nevoie de server si Scrierea de aplicatii ce ruleaza de partea clientului in mod grafic.

de browser, ci doar de interpretorul PHP. PHP poate fi folosit pe aproape toate marile sisteme de operare, incluzand Linux, multe variante de Unix, Microsoft Windows, Mac OS X, probabil si altele. PHP are deasemenea suport pentru majoritatea serverelor de web din prezent. Acestea includ serverele Apache, Microsoft Internet Information Server, Personal Web Server, Netscape si multe altele. Deci, cu PHP, ai libertatea de a alege un sistem de operare si un server de web. Chiar mai mult, ai posibilitatea de a alege programarea procedurala sau programarea orientata obiect, sau chiar sa le combini. Cu PHP nu esti limitat sa ai rezultat HTML. Posibilitatile PHP-ului includ afisarea de imagine, fisiere PDF si chiar filmulete Flash toate generate instant. Poti dealfel ca rezultatul tau sa fie orice fisier text, cum ar fi XHTML sau orice alte fisiere XML. PHP poate genera automat aceste fisiere si sa le salveze in sistemul de fisiere in loc sa le afiseze. Una dintre cele mai puternice si importante facilitati in PHP este suportul sau pentru o gama larga de baze de date. Scrierea une pagini de web ce interactioneaza cu o baza de date este incredibil de simpla. Urmatoarele baze de date sunt suportate: Adabas D,Ingres,Oracle (OCI7 si OCI8), dBase, InterBase, Ovrimos,Empress, FrontBase, PostgreSQL, FilePro (doar citire), mSQL, Solid, Hyperwave, Direct, MS-SQL, Sybase, IBM DB2, MySQL, Velocis, Informix, ODBC, Unix dbm. Ce ne trebuie? Asa cum am mentionat inainte, PHP este un limbaj pentru scripturi pe partea de server (server-side). Asta insemna ca, utilizatorii nu trebuie sa-si instaleze nimic in plus, ca soft, dar pe platforma unde ruleaza serverul Web (gazda Web) trebuie sa avem instalat PHP. Acesta poate fi deja inclus (incorporat) in serverul Web 2.4 MySQL

Pagina 13 din 66

Pentru multa lume, principala ratiune de a invata un limbaj precum PHP ar fi interactiunea pe care o ofera cu bazele de date. Voi incerca sa explic cum se foloseste PHP si MySQL, pentru a memora informatii pe Web si cum includem toate astea pe site-ul Web. De ce imi trebuie o Baza de Date? Este, de fapt, surprinzator cat de utila poate fi o baza de date, mai ales atunci cand poate fi folosita intr-un site Web. Sunt foarte multe lucruri care se pot face intr-un astfel de caz, de la afisarea unor simple liste si pana la producerea integrala a paginilor Web dintr-o baza de date. Cateva exemple cu PHP si MySQL, folosite impreuna, sunt: Forumurile Web- Sute de forumuri de dezbatere sunt acum realizate - ruleaza in PHP si MySQL. Acestea s-au dovedit mult mai eficiente decat alte sisteme, creand cate o pagina pentru fiecare mesaj si oferind o larga varietate de optiuni. Toate paginile forumului pot fi actualizate prin schimbarea unui script PHP. Bazele de Date. Un astfel de exemplu (edificator) il ofera site-urile care dau toate informatiile dintr-o baza de date. Spre exemplu, Script Avenue este rulat de cateva scripturi, care furnizeaza toate informatiile dintr-o baza de date ampla. Toate categoriile de scripturi diferite pot fi accesate intr-un singur script exact prin schimbarea URL-ului pentru a accesa diferite parti ale bazei de date. Site-urile Web. Cand avem un site de mari dimensiuni - cu multe pagini, si dorim sa modificam aspectul general sau sa schimbam proiectul, chestiune care ar cere foarte mult timp pentru aducere la zi si incarcare. Cu PHP si MySQL intregul site Web se poate reduce la unul sau doua scripturi PHP care sa acceseze o baza de date MySQL pentru a obtine informatiile pentru paginile Web. Pentru a actualiza sau a modifica proiectul centrului Web nu trebuie sa schimbam decat o pagina. De ce este nevoie? Sunt necesare trei componente pentru a putea rula scripturi PHP care sa acceseze baze de date cu MySQL. 1. In primul rand, este nevoie de un server Web. Acesta poate fi sau pe calculatorul personal sau pe o 'gazda' Web. Oricare pachet - oricare tip de server Web este acceptat si va lucra cu PHP si MySQL, dar cel mai recomandat este Apache, care e public si gratis.
Pagina 14 din 66

2.

PHP trebuie sa fie instalat pe server. Daca nu este deja instalat, puteti sa o

faceti sau sa apelati la administratorul serverului Web, in acest sens. Pachetul de instalare poate fi descarcat - preluat de la http://PHP.net si este deasemeni public - gratuit. 3. Este nevoie de MySQL. Acesta este de fapt pachetul de programe pentru gestiunea bazelor de date. Puteti folosi deasemeni multe alte sisteme de baze de date (SQL, Oracle etc.) dar aici discutam despre PHP/MySQL, deci avem nevoie de MySQL. Si pachetul MySQL este public - gratuit, putand fi preluat din pagina oficiala a firmei MySQL. Dar si in cazul MySQL trebuie sa verificam mai intai daca nu cumva este deja instalat. Exemplu de server Web public: frp.as.ro, Freedom2Surf care acorda acces liber si suporta PHP, avand MySQL instalat. Lucrul cu baze de date in aplicatii web Clientul Aplicatiile care se pot dezvolta folosind MySQL si PHP folosesc un singur client: browser-ul Web. Unele aplicatii mai sofisticate pot folosi si un applet Java (spre exemplu un client de chat in timp real). Singurul client de care trebuie sa fii preocupat este browser-ul care va interpreta aplicatiile tale. Server-ul Aproape tot ce fac aplicatiile Web are loc pe un server. O aplicatie specifica, numita server Web, va fi responsabila pentru comunicarea cu browser-ul. In cele din urma, mai este nevoie de un limbaj care sa intermedieze cereri intre server-ul web si un server de baze de date, in cazul nostru si sa realizeze sarcini prin program asupra informatiilor ce vin si se duc spre sever-ul Web. Toate aceste trei elemente (server-ul Web, limbajul de programare si serverul de baze de date) trebuie sa fie compatibile si cu sistemul de operare din calculatorul pe care sunt folosite. Cele mai folosite sisteme de operare pe serverele Web sunt Windows NT/2000 si UNIX (peste 90% din numarul total de servere de pe Web). Server-ul Web Cele mai folosite servere Web sunt Apache si Microsoft's IIS.
Pagina 15 din 66

Apache este si el gratuit si in sistem Open Source ca si PHP, MySQL si Linux. El functioneaza bine pe un sistem UNIX dar si pe un sistem Windows (dar nu pe un server foarte incarcat). Cea mai buna alegere este realizarea si testarea aplicatiei pe Windows cu Apache, PHP si MySQL si apoi transferul aplicatiei pe un server Linux fara schimbari in script-uri. O tranzactie normala cu baza de date Web se constituie din urmatorii pasi : 1. 2. 3. Browser-ul unui utilizator face o cerere HTTP pentru o anumita pagina (spre Server-ul Web primeste cererea pentru results.php, cauta fisierul si il paseaza Motorul PHP incepe procesarea si gaseste o comanda de conectare la o baza exemplu, se cauta o anumita carte, pe un site, prin intermediul fisierului results.php). motorului PHP pentru a fi procesat. de date si o interogare dupa un anumit criteriu. PHP deschide o conexiune cu server-ul MySQL si ii trimite interogarea. 4. 5. Server-ul MySQL primeste interogarea si o proceseaza si trimite rezultatul (o PHP-ul termina de rulat script-ul (de obicei are loc o formatare a rezultatelor lista de carti, in cazul nostru) PHP-ului. interogarii in HTML) si returneaza fisierul HTML rezultat server-ului Web Server-ul Web trimite HTML-ul inapoi catre browser, de unde utilizatorul poate Ce este MySQL ? MySQL este un server SQL pentru baze de date foarte robust, rapid, multi-utilizator, multi-thread. MySQL este un sistem de gestiune a bazelor de date. O baza de date este o colectie structurata de date. Ca sa adaugi, sa accesezi si sa procesezi informatiile din baza de date, ai nevoie de un sistem de gestiune a bazelor de date ca, de exemplu MySQL. MySQL este un sistem de gestiune a bazelor de date relationale. O baza de date relationala memoreaza date in tabele separate in loc de a stoca toate informatiile intr-o singura structura adaugand astfel viteza si flexibilitate. Tabelele sunt legate prin relatii permitandu-se afisarea datelor combinate la cerere. Sistemele de gestiune a bazelor de date relationale (SGBDR) ofera o cale excelenta pentru a stoca si a accesa informatii complexe. Cele mai populare SGBDR-uri sunt Oracle, Infomix, Microsoft's SQL Server, IBM's db2 si SGBD-uri "Open-Souce": MySQL, Postgres si Interbase.
Pagina 16 din 66

Baze de date relationale Tabele Tabela are un nume, un numar de coloane corespunzatoare tipurilor de informatii si linii corespunzatoare iregistrarilor din tabele. Coloanele au un nume unic si contin informatii diferite. Fiecare are un tip de date asociat (de exemplu, integer pentru 'ID' si string pentru 'Nume', 'Adresa' si 'Oras'). Coloanele mai sunt numite campuri sau atribute. Liniile reprezinta cate un client diferit in tabela noastra. Mai sunt numite inregistrari sau tupluri. Cheile reprezinta o cale de a identifica fiecare iregistrare in parte. Baze de date care au mai multe tabele folosesc o cheie primara sau o cheie externa (Primary Key sau Foreign Key ) ca referinta de la o tabela la alta. Relatii Exista 3 tipuri de relatii intr-o baza de date relationala: -Relatie una-la-una - Exista cate una/unul din fiecare in relatie (daca am fi pus adresele intr-o tabela separata intre CLIENTI si ADRESE ar fi existat un corespondent pentru fiecare iregistrare). -Relatie una-la-mai-multe - O linie dintr-o tabela e legata la mai multe linii din alta tabela (un client ar putea face mai multe comenzi). -Relatie mai-multe-la-mai-multe - Mai multe linii din tabela 1 sunt legate la mai multe din tabela 2 (de exemplu, in cazul a doua tabele, CARTI si AUTORI, o carte ar putea fi scrisa de doi coautori, fiecare dintre ei mai avand si alte carti scrise). Dezvoltarea unei baze de date folosind PHPMyAdmin Dificultatile legate de crearea si administrarea unei baze de date folosind comenzi SQL sunt evidente si ele devin si mai mari in cazul scrierii comenzilor select. Pentru a facilita scrierea majoritatii comenzilor se poate folosi o aplicatie care ofera o interfata prietenoasa cu MySQL. Pentru instalarea componentelor necesare se va descarca si apoi instala de la adresa http:// www.phpgeek.com/ fisierul phptriadsetup*.* adecvat sistemului de operare folosit.

Pagina 17 din 66

Acesta va instala o versiune a serverului de web Apache, o versiune a serverului SQL MySQL si o aplicatie destinata administrarii bazelor de date MySQL denumita phpMyAdmin. Aceasta aplicatie serveste la crearea interactiva si testarea comenzilor SQL. Lansarea in executie a PHPMyAdmin trebuie precedata de instalarea si lansarea MySQL si a serverului de Web Apache. Crearea sau selectarea unei baze de date Chiar daca tot ce tine de administrarea bazelor de date poate fi realizat prin scripturi PHP, instalarea pe server a pachetului PHPMyAdmin poate aduce un plus de confort. Este un excelent set de scripturi care asigura o interfata administrativa pentru bazele de date MySQL. Este si public-gratuit. Cu el se pot adauga, elimina, edita, salva si vizualiza bazele de date, fiind deosebit de util pentru depanare. Dupa pornirea aplicatiei phpMyAdmin se indica numele noii baze de date si se apasa butonul Create pentru crearea unei noi baze de date sau se selecteaza in cadrul din stanga numele bazei active. Dupa crearea bazei de date se pot creea succesiv tabelele bazei de date. Dupa indicarea campurilor, a tipului si a dimensiunilor acestora, se apasa butonul Save, rezultatul fiind crearea tabelului si afisarea frazei CREATE TABLE generata. Daca baza de date va fi ulterior mutata pe un alt calculator, aceasta comanda va fi necesara pentru crearea aceluiasi tabel. Se poate realiza usor acest lucru daca se selecteaza si apoi se copiaza comanda intr-un fisier text. Adaugarea de inregistrari Odata tabelele create, folosind comanda Insert se pot adauga inregistrari intr-un tabel selectat in panoul din stanga. Rezultatul este crearea unei comenzi INSERT, afisata de altfel si in fereastra corespunzatoare din PHPMyadmin. Scrierea comenzilor SELECT Complexitatea comenzii SELECT, mai ales in cazul selectarii dintr-o multime de tabele legate prin relatii, face scrierea acesteia deosebit de dificila. Fereastra afisata de PHPMyadmin poate insa servi la scrierea si testarea acestor comenzi. Odata testul reusit, comanda SQL afisata poate fi copiata intr-un fisier separat in vederea folosirii ei la scrierea scripturilor. In fereastra care se afiseaza se pot apoi indica tabelele implicate, campurile in
Pagina 18 din 66

ordinea in care apar in lista specifica comenzii, conditiile de legatura intre tabele etc. Fereastra contine initial 4 coloane, dar numarul acestora poate fi modificat schimband valoarea din caseta Add/Delete Field Column si apasand butonul Update Query. Daca fraza trebuie completata cu alte clauze, acestea pot fi scrise direct in caseta de text afisata, tinand insa cont de sintaxa frazei SELECT care impune ca ordinea clauzelor sa fie WHERE .. GROUP BY .. HAVING .. ORDER BY .. LIMIT. Rezultatul interogarii impreuna cu fraza SELECT corespunzatoare sunt vizualizate prin apasarea butonului Submit Query.

Capitolul III- Analiza si proiectarea aplicatiei Declaratia problemei: Se doreste realizarea unui produs program pentru: -oferirea posibilitatii de comercializare a produselor prin licitatie, -urmarirea ofertelor primite ca furnizor de bunuri, -permanenta informare daca cineva a licitat peste oferta data de client, -licitarea automata pana la suma maxima admisa de client si anuntarea clientului ca suma maxima oferita este mai mica decat ultimul pret licitat. -trimiterea de mailuri atat ofertantului cu datele de contact ale castigatorului licitatiei cat si castigatorului cu datele ofertantului. EVENIMENTELE APLICATIEI Inscrierea pe site: Un utilizator normal de internet poate intra pe site sa vada produsele dar nu va putea licita pentru ele sau scrie in forumul site-ului intrebari sau opinii fara a fi inscris in baza de date a site-ului. Astfel exista un link de Login si prin apasarea acestuia se va deschide o fereastra atat pentru persoana furnizoare cat si pentru cea licitatoare. Inscris, utilizatorul nu poate fi sters din baza decat de administratorul bazei daca nu respecta conditiile si termenii descrisi pe site sau automat dupa trei zile daca nu face confirmarea adresei de mail si a parolei.
Pagina 19 din 66

Serverul va trimite un mail de confirmare a adresei de mail si parola utilizatorului. Daca acesta doreste inscrierea pe site va trebui sa confirme acele date apasand link-ul furnizat in mail. Dupa inscrierea pe site in functie de cont se va afisa o pagina de licitator sau una de furnizor. Pagina licitatoului ii permite sa vizualizeze produsele la care a licitat si pe cele din catalog, sa-si modifice datele din cont (nume, adresa, etc), sa liciteze, sa scrie pe forum. Pagina furnizorului ii permite sa introduca produse noi pentru licitatie, sa modifice detaliile produselor deja licitate prin adaugari la detaliile deja existente, sa modifice datele din propriul cont, sa scrie pe forum. Datele evenimentului: Users: id_user memoreaza id-ul utilizatorului, este unic primary key nume memoreaza numele utilizatorului judet memoreaza judetul in care locuieste localitate memoreaza localitatea unde locuieste codpostal memoreaza codul postal al localitatii strada memoreaza numele strazii nrloc memoreaza numarul casei/blocului, daca este cazul bloc memoreaza numarul blocului, daca este cazul ap memoreaza numarul apartamentului, daca este cazul telefon memoreaza numarul de telefon, obligatoriu mail memoreaza adresa de e-mail a utilizatorului, obligatoriu numecont memoreaza numele contului, este unic parola memoreaza parola utilizatorului confirmat verifica daca utilizatorul a dat un email valid datainscriere memoreaza data la care s-a creeat contul Prelucrari care se fac asupra datelor utilizator-ului sunt: Prelucrarea datelor unui utilizator nou pana la inscrierea in baza de date sau stergerea lui. Confirmarea numelui si a parolei inregistrate in baza de date. Autentificarea utilizatorului.
Pagina 20 din 66

Modificarea datelor de contact ale utilizatorului. Produs: id_produs id-ul produsului, este unic primary key categoria numele categoriei din care face parte produsul nume denumirea produsului descriere o descriere pe larg a produsului poza tine minte numele generic al pozei pretp pretul de pornire al licitatiei pentru produs data_exp data limita pana la care se poate licita pentru produs pretu ultimul pretul licitat pentru produs id_vanzator id_ul vanzatorului, corespondent cu un id din tabela user data data postarii produsului cantitate numarul de produse identice pus in vanzare la acea licitatie pas_licitatie valoarea pasului cu care e obligat sa liciteze un eventual client interesat culoare-culoare produsului tip-daca are o tipologie anume dimensiune-dimensiunea produsului Prelucrari care se pot face asupra datelor produsului: Afisarea detaliilor produsului. In functie de statutul de furnizor se pot adauga detalii sau de licitator se liciteaza asupra produsului. Se prelucreaza datele introduse de furnizor in campurile produsului si validarea de catre aplicatie a acestora. Se prelucreaza detaliile care se modifica asupra datelor produsului: pret licitat, data expirarii. Licitarea produsului: Un produs se poate licita doar daca esti inscris pe site ca si licitator. Licitatorul nu poate sa liciteze consecutive pentru acelasi produs. In momentul licitatiei se stabileste un pret minim si unul maxim pe care e dispus sa-l dea licitatorul.

Pagina 21 din 66

In momentul cand cineva a licitat peste pretul oferit de el, se va verifica daca pretul maxim plus pasul de licitatie este mai mic sau egal decat suma maxima oferita si daca da, se va autolicita cu suma respective, daca nu, se va trimite un mail de instiintare ca pretul maxim actual este mai mare decat cel oferit de respectivul licitator. La castigarea unei licitatii se trimite cate un mail cu datele de contact furnizorului si castigatorului de licitatie. Daca un produs nu e licitat si data sa de licitare este expirata se va sterge din baza de date. Licitatorul poate cere detalii despre produse furnizorului prin intermediul forumului, trimitandu-se si prin mail detaliile postate. Furnizorul poate folosi aceeasi metoda pentru raspuns. Datele evenimentului: Licit: id_produs id-ul produsului licitat id_user id-ul licitatorului pret pretul licitat de licitator data data la care s-a licitat pretm pretul maxim pana la care e dispus sa mearga licitatorul Forum: id id_ul unui membru, din tabela users name numele utilizatorului email adresa de mail a utilizatorului link un link catre o pagina de web specific fiecarui utilizator topic numele topicului creat de utilizator 3.1 Modelarea diagramelor: Diagrama cazurilor de utilizare

Pagina 22 din 66

Login/Logout administrator utilizator

Ofera articole la licitatie

Administrare Liciteaza articole +uses +uses +uses

Actualizeaza baza de date

In natura nu exista sisteme izolate. Orice sistem interactioneaza cu actori umani sau automati, care folosesc sistemul cu un scop si se asteapta ca sistemul sa se comporte intr-un mod previzibil. Actorii sunt utilizatorul si administratorul. Utilizatorul este orice persoana care doreste sa ofere bunuri spre licitare sau doreste sa liciteze pentru bunuri. Administratorul este cel care raspunde intrebarilor puse de catre utilizatori vis-a-vis de functionarea activitatilor de pe site, va aduce modificari de structura site-ului in urma solicitarilor utilizatorilor, va avea grija ca ceea ce se liciteaza pe site sa fie produse legale, iar in descrierea lor sa nu fie folosite cuvinte obscene, va avea in vedere ca pe forum sa nu apara replici vugare sau care sa calomnieze pe un alt utilizator, va administra baza de date a siteului stergand acei utilizatori sau produse care nu corespund termenilor si conditiilor inscrise pe site. Cazurile de utilizare: Login/Logout: utilizatorul va fi nevoit sa se autentifice inantea unei licitari sau a propunerii spre licitare a unui produs. Aceasta este o preconditie inante de licitare sau oferta produs pentru licitatie.

Pagina 23 din 66

Liciteaza articole: utilizatorul poate licita pentru produsele dorite daca este inregistrat ca si licitator Ofera articole la licitatie:utilizatorul poate furniza produse pentru licitare daca este inregistrat ca furnizor. Administrare: administratorul supravegheaza forumul de pe site, produsele licitate si descrierile produselor, poate sterge un produs sau un utilizator. Actualizeaza baza de date: cazurile ofera articole la licitatie, liciteaza articole si administrare, folosesc cazul actualizare baza de date pentru a opera modificarile aparute in sistem. DIAGRAMA DE INTERACTIUNE (DI) Exista doua tipuri de agrame de interactiune si anume: - diagrama de secventa (DS) - diagrama de colaborare (DC). Cele doua diagrame sunt echivalente din punct de vedere semantic si se pot transforma una in alta fara pierderi de informatii. DIAGRAME DE SECVENTA Diagrama de secventa este o diagrama de interactiune care subliniaza ordinea mesajelor in functie de timp. Grafic, o diagrama de secventa este o tabela care arata obiectele (aranjate pe axa ox) si mesajele ordonate in functie timp (pe axa oy).

Diagrama de Secventa Client

Pagina 24 din 66

Licitatorul completeaza formul de login pe site. Se valideaza numele, parola si statutul sau. Se va consulta catalogul cu produse si se vor furniza detaliile produsului. Licitatorul poate licita pentru produsul dorit. Diagrama de Colaborare Client

Pagina 25 din 66

Diagrama de Secventa Furnizor

La intrarea pe site furnizorul introduce numele si parola contului in fereastra de login. Se valideaza informatiile furnizate. Furnizorul ofera un produs pentru a fi licitat. Informaiile noi se inregistreaza in baza de date. Furnizorul poate adauga la descrierea anterioara alte detalii sau poate modifica poza iar daca nu s-a licitat produsul il poate sterge. Diagrama de Colaborarea Furnizor

Pagina 26 din 66

Diagrama de Secventa Proces

Utilizatorul- introduce in formul de login numele contului si parola.Acestea se valideza. -cere detalii despre produs si acestea se afiseaza. -liciteaza pentru un produs Se verifica pretul maxim oferit de ceilalti participanti la licitatia respectivului produs. Se trimite mail de informare licitatorilor care au oferit ca pret maxim un pret mai mic decat cel actual al produsului. -ofera produse pentru licitatie si ulterior poate adauga detalii sau schimba fotografia, iar daca produsul nu a fost licitat il poate sterge. -posteaza intrebari sau opinii pe forum furnizorului sau altor participanti. De pe form primeste raspunsuri. Diagrama de Colaborare Proces

Pagina 27 din 66

DIAGRAMA CLASELOR Este cea mai folosita diagrama in modelarea sistemelor orientate obiect, si ilustreaza vederea statica de proiectare a unui sistem.

Pagina 28 din 66

Clasa Utilizator id_user id-ul utilizatorului, este unic nume numele utilizatorului judet judetul in care locuieste localitate localitatea unde locuieste codpostal codul postal al localitatii strada numele strazii nrloc numarul casei/blocului, bloc numarul blocului

Pagina 29 din 66

ap numarul apartamentului, telefon numarul de telefon, mail adresa de e-mail a utilizatorului, numecont numele contului, parola parola utilizatorului confirmat se verifica daca utilizatorul a dat un email valid datainscriere data la care s-a creeat contul Metode: -Login-face verificarea in baza de date daca datele furnizate de utilizator sunt corecte -Confirmareverifica daca utilizator-ul a confirmat adresa de mail. -Prel_user_nou-valideaza datele introduse si genereaza un mail catre utilizator cu numele contului si parola. -Prel_modificare_cont-actualizeaza baza de date cu noile informatii modificate. Clasa Produs id_produs id-ul produsului, este unic categoria numele categoriei din care face parte produsul nume denumirea produsului descriere o descriere pe larg a produsului poza tine minte numele generic al pozei pretp pretul de pornire al licitatiei pentru produs data_exp data limita pana la care se poate licita pentru produs pretu ultimul pretul licitat pentru produs id_vanzator id_ul vanzatorului data data postarii produsului cantitate numarul de produse identice pus in vanzare la acea licitatie pas_licitatie valoarea pasului cu care e obligat sa liciteze un eventual client interesat culoare-culoare produsului tip-daca are o tipologie anume dimensiune-dimensiunea produsului Metode:
Pagina 30 din 66

-Produs-verifica daca exista un liciator -Prel_aprodus-prelucreaza adaugarea de produse si actualizeaza baza de date -Prel_modificare_produs-prelucreaza modificarile aduse detaliilor, imaginii si actualizeaza baza de date. -Stergere-sterge un produs din baza de date -Afisare_prod-afiseaza produsele cautate.

Clasa Licit id_produs id-ul produsului licitat id_user id-ul licitatorului pret pretul licitat de licitator data data la care s-a licitat pretm pretul maxim pana la care e dispus sa mearga licitatorul Metode: -Liciteaza_prod : -permite unui utilizator autentificat ca licitator sa liciteze pentru un produs. Face update-ul pretului si a id-ului licitatorului in baza de date. -verifica daca cineva a oferit pretul maxim licitat peste pretul actual si autoliciteaza. -daca sunt utilizatori care au licitat si pretul maxim oferit este mai mic decat pretul actual le trimite mail. -verifica daca a expirat data de licitare a unui produs si, daca s-a licitat pentu el desemneaza un castigator si trimite mail la licitator si la furnizor cu datele de contact ale fiecaruia. Clasa Forum id id-ul unui membru, din tabela users name numele utilizatorului email adresa de mail a utilizatorului link un link catre o pagina de web specific fiecarui utilizator topic numele topicului creat de utilizator
Pagina 31 din 66

Metode: -Forum- trimite mail daca s-a raspuns la un mesaj postat deja -Adauga_mesaj- adauga un mesaj pe forum. DIAGRAMA DE ACTIVITATI (DA) Este o schema logica care prezinta fluxurile de control dintre activitati. Cu acest tip de diagrama se poate modela fluxul unui obiect care trece din stare in stare. Grafic, diagrama de activitati este o colectie de varfuri si arce. Ea contine stari de activitate si stari de actiune, tranzitii si obiecte. Stari de activitate si stari de actiune - se numesc asa pentru ca sunt stari ale sistemului, fiecare reprezentand executarea unei actiuni.

Pagina 32 din 66

Utilizator : utilizator

Aplicatie server

Aparitie vizitator

Creare cont

Validare adresa de nume cont si mail

Adresa valida

Trimitere mail cu parola Nu se raspunde la mail

Mesaj de imposibilitate Stergere din Baza de date

Confirmare parola

Inscriere in baza de date

Login Introducere nume si parola

Afisare Pagina de login

Verificare date

Incorecte

Verificare statut

Afisare pagina furnizor

Ofera produs spre licitatie

Modifica detalii produs

Modifica datele personale

Raspunde pe forum

Vizualizeaza produsele oferite

Afisare pagina licitator

Modifica datele contului

Posteaza intrebari pe forum

Vizualizeaza produsele la care a licitat

Liciteaza

Modifica baza de date

Verifica ce licitatori au oferit mai mult si autoliciteaza pana la pretul maxim oferit

Trimite mail-uri licitatorilor a caror oferta e depasita

Verifica data de expirare a licitatiei si daca a licitat cineva pentru produs

A licitat? Trimite mail de confirmare furnizorului si castigatorului licitatiei cu datele de contact ale acestora Sterge produsul din baza de date

Pagina 33 din 66

Vizitatorul site-ului doreste crearea unui cont. Se valideaza numele contului si adresa de mail. Daca adresa nu e valida se da mesaj de eroare. Daca e valida se trimite mail cu numele contului si parola. Daca nu se confirma parola se sterge utilizatorul din baza de date. Daca se confirma parola va fi mentionat acest lucru in baza de date. Se va afisa pagina de login. Utilizatorul introduce numele contului si parola. Se verifica datele introduse. Daca nu sunt corecte se afiseaza un mesaj revenindu-se la pagina de login. Daca sunt corecte se verifica statutul utilizatorului-daca e furnizor sau licitator. Se va afisa pagina afereta fiecaruia. Daca este Furnizor va avea posibilitatea de a: -oferi produse spre licitare -modifica detaliile si poza produselor sale -modificare date personale -vizualizare produse propuse pentru licitatie. Daca este licitator va avea posibilitatea de a: -licita pentru produse - modificare date personale -vizualizare produsele pentru care a licitat -postare intrebari si opinii pe forum. Orice aduce modificari in datele sistemului va fi modificat si in baza de date. Daca a licitat se va modifica pretul in baza de date si se va retine numele celui care a licitat maxim. Se verifica daca cineva are suma maxima pe care e dispus sa o ofere, mai mare si se autoliciteaza. Se trimit mail-uri de informare celor care au licitat si au suma maxima mai mica decat pretul actual. Se verifica data de expirare a licitatiilor si daca a licitat cineva pentru respectivele produse. Daca nu a licitat nimeni se sterge produsul dn baza de date. Daca a licitat, se desemneaza catigatorul licitatiei si se trimit mail-uri castigatoului si furnizorului cu datele de contact ale fiecaruia.

Pagina 34 din 66

DIAGRAME DE TRANZITIE A STARILOR Ca si diagramele de activitati, ele sunt utile in modelarea ciclului de viata a unui obiect. Diagrama contine stari prin care trece un obiect, pe parcursul vietii sale, ca raspuns la evenimente. O stare este o conditie sau o situatie in viata unui obiect, cand acesta satisface anumite conditii, realizeaza anumite activitati sau asteapta anumite evenimente.

Diagrama de Stare Utilizator

Utilizator neinregistrat

creare cont

confirmare email

Utilizator inregistrat

Neconfirmere mail

Liciteaza produse

Utilizator confirmat

Ofera produse pentru licitatie

Utilizator Licitator Nu castiga licitatia Castiga licitatia Utilizator Cumparator Utilizator Necastigator

Utilizator Furnizor

Incalca regulamentul Sters din baza date

Pagina 35 din 66

Utilizatorul neinregistrat este cel care viziteaza pagina. Daca isi creeaza cont va deveni un utilizator inregistrat in baza de date. Va primi un mail continand numele contului, parola si un link de confirmare. In cazul in care va confirma adresa de mail va deveni utilizator confirmat. Daca ofera produse pentru licitatie este utilizator furnizor, iar daca liciteaza este utilizator licitator. In cazul in care a castigat licitatia este utilizator cumparator, iar daca nu a castigat-o este utilizator necastigator. Oricare utilizator care incalca regulamentul site-ului si cel care nu a confirmat adresa de mail devine utilizator sters din baza de date.

Diagrama de Stare Produs

Liciteaza produs

Produs inregistrat

Nu se liciteaza

Produs licitat

Este interzisa comercializarea

Produs nelicitat

Produs ilegal Produs comercializat

Data limita a licitarii a expirat Produs expirat

Tranzactia s-a incheiat Produs sters din baza de date

Produsul este inregistrat in momentul in care un furnizor copleteaza campurile de inscriere. Produsul este nelicitat atunci cand nu s-au primit oferte pentru el. Daca s-au primit oferte produsul se numeste licitat, iar apoi este produs cumparat. In cazul in care ii expira data limita pentru licitare, produsul devine expirat.

Pagina 36 din 66

Daca un produs a fost licitat, este ilegal sau expirat devine produs sters din baza de date.

DIAGRAMA COMPONENTELOR

Baza Date

Server

Statii lucru

Statiile de lucru se conecteaza la server in momentul in care se intra pe pagina. Din momentul crearii unui cont deja serverul incepe sa faca diferite operatii de inserare si actualizare in baza de date. 3.2 Structura bazei de date

Baza de date licitatii cuprinde urmatoarele tabele: produs users licit categorii forum

Tabela produs: aici sunt memorate toate detaliile despre un produs

Pagina 37 din 66

id_produs id-ul produsului, este unic primary key categoria numele categoriei din care face parte produsul nume denumirea produsului descriere o descriere pe larg a produsului poza camp in care se tine minte numele generic al pozei pretp pretul de pornire al licitatiei pentru produs data_exp data limita pana la care se poate licita pentru produs pretu ultimul pretul licitat pentru produs id_vanzator id_ul vanzatorului, corespondent cu un id din tabela user data data postarii produsului cantitate numarul de produse identice pus in vanzare la acea licitatie pas_licitatie valoarea pasului cu care e obligat sa liciteze un eventual client interesat culoare-culoare produsului tip-daca are o tipologie anume dimensiune-dimensiunea produsului Tabela users: aici sunt memorate toate datele despre un utilizator

Pagina 38 din 66

id_user camp unde se memoreaza id-ul utilizatorului, este unic primary key nume camp unde se memoreaza numele utilizatorului judet camp unde se memoreaza judetul in care locuieste localitate camp unde se memoreaza localitatea unde locuieste codpostal camp unde se memoreaza codul postal al localitatii strada camp in care se memoreaza numele strazii nrloc camp unde se memoreaza numarul casei/blocului, daca este cazul bloc camp unde se memoreaza numarul blocului, daca este cazul ap camp unde se memoreaza numarul apartamentului, daca este cazul telefon camp unde se memoreaza numarul de telefon, obligatoriu mail camp unde se memoreaza adresa de e-mail a utilizatorului, obligatoriu numecont camp unde se memoreaza numele contului, este unic parola camp unde se memoreaza parola utilizatorului confirmat camp unde se verifica daca utilizatorul a dat un email valid datainscriere camp unde se memoreaza data la care s-a creeat contul

Tabela licit: aici sunt memorate toate licitatatiile

Pagina 39 din 66

id_produs id-ul produsului licitat id_user id-ul licitatorului pret pretul licitat de licitator data data la care s-a licitat pretm pretul maxim pana la care e dispus sa mearga licitatorul Tabela categorii: aici sunt memorate toate categoriile, ceea ce permite o dinamizare, categoriile nu sunt fixate, in timp se pot adauga sau scoate, in functie de necesitati si cereri

id_cat id_ul categoriei nume_cat denumirea categoriei nr cate produse sunt in acea categorie Tabela forum: aici sunt memorate datele depre forum

id id_ul unui membru, din tabela users name numele utilizatorului email adresa de mail a utilizatorului link un link catre o pagina de web specific fiecarui utilizator

Pagina 40 din 66

topic numele topicului creat de utilizator text continutul mesajului trimis de utilizator time data la care a fost creat mesajul thread ne spune daca mesajul este un raspuns la un alt mesaj, daca da , ne spune la care este. CAPITOLUL IV-Prezentarea produsului software 4.1 Structura site-ului Site-ul AfacereaTa are 6 parti componente principale, doar 5 sunt prezente mereu : cautare categorii top si bottom pagina pagina info forum administrare (doar pentru utilizatorii inscrisi )

Pagina 41 din 66

Pagina 42 din 66

Modulul cautare -are 3 componente principale - cautare dupa categorie - cautare dupa cuvant cheie - cautare avansata

Cautare dupa categorie Utilizatorul are posibilitatea sa caute numai produsele dintr-o anumita categorie, aleasa din lista de categorii existente sau din toate categoriile. Cautare dupa cuvant cheie Daca utilizatorul a ales o categorie sau a ales Toate categoriile, cuvantul cheie va fi cautat in baza de date in campurile nume si descriere, ele fiind singurele care pot oferi informatii utile despre produsul cautat.

Pagina 43 din 66

Cautarea se poate face si dupa mai multe cuvinte, separate prin spatiu sau bucati din cuvinte, ca in orice motor de cautare modern. Cautare avansata In momentul in care nu sunteti satisfacuti cu rezultatele cautarii, fie ca sunt prea multe rezultate, fie prea putine, este cazul sa apelati la cautare avansata. Aici aveti la dispozitie o multime de filtre, care sa va poata aduce cat mai aproape de rezutatul dorit. Numele va fi cuvantul cautat in numele produsului dar si in descriere. Categoria va contine toate categoriile sau o categorie. Are poza: se pot alege doar produsele cu poza sau cele fara poza. Implicit sunt toate. Data expirarii: putem alege sa afiseze produsele care expira pana la data indicata sau exact la data indicata. Impicit are setata data curenta Pret: putem alege ca pretul sa fie cel specificat de noi, sau un plafon inferior sau superior. Cantitate: la fel ca la pret, putem cauta produsele care au exact cantitatea aleasa sau au un plafon inferior sau superior. Culoare, Tip si Dimensiune: se poate cauta exact dupa dorinte, din aceste categorii. Orice camp necompletat va fi ignorat. Modulul Categorii

Pagina 44 din 66

Numerele din paranteza reprezinta cate produse exista in licitatie din acea categorie. Numarul de categorii nu este fix, structura site-ului permitand adaugarea altor categori in functie de evolutia pietei si de cerintele utilizatorilor. In momentul cand alegem o categorie, sunt afisate in partea dreapta, in fereastra de informatii toate produsele din acea categorie. Daca numarul produselor dintr-o categorie depaseste valoare 10, vor aparea butoane de navigare dreapta sau stranga care vor permite vizualizarea tururor produselor din acea categorie.

Top paginii

Pagina 45 din 66

Sectiunea de Top permite accesul la meniul de autentificare pentru un vizitator, reintoarcerea pe prima pagina si mai exista o sectiune de contact, unde este adresa administratorului site-ului, pentru orice probleme legate de site. In momentul cand utilizatorul vrea sa se autentifice, ii apare un meniu ca cel din imagine unde i se va cere sa introduca numele contului si parola.

In momentrul cand un utilizator s-a autentificat, este afisat un mesaj de bun venit si apare un buton de Log out, care inchide sesiunea si ii permite utilizatorului sa paraseasca in siguranta pagina, fara a exista riscul ca o persoana rau voitoare sa-i foloseasca contul.

Pagina 46 din 66

Daca nu are cont, utilizatorul are posibilitatea sa-si creeze unul, urmand legatura de la Nu ai cont inca?. Aici ii va aparea un formular cu datele personale care odata completat corect, il va indemna sa-si verifice adresa de e-mail furnizata pentru a confirma crearea contului. Dupa confirmare utilizatorul poate sa se autentifice cu numele de cont ales si cu parola primita prin e-mail. E recomandat ca urmatorul pas sa-si schimbe parola in una usor de tinut minte.Aceasta se poate face usor la sectiunea administrare cont, care va fi descrisa ulterior.

Pagina 47 din 66

Bottom-ul paginii Are inclus pe langa elementele de copyright si legatura catre pagina de termeni si conditii. Termeni si conditii de utilizare Intelegere intre AfacereaTA si utilizator Acest document descrie termenii si conditiile aplicabile dumneavoastra pentru folosirea serviciilor oferite de AfacereaTA. Serviciile oferite de noi sunt disponibile numai persoanelor care pot incheia contracte ce intra sub incidenta legii. Inregistrarea, licitarea si vanzarea de produse pe AfacereaTA este gratuita. Pagina noastra functioneaza numai ca un loc de intalnire pentru vanzatori si cumparatori. Noi nu suntem implicati in tranzactia propriu-zisa intre cumparator si vanzator.

Pagina 48 din 66

Ca rezultat, noi nu avem nici un fel de control asupra calitatii, sigurantei si legalitatii produselor expuse, adevarul sau acuratetea descrierii produselor, capacitatea vanzatorilor de a vinde un produs sau capacitatea cumparatorilor de a achizitiona un produs. In cazul unei dispute cu unul sau mai multi utilizatori, AfacereaTA isi declina orice raspundere in legatura cu orice cereri sau daune de orice fel, cunoscute sau necunoscute, suspecte sau nesuspecte. De aceea, va rugam sa fiti cu grija si atentie cand tranzactionati un produs.

Reguli de cumparare Daca ati participat la o licitatie online, pe paginile AfacereaTA si ati facut cea mai mare oferta, deci sunteti castigatorul licitatiei, sunteti obligat prin lege sa achizitionati acest produs. Chibzuiti bine asupra obiectului ales pentru cumparare. Ofertele nu sunt retractibile! Verificati cu atentie descrierea lui si pretul de vanzare. Puteti trimite orice fel de intrebare pentru vanzator. Incercati sa aflati cat mai multe despre persoana de la care cumparati. Folositi forumul pentru a discuta, plus adresa de mail a vanzatorului. La incheierea licitatiei fiti siguri ca ati inteles cine trebuie sa plateasca transportul, care sunt conditiile de plata; de asemenea verificati modul in care se va face plata (cash, ramburs, carte de credit sau alte modalitati). Castigatorul licitatiei si vanzatorul trebuie sa ia legatura in cel mult 3 zile lucratoare de la sfarsitul licitatiei. Nu uitati ca oferta dvs. este perfect legala si in cazul in care ea este acceptata de catre vanzator, dvs sunteti obligat prin lege sa incheiati tranzactia. In caz contrar vanzatorul va poate actiona in judecata.

Reguli de vanzare Alegeti cu grija categoria care este cea mai potrivita pentru produsul dumneavoastra. Va amintim ca ii va fi cu atat mai usor cumparatorului sa gaseasca produsul dvs. cu cat alegeti mai bine categoria.

Pagina 49 din 66

Asigurati-va ca produsul pe care il puneti in licitatie este permis pe AfacereaTA. Verificati lista produselor interzise.

Lista produselor interzise: 1.Reclame- AfacereaTA nu permite vanzatorilor sa posteze reclame pe pagina de listare a produsului. 2.Carti de credit - AfacereaTA permite afisarea numai a cartilor de credit expirate (inactive), si asta numai daca perioada de cand a expirat este mai mare de 5 ani. Vanzatoul ar trebui de asemenea sa examineze termenii si conditiile cartii de credit pentru a fi sigur ca vanzarea ei nu este interzisa. 3. Arme, munitie si echipament militar 4. Bunuri aflate sub embargo - Trebuie sa stiti daca ceea ce doriti sa vindeti se afla sub embargo, pentru a nu intra in conflict cu autoritatile respectivului stat. 5. Droguri - Narcoticele si alte substante nocive nu pot fi listate in paginile AfacereaTA. 6. Bani falsi - Nu pot fi listati pe AfacereaTA bani falsi (bancnote, monede, cecuri si altele). 7. Organe umane - Trupuri omenesti sau orice fel de parte a corpului nu pot fi listate la AfacereaTA. 8. Acte de identitate - Orice fel de act de indentitate, expirat sau activ, nu poate fi listat la AfacereaTA (certificat de nastere, permis de conducere, pasaport, talonul masinii). 9. Materiale cu prescriptie - AfacereaTA nu permite listarea produselor ce necesita orice fel de prescriptie de la o persoana licentiata (retete medicale). 10.Bunuri furate - Vanzarea bunurilor furate nu este permisa prin AfacereaTA. 11.Materiale pornografice - Vanzarea sau publicarea oricaror materiale pornografice prin intermediul vanzarii prin licitatie de orice fel este interzisa. 12.Alte obiecte a caror tranzactionare este interzisa de legea romana, sau necesita o procedura speciala. AfacereaTA isi rezerva dreptul de a sterge imagini pornografice sau descrieri

Pagina 50 din 66

cu limbaj indecent sau vulgar, ce vor fi introduse pe paginile AfacereaTA, de catre utilizatori. In acelasi timp AfacereaTA, va avertiza acesti utilizatori. Daca acelasi utilizator va folosi in mod repetat imagini pornografice sau descieri cu limbaj vulgar, AfacereaTA isi rezerva dreptul de a interzice orice activitate pe paginile AfacereaTA pe viitor.

Confidentialitate: Intimitatea dumneavoastra este un lucru foarte important pentru noi si puteti fi sigur ca modul de protejare a confidentialitatii datelor este mentinut la standarde inalte. Va rugam introduceti datele de identificare personale la inregistare corect, pentru a putea fi contactat in timp util de catre ceilati utilizatori. Puteti schimba parola personala, pe care ati ales-o la inregistrare in sectiune privata Administrare cont. Sunteti obligat sa modificati, daca nu mai sunt valabile datele de inregistrare in sectiunea privata Administrare cont. Cand un obiect a fost cumparat pe paginile AfacereaTA, vanzatorul va primi automat prin email datele personale: nume si prenume,adresa, nr. de telefon si adresa de email ale cumparatorului iar cumparatorul datele personale ale vanzatorului. Pentru rezolvarea eventualelor neintelegeri intre utilizatori, AfacereaTA va pune la dispozitia celor implicati, de la caz la caz, toate datele personale de identificare. AfacereaTA coopereaza cu autoritatile si alte parti terte pentru a da ajutorul necesar in respectarea legii si a altor drepturi. Din aceasta cauza, daca autoritatile locale, nationale sau internationale, necesita folosirea oricarui fel de informatie despre un utilizator, AfacereaTA le va furniza informatiile cerute. Pe langa Termenii si conditiile AfacereaTA, mai este in vigoare Legea Comertului electronic in Romania.

Pagina Info

Pagina 51 din 66

Aceasta este una din cele mai importante sectiuni ale site-ului, ea in sine nu exista, este doar suport pentru toate celelalte sectiuni ale site-ului. Pagini continute in sectiunea Pagina Info: - rezultatele cautarii; - lista cu produsele dintr-o categorie - datele despre un produs anume - toate formularele (login, creare cont, modificare cont, vizualizare produse, adaugare produs, forum,termeni si conditii) Cea mai interesanta pagina, si motorul acestui site este pagina de afisare produs. Aceasta cuprinde Denumirea produsului, vanzatorul (cu adresa de mail a acestuia care desi nu e vizibila un click pe numele acestuia si utilizatorul ii va putea adresa un email), poza, descrierea produsului.

Pagina 52 din 66

In partea stanga se gaseste sectiune de licitare care cuprinde pretul, data la care expira licitatia, catitatea de obiecte licitate, ca si numele de cont al licitatorului in dreapta sus. Un element foarte important il constrituie evolutia grafica a licitarii pentru acel obiect.

In momentul cand utilizatorul este autentificat si nu este proprietarul acelui produs, ii va aparea optiunea sa liciteze pentru produs. Pasul de licitare este stabilit de catre vanzatorul produsului. Suma oferita trebuie sa fie mai mare decat pretul cu pasul de licitatie . Pret maxim este o inovatie a site-ului care vine in ajutorul unui licitator prea ocupat. Licitatorul poate stabili un pret maxim pe care e dispus sa-l ofere pentru acel produs, iar site-ul, in momentul cand alt licitator vine cu o oferta mai buna decat a clientului nostru, va supralicita automat, in limita acelui pret maxim. In momentul in care si acest pret maxim a fost atins, licitatorul va primi un mail cu aceasta informatie si el va putea in continuare sa liciteze, daca mai vrea. Daca un licitator nu vrea sa foloseasca optiunea de pret maxim, nu trebuie decat sa aiba grija ca pretul maxim sa fie egal cu pretul licitat. Modulul Forum Din orice pagina a site-ului se poate ajunge la sectiunea de forum. Daca utilizatorul nu este autentificat, va putea doar sa viziteze forumul, fara a posta.

Pagina 53 din 66

Utilizatorul inregistrat are 2 posibilitati in plus fata de un simplu vizitator: poate creea un subiect nou sau poate raspunde la un subiect deja existent. In momentul cand cineva va raspunde la un subiect al utilizatorului, acesta va fi instiintat prin mail. Modulul Administrare Este prezent numai in momentul cand un utilizator este autentificat si ii permite acestuia sa realizeze urmatoarele operatii: Daca este Licitator Daca esti Furnizor

Administrare cont modificarea unor date personale, exista si date care nu se pot modifica, de exemplu numele de cont, adresa de mail, codul numeric personal. Pentru a modifica parola, trebuie mai intai introdusa cea veche.

Pagina 54 din 66

Adauga produs adaugarea de produse se poate face numai de catre utilizatorii autentifcati. Sunt necesare specificarea numelui produsului, cantitatea, categoria, pretul de pornire, pasul de licitatie, durata licitatie, o descriere cat mai amanuntita si eventual poza. Dupa adaugare, proprietarul produsului are dreptul sa mai execute 2 operatii asupra produsului: Modificati si Stergeti produsul. Sectiunea de sters este valabila numai in cazul in care pentru produs nu a licitat nimeni. In momentul cand cineva a licitat, nu se mai poate retrage produsul. Aceasta optiune e pusa pentru a corecta eventualele greseli realizate la adaugare produs.

Pagina 55 din 66

Vizualizare produse Aceasta sectiune e utila clientului sa tina evidenta produselor la care a licitat daca este Licitator:

Pagina 56 din 66

Si produsele oferite pentru licitatie daca este Furnizor:

4.2 Functionarea site-ului Vizualizare produse Primul pas pe care il face un vizitator al site-ului este sa vada oferta de produse deja existenta. Deviza noastra este: Orice vizitator este un posibil cumparator sau vanzator. Daca este interesat de un produs sau vrea sa vanda un produs de-al sau, vizitatorul trebuie sa-si faca un cont. Creare cont Crearea unui cont este gratuita. Dupa ce un utilizator si-a creat cont, el poate sa vanda. In momentul cand a creat contul, se angajeaza sa respecte regulile site-ului, descrise la sectiunea Termeni si conditii.

Pagina 57 din 66

Oferta Inainte de a face o oferta, ar trebui sa studiati cu mare atentie descrierea articolului si datele referitoare la vanzator/cumparator. Daca va sunt necesare mai multe detalii puteti adresa intrebari direct vanzatorului prin e-mail sau in cadrul diferitelor schimburi de pareri. Fiti siguri ca ati inteles toate conditiile referitoare la modalitea de plata si de expediere. Vanzarea Pentru a vinde trebuie sa completati un formular cu datele despre produs si o descriere cat mai completa. Aveti dreptul de a scoate la licitatie orice articol asupra caruia aveti dreptul de a-l vinde, atat timp cat nu apare in Lista articolelor ce sunt interzise. In momentul in care puneti in vanzare un articol va asumati angajamentul ferm si legal de a-l vinde celui care a facut cea mai mare oferta. Daca ati primit una sau mai multe oferte, sunteti obligati sa incheiati tranzactia. Vanzatorul nu are voie sa faca oferte pentru articolele scoase de el la vanzare folosind un alt nume de participant. Cand licitatia ia sfarsit nu mai sunt acceptate alte oferte. Cumparatorii sau potentialii cumparatori va pot pune intrebari prin e-mail sau in timpul diverselor schimburi de opinii ce au loc pe parcursul unei licitatii. Nu ezitati sa raspundeti prompt tuturor intrebarilor. Incheierea tranzactiei Cand se incheie licitatia, cel care a facut cea mai buna oferta si cel care a oferit produsul licitat vor primi mesaje prin e-mail care contin informatiile referitoare la coordonatele celuilalt. Vanzatorul si cumparatorul trebuie sa ia legatura unul cu celalalt in trei zile de la sfarsitul licitatiei pentru a stabili conditiile de efectuare a livrarii si platii. Dupa incheierea tranzactiei va rugam sa lasati pe forum comentariile Dvs. despre partenerul Dvs. Feedback-urile, atat ale vanzatorului cat si ale cumparatorului, vor influenta calitatea licitatiilor. Principii de baza. Noi suntem doar un loc de intalnire. AfacereaTa este o piata electronica unde puteti cumpara si vinde.

Pagina 58 din 66

In ultima instanta, pentru ca nu participam direct la tranzactia dintre vanzator si cumparator, noi nu verificam autenticitatea articolelor si nici nu garantam plata sau primirea articolelor licitate. b) Bazati-va pe propria dumneavoastra judecata Noi nu avem vreun control asupra calitatii, sigurantei sau legalitatii articolelor listate, asupra adevarului sau acuratetei listarilor, asupra capacitatii vanzatorilor de a vinde articolele sau a cumparatorilor de a le achizitiona. Nu va putem asigura ca vanzatorul sau cumparatorul vor incheia tranzactia. c) Fiti onesti d) Fiti atenti A face afaceri cu necunoscutii este intotdeauna riscant. Va rugam sa faceti uz de precautie, bun simt si prudenta in afaceri atunci cand folositi site-ul nostru. Va sfatuim sa folositi e-mail-ul pentru a afla cat mai multe despre potentialul dumeavoastra partener. Aceasta va va ajuta sa va formati o prima impresie despre partenerul dumneavoastra si sa evitati eventualele riscuri. e) Unele articole sunt interzise Articolele enumerate in Lista articolelor ce sunt interzise sau indoielnice nu se pot lista in licitatia organizata de noi. Va atragem atentia ca lista nu este exhaustiva si ca se actualizeaza din cand in cand cu informatii de care trebuie sa tineti seama. De exemplu aceste articole sunt cele interzise de lege sau celor supuse unor reglementari speciale. Aceste articole includ dar nu se limiteaza la: arme de foc, munitie, artilerie; artificii sau dispozitive pirotehnice; otravuri, narcotice, steroizi sau alte substante aflate sub control; articole radioactive. Mai multe detalii pot fi gasite in Lista articolelor ce sunt interzise sau indoielnice. f) Informatiile introduse de dumneavoastra Informatiile introduse de dumneavoastra (referitoare la dumneavoastra sau vreun articol inclus) nu trebuie: 1) sa fie false, incorecte sau inselatoare; 2) sa fie frauduloase si nici sa implice vanzarea articolelor furate sau contrafacute;

Pagina 59 din 66

3) sa incalce drepturile unei terte parti referitoare la: drepturile de autor, de marca comerciala, secrete comerciale sau orice alte drepturi cum ar fi cele de publicitate sau pastrarea confidentialitatii, a informatiilor personale; 4) sa incalce vreo lege, statut, ordonanta sau reglementare (incluzand, fara a se limita la: controlul guvernamental al exporturilor, protectia consumatorului, concurenta neloiala sau reclama inselatoare); 5) sa fie ofensatoare, calomniatoare, amenintatoare si hartuitoare in vreun mod; 6) nu trebuie sa fie obscene sau sa contina pornografie in special cu referinta la minori; 7) nu vor contine nici fel de un virusi sau alte subrutine de programare a computerului care sunt menite sa dauneze, sa interfereze in mod defectuos, sa intercepteze sau sa fure orice sistem, date sau informatii personale; g) Confidentialitatea datelor despre dumneavoastra. Confidentialitatea datelor despre dumneavoastra este foarte importanta pentru noi si puteti fi sigur ca nu vom divulga sub nici o forma informatiile despre dumneavoastra, cu exceptia partenerului dumeavoastra (ex: castigatorul licitatiei) care va primi datele de contact. Nu toleram utilizarea spam-ului si nici furnizarea informatiilor dumneavoastra personale spre nici o lista de clienti potentiali. Intrebari frecvente 1.Ce este AfacereaTa ? 2.Cum functioneaza AfacereaTa ? 3.Pentru a naviga prin site trebuie sa ma inregistrez? 4.Ce rubrici ale formularului de inregistrare trebuie completate 5.Cum sa licitez? 6.Cum sa vand/cumpar? 7.Cum ma inregistrez? 8.Cum gasesc ceea ce caut? 1.Ce este AfacereaTa ? AfacereaTa este o un site de licitatie gratuita, desfasurata pe Internet, (on line), unde vanzatorii sau cumparatorii plaseaza oferte respectiv cereri pentru care se va licitata. AfacereaTa este doar un loc de desfasurare a pietei. Participarea unui client la licitatia noastra inseamna ca acesta este de acord si a acceptat Termenii si Conditiile noastre. 2.Pentru a naviga prin site trebuie sa ma inregistrez?
Pagina 60 din 66

Nu, nu este necesar. Puteti cauta si afla datele despre articole fara sa fiti inregistrat. Trebuie sa va inregistrati insa, daca vreti sa vindeti sau sa cumparati. 3.Ce rubrici ale formularului de inregistrare trebuie completate? Rubricile care trebuie completate sunt notate cu *. Acestea sunt: adresa Dvs. de email, numele de utilizator si parola Dvs. Deocamdata nu cerem sa completati rubricile referitoare la numele si prenumle, desi va sfatuim sa ni le furnizati, acestea fiind necesare partenerului Dvs. si ajutand totodata la sporirea gradului de incredere ce va este acordata. Intimitatea Dvs. este foarte importanta pentru noi si va putem asigura ca in nici un caz nu vom dezvalui datele Dvs. unei terte parti, exceptie facand partenerul Dvs. 4.Cum functioneaza AfacereaTa ? 1. Un vanzator plaseaza articolul scos la vanzare intr-o anumita categorie. Inainte de aceasta, va rugam sa va inregistrati - este rapid si gratuit. Un cumparator alege un articol pe care vrea sa il cumpere. 2.Un cumparator/vanzator poate gasi un articol, de care are nevoie in sectiunea aferenta sau il poate cauta cu ("Cauta"), dupa introducerea cuvintelor cheie. 3. In fiecare moment atat cumparatorul cat si vanzatorul verifica ce oferte au mai fost facute, numarul total de oferte, oferta maxima si istoricul licitatiei. Cumparatorii pot cere vanzatorului amanunte suplimentare, pot schimba pareri intre ei. 4.Cumparatorul cu oferta cea mai buna castiga licitatia. Atat cumparatorul cat si vanzatorul vor primi un mesaj prin e-mail cu coordonatele celeilalte parti. Dupa aceea, atat cumparatorul cat si vanzatorul sunt pe deplin responsabili pentru tranzactia incheiata. Ei vor trebui sa ia contact unul cu celalalt si sa incheie afacerea la pretul stabilit. 5.Cum sa licitez? Monitorizarea licitatiei In aceasta perioada se pot face noi oferte. Veti fi informat prin e-mail despre toate ofertele care le depasesc pe ale dumneavoastra. Din nefericire, stim cu totii ca e-mail-ul nu este intotdeauna perfect. De aceea, trebuie sa fiti tot timpul in contact cu noi astfel incat sa castigati. Studiati cu mare atentie descrierea unui articol. Daca descrierea unui articol nu este clara, asigurati-va de clarificarea acestui aspect inainte de a face vreo oferta.
Pagina 61 din 66

Noi ii incurajam pe clientii nostri sa faca aprecieri la adresa articolelor puse in vanzare. Facand o oferta pentru un articol se subintelege ca sunteti de acord sa-l cumparati. Fiti atenti !! Bunurile scoase la vanzare sunt proprietatea unor persoane fizice sau a unor companii. Aceasta accentueaza necesitatea de a va verifica cu mare atentie partenerul. Fiti politicos cu ceilalti utilizatori Tratati fiecare participant cu respectul cu care va asteptati sa fiti tratat. Cand trimiteti un e-mail , acordati timpul necesar scrierii unui mesaj complet, folosind formule de salut si incheiere. Fiti politicos cand va expuneti opiniile in legatura cu un articol. Aceasta va spori renumele Dvs. in randul celorlalti participanti. Licitati numai daca vreti sa cumparati Daca luati parte la o licitatie, fiti sigur ca ati specificat si pretul maxim pe care sunteti gata sa-l oferiti. Prin plasarea unei oferte pentru un articol, se subintelege ca sunteti de acord sa-l cumparati. Luati cunostinta de toate detaliile licitatiei In cazul in care sunteti castigatorul unei licitatii veti primi un mesaj cu numele vanzatorului si adresa completa a acestuia plus adresa de e-mail, cu numele produsului si oferta dumneavoastra. Contactati vanzatorul La primirea mesajului continand coordonatele partenerului Dvs. incercati sa-l contactati cat mai repede posibil. Fiti sigur ca puteti lua legatura cu acesta atat prin e-mail cat si prin telefon. Multe persoane nu-si citesc mesajele primite in fiecare zi. Asa ca un telefon poate fi cea mai rapida modalitate de a lua legatura cu vanzatorul si totodata cea care va scuteste de eventualele neintelegeri ajutandu-va sa incheiati tranzactia ! 6.Cum sa vand/cumpar? Faceti o descriere completa a articolului. Procedand astfel, veti evita toate intrebarile pe care altfel vi le-ar pune posibilii cumparatori. Un titlu scurt si sugestiv si o descriere completa a articolului dumneavoasta, va vor fi de ajutor la incheierea unei afaceri.

Pagina 62 din 66

Adaugati elemente informale si personale. Vorbiti despre istoricul articolului, de cat timp va aflati in posesia lui. Fiti cat mai creativi! O fotografie da viata articolului dumneavoastra. O imagine face cat 1000 de cuvinte. Asigurati-va insa ca marimea fisierului e limitata. Folositi termeni exacti. Furnizati toate detaliile referitoare la modul de plata si expediere precum si alte cerinte suplimentare daca e cazul. 7.Cum ma inregistrez? Analizati Termenii si Conditii-- o scurta lista de reguli menite sa asigure pe toti participantii de un tratament nediscriminatoriu. Aceasta pagina se afla in subsolul oricarei pagini Utilizati link-ul Login Utilizator. Acolo daca nu aveti cont, gasiti link-ul Nu ai cont ?, care va va conduce catre formularul de inregistrare. Completati formularul de inregistrare. Introduceti datele, revizuiti acuratetea informatiilor dumneavoastra si confirmati inregistrarea printr-un click pe butonul Trimite. Veti primi in scurt timp un email pe adresa de mail indicata si va trebui sa urmati linkul indicat de mail pentru a confirma inscrierea. Este o masura pentru a verifica autenticitatea mailului dumneavoastra. Daca nu va autentificati in limita a trei zile, contul dumneavoastra va fi sters. Daca aveti intrebari, ne puteti gasi la sectiunea Contact sau accesati sectiunea Forum. Adresa unde este prezenta aplicatia AfacereaTA este http://www.afacereata.lx.ro

Concluzii Lucrarea Aplicatie web destinata licitatiilor este structurata in patru capitole. Primul capitol prezinta domeniul licitatiilor online in contextul romanesc, dezavantajele cat si avantajele licitatiilor online. Cel de-al doilea capitol prezinta metodele, instruentele si tehniciele utilizate pentru realizarea aplicatiei. In acest capitol sunt prezentate :

Pagina 63 din 66

- limbajul UML -componentele limbajului unificat de modelare - diagramele existente in UML - avantajele utilizarii UML -produsul Rational Rose - firma producatoare - opinii la adresa interfetei cu utilizatorul - puncte de vedere asupra documentatiei oferite de produs -PHP- ce este PHP-ul - de ce PHP si nu alt limbaj de script - ce poate face PHP -ce componente software ne trebuie pentru a putea folosi limbajul - MySQL- pentru ce ne trebuie o baza de date si la ce o putem utiliza. - cele trei componente pentru a putea rula scripturi PHP care sa acceseze baze de date cu MySQL: -clientul, serverul si serverul de web. -dezvoltarea unei baze de date folosind PHPMyAdmin In capitolul trei sunt prezentate analiza si proiectarea aplicatiei. Se incepe prin a declara enuntul problemei si se va continua cu prezentarea diagramelor cazurilor de utilizare, diagramele de secventa si colaborare pentru client, furnizor si proces, diagrama claselor si detalierea atributelor si a operatiilor realizate din fiecare clasa, diagrama de activitati si diagramele de stare ale utilizatorului si produsului, diagrama componentelor si structura bazei de date. Capitolul patru este dedicat prezentarii produsului software si debuteaza cu structura site-ului unde sunt detaliate componentele principale ale site-ului: cautare, categorii, top si bottom-ul paginii, forumul si modulul de administrare. Urmeaza detalierea modului de utilizare a site-ului si intrebarile frecvente puse de un vizitator al unui astfel de site. Aplicatia este un site cu inscriere gratuita, usor de urmarit, cu functionalitati clare de utilizare, cu mesaje de eroare sau indrumare a utilizatorului in momentul cand a gresit completarea unui camp, cu oportunitatea de a vedea cele mai recente cinci produse adaugate si primele cinci produse cele mai cautate. Site-ul doreste sa atraga cat mai multi utiizatori si vrea sa castige fidelitatea lor, iar siguranta si veridicitatea datelor va deveni o componenta tot mai importanta pentru site.
Pagina 64 din 66

Momentan singura data sigura a unui utilizator este adresa de mail pe care o confirma. Utilizatorii sunt impartiti pe doua categorii-furnizori si clienti (licitatori) si astfel un furnizor nu poate licita pentru propriile produse din contul de furnizor. O masura care este menita sa previna o dubla licitare este ca un licitator nu poate licita consecutiv la acelasi produs, insemnand ca el s-ar autolicita. Site-ul are functionalitati care au in vedere ca utilizatorii nu au mereu timp sa verifice pretul la obiectele licitate. Suma oferita trebuie sa fie mai mare decat pretul cu pasul de licitatie . Pretul maxim este o inovatie a site-ului care vine in ajutorul unui licitator prea ocupat. Licitatorul poate stabili un pret maxim pe care e dispus sa-l ofere pentru acel produs, iar site-ul, in momentul cand alt licitator vine cu o oferta mai buna decat a clientului nostru, va supralicita automat, in limita acelui pret maxim. In momentul in care si acest pret maxim a fost atins, licitatorul va primi un mail cu aceasta informatie si el va putea in continuare sa liciteze, daca mai vrea si tot prin mail se primesc si datele de contact ale furnizorului sau castigatorului licitatiei.. Daca un licitator nu vrea sa foloseasca optiunea de pret maxim, nu trebuie decat sa aiba grija ca pretul maxim sa fie egal cu pretul licitat. Pentru cei care au nelamuriri sau vor sa-si exprime parerea asupra unui obiect licitat, pret etc..exista un forum al site-ului iar cel caruia i se adreseaza o intrebare/opinie va primi si un mail cu acestea. Pentru cei care sunt interesati doar de anumite tipuri de produse exista un filtru de cautare avansata si produsele sunt impartite in categorii sugestive. In momentul in care nu sunteti satisfacuti cu rezultatele cautarii este cazul sa apelati la cautarea avansata. Aici aveti la dispozitie o multime de filtre, care sa va poata aduce cat mai aproape de rezutatul dorit. Numele va fi cuvantul cautat in numele produsului dar si in descriere. Categoria va contine toate categoriile sau o categorie. Are poza: se pot alege doar produsele cu poza sau cele fara poza. Implicit sunt toate. Data expirarii: putem alege sa afiseze produsele care expira pana la data indicata sau exact la data indicata. Impicit are setata data curenta Pret: putem alege ca pretul sa fie cel specificat de noi, sau un plafon inferior sau superior.

Pagina 65 din 66

Cantitate: la fel ca la pret, putem cauta produsele care au exact cantitatea aleasa sau au un plafon inferior sau superior. Culoare, Tip si Dimensiune: se poate cauta exact dupa dorinte, din aceste categorii. Orice camp necompletat va fi ignorat. Cautarea se poate face si dupa mai multe cuvinte, separate prin spatiu sau bucati din cuvinte, ca in orice motor de cautare modern. Cand se da click pe un produs apar pretul ultim de licitatie, cine a oferit pretul, data expirarii si toate detaliile oferite de furnizor, precum si fotagrafia (optionala) produsului dar care poate valora mai mult decat o mie de cuvinte. Un element foarte important il constrituie evolutia grafica a licitatiei pentru un obiect. Pentru sugestii, alte probleme referitoare la structura sau la ceea ce este postat pe site exista modalitatea de a contacta administratorul site-ului apasand pe Contact. Vi se va oferi un raspuns prompt in legatura cu problema semnalata. Pentru viitor se intrevad metode de confirmare si a telefonului prin trimiterea de mesaj SMS cu un cod care va trebui confirmat pe site. Vor aparea subcategrii ale categoriilor mari si posibilitatea expunerii mai multor fotografii si filmulete cu produsul comercializat. Utilizatorii vor primi calificative de la partenerii de afaceri astfel se va spori increderea in anumiti utilizatori, iar cei cu feedback negativ nu vor mai fi lasati sa utilizeze site-ul. Cei interesati de anumite produse vor fi instiintati pe mail de punerea lor la licitatie. O aplicatie cat mai detaliata ca functionalitati pentru partea de administrare a site-ului.

Pagina 66 din 66