. Tehnologia Informatiei Si Comertul Electronic

I. Viziune economică asupra comerțului electronic

1. Introducere: revoluția comerțului electronic

Comerțul electronic nu reprezintă altceva decât a face afaceri electronic. Se bazează pe procesarea electronică și transmiterea datelor, ce cuprind text, sunet și video. Cuprinde multe activități diverse dintre care amintim comerțul electronic al bunurilor și serviciilor, livrarea online a conținuturilor digitale, transferul de fonduri electronic, licitații comerciale, piața directă către consumatori și servicii de după vânzare. Implică atât produsele (ex. bunuri, echipament medical specializat) și servicii (ex. servicii de informare, servicii financiare și legale); activități tradiționale (ex. în educație, sănătate) și activități noi (ex. jocuri virtuale).

1.1. Comerțul Electronic: revoluția Internetului

Comerțul electronic nu este un fenomen nou. Timp de mulți ani companiile au schimbat date de afaceri prin intermediul a numeroase rețele de comunicație. Dar acum expansiunea este accelerată și apar modificări radicale, în funcție de popularitatea în creștere a Internetului. Până de curând doar o activitate de "afacere la afacere" pe rețele închise, comerțul electronic se extinde tot mai rapid, crește numărul de participanți, corporații și indivizi, pe rețele deschise globale cum ar fi Internetul.

Tabelul 1: Pentru comerțul electronic tradițional rețeaua este un mijloc de a muta date; pentru comerțul electronic pe Internet, rețeaua este piața.

Comerțul electronic acoperă în principal două tipuri de activități: comerț electronic indirect – comandarea electronică a bunurilor tangibile, care totuși trebuie să fie livrate fizic folosind canale tradiționale precum serviciul poștal sau curierii comerciali; și comerț electronic direct – comandarea online, plata și livrarea bunurilor și serviciilor intangibile precum software, servicii de informare pe o scară globală. Atât comerțul electronic direct cât și cel indirect oferă oportunități specifice. Amândouă sunt preluate adesea de aceleași companii care, spre exemplu, vând software atât online cât și în afara acestuia. Comerțul electronic indirect este, oricum, dependent de un număr de factori externi, precum eficiența sistemului de transport. Comerțul electronic direct exploatează întregul potențial al pieții electronice globale.

1.2. Piața viitoarei generații

Comerțul electronic, bineînțeles, nu se limitează la Internet. Include un număr larg de aplicații în televiziune (teleshopping) și în afara mediului (vânzări de cataloage de CD-ROM-uri), precum și rețele asociate (domeniul bancar). Oricum, Internetul, cu protocoalele sale robuste și independente de rețea, federalizează rapid diferite forme de comerț electronic. Rețelele asociate devin intraneturi. În același timp, Internetul generează multe forme hibride noi de comerț electronic combinând, de exemplu, informațiile digitale din televiziune cu mecanismele de răspuns ale Internetului (pentru comandă imediată) sau cataloagele CD-ROM cu conexiunile Internet (pentru conținut și preț).

Comerțul electronic este o piață în dezvoltare. În acest mediu care se mișcă atât de repede, putem vedea dezvoltarea unui șir larg de afaceri și piețe virtuale inovatoare. Companiile caută acum pe Internet funcții precum executarea comenzii și căutarea de distribuitori specializați în asemenea servicii. Distribuitorii ei înșiși “caută virtual” depozite fizice și plasări ale bunurilor la specialiști logistici precum companiile de curieri comerciali. Cumpărătorii, vânzătorii și intermediarii formează piețele Internet specifice industriei în câmpuri diverse precum cele ce privesc automobilele și echipamentele de construcție. În mod similar, industriile de construcție globale, precum cele de automobile, calculatoare și aeronave, își integrează rapid lanțul de aprovizionare la Internet.

Era Internetului ca și cadou pentru economie ia sfârșit. Noi forme de comerț "individ la individ" apar, pe măsură ce utilizatorii înșiși pot pretinde sume mici pentru conținutul pe care îl publică pe Internet. În mod similar, editorii comerciali pot vinde acum informații pe Internet, pagină cu pagină, articol după articol, fotografie după fotografie. Foarte mica plată primită pentru aceste servicii generează tendințe noi asupra venitului, maximizează utilitatea arhivelor, și încurajează dezvoltarea.

1.3. Oportunități pentru Europa

Comerțul electronic oferă oportunități enorme pentru Europa. Se estimează că veniturile în urma comerțului electronic, atât cel direct cât și cel indirect, va crește cu peste 2 milioane ECU în lume în anul 2000. Această creștere spectaculoasă va conduce la schimbări structurale profunde. Sectoare precum comerțul cu amănuntul și distribuția cu 20 de milioane de angajați și turismul cu 6 milioane de angajați, vor trebui să se adapteze pentru a exploata aceste oportunități, să extindă afacerea existentă și să lanseze altele noi. Unele servicii existente vor fi substituite cu altele noi. Va fi realizat un câștig semnificativ în eficiență.

Ca rezultat, comerțul electronic va avea un impact considerabil asupra structurii și operațiilor pieței muncii. Vor fi necesare educarea și învățarea acestor noi utilități. Confruntându-ne cu această competiție intensă, globală într-un mediu digital, trebuie să ne asigurăm că aceste noi sarcini sunt create și menținute în Singura Piață Europeană.

În Europa, comerțul electronic oferă deja stimulente considerabile atât pentru jucătorii noi cât și pentru cei vechi. Sectoarele economice mari, precum industria de vânzare la distanță din Europa, integrează activ Internetul în strategiile lor de marketing. Comerțul electronic oferă un management îmbunătățit al tranzacțiilor și mărește eficiența afacerilor. Aduce cu sine reduceri de cost, mărește piețele existente și creează arii noi de afaceri pentru produse intangibile bazate pe cunoștințe – probabil una din puterile cele mai mari ale Europei.

Consumatorii, de asemenea, au de câștigat semnificativ. Comerțul electronic revoluționează relația dintre consumator și producător. Consumatorul beneficiază de o posibilitate de alegere mai mare putând să compare și să aleagă imediat dintr-o gamă largă de oferte. Produsele specializate sunt puse din ce în ce mai mult la dispoziție. Prețurile scad și crește eficiența. O relație personală de "unul la unul" înlocuiește tradiționala piață și tehnicile de distribuție în masă, aducând servicii corespunzătoare.

Prin propria sa natură, comerțul electronic este internațional și încurajează livrarea de bunuri și servicii în lumea întreagă. Stimulează în mod direct competiția în Piața Simplă. Aceasta, la rândul ei, oferă comerțului electronic perspectiva afacerilor în masă și a clienților dincolo de granițele naționale. În plus, comerțul electronic oferă regiunilor periferice oportunități noi de accesare a piețelor principale. Comerțul electronic reprezintă, prin urmare, un potențial factor vital în integrarea europeană.

1.4. Comerțul electronic: comparare internațională

De oportunitățile pe care le oferă comerțul electronic au profitat frecvent în special competitorii principali ai Europei. În SUA, Internetul sprijină economia bazată pe Internet, creând noi afaceri, noi posibilități de venituri, și, cel mai important, noi locuri de muncă. Sectoarele economice tradiționale (ex: industria turismului) își mută online părți substanțiale ale activităților lor economice. (Tabelul 2)

1.5. Nevoia de acord global

Comerțul electronic este prin el însuși o activitate globală. Accesul îmbunătățit la piețele globale este însoțit de competiția ce vine din alte părți ale lumii. Dialogul multilateral, ce implică guvernul și sectorul industrial, este un subiect pe ordinea de zi în multe forumuri. Sectorul privat a jucat un rol de pionierat.

În același timp lupta se dă și pentru eliminarea barierelor comerciale, pentru a asigura accesul la infrastructura și serviciile din alte țări.

O problemă tot mai discutată este apariția tot mai frecventă a ilegalităților cibernetice, precum spălarea banilor electronici, hacking sau violarea dreptului de autor (copyright). Cooperarea internațională a adus deja rezultate într-un număr de domenii-cheie, precum lupta împotriva crimei organizate pe rețele noi de comunicație.

Tabelul 2: Noi afaceri prin Internet: inițiative și inovații

2. Piața pe Internet

2.1. Întrebări și răspunsuri

Comerțul pe Internet deschide o lume întreagă de servicii și bunuri. Cu un simplu click, puteți comanda lalele direct din Olanda sau mirodenii exotice din Turcia. Internetul și-a extins piața internațională mai mult ca oricând, oferind consumatorilor alegeri nelimitate.

Dar comerțul electronic – în special când lucrează cu comercianți din alte țări – deschide o serie de întrebări. Sunt prețurile estimate în dolari SUA sau în altă valută? Compania respectivă face comerț internațional? Cât timp va lua unei comenzi să fie distribuită? Ce fel de taxe neașteptate sau datorii vor fi adăugate prețului?

Comisia Federală de Comerț oferă niște răspunsuri la întrebările de mai sus.

Cunoașteți-vă partenerii!

Asigurați-vă că o companie este legitimă înainte de a face afaceri cu ea. Identificați numele companiei, adresa sa fizică, inclusiv țara de origine și o adresă de e-mail sau un număr de telefon, pentru ca să o puteți contacta la nevoie pentru întrebări și probleme. Și lucrați numai cu comercianți care își expun clar condițiile. Este compania afiliată cu grupuri industriale?

Știți ce cumpărați?

Căutați informații clare, limpezi și ușor accesibile despre bunurile și serviciile care vă sunt oferite, și contactați compania pentru a lămuri orice întrebare înainte de a face o comandă.

Înțelegeți termenele, condițiile și costurile implicate în vânzare!

Fiți siguri ce cumpărați și ce nu. Faceți o listă completă a costurilor implicate în vânzare, a tipului de valută, a termenelor de livrare și a termenelor, condițiilor și metodelor de plată.

Căutați informații în privința restricțiilor, limitărilor și condițiilor de cumpărare; indicații pentru folosirea corectă a produselor, inclusiv siguranță și avertizări în privința sănătății; date de expirare și garanții; și valabilitatea serviciilor de după vânzare.

Protejați-vă când plătiți “online”!

Căutați informații puse pe Internet care descriu politica de securitate a companiei, și verificați dacă “browserul” este sigur și înregistrează informațiile personale și financiare în timpul transmisiei electronice. Aceasta face ca informația să fie mai puțin vulnerabilă “hackerilor”.

Gândiți-vă la protecția d-voastră!

Orice afacere cere informații despre d-voastră pentru a face o comandă. Unii folosesc acest lucru pentru a spune clienților despre produse, servicii sau promovări, dar alții împart sau vând informațiile altor comercianți – practică cu care s-ar putea să nu fiți de acord.

Cumpărați numai de la comercianții care vă respectă intimitatea. Declarația politicii unei companii ar trebui să vă spună ce fel de informații vă vor fi cerute și cum vor fi folosite acestea, dându-vă posibilitatea să refuzați cumpărarea sau împărțirea informațiilor d-voastră altor comercianți. Ar trebui, de asemenea, să vă spună dacă puteți corecta sau șterge informații pe care compania deja le are despre d-voastră.

Fiți la curent cu ce consecințe veți rămâne dacă procesul de cumpărare va avea probleme!

Faceți afaceri numai cu companiile care își expun angajamentul în privința satisfacerii clientului și a politicii de a rezolva plângerile sau dificultățile consumatorilor rapid și în mod corect, fără a cere taxe enorme.

Fiți deștepți în ce privește comerțul electronic! Cereți proceduri de cumpărare prietenoase consumatorului!

Căutați informații ce privesc drepturile și responsabilitățile d-voastră când participați la comerțul electronic internațional. Luați un rol activ în dezvoltarea unei piețe electronice care promovează corectitudinea și procedurile care protejează atât afacerile cât și consumatorii.

2.2. Listă cu informațiile pe care ar trebuiumatorii.

2.2. Listă cu informațiile pe care ar trebui să le ofere un site de comerț electronic

Despre Companie

Ce fel de companie e și ce vinde?

Unde se află, inclusiv țara?

Cum puteți contacta afacerea?

Despre Produse sau Servicii

Informațiile cu privire la ce se vinde sunt suficiente pentru a ști exact ce cumpărați?

Care este costul produsului sau serviciului, și valuta folosită?

Despre vânzare

Sunt menționate prețurile adăugate produsului sau serviciului, în caz că există, ca de exemplu prețuri pentru transport, taxe și datorii?

Există restricții sau limitări impuse vânzării?

Date de expirare sau garanții?

Sunt puse la dispoziție opțiuni de vânzare sigură și convenabilă?

Există o estimare a timpului când veți primi comanda?

Despre Protecția Consumatorului

Există posibilitatea de a salva sau tipări o înregistrare a tranzacției?

Există asigurări pentru protecția informației personale când este transmisă electronic?

Sunt oferite informații ce privesc datele ce vă vor fi cerute, ce va face compania cu ele și cui vor fi împărțite?

Există posibilitatea să optați dacă doriți să vă fie colectate informațiile despre d-voastră?

Există explicații despre cum se poate returna un produs, primi rambursarea sau face un schimb?

Unde ar trebui să sunați sau să scrieți dacă aveți plângeri sau probleme?

3. Ce este comerțul electronic? Definiții.

3.1. Ce este Comerțul Electronic?

Comerțul Electronic este practica de a vinde și cumpăra produse și servicii prin Internet, utilizând tehnologii cum ar fi Web-ul, schimbul electronic de date, email, transferuri electronice, și “smart cards”. Comerțul electronic global a luat o amploare deosebită în ultimii ani. După O’Reilly & Associates, accesul la Internet al afacerilor din lumea întreagă va crește la 8 milioane în anul 2001. Această creștere, cuplată cu schimbările rapide din tehnologia informației și comunicațiilor, are un impact profund asupra afacerilor și a locurilor de muncă. Din ce în ce mai mult, folosirea comerțului electronic devine o condiție de comerț pentru industrie și este imperativă pentru toate industriile care vor să se mențină în top.

3.2. Care este impactul comerțului electronic asupra locurilor de muncă?

Internetul asigură accesul la o piață electronică globală cu milioane de clienți, la orice oră și în fiecare secundă. Accesul tot mai mare la instrumentele Web sofisticate permite companiilor să elimine, refacă și automatizeze practicile de afaceri, asigurând astfel eficiență din punct de vedere al costului și eficiență din punct de vedere al timpului investit în conducerea afacerii. În plus față de aceste schimbări pozitive, apar și unele provocări. Pe măsură ce domeniul acesta al tehnologiei informației continuă să se extindă, cererile de personal sunt tot mai mari, cauzând astfel o criză de lipsă de muncă pentru mulți angajați. În plus, “legea ciberneticii” este o disciplină relativ nouă, cu ramificații ale comerțului electronic încă neexplorate.

Comerțul Electronic constituie unul din cele mai importante aspecte ale Interntului în momentul de față. Acesta permite schimbul imediat de bunuri și de servicii fără bariere impuse de timp și distanță. În orice moment din zi și din noapte, puteți accesa pagini pe Internet și cumpăra aproape orice doriți.

Oricum, drumul până la crearea unui magazin de succes online poate fi unul dificil și confuz dacă nu se cunosc conceptele și principiile din spatele comerțului electronic. Pentru a intra în această piață ușor trebuie doar să știi ce trebuie să faci înainte de a începe să faci ceva concret.

3.3. Definiții de termeni folosiți în mod curent

Comerțul electronic indiferent de modul cum îl numim înseamnă practic același lucru. Acest termen definește cumpărarea și comercializarea a ceva în mod electronic. Dacă doriți să vindeți ceva prin Internet, au apărut noi tehnologii care deschid calea unui șir întreg de opțiuni – există câte una pentru orice cerință. Cel mai important lucru însă e siguranța acestui comerț. Experții spun că tranzacțiile “online” sunt tot atât de sigure precum tranzacțiile făcute față în față – deși nici unele, nici altele nu se pot garanta 100%.

Dar comerțul electronic poate fi un subiect confuz și mulți dintre noi au nevoie de puțin ajutor pentru a se lămuri.

Iată câteva definiții ale unor termeni folosiți în mod curent:

Bani Electronici sau Monetar Digital

Acești termeni sunt folosiți la schimb, și se referă la oricare din metodele care permit unei persoane să vândă bunuri sau servicii prin transmiterea unui număr de la un calculator la altul. Numerele sunt verificate de o bancă și reprezintă sume de bani reali. Banii electronici sunt anonimi și reutilizabili. Spre deosebire de tranzacțiile pe bază de cărți de credit, comerciantul nu cunoaște identitatea cumpărătorului.

Cecuri Electronice

Clienții plătesc marfa scriind un CEC electronic care se transmite electronic prin e-mail, fax sau telefon. “Cecul” este un mesaj care conține toate informațiile necesare unui cec obișnuit, dar este semnat digital, sau andosat. Semnătura digitală este codată prin criptare. Când cecul este prelucrat, mesajul rezultat este codat de bancă, oferind astfel dovada plății.

Portofelul electronic

Portofelele electronice rețin pe hard numerele d-voastră de cărți de credit într-o formă criptată. Astfel faceți tranzacții pe siteurile care suportă acest tip particular de portofel electronic. Cu un click asupra unui buton Plătiți, clienții inițiază o plată cu cărți de credit prin intermediul unei tranzacții sigure asigurată de serverul companiei ce se ocupă cu portofelul electronic.

Comerțul electronic sau CE

Acești termeni sunt folosiți la schimb, și înseamnă același lucru – schimbul “fără hârtie” al informației de rutină de privește afacerile folosind Schimbul Electronic de Date (SED), email-ul, transmisiile prin fax etc. Se referă la comerțul prin Internet, stocul disponibil online și tranzacții, procesul de cumpărare al produselor cu tot ce implică el – soft, documente, grafică, muzică.

Bunurile “hard” în competiție cu cele “soft”

Bunurile “hard” sunt produse care există în lumea reală, spre deosebire de cele “soft” care există virtual sau electronic. De exemplu, un comerciant pe Internet care vinde o carte direct clientului într-o versiune tipărită vinde bunuri “hard”; un comerciant care oferă o carte într-un format electronic vinde bunuri “soft”.

Agenți cu risc crescut

Agenții cu risc crescut sunt instituțiile financiare sau companiile care evaluează statutul conturilor comercianților la afaceri cu risc crescut. Aceștia își compensează riscurile solicitând tranzacții mari și rate mai mari decât solicită băncile tradiționale. Oricum, cheltuielile inițiale sunt mult mai mici decât sumele mari cerute de instituțiile bancare tradiționale. Unii agenți oferă alte trăsături precum soft de cumpărare, tipare de site-uri de web, forme sau linii de siguranță pentru comandă.

Cont comercial

Un Cont Comercial este o relație între o afacere (un comerciant) și o bancă care îi permite acestuia să accepte plăți cu cărți de credit din partea clienților. Multe bănci sau instituții financiare, în special în Canada, au cerințe și ordine stricte în ce privește un astfel de cont. Multe afaceri mici întâmpină greutăți mari (uneori insurmontabile) la înființarea unui astfel de cont. Dacă acesta este obținut, comerciantul împrumută sau cumpără software special care este folosit pentru a porni tranzacția. În unele cazuri, in funcție de bancă sau de tipul de afacere cu care se operează, veți avea nevoie să împrumutați hardware sub numele de terminal de procesare.

Un cont comercial pe Internet este un cont special care permite acceptul de cărți de credit online. Tranzacțiile sunt procesate online, în timp real. În timp ce clientul așteaptă, sistemul verifică cartea de credit pentru a fi sigur că nu este furată, nu a expirat și se află la aceeași adresă pe care a scris-o clientul. Dacă cartea de credit este acceptată, clientul și comerciantul sunt deopotrivă notați prin vânzarea care tocmai s-a efectuat. Acest tip de cont este unul mai strict decât cel care implică tranzacții față în față. Tranzacțiile Web nu adună semnături de la comercianți și prin urmare există un risc mare de fraudă.

Brokerii se specializează în obținerea de conturi pentru cărți de credit folosite în afacerile pe Internet. Brokerii cer o taxă și inchiriază sau vând softul și hardul după cum este nevoie. Plătiți o rată, care este procentajul pe care îl plătiți pentru fiecare tranzacție procesată, la fel ca și alte taxe care diferă de la un serviciu la altul. Dacă obținerea unui astfel de cont printr-o bancă tradițională se dovedește a fi o problemă, brokerii sunt o alternativă bună.

Microtranzacțiile sau Microplățile

Microtranzacțiile sunt tranzacții cu sume mici – câțiva cenți sau câțiva dolari – făcute în general pentru accesarea desenelor, jocurilor sau informației.

Sistemele de Plată prin Telefon

O abordare foarte nouă, tranzacțiile prin telefon permit clientului să cumpere un produs sau un serviciu, suma fiind pusă pe nota de plată a telefonului acestuia. Deocamdată, acest mod de plată a fost folosit pentru produse soft (ex. timp petrecut pe un site Web) sau pentru donații caritabile online.

3.4. Alte definiții

Iata câteva definiții ale unor idei cheie folosite lângă termenul de comerț electronic. Acestea derivă dintr-o lungă serie de publicații apărute spre sfârșitul anilor ’80, și subiectul continuă să se dezvolte.

În orice domeniu care evoluează rapid, anumiți termeni sunt folosiți în moduri care pot varia puțin sau substanțial. Definițiile de mai jos sunt cele mai importante în analizarea comerțului electronic.

Afaceri electronice (AE)

Termenul de afaceri electronice este un termen general pentru:

conducerea unei afaceri cu ajutorul telecomunicațiilor și a instrumentelor de telecomunicații

Cuprinde multe segmente suprapuse, care sunt identificate în secțiunile de mai jos.

Comerț electronic (CE)

Comerțul electronic este definit astfel:

comerțul de bunuri și servicii, cu ajutorul telecomunicațiilor și instrumentelor de telecomunicații

Unii folosesc termenul de “cumpărare electronică” sau “piață electronică”. Oricum, aceștia înseamnă cam același lucru în esență ca și termenul de Afacere electronică definit mai sus. Exemple de AE care nu sunt CE se referă la procesele de înregistrare și autorizare, promoțiile de studenți, și administrări legate de tribunal.

CE cuprinde multe segmente, iar unele dintre ele au propriul nume. De exemplu:

– cataloagele electronice se referă la mijloacele prin care comercianții își pot comunica ofertele potențialilor comercianți;

– interschimbul electronic de date(IED) se referă la o familie particulară de standarde pentru exprimarea datelor structurate care reprezintă tranzacțiile CE;

– licitații electronice pentru un set particular de mecanisme de fixare de prețuri.

Există două modele ale procesului de comerț electronic, numite cumpărare deliberată și cumpărare spontană. Acestea sunt descrise într-o altă secțiune.

Publicații electronice

Publicațiile electronice sunt definite astfel:

comerț electronic de bunuri și servicii digitale care sunt spre consumul simțurilor umane

Acestea cuprind un șir de formate, incluzând text, date structurate, imagini, șiruri, imagini animate și video, sunete, și combinații a tuturor acestora de mai sus (multi-media).

Transmiterea Serviciilor Electronice(TSE)

Transmiterea serviciilor electronice este definită astfel:

comerț electronic în servicii, de ex. aprovizionarea de servicii cu ajutorul telecomunicațiilor și a instrumentelor de telecomunicații

TSE exclude problema traficului la bunurile fizice, și prin urmare se axează pe aplicații de afaceri electronice unde, cel puțin în principiu, întreaga activitate poate fi executată electronic.

Termenul este folosit de obicei pentru a se referi la aplicații guvernamentale ale CE. Este folosit, de asemenea, în sectoare bancare și alte servicii financiare, rezervări de excursii și alte evenimente, învățământ la distanță.

Cumpărare deliberată

Acest termen se referă la tipul de proces practicat de către corporații în care aceștia preiau achiziții majore.

Cumpărarea deliberată poate fi privită ca o succesiune de faze, descrise mai jos. În multe cazuri reale aceste Faze sunt ușor identificabile, deși în unele circumstanțe unele dintre ele pot fuziona, sau pot apare în diferite secvențe. Fără îndoială acest model este foarte util în analizarea aplicării unei anumite tehnologii informatice asupra comerțului electronic.

Faza Pre-Contractuală

La începutul procesului, cumpărătorul și vânzătorul sunt preocupați de strângerea de inteligență a pieței.

Cumpărătorul caută informații asupra celor care oferă bunuri și servicii, asupra bunurilor și serviciilor în sine, și asupra prețurilor, valabilității, termenelor și condițiilor de aplicare a cumpărării.

Comerciantul caută informații despre posibilii cumpărători ai bunurilor și serviciilor pe care le oferă. Aceasta este aria numită în mod obișnuit marketing, aceasta incluzând și publicitatea.

Faza Contractuală

În timpul acestei faze, este stabilită o relație formală între vânzător și cumpărător, aceasta incluzând termenii și condițiile care vor fi aplicate tranzacțiilor din contract. În unele cazuri, numai o tranzacție este studiată și prin urmare aceste activități sunt posibil să se unească cu cele din fazele următoare; în alte cazuri, multe comenzi pot fi plasate în contextul unui contract “cu o singură parte”, și prin urmare este utilă separarea activităților în două faze.

Faza de comandare

Aceasta implică plasarea și prelucrarea comenzilor de cumpărare (sau, în termeni contractuali, a ofertelor), și luarea la cunoștință a vânzătorului de pregătirea livrării (în termeni contractuali, a acceptării).

Alte tranzacții care pot fi implicate includ amendamentele de prelucrare a comenzii, renegocierile și anulările.

Faza logistică

Această fază se ocupă cu livrarea bunurilor și/sau îndeplinirea serviciilor. În plus, pot fi implicate unele funcții de după livrare, în speță examinarea și acceptarea sau refuzul.

Faza de Înțelegere

În timpul acestei faze, bunurile sau serviciile sunt plătite. Tranzacțiile relevante includ facturarea, autorizațiile de plată, plata, și modul de transmitere a banilor. În cazul particular al contractelor care implică livrări ciclice sau îndeplinirea de servicii (ex. angajarea de personal provizoriu sau cu contract pentru o perioadă extinsă), s-ar putea să fie inclusă și o succesiune de plăți.

Asociată cu această fază este și prevederea cumpărătorilor de către instituțiile financiare a confirmărilor tranzacțiilor care afectează conturile acestora, precum și a declarațiilor de tranzacții și bilanțuri.

Faza de Post-Procesare

După ce tranzacția de bază a fost completată, e posibil să apară un număr de activități în plus. Cel mai adesea, este adunată și raportată informația de management. În unele cazuri, există obligația de a reține și raporta statisticile comerciale unei asociații industriale sau unei autorități statistice naționale.

În plus, din vânzare ar putea rezulta o relație între vânzător și cumpărător, în ce privește serviciile, menținerea, îmbunătățirea și eventual înlocuirea bunurilor sau achiziției (ex. un fax), sau reaprovizionarea cu bunuri folosite de achiziție (ex. hârtie sau cerneală).

Acest model este abstract, și necesită specializare când este aplicat unor anumite setări. O considerație importantă privește diferitele clase de bunuri și servicii care sunt subliniate mai încolo.

Cumpărarea spontană

Achizițiile mari ale unor corporații implică sume relativ mici de bani, și consecințele stabilirii unor prețuri prea mari sau a cumpărării într-un mod ineficient, nu le afectează prea mult.

Vânzările mici au loc mai degrabă spontan, intuitiv decât în mod deliberat.

Schiță de Clasificare a Produselor Comerciale

Expresia “produse comerciale” este folosită ca termen colectiv pentru entitățile care sunt cumpărate și vândute. Caracteristicile produselor comerciale au un rol major în mecanismul comerțului. Aceste caracteristici se pot împărți în trei câmpuri:

Produse și Servicii

Două grupe se disting în mod clar, și acestea se referă la “produse” și “servicii”. Un produs este o entitate identificabilă din punct de vedere fizic, care este “livrată”, în timp ce un serviciu este un act, care se “execută”.

Produse Comerciale Fizice și Digitale

Este de asemenea important să deosebim produsele fizice de cele digitale. Un “produs digital” este acela care poate fi livrat sau executat în întregime prin intermediul unei rețele de telecomunicații. Pe de altă parte, livrarea sau executarea unui “produs fizic” implică activități logistice cum ar fi transportarea bunurilor, sau persoane și/sau facilități prin care serviciul va fi efectuat.

Aceasta e o perspectivă diferită de cea dinainte, pentru că atât bunurile cât și serviciile pot fi atât fizice cât și digitale; de exemplu, un CD audio este un bun fizic, în timp ce un fișier audio luat de pe Internet este un bun digital; și un tuns este un serviciu fizic, în timp ce afișarea unui grafic animat pe ecranul cumpărătorului este un serviciu digital.

Gradul de Producere a Entităților Comerciale

Produsele comerciale se disting după gradul în care sunt produse. Un produs este o ofertă normală a unui comerciant, care poate fi comandată doar prin specificarea unui identificator.

În scopul construirii unei analize strategice a comerțului electronic trebuie considerate următoarele patru clase:

* Produse Standard

Revoluția industrială a implicat automatizarea proceselor repetitive, și standardizarea bunurilor și serviciilor într-un număr limitat de forme și cu trăsături determinate. Termenul de “produse standard” se referă la produse sau servicii care sunt disponibile în cantitate de la un anumit comerciant, și au o identitate, astfel încât pot fi comandate din catalogul acestuia.

Totuși, atacul “celui de-al treilea val” sau “al economiei informației”, rămâne comun bunurilor și serviciilor “produse”, pentru că acesta, în general, reduce costul unitar, și le face astfel accesibile unui număr mare de consumatori.

* Bunuri

Un bun este o clasă particulară de produse care există într-o formă identificabilă, într-o cantitate considerabilă și într-o formă identică în esență, și care sunt disponibile dintr-o varietate de surse. Exemple obișnuite sunt stocurile, acțiunile și instrumentele financiare derivate cum ar fi opțiunile, monetarul străin, produsele primare cum ar fi cafeaua și țițeiul. Cumpărătorii nu diferențiază bunurile și deci nu sunt preocupați la fel ca pentru cele pe care le primesc.

(Este important să deosebim acest sens al cuvântului de cel folosit în mod obișnuit de economiști, însemnând orice este capabil de a fi comercializat, ca în expresia “informația a devenit un bun”).

* Produse construite la comandă

Acestea nu sunt produse în adevăratul sens al cuvântului, pentru că fiecare este proiectat să îndeplinească anumite cerințe ale unui anumit client și să servească unui anumit scop. Fabricile și navele sunt exemple de bunuri construite, și consultanța în afaceri este un exemplu de serviciu construit. Sunt în special subiectul Cererii de Informații, Oferte sau Propuneri.

* Produse la comandă

Aparenta distincție clară între cele trei clase de mai sus nu este suficientă pentru a ne descurca cu toate formele de comerț. De multe ori se întâmplă ca un produs să fie modificat pentru a îndeplini cerințele unui client, sau o specificație standard este modificată în funcție de necesitățile cumpărătorului. Locurile în care poate apărea comanda includ:

– opțiunile produsului, ex. culoare, mărime;

– adăugiri suplimentare, ex. roți din aliaj, piele aplicată tapițeriei;

– parametrizare, ex. într-un pachet de conturi, numărul de ramuri;

– specializarea, ex. inserarea unei perechi entitate-nume într-un pachet de conturi;

– extensii uzuale, unde elementele suplimentare sunt asigurate dincolo de produsul de bază;

– modificări uzuale, unde produsul este modificat pentru a îndeplini o anumită cerință;

Aceste patru clase punctează asupra unei domeniu pornind de la bunurile prin intermediul produselor standard și a produselor la comandă până la produsele construite.

Bunuri și Servicii Digitale

Comerțul electronic poate asigura majoritatea proceselor implicate în cumpărarea bunurilor și serviciilor fizice, cu excepția fazei Logistice a modelului Deliberat, și a fazei de Primire a modelului Spontan.

Bunurile și serviciile digitale sunt cele care pot fi livrate folosind infrastructura informației. Astfel, pentru bunurile și serviciile digitale, piața asigură un context suficient pentru întregul proces. Bunurile și serviciile digitale includ:

– documente, incluzând articole și cărți;

– date, inclusiv statistici;

– informații de referință, incluzând dicționare și enciclopedii;

– noutăți;

– prognoza vremii;

– sunete, cum ar fi cuvântări și execuții muzicale;

– video și video cu sunete, incluzând televizorul, conferințe video și videoclipuri;

– voce interactivă, precum conversațiile la telefon și tele-conferințele;

– video interactiv și video cu sunet, precum video-conferințele;

– imagini, incluzând grafică structurată precum diagramele și fotografiile;

– educație, recreere prin intermediul media;

– rezervări și bilete pentru evenimente în direct;

– software, în general;

– comerț cu asigurare;

– comerț cu bani;

– comerț în produse.

Spațiul pieței

Conceptul de “spațiul pieței” este folosit pentru a deosebi “locația” în care se desfășoară comerțul electronic de locul fizic, convențional al pieței. Se referă la un context virtual în care cumpărătorii și vânzătorii se descoperă unii pe alții, și tranzacționează afaceri. Este un mediu de muncă care apare în urma complexului de servicii și instrumente bazate pe telecomunicație și a infrastructurii informației.

Categorizarea Spațiului Pieței

Există o convenție prin care acest spațiu al pieței se împarte în mai multe categorii care depind de natura cumpărătorului și a vânzătorului. Această secțiune oferă o taxonomie care folosește termeni convenționali, dar îi definește într-un mod plin de înțeles.

* A2A (Afacere la Afacere)

Acest tip de spațiu al pieței implică faptul că o întreprindere din domeniul afacerii îi vinde alteia. În practică, acest tip nu e prea comun, și în schimb comercianții caută să structureze procesul în propria favoare, și cumpărătorii caută să facă același lucru. Cine acumulează mai mult depinde de gradul în care există sau poate fi asigurată puterea pieței și dacă tehnologia pusă la dispoziție se potrivește cu necesitățile uneia din părți mai mult decât ale celeilalte.

Mulți observatori au eșuat pentru faptul că întreprinderile de afaceri diferă foarte mult în termeni de mărime, capacitate de a investi în tehnologie, și adaptabilitatea lor la noi amenințări și oportunități. Distincția convențională dintre întreprinderile mici și mijlocii și cele mari nu este de nici un folos. Este bine să se deosebească următoarele categorii de întreprinderi de afaceri:

micro-întreprinderi (cu 0-3 angajați);

întreprinderi mici (cu 3-100 angajați);

întreprinderi mijlocii (cu 100-200/500 angajați);

întreprinderi mari (cu 200/500-5000 angajați);

întreprinderi foarte mari (cu peste 5000 angajați);

conglomeratele (ex. corporații mari cu unități multiple, relativ independente);

corporații multinaționale.

Există, de asemenea, necesitatea de a reflecta asupra modului în care cumpărătorul folosește un anumit spațiu al pieței. Trebuie să se distingă următoarele:

achiziții de materiale brute, componente și servicii pentru producerea de bunuri și servicii care vor fi puse în vânzare, ex. când vânzătorul și cumpărătorul sunt parte dintr-un lanț de aprovizionare;

achiziții pentru consum, mai numite (în special în contextul fabricării) și “aprovizionări”, bunuri și servicii indirecte, sau MRO (menținere, reparații și operații);

achiziții de echipamente;

construcția bunurilor de comandă cum ar fi fabricile și rafinăriile.

* A2G/G2A (Afacere la Guvern / Guvern la Afacere)

În unele cazuri, acest termen se folosește în cazul vânzărilor întreprinderilor către guvern. În alte cazuri, A2G se referă la livrarea serviciilor de către guvern către întreprinderi.

Guvernul se presupune că este omogen (în ciuda rarității cu care două agenții din aceeași jurisdicție execută aceeași funcție). În practică, sunt două dimensiuni importante după care trebuie diferențiate agențiile guvernamentale:

după funcția agenției:

livrarea serviciilor:

în interiorul sursei;

în afara sursei (inclusiv “cumpărător/furnizor”);

modul de reglementare;

politică;

după nivelul de guvernare de care aparține:

supra-național (ex. UE, NAFTA);

național;

regional / statal / provincial etc.;

local;

* A2C (Afacere la Consumator)

Termenul A2C este folosit, de obicei, pentru a se referi la o vânzare de la o întreprindere la o persoană (un “consumator”). Termenul poate induce în eroare, în sensul că o întreprindere poate fi tot atât de bine un consumator.

* C2C (Consumator la Consumator)

O categorie a spațiului pieței foarte analizată este cea a folosirii instrumentelor electronice în asigurarea tranzacțiilor dintre indivizi.

Unele dintre acestea sunt în mod convențional economice în natura lor, ca în licitația posesiunilor personale. Altele implică “reciprocitate indirectă”. Totuși unele implică daruri.

Sisteme Supra-Organizatoare

Sistemele informatice sunt complexuri de activități umane și automatizate care împreună asistă asupra bunei organizări a funcțiilor sale. Sistemele intra-organizaționale sunt cele care sunt în mod substanțial interne organizației. Comerțul electronic implică interacțiunea dintre sistemele informatice a două sau mai multe organizații. Pe măsură ce aceste interacțiuni au evoluat, a devenit deosebit de importantă conceperea unui sistem care să se extindă dincolo de limitările unei singure organizații. Termenul de “sisteme supra-organizatoare” este un termen colectiv pentru toate formele pe care le pot lua aceste sisteme informaționale.

Poziții Strategice

Organizațiile pot adopta o varietate de poziții strategice când implementează instrumente de comerț electronic. Iată următoarele:

implementare pasivă, care apare semi-accidental, sub forma:

realocare funcțională, în care funcțiile sunt transferate între corporații;

re-structurare arhitecturală, în care unele organizații sunt distruse și poate altele noi create;

redefinirea industriei, unde întreaga industrie trece prin modificări revoluționare;

implementare strategică, care apare când organizațiile aplică CE:

ca apărare împotriva intrușilor;

ca amenințare pentru competitori;

ca îmbunătățitor în cadrul unei întregi industrii.

3.5. Soluții pentru comerțul electronic. Sistemul de plată

Dacă comerțul electronic pare să fie cel mai discutat subiect al economiei, aceasta este pentru un motiv întemeiat: comerțul electronic este segmentul economic care crește cu cea mai mare intensitate . Forrester Research prevede că în trei ani 70% din cele mai mari corporații vor adopta comerțul electronic ca fiind metoda preferată de comercializare a produselor și că vânzările din comerțul electronic vor crește până în anul 2005 la $2.8 trilioane.

Pentru unii, comerțul electronic este la fel de simplu ca aprovizionarea cu produse sau punerea de cataloage electronice pe Internet. Pentru alții, poate însemna mult mai mult, ca de exemplu dezvoltarea unei piețe proprii în care cumpărătorii și comercianții se întâlnesc virtual în vederea îndeplinirii unor tranzacții.

Comerțul electronic face mult mai mult decât să adune consumatorii pe Internet. Are puterea de a transforma Internetul într-un puternic loc de desfășurare a afacerilor. Cumpărătorii doresc acces imediat la comercianții pe care îi folosesc cel mai des și de asemenea posibilitatea de a-i accesa pe alții.

Într-un mod destul de simplu, comerțul electronic și-a creat un mediu care rupe bariere și deschide ușile pentru noi posibilități.

3.5.1. Cum se acceptă cărțile de credit pe Internet?

Înainte de a accepta cărți de credit (indiferent dacă acestea sunt online sau nu), trebuie să aveți un Cont Comercial, care este un aranjament special cu o instituție bancară. Afacerile mici întâmpină dificultăți în obținerea acestuia, iar afacerile bazate pe Internet se confruntă cu probleme și mai mari. Situația este aceasta: Tranzacțiile online nu au loc la punctul de vânzare. Ele sunt considerate a nu fi tranzacții “față în față”. De vreme ce nu există nici un mod de a stabili identitatea clientului, nu există nici un mod de a fi siguri că acesta este un deținător legitim de carte de credit. Prin urmare, instituțiile financiare sunt conștiente de marele potențial pentru fraudă.

Mai mult decât atât, marile companii de cărți de credit oferă deținătorilor săi de cărți de credit dreptul să conteste taxele pe declarațiile că acestea ar fi rezultatul unui furt, fraudă sau eroare. O taxă contestată este numită taxă înapoiată. Când o astfel de taxă apare, comerciantul va sfârși prin a plăti taxa băncii, pe lângă altă taxă care poate ajunge până la $30 sau chiar mai mult. De exemplu, dacă vindeți o carte cu $20 printr-o tranzacție cu carte de credit, și deținătorul cărții de credit contestă mai apoi vânzarea, veți sfârși prin a plăti băncii d-voastră $20 plus o taxă de $10 sau $30.

În mod consecvent, multe bănci pretind o taxă de rezervă în momentul înființării unui astfel de cont comercial. În general, în vânzările "față în față" rata unor astfel de taxe înapoiate este de 1% din toate vânzările. Potențialul pentru taxele înapoiate este mai mare când vânzarea este pe Internet, astfel că riscul crește atât pentru bancă cât și pentru comerciant.

Pentru a minimiza acest risc de ambele părți, majoritatea băncilor impun cerințe stricte pe care trebuie să le îndeplinească orice afacere pentru a legitima contul comercial. Factorii considerați includ rezervele monetare, durata în afacere, returnările de taxe, "trecutul" cărții de credit, încărcarea datoriilor, volumul de afaceri, costul produsului vândut, și sursa lor de venit.

3.5.2. Alte costuri asociate

Costul taxei înapoiate este prima și cea mai importantă preocupare pentru un comerciant care speră să obțină un cont comercial. Taxele înapoiate pot cauza pierderi serioase viitorului comerciant. De asemenea, comercianții care adună prea multe taxe înapoiate riscă să își piardă contul.

Oricum, există alte taxe și cheltuieli care să slăbească bugetul de asemenea. Comercianții vor trebui să investigheze costurile ascunse, taxele pentru tranzacțiile bancare etc. Acestea variază considerabil de la un producător de servicii la altul, așa că comparați, comparați, comparați!

3.5.3. Soluții pentru Comerțul Electronic

Există duzine, poate chiar sute de afaceri și organizații dornice să asiste la vânzarea de produse pe Internet. În principiu, acestea se împart în patru categorii: tranzacții pe bază de cărți de credit, tranzacții monetare digitale, transferuri electronice și sisteme de taxare prin telefon. Nici una din soluții nu este perfectă și fiecare vine cu propriul set de pro și contra. Soluția corectă pentru d-voastră depinde de cerințele concrete ale afacerii d-voastră.

Conturi comerciale pe Internet

Dacă aveți un cont comercial, trebuie să luați în considerare următorii factori:

Pro:

Consumatorii sunt familiarizați cu cărțile de credit

Cu tranzacțiile pe bază de cărți de credit, consumatorii nu trebuie să instaleze programe speciale.

Vânzările pe cărți de credit se fac pentru a impulsiona vânzarea.

Aveți informațiile personale ale clientului pentru a urma vânzarea (aceasta este un pro pentru comerciant dar un contra din punctul de vedere al multor clienți, care preferă anonimatul).

Contra:

Consumatorii au incă nedumeriri în ce privește oferirea de informații financiare online.

Nu fiecare are carte de credit.

Această metodă nu este foarte bună în ce privește vânzarea de bunuri soft, cum ar fi software, artă, grafică, etc. Vânzătorii care doresc să vândă bunuri soft vor trebui să găsească o cale să se asigure că produsul este plătit, odată ce e procesat.

Va trebui să faceți față taxelor înapoiate.

Dacă nu vreți sau nu puteți să obțineți un cont comercial prin instituția bancară obișnuită, aveți deschisă și opțiunea brokerilor. Brokerii pot aranja adesea conturi comerciale pentru afaceri considerate de mare risc. Se aplică taxe.

Tranzacțiile pe bază de Monetar Electronic

Monetarul electronic este un aranjament în care clientul plătește pentru produs folosind bani electronici. Exemple de acest gen sunt binecunoscutele: DigiCash, Cyberbucks, CyberCash, etc. Cum consumatorii devin tot mai obișnuiți cu plata prin cărți de credit, aceste metode sunt tot mai puțin utilizate.

Pro:

Nu sunt necesare tranzacții pe bază de cărți de credit.

Nici o grijă în ce privește taxele înapoiate.

Contra:

Mulți oameni nu sunt familiari cu conceptul.

Procesul este perceput ca “o greutate” de unii cumpărători care preferă să dea drept informație doar despre cartea de credit.

Nu este disponibil peste tot.

Transferurile electronice

Fondurile sunt transferate electronic din contul bancar al cumpărătorului la comerciant. (Aceasta este o foarte simplificată explicație, și este clară în cel mai general mod de a privi lucrurile. Oricum, partea importantă e că, clientul cumpără, și la un moment dat fondul este mutat din contul său și în final depozitat în al comerciantului). Cea mai cunoscută metodă este cecul electronic.

Cumpărătorii plătesc marfa scriind un cec electronic care este transmis prin email, fax sau telefon. “Cecul” este un mesaj care conține toate informațiile ce se găsesc pe un cec obișnuit, dar este semnat digital. Semnătura digitală este codată. Când cecul e procesat, mesajul rezultant este codat de bancă, asigurând astfel dovada plății.

Pro:

Nici o grijă în privința cărții de credit.

Este la îndemâna celor care nu posedă carte de credit.

Contra:

Este o tehnologie foarte nouă care îi face pe mulți suspicioși în privința siguranței pe care o oferă.

Mulți nu sunt obișnuiți cu astfel de cecuri electronice; timpul cerut pentru toate aceste aranjamente este un punct în minus în impulsionarea cumpărării.

S-ar putea să nu fie disponibil tuturor consumatorilor.

Sistemul de taxare prin telefon

Această nouă abordare, tranzacțiile prin telefon permit clientului să cumpere un produs sau un serviciu, și suma este pusă în contul taxei telefonului său. Astăzi, acesta este folosit pentru vânzarea de produse soft sau pentru donații caritabile online.

Pro:

Elimină grijile ce privesc cărțile de credit (atât pentru client cât și pentru comerciant).

Tranzacție sigură – nu există posibilitatea de furt sau piraterie.

Este la îndemâna clienților care nu posedă carte de credit.

Contra:

Clientul trebuie să instaleze un program.

Momentan disponibil numai pentru produsele soft dar se pot face și tranzacții limitate pentru bunurile hard.

3.6. Imperativele unei afaceri bazate pe comerț electronic

În raportul asupra Implementării Strategiilor pentru o Piață Globală se discută despre piața globală în schimbare, incluzând aici creșterea popularității Internetului și intranetului; comerțul "afacere către afacere" și "afacere către consumatori"; și SosettaNet Standards Initiative lansat în 1998 pentru a facilita dezvoltarea standardelor de comerț electronic.

Raportul analizează problemele majore legate de comerțul electronic ce includ:

Implementarea de strategii eficiente în ce privește interacțiunea cu clienții.

Asigurarea de tranzacții sigure și discrete.

Proiectarea aplicațiilor de comerț electronic.

3.7. Raport

Conform International Data Corporation (IDC), piața internațională electronică va exploda de la $4.5 miliarde în 1997 la $43.6 miliarde în 2002. IDC susțin că acest progres rapid este în mare parte un rezultat al grabei de a implementa site-uri de comerț electronic pe Internet. Comerțul electronic este o platformă pentru afaceri în continuă creștere care promite o piață globală adevărată pentru companiile mici și mari. O strategie de comerț electronic profitabilă cere o investiție în unelte specializate și o analiză atentă a operațiilor propuse.

4. Asigurarea accesului la piața globală: infrastructură, tehnologie și servicii

Adoptarea atât de răspândită a comerțului electronic necesită infrastructuri ale telecomunicațiilor, tehnologii și servicii eficiente și disponibile într-o arie largă. Europa trebuie să potrivească prețul, capacitatea, accesul, posibilitățile și securitatea cu facilitățile din lumea întreagă.

4.1. Maximizarea efectelor liberalizării telecomunicațiilor

O piață europeană de telecomunicații complet competitivă, creată prin liberalizarea eficientă a telecomunicațiilor va scădea tarifele și va impulsiona dezvoltarea comerțului electronic în Europa. La 1 Ianuarie 1998 s-a implementat o legislație clară în vederea asigurării competiției în toate sectoarele afacerilor. Prin crearea unei asemenea competiții, liberalizarea telecomunicațiilor duce deja la prețuri tot mai mici și la introducerea de tarife flexibile pentru toți utilizatorii. Ca rezultat, numărul de utilizatori de Internet a crescut semnificativ în aproape toate piețele competitive, și astfel s-a dezvoltat și comerțul electronic.

Diferența regionlă de preț, calitate și accesibilitate la infrastructura comerțului electronic și a serviciilor trebuie redusă pentru a permite accesul complet al zonelor izolate la piețele globale. Comerțul electronic asigură un impuls important în revitalizarea regiunilor și în reînnoirea serviciilor locale. Oricum, diferențele regionale semnificative pot rămâne de-a lungul Europei. Singure, forțele pieței pot să nu fie suficiente pentru a închide aceste goluri. Această situație va trebui să fie monitorizată de aproape în contextul Societății Informatice.

4.2. Maximizarea beneficiilor obținute în urma liberalizării piețelor TI

Acordurile internaționale privind eliminarea barierelor impuse de prețuri în domeniul tehnologiei informației și comunicației ar trebui să scadă rapid prețurile în special la instrumentele de bază (calculatoare, software, rețele, CD-ROM-uri) și să stimuleze dezvoltarea comerțului electronic.

Declarația Guvernamentală de Comerț în domeniul Tehnologiei Informației dată în Decembrie 1996 sprijină dezvoltarea comerțului mondial în tehnologia informației. Ca rezultat, Acordul în Tehnologia Informației adoptat, care acoperă mai mult de 90% din comerțul mondial cu produse TI, asigură eliminarea treptată până în anul 2000 a tarifelor pe produse cheie din comerțul electronic.

4.3. Asigurarea interoperabilității într-un mediu competitiv

Dacă tendința prezentului de a dezvolta standarde incompatibile va continua, atât afaceriștii cât și consumatorii vor fi sever dezavantajați. Există riscul ca utilizatorii să devină “încuiați” la soluții specifice. În mod similar, poate fi dificil să porți tranzacții între sisteme incompatibile. De asemenea, tehnologii sigure sunt necesare pentru a căpăta încredere în securitatea informației. Aceste tehnologii sunt în cea mai mare parte disponibile, dar rămân de rezolvat importante probleme de interoperabilitate comercială sau tehnică.

4.4. Cooperarea industrială internațională în infrastructură, tehnologii și servicii

Infrastructura globală trebuie explorată de cooperarea tehnologică și industrială internațională, în special în domenii precum comerțul electronic sigur, plățile electronice internaționale, etc.

5. Promovarea unui mediu de afaceri favorabil

O altă problemă ridicată de Uniunea Europeană se referă la răspândirea adoptării comerțului electronic de către consumatori, afaceriști, și administrațiile publice. Încrederea consumatorilor și afaceriștilor trebuie crescută. Administrațiile locale au un rol important în adoptarea unei atitudini favorabile față de comerțul electronic.

5.1. Consumatori: câștigarea încrederii

Consumatorii au mult de câștigat de pe urma comerțului electronic când cumpără bunuri și servicii din propriile lor case: posibilitate lărgită de alegere, informație ușor de cules și pe înțelesul tuturor, și prețuri mai scăzute.

Consumatorii trebuie să aibă încredere în procesul de comerț electronic. Încrederea în tehnologia sigură folosită de comerțul electronic trebuie completată de încrederea psihologică. Încrederea poate fi câștigată prin publicitate de calitate, prin rapoarte comparative sau prin introducerea unor noi servicii ale unor instituții de încredere precum băncile, companiile de cărți de credit sau operatorii de rețea.

Încrederea poate fi de asemenea crescută prin creșterea transparenței tranzacțiilor (de exemplu, grija pentru identitatea, originea și obligațiile comerciantului), minimizând informațiile despre datele personale ale consumatorului, și făcând clar statutul legal al fiecărei informații date. Industria poate, de asemenea, crește nivelul de încredere prin adoptarea de coduri de conduită. Ideal ar fi ca aceste coduri de conduită să fie aplicate la un nivel global european pentru a câștiga acceptul unanim al consumatorilor și afaceriștilor și a evita crearea de noi bariere.

5.2. Afaceri: încurajarea practicii celei mai bune

Afacerile mici trebuie să înțeleagă beneficiile potențiale rezultate din comerțul electronic în termeni de reducere a costurilor, deschiderea de piețe noi și oportunități pentru noi produse și servicii. Toate acestea se vor realiza treptat prin programul pilot al Comisiei de Comerț inițiat în anul 2000. Acesta va implica camere de comerț, grupuri industriale la nivel local, național și european, asociații de promovare a tehnologiei, precum și programe de parteneriat.

Proiectele pilot pot fi proiectate, de exemplu, pentru a testa inovațiile în afaceri și a examina compatibilitatea lor cu mediile legale și fiscale existente. Pot de asemenea contribui la analizarea schimbărilor structurale din interiorul sectoarelor și a impactului asupra numărului de angajări. Proiectele pilot dezvoltă în general modele de afaceri care iau în considerare caracterul multicultural al Europei și preferințele particulare ale consumatorilor și afaceriștilor europeni.

Comisia va încuraja programele pilot cele mai bune și va lua decizii pentru promovarea inovațiilor în afaceri în cât mai multe sectoare ale pieței, precum comerțul cu amănuntul, comerțul alimentar, inginerie electro-mecanică, pantofi, textile, publicistică și turism. Comisia încurajează inițiativele sectorului privat în stimularea pieței "afacere la afacere" (business-to-business).

5.3. Administrațiile publice: promovarea unui sector mai activ

Sectorul public deține un rol important în promovarea comerțului electronic. Formalitățile și cerințele administrative, precum și serviciile asigurate de sectorul privat formează o parte din afacerile de zi cu zi. 70% din datele cu care lucrează administrațiile își au originea în industrie. Arii în care s-ar putea aplica ajutorul electronic includ taxele, securitatea socială, serviciile de angajare, regiștrii publici, etc. Poate exista nevoia de schimbări organizatorice în vederea introducerii efective a comerțului electronic în relațiile afaceri – administrație publică. Comisia va lansa inițiative bancare (studii, proiecte pilot) cu scopul de a învăța din experiența practică a administrațiilor publice și pentru a identifica cerințele europene specifice, inclusiv cerințe pentru interoperabilitate la nivel european.

5.4. Punerea comerțului electronic în serviciul cetățenilor

Comerțul electronic este Societatea Informațională în practică. Oricum, așa cum a subliniat Forumul Societății Informatice (Information Society Forum) în primul său raport anual, “nici oamenii noștri, nici instituțiile și nici majoritatea companiilor noastre nu sunt cu adevărat pregătiți pentru noile tehnologii”. Forumul a subliniat nevoia pentru o educație mai bună în utilizarea noii tehnologii, alături de alte subiecte cheie precum asumarea responsabilității de către guvern și autoritățile publice. Consumatorii vor trebui să devină familiari cu tehnologia informației în vederea comunicării și comandării electronice de bunuri ș servicii. Bazele acestea ar trebui stabilite încă din clasele primare și gimnaziale. Angajații și managerii ar trebui să se obișnuiască să facă afaceri internațional decât într-o piață națională sau regională. Aceștia vor trebui să învețe mereu, să fie mereu la zi cu toate noutățile. Precum Forumul s-a exprimat clar, Societatea Informațională va fi o Societate în Continuă Învățare.

De asemenea, va fi inițiat un Program de Euromanagement pentru a promova o înțelegere mai bună a comerțului electronic.

În final, Forumul Societății Informatice a subliniat necesitatea implicării publicului și a participării în masă în vederea dezvoltării Societății Informatice, a evitării riscului creării claselor informatice have-nots și want-nots. În timp ce Comisia așteaptă ca, comerțul electronic să aibă un impact mare asupra afacerilor, instituțiilor și asupra propriilor noastre vieți in calitate de consumatori sau angajați, nu este evident cum anume comerțul electronic se va dezvolta și ar trebui să se dezvolte în Europa. În acest context, Comisia încurajează colaborarea la nivel european dintre industrie și grupuri de consumatori pentru stimularea dialogului necesar și asigurarea implementării acțiunilor acestei inițiative. Ca parte a acestei inițiative, Comisia va stimula activ dezbaterea publică asupra comerțului electronic în Europa.

6. Tehnologia informației și Comerțul Electronic (TICE)

McBride Baker & Coles este una din primele firme de avocatură din SUA care dezvoltă practica națională bazată pe tehnologia informației, Internet și comerț electronic. Departamentul de Tehnologia Informației și Comerțul Electronic (TICE) reprezintă atât afacerile private cât și cele publice, asociații comerciale, guverne și indivizi în ceea ce privește competițiile legale favorizate de Revoluția Digitală. Membrii Departamentului sunt implicați activ în discutarea și rezolvarea problemelor legate de:

Internet

Semnături electronice și digitale

Comerț electronic

Codare

Dezvoltarea software-ului, protecție și distribuție

Licența și distribuția conținutului digital

Produse multimedia

Interschimbul electronic de date

Editare electronică

Rețea și securitate a datelor

E-mail

Transferurile de fond electronice

Distribuția electronică

Integrarea sistemelor

Pirateria software

Intimitatea online

Servicii interactive on-line, și multe altele.

O privire reală legală asupra Tehnologiei Informației

McBride Baker & Coles au fost implicați activ în practica legii tehnologiei informației de peste trei decenii. În anii ’60 au început reprezentarea industriei calculatoarelor. În anii ’70 au început să lucreze la problemele legale apărute în dezvoltarea, protejarea și comercializarea produselor lor. În anii ’80 au ajutat la protecția dreptului de autor pentru software, și au lucrat cu FBI-ul pentru obținerea primei condamnări criminale pentru piraterie de software. Și în anii ’90 au scris LEGEA ONLINE (LAW ONLINE), prima carte ce privește legea asupra comerțului electronic și asupra afacerilor pe Internet.

7. Plan de baza

7.1. Idei principale

Planul de bază al comerțului electronic este perfect pentru comercianții care au 10 produse sau mai puțin de vândut și vor să testeze procesul de vânzare prin Internet fără să cheltuiască sume imense. Sunt incluse crearea de magazine ușor-de-folosit și instrumente de menținere și un minicalculator virtual care poate calcula taxa de vânzare pentru clienți. Planul de bază al Comerțului Electronic include:

Suportă până la 10 produse

Crearea și menținerea de siteuri bazate pe căutări

Încărcări de grafice prin intermediul browserelor

Poate ușor adăuga/șterge/edita produse

Procesul de plată

Procesul manual de plată

Securitate

Codarea tuturor informațiilor de plată a comenzii

Codarea publică/privată

Administrația codării automate

Înregistrarea comenzii

Primirea mesajului cumpărătorului

Înregistrarea la comerciant a comenzii prin mesaj

Livrarea comenzii

Tranzacție sigură

Taxări incluse în preț și de transport

Planul de bază al comerțului electronic include și un cont profesional ce include:

Numele și adresa de mail

40 MB spațiu liber pe disc

3000 MB transfer de date

Acces și control al contului d-voastră 24 ore, 7 zile

Statistici Web în comportamentul clienților

Posibilități de includere de camere de chat

Audio real

Video real

Și multe altele!

7.2. Proiectarea unui plan de comerț electronic

Vreți să vă puneți afacerea online și să primiți o parte din acea piață multimiliardară de care ați citit?

Unul din miturile cele mai populare ce înconjoară Internetul spune că este ușoară construirea unui magazin online: toți consumatorii nu trebuie decât să facă un simplu click și să cumpere! Dar în realitate, comerțul electronic de succes este un proiect foarte complex și cu totul altfel decât cele existente în trecut. Înainte ca primul “bănuț cibernetic” să găsească calea spre contul din bancă, trebuie să se facă cercetări și planificări minuțioase.

Iată un mic plan în câteva secțiuni care ar putea ajuta la construirea unui proiect de succes.

1) Începerea construirii unui plan

Când e vorba de construirea unui site de comerț electronic este bine să ne gândim înainte la toate problemele ce pot apărea. Începutul îl constituie întotdeauna un plan.

2) Cum să vindem?

Pentru a putea afla care sunt tehnicile de vânzare cele mai bune și care se potrivesc cel mai bine afacerii și produselor, trebuie să învățăm din experiența altor companii care deja au trecut prin asta.

3) Tranzacțiile

Trecem la partea tehnică și învățăm cum se fac tranzacțiile, cum se lucrează cu cărțile de credit, taxe, transporturi și servicii.

4) Construim, cumpărăm sau închiriem?

Există multe soluții pentru comerțul electronic. Înainte de decide care se potrivește cel mai bine, trebuie să aruncăm o privire asupra problemelor tehnologice legate de afacerile online.

5) Construirea unei baze pentru clienți

Ei bine, site-ul este construit și totuși treaba nu e terminată. Acum trebuie să atragem clienții. Soluția: îmbunătățirea eficienței programelor ce privesc piața!

7.2.1. Cum să vindem?

Cum vrem să cumpărăm? Căutăm toată ziua până când ceva ne sare în ochi? Sau pur și simplu mergem direct la sursă și întrebăm dacă au ce ne interesează?

Probabil depinde de ce anume căutăm, nu? Ni se întâmplă de multe ori să căutăm printr-un magazin ore întregi un anumit lucru și abia apoi să întrebăm pe vânzător.

Deci, produsul pe care îl căutăm ne spune de multe ori cum să îl cumpărăm. Acesta e un concept important de reținut în crearea unui magazin online. Ce anume este produsul pe care vrem să îl vindem? Care este populația către care ne adresăm? Cum vor vrea ei să interacționeze cu compania și cum poate site-ul nostru să faciliteze această legătură?

Multe astfel de magazine ne dau posibilitatea de a căuta prin stoc după o anume categorie sau după un anumit criteriu. Aceste metode sunt, în cea mai mare parte, derivate ale tehnologiilor care fac programul să meargă; bazele de date și sistemele de fișiere sunt destul de eficiente în categorisirea lucrurilor. Dar clienții vor fi mulțumiți, vor găsi interesant acest mod de căutare? Este aceasta cea mai bună abordare?

Trebuie să aruncăm o privire la diferitele tipuri de produse care există deja și modul în care companiile actuale își construiesc site-urile cu eficiență maximă.

7.2.2. Tranzacțiile

Deci clienții au făcut cumpărături până la golirea buzunarelor. Dar mai este încă multă treabă de făcut înainte de a vinde cu adevărat. Nu putem vinde produsele clienților până nu se calculează totul. Și cel mai important, tot mai trebuie verificat dacă clienții dispun de fondurile necesare plății. Deci înainte de a accepta comenzile, trebuie calculate taxele, determinate costurile de transport și asigurarea siguranței procesului de plată ales de clienți. Vestea bună e că un număr de companii de software s-au ocupat deja de aceste lucruri făcându-ne nouă astăzi munca mult mai ușoară. Vestea proastă e că s-ar putea să nu fie atât de ușor de manevrat pe cât speram.

Cheia e să ne dăm seama care soluție funcționează bine și se potrivește companiei și clienților și, nu în ultimul rând, care este compatibilă cu pachetul de comerț electronic ales sau cu limbajul de programare al aplicației. Deci trebuie examinate toate posibilitățile înainte de a comanda un anume software.

7.2.3. Construim, cumpărăm sau închiriem?

Am trecut deja prin procesul taxelor, plății, securității, și al transportului. Am stabilit cum trebuie construit site-ul pentru a plăcea tuturor, de la departamentele legale la echipa de proiectare și apoi la clienți. Avem în sfârșit o idee clară a ceea ce trebuie construit și am determinat ce program (software) se potrivește cel mai bine cerințelor. Acum suntem pregătiți pentru a căuta un pachet de comerț electronic gata să facă toate acestea pentru noi.

Ideal ar fi să găsim un pachet de comerț electronic care să fie compatibil cu soluțiile de taxare, plată, securitate și transport pe care am decis să le folosim. Dar s-ar putea să nu fim așa de norocoși. În acest caz, ar fi probabil o idee bună să luăm toate cerințele pentru operațiile necesare construirii site-ului și să le cântărim. Care este cea mai importantă trăsătură? Care trăsătură poate fi compromisă? Trebuie ca site-ul să calculeze automat taxa de stat din zbor sau putem scăpa doar spunând “va fi adăugată și taxa de stat”? Nu trebuie să sărim peste nimic, bineînțeles, dar ar trebui să știm unde putem manipula. În acest mod, dacă găsim o soluție care îndeplinește toate cerințele cu excepția uneia, vom ști dacă putem să ne lipsim de ea sau va trebui să considerăm o a doua cale. Acest mod de planificare ne va duce în cel mai simplu mod la soluția perfectă.

Există trei opțiuni:

Cumpărarea unei soluții gata “fabricate”.

Închirierea unui spațiu într-o soluție de comerț electronic în rețea.

Construirea unui sistem de la bază cu componente și părți.

Este ca și cum am cumpăra o mașină. Putem cumpăra o mașină nouă și, în funcție de buget, adăugăm niște opțiuni care ne plac mai mult. Dar asta ar putea duce mai departe la adăugarea altor opțiuni și implicit, la alți bani ce ne golesc buzunarele. Sau putem închiria una pentru unul sau mai mulți ani, dar nu i-am mai putea face nici o modificare din moment ce nu e proprietatea noastră. Iar dacă vrem cu adevărat, putem construi una dar ar fi bine să fim mecanici buni pentru ca mașina să fie ceea ce am visat.

7.2.4. Construirea unei baze pentru clienți

Magazinul deschis pe Internet este gata și funcționează. Dar totuși, încă nu e gata. Acum trebuie să atragem cât mai mulți clienți.

Dacă compania deține suficienți bani putem să îi facem publicitate prin pancarde, mail direct, spoturi publicitare la radio și televiziune. Dacă banii sunt o problemă (așa cum este deseori), sunt și alte mijloace cum ar fi publicitatea ieftină prin Internet. Unele din aceste tehnici de publicitate vor funcționa mai bine decât altele, în funcție de ce vindem și cui vindem.

Cum știm dacă publicitatea și tacticile de marketing au efectul scontat? Pentru a fi cu adevărat eficienți, publicitatea ar trebui să facă mai mult decât să atragă vizitatori: trebuie să atragă clienți care să cumpere produsele.

II. Soluții tehnice cu J2EE

1. Java și platforma J2EE

Java, ca limbaj de programare este încă nou. Oricum, dezvoltarea sa plecând de la dezvoltarea appleturilor până la modelul de programare capabil de a conduce aplicațiile complexe de azi este remarcabil. Java există de numai aproximativ cinci ani și cu toate acestea a trezit foarte repede interesul atât al celor din domeniul tehnic cât și al celor din domeniul economic.

Încă de la conceperea sa, Java a țintit către noi modele de programare și tehnologii din diferite domenii – pornind de la aplicații în telefonie și diversificând la proiecte cât mai interesante. În același timp, Java a avut un rol major în modelarea unor anume domenii tehnologice făcându-le sigure și robuste. Unul din aceste domenii este și platforma Java: Java 2 Platform, Enterprise Edition (J2EE).

Au fost momente în istoria Java când în cercuri tehnice și în mass-media se ridica problema dacă Java este un limbaj de programare sau o platformă. Oricum, J2EE este una din cele mai de succes încercări ale companiei SUN de a face Java credibilă ca platformă.

Cu ajutorul Internetului, mediul afacerilor a realizat că li se deschide pentru explorare o cu totul altă piață și cu toate acestea, nu mulți ar fi bănuit efectul radical pe care îl va avea asupra economiei. Cu ajutorul Internetului și a recentei popularități a comerțului electronic, de care am vorbit în capitolele precedente, seturile de informații au devenit din ce în ce mai valoroase. Această schimbare a informatizării economiei forțează multe companii să își regândească și să își revizuiască chiar și practicile de bază. Pentru menținerea în competiție, adoptarea de noi tehnologii a devenit esențială.

Schimbarea apărută în practica afacerilor a crescut nivelul de dezvoltare al aplicațiilor. Proiectarea și timpul alocat dezvoltării aplicațiilor au dat de gândit, în timp ce cererile pentru complexitate au crescut. Întreaga revoluție stă în peisajul tehnologic și economic în schimbare rapidă, ceea ce a creat noi competiții în dezvoltarea aplicațiilor de azi:

Receptivitate

Chiar dacă timpul a fost întotdeauna important, informațiile în schimbare rapidă cer răspunsuri imediate la direcții și informații noi.

Productivitatea Programării

Adoptarea directă a tehnologiilor noi nu este suficientă decât dacă acestea sunt folosite la întregul potențial și integrate cu alte tehnologii relevante. Astfel, abilitatea de a dezvolta și apoi rula aplicații cât mai efecient și rapid posibil este de asemenea importantă. Dobândirea acesteia poate fi un drum sinuos având în vedere varietatea tehnologiilor și standardelor dezvoltate de-a lungul anilor. Mai mult decât atât, schimbarea rapidă a “standardelor” face dificilă asigurarea tehnologiilor eficiente.

Siguranță și Valabilitate

În economia bazată pe Internet de astăzi timpul poate fi fatal succesului unei afaceri. Abilitatea de a realiza și a face să ruleze operațiile bazate pe web este critică pentru succes. Și, de asemenea, trebuie să garantezi siguranța tranzacțiilor comerciale.

Securitate

Internetul nu numai că a crescut exponențial numărul de utilizatori potențiali dar și valoarea informației unei companii, și de aceea securitatea acelei informații a devenit de importanță majoră. Și deoarece tehnologiile devin tot mai avansate, aplicațiile din ce în ce mai sofisticate, abilitatea de a implementa un model de securitate efectiv devine din ce în ce mai dificil.

Adaptabilitate

Abilitatea aplicației de a îndeplini cerințe noi atât în operațiile sale cât și la baza utilizatorului este importantă atunci când potențialul utilizator al aplicației poate fi format din milioane de utilizatori prin Internet. Pentru a adapta eficient nu este suficientă doar abilitatea de a manevra creșterea mare a numărului de clienți dar și utilizarea eficientă a resurselor sistemului.

Integrare

Cu toate că informația a devenit o cheie în afaceri, o mare parte a acesteia există ca date în sistemele informatice vechi și expirate. Pentru a maximiza partea utilă a acestei informații, aplicațiile trebuie să fie capabile să se integreze în sistemele informatice existente – nu este o sarcină ușoară din moment ce tehnologiile de acum au avansat adeseori mult deasupra vechilor sisteme. Abilitatea de a combina tehnologiile vechi și noi este cheia succesului dezvoltării aplicațiilor de azi.

Nici una din aceste probleme nu este nouă dar rezolvarea acestora într-o manieră economică și cuprinzătoare este crucială. Există câteva tehnologii care se adresează câtorva domenii enunțate mai sus. Oricum, ce a lipsit a fost o platformă cuprinzătoare cu o infrastructură bogată și posibilități arhitecturale numeroase care promovează de asemenea un mediu de dezvoltare rapid.

2. Arhitectura sistemului

Când discutăm de dezvoltarea aplicațiilor introducem conceptul de arhitectură pe n nivele (n-tier architecture). Sistemele tipice client/server sunt bazate pe arhitectură pe 2 nivele (2-tired architecture), astfel încât există o distincție clară între date și logica prezentării/afacerii. Sunt în general manipulări de date, cu aplicația existând în întregime pe mașina clientului în timp ce serverul bazei de date rulează undeva în structură.

2.1. Arhitectura pe 2 nivele

Într-o aplicație tradițională bazată pe arhitectura pe 2 nivele, procesul de încărcare este dat PC-ului clientului în timp ce serverul acționează doar pe post de control al traficului între aplicație și date. Ca rezultat, nu numai că execuția aplicației suferă datorită resurselor limitate ale PC-ului, dar traficul rețelei tinde să crească, de asemenea. Când întreaga aplicație este rulată pe un PC, aplicația este forțată să ceară date înainte chiar de a prezenta ceva utilizatorului. Aceste cereri multiple ale bazei de date pot îngreuna rețeaua.

O altă problemă ridicată de abordarea pe 2 nivele este cea a menținerii. Chiar și cea mai mică schimbare într-o aplicație implică o schimbare complexă a întregii baze. Chiar dacă este posibilă automatizarea procesului, tot mai trebuie modificată fiecare instalație client. Mai mult, unii utilizatori pot să nu fie pregătiți pentru o schimbare completă și să ignore schimbările în timp ce alt grup insistă în a le face imediat. Acest lucru poate duce la instalații client diferite folosind diferite versiuni ale aplicației.

2.2. Arhitectura bazată pe 3 nivele

Pentru a rezolva aceste probleme, comunitatea din domeniul software-ului a dezvoltat noțiunea de arhitectură pe 3 nivele. O aplicație este împărțită în trei porțiuni logice separate, fiecare cu un set de interfețe bine definite. Primul nivel este numit porțiunea de prezentare și conține o interfață grafică a utilizatorului. Nivelul din mijloc, sau porțiunea de afaceri, conține logica aplicației sau afacerii și a treia porțiune – porțiunea de date – conține informația necesară aplicației.

Porțiunea de mijloc este practic codul pe care îl folosește utilizatorul (prin porțiunea de prezentare) pentru a primi informația cerută. Porțiunea de prezentare primește atunci informația și o pregătește pentru afișare. Această separare a logicii aplicației de interfața utilizator aduce flexibilitate enormă proiectării aplicației. Interfețe de utilizatori multipli pot fi construite și dezvoltate fără a schimba logica aplicației deloc.

Al treilea nivel conține date necesare aplicației. Aceste date pot conține orice tip de informație, inclusiv o bază de date precum Oracle sau Sybase, un set de documente XML (informație reținută în documente conform cu specificația XML), sau chiar un serviciu director precum un server LDAP. În plus față de mecanismul de reținere a datelor într-o bază de date relațională tradițională, sunt multe surse diferite de date pe care le poate accesa aplicația.

2.3. Arhitectura bazată pe n nivele

Precum sugerează titlul, nu există un mod greu și rapid de a defini porțiunile aplicației unui sistem bazat pe n nivele. De fapt, un sistem bazat pe n nivele poate suporta un număr de configurații diferite. Într-o arhitectură bazată pe n nivele logica aplicației este împărțită funcțional mai degrabă decât fizic. Aceasta se împarte astfel:

O interfață utilizator care manevrează interacțiunea utilizatorului cu aplicația; aceasta poate fi un browser de web.

Logica prezentării care definește ce afișează interfața utilizator și cum sunt manevrate cererile utilizatorului – în funcție de interfețele utilizator acceptate ar putea trebui să existe diferite versiuni ale logicii prezentării pentru a putea manevra clientul.

Logica afacerii care modelează regulile afacerii aplicației, adesea prin interacțiunea cu datele aplicației.

Serviciile de infrastructură care asigură funcționalitatea în plus cerută de componentele aplicației, precum transmiterea mesajelor, sprijin tranzacțional, etc.

Nivelul de date unde se găsesc datele aplicației.

3. Arhitectura unui proiect

Până acum am avut în vedere arhitectura unei singure aplicații. Prin urmare, am putea ajunge cu multe aplicații diferite – posibil și cu multe arhitecturi – care să nu comunice una cu alta. Într-un proiect, căutăm să creăm un întreg mai unitar.

Mai degrabă decât o schimbare în arhitectură – arhitectura unui proiect fiind una bazată pe n nivele – avem nevoie de o schimbare în percepere. A schimba un sistem bazat pe n nivele într-un sistem complex, extindem doar nivelul din mijloc permițând obiecte multiple de aplicație mai degrabă decât o singură aplicație. Aceste obiecte de aplicație trebuie să aibă fiecare o interfață care să îi permită să lucreze cu celelalte.

O interfață poate fi privită ca un contract. Fiecare obiect există prin interfața sa care va accepta anumiți parametri și va returna un set de rezultate. Obiectele aplicație comunică între ele folosindu-și interfețele:

Cu această arhitectură, putem avea aplicații multiple folosind un set comun de componente într-o structură. Aceasta promovează standardizarea practicilor de afaceri prin crearea unui singur set de funcții de afaceri pentru accesul la întreaga structură. Dacă o regulă de afaceri se schimbă, atunci schimbarea trebuie să se facă numai la obiectul de afaceri și, dacă este necesar, la interfață.

4. Este Java răspunsul?

Până acum am discutat despre arhitectura sistemului dintr-o perspectivă agnostică a implementării și există multe căi care pot fi considerate în implemetarea propriu-zisă a aplicației. Microsoft are DNA, Sun are J2EE, Oracle are Oracle 8i Internet Platform, etc. Și totuși ce face ca Java să fie o alegere atât de bună?

Independența de Platformă

Cu informație imprăștiată disparat printre multe platforme și aplicații diferite este importantă găsirea unui limbaj de programare care poate lucra bine. Un model de programare reduce de asemenea dificultățile întâmpinate la integrarea multor tehnologii diferite specifice anumitor platforme și aplicații.

Reutilizabilitate

Refolosirea codului este baza programării. Împărțirea cerințelor aplicației în componente este un mod de refolosire; folosirea orientării pe obiecte pentru a încapsula funcționalitatea este un alt mod. Java le folosește pe amândouă. Java este un limbaj orientat pe obiecte și, prin urmare, asigură mecanisme pentru reutilizare. Oricum, spre deosebire de obiecte, componentele necesită o infrastructură mai complexă pentru construcția și managementul lor. Conceptele de bază ale orientării pe obiecte nu asigură un astfel de cadru; oricum, The Enterprise Edition of Java asigură o arhitectură destul de bună pentru reutilizabilitatea componentelor.

Modularitate

La dezvoltarea unei aplicații complete pe partea de server, programele pot deveni mari și complexe. Este întotdeauna bine să împărțim aplicația în module discrete care sunt fiecare responsabile cu o anumită sarcină. Astfel aplicația devine mult mai ușor de menținut și înțeles. Java Server Pages (JSP), spre exemplu asigură moduri de modularizare a aplicației.

5. Platforma J2EE

J2EE este una din cele mai bune soluții de până acum care să îndeplinească cerințele de azi. J2EE specifică atât infrastructura pentru manevrarea aplicațiilor, cât și serviciile API pentru construirea acestora.

Platforma J2EE este la bază un mediu de aplicație server distribuită – un mediu Java care asigură următoarele:

O infrastructură din timpul execuției pentru ținerea aplicațiilor

Un set de extensii Java ale API pentru construirea aplicațiilor

Aplicațiile care pot fi dezvoltate cu cele de mai sus pot fi programe care să ruleze pagini web, sau componente care implementează tranzacții complexe de baze de date, sau chiar appleturi Java – toate distribuite prin Internet.

5.1. J2EE din timpul execuției

În timp ce J2EE leagă API-uri care au existat într-o formă sau alta de ceva timp, cel mai semnificativ aspect al J2EE este abstractizarea infrastructurii din timpul execuției. J2EE specifică rolurile și interfețele aplicațiilor, și timpul de execuție al fiecărei aplicații. Aceasta duce la o separare clară dintre aplicații și infrastructura din timpul execuției.

În afara specificării unui set de API-uri standarde, arhitectura J2EE asigură, de asemenea, un mijloc uniform de accesare a acestor servicii prin intermediul mediului său din timpul execuției.

Până la apariția J2EE, calculul distribuit a fost, în general, considerat drept programare client/server. O aplicație server s-a scris implementând o interfață, o aplicație client s-a conectat la server, și apoi s-a pornit atât serverul cât și clientul! Deși acest proces pare foarte simplu, în practică există câteva părți critice din proces, în funcție de tehnologia folosită.

J2EE nu specifică natura și structura din timpul execuției. În locul acesteia, introduce ceea ce este numit un container, și prin intermediul API-urilor J2EE, specifică un contract între containere și aplicații.

5.2. API-urile J2EE

Aplicațiile distribuite necesită accesul la un set de servicii. Serviciile tipice includ procesul de tranzacționare, accesul la bazele de date, transmiterea de mesaje etc. Arhitectura J2EE unifică accesul la astfel de servicii prin serviciile API. Oricum, în loc să trebuiască să accesăm aceste servicii prin interfețe, în aplicația J2EE programele pot accesa aceste API prin intermediul containerului.

O platformă comercială tipică J2EE include unul sau mai multe containere, și accesul la API-urile specificate de J2EE.

Aplicațiile server J2EE nu trebuie să implementeze aceste servicii; containerele sunt cerute pentru a asigura accesul la fiecare implementare a serviciului prin intermediul unui API J2EE.

Specificarea platformei J2EE definește un set de extensii standard Java pe care ar trebui să îl suporte orice platformă J2EE. Printre acestea se numără și:

Java DataBase Connectivity (JDBC) 2.0 Extension: Acest API îmbunătățește standardul JDBC 2.0 API adăugând mijloace mai bune de obținere a conexiunilor, distribuire a tranzacțiilor, etc.

Enterprise Java Beans (EJB) 1.1: Specifică un cadru componentă pentru aplicațiile distribuite pe mai multe nivele. Acesta asigură un mijloc standard de definire a componentelor server, și specifică infrastructura bogată din timpul execuției pentru ținerea componentelor.

Java Servlets 2.2: Acestea asigură abstracții orientate pe obiecte pentru construirea de aplicații web dinamice.

Java Server Pages (JSP) 1.1: Această extensie dezvoltă și mai mult aplicațiile web.

Java Message Service (JMS) 1.0: JMS asigură un API Java pentru coada de mesaje, și editarea și subscrierea de tipuri de servicii orientate pe mesaje.

Java Transaction API 1.0: Acest API este pentru implementarea aplicațiilor tranzacționale distribuite.

Java Mail 1.1: Acesta asigură un cadru independent de platformă și protocol pentru construirea de aplicații de mail bazate pe Java.

5.3. Arhitectura J2EE – Containere

După cum am precizat și în secțiunea precedentă, o platformă comercială tipică J2EE include una sau mai multe containere. Dar ce este un container? Un container J2EE reprezintă un timp de execuție pentru manevrarea componentelor aplicației, și pentru a asigura accesul la API-urile J2EE. În spatele identității asociate cu timpul de execuție, J2EE nu specifică nici o identitate pentru timpul de execuție al containerului.

Figura următoare descrie arhitectura J2EE:

Această arhitectură arată două containere:

Un container web pentru păstrarea servletelor Java și ale paginilor JSP.

Un container EJB pentru păstrarea componentelor Enterprise JavaBean.

5.4. Tehnologiile J2EE

Iată colecția de tehnologii care asigură mecanismele de care avem nevoie pentru a construi aplicații distribuite, mari. Această colecție mare, de tehnologii destul de disparate, pot fi împărțite astfel:

Tehnologiile componentelor:

Aceste tehnologii sunt folosite pentru a ține cea mai importantă parte a aplicației – logica afacerii. Există trei tipuri de componente, JSP, servlete, și Enterprise JavaBeans.

Tehnologiile serviciilor:

Aceste tehnologii asigură componentele aplicației cu serviciile asociate pentru a funcționa eficient.

Tehnologiile de comunicație:

Aceste tehnologii, care sunt în majoritate transparente programatorului aplicației, asigură mecanismele pentru comunicarea între diferitele părți ale aplicației.

5.4.1. Tehnologiile componentelor (JSP)

În orice aplicație cel mai important element este modelarea logicii afacerii prin intermediul folosirii componentelor – unităților reutilizabile ale aplicației. Aceste componente vor fi dependente de container pentru multe servicii, precum managementul ciclului de viață, threading, securitate, etc. Aceasta ne permite să ne concentrăm la asigurarea funcționalității afacerii fără a intra în detalii de analiză de nivel jos a containerului.

Baza și arhitectura paginilor JSP

Platforma J2EE asigură trei tehnologii pentru dezvoltarea componentelor.

Una dintre acestea se referă la Java Server Pages (JSP). Acestea asigură un mod de a include componente într-o pagină, și de a le face să lucreze în așa mod încât să genereze pagina care este trimisă eventual clientului. O pagină JSP poate conține cod HTML, Java și componente JavaBean. Paginile JSP sunt, de fapt extensii ale modelului de programare al servletului – când un utilizator cere o pagină JSP, serverul de web compilează pagina JSP într-un servlet. Apoi serverul de web invocă servletul și returnează conținutul rezultant browserului de web. Odată ce servletul a fost compilat din pagina JSP, serverul de web poate returna servletul fără a trebui să recompileze de fiecare dată. Astfel, paginile JSP asigură un mecanism dinamic de asamblare a paginilor care beneficiază de multele avantaje ale platformei Java.

Comparate cu servleturile, care sunt coduri pure Java, paginile JSP sunt documente bazate în principal pe text până când serverul de web le compilează în servleturile corespunzătoare – aceasta permite o separare mai clară a logicii aplicației de logica prezentării; acest lucru asigură celor care dezvoltă aplicația să se concentreze la specificațiile de afaceri.

O arhitectură tipică a unei aplicații web ar putea arăta astfel:

Scopul specificațiilor JSP-urilor este simplificarea creării și menținerii paginilor web dinamice, prin separarea conținutului de prezentare. Paginile JSP sunt de fapt fișiere care combină HTML-ul standard (sau XML) cu noi taguri scriptice. Prin urmare paginile JSP arată oarecum ca și cele de HTML, dar sunt traduse în servlete Java prima dată când sunt invocate de către un client. Servletul rezultant este o combinație de HTML din fișierul JSP și conținut dinamic specificat prin noile taguri. Aceasta nu înseamnă că paginile JSP trebuie să conțină HTML: o pagină JSP poate fi compusă numai din cod Java, sau din taguri specifice care se referă la clase compilate extern.

JSP nu este un produs ci, precum alte Java API, o specificație asigurată de Sun MicroSystems pentru implemetare. Specificația JSP construiește funcționalitatea asigurată de specificația servletelor. Deci ce diferențiază JSP-urile de servlete?

Servletele sunt răspunsul limbajului Java la CGI. Se execută pe server și interceptează cererile browserului, acționând ca un lanț de mijloc între clienți și alte aplicații. Astfel, servletele tind să amestece conținutul dinamic în partea statică pentru a genera HTML.

JSP-urile, pe de altă parte, sunt pe linia modelului J2EE de separare a conținutului static de cel dinamic – separarea logicii de prezentare – într-o aplicație web. Acesta este primul obiectiv:

În timp ce servletele forțează amestecarea codului cu conținutul static, JSP-urile pot folosi beans cu scopul specific de a separa codul, sau extensiile de taguri.

Un JSP simplu ar putea arăta astfel:

%@page import= “java.util.Date”%

<html>

<body>

The current time is <%= new Date().toString() %>

</body>

</html>

Prima dată când se interceptează o cerere pentru JSP, se compilează pagina JSP și orice alt fișier dependent de acesta într-un servlet. Cu alte cuvinte, prima dată când este încărcat un JSP de către containerul JSP este generat codul servlet necesar pentru îndeplinirea tagurilor și încărcat în containerul servletului. De aici încolo, atâta timp cât sursa JSP a paginii nu este modificată, servletul compilat procesează orice cerere pentru pagina JSP. Dacă codul pentru JSP este modificat, se recompilează automat și se reîncarcă la cererea paginii. Din această cauză la primul acces la pagina JSP răspunsul nu va veni prea repede.

5.4.2. Tehnologiile serviciilor (JDBC)

După cum am specificat în secțiunile de mai sus, unele servicii J2EE pentru componentele aplicației sunt manevrate chiar de containere, permițând astfel programatorului să se concentreze asupra logicii afacerii.

5.4.2.1. JDBC

Deși accesul la date ar trebui să fie accesibil prin standardul API al arhitecturii Connector, în viitor, conectarea la bazele de date va fi probabil unul din serviciile cheie pe care programatorii îl vor implementa în componentele aplicațiilor lor.

5.4.2.2. Programare cu JDBC

Bazele de date constituie una din principalele resurse de date în aplicații. JDBC-ul facilitează accesul la datele relaționale din Java. Acest API asigură conectare și acces la date în bazele de date relaționale.

JDBC este în esență un API pentru executarea instrucțiunilor SQL și extragerea rezultatelor. Folosind acest API, putem scrie clienți baze de date (de la appleturi la servlete) care se conectează la o bază de date relațională, execută instrucțiuni SQL, și procesează datele extrase. Structura acestui API este foarte ușor de folosit.

Conectarea la bazele de date nu începe și sfârșește prin conectarea la bazele de date și executarea instrucțiunilor. Într-o aplicație complexă există și alte preocupări – precum optimizarea resurselor rețelei și implementarea tranzacțiilor distribuite.

5.4.2.3. Podul JDBC – ODBC

ODBC (Open Database Connectivity) este API-ul Microsoftului pentru drivere de baze de date, și este foarte popular pe platformele Windows. ODBC este un standard API pentru SQL. API-ul ODBC definește un set de funcții pentru acces direct la date, fără necesitatea de a include SQL în aplicațiile client. API-ul JDBC este bazat în principiu pe API-ul ODBC.

Prima categorie de drivere JDBC asigură un pod între API-ul JDBC și API-ul ODBC. Acesta traduce standardele JDBC în cele corespunzătoare ODBC-ului. Iată o reprezentare:

5.4.2.4. API-ul JDBC 2.1.

Acest API este specificat în pachetul java.sql. Acest pachet include clase și interfețe implementate de distribuitorii de drivere (driver providers).

Cele mai importante secțiuni sunt următoarele:

Cum se încarcă o bază de date

Cum se deschide o conexiune la baza de date

Cum se trimit instrucțiuni SQL bazei de date pentru a fi executate

Cum se extrag rezultatele returnate

Care sunt instrucțiunile

Rolul tipurilor JDBC

Manevrarea excepțiilor și avertismentelor

III. Aplicație practică

Aplicația este un exemplu practic de comerț electronic. Sunt subliniați pașii importanți din proces și anume: căutarea produselor dorite, alegerea unuia, posibilitatea de cumpărare ce include oferirea datelor personale (în special a numărului cărții de credit – cu care se va face plata). Produsele oferite de această aplicație sunt cărțile. Deci aplicația se vrea a fi o librărie pe Internet.

Baza de date (books.mdb) ce conține informații despre cărți are următoarele câmpuri:

– CategoryID – ID-ul categoriei din care face parte ('A' – adulți, 'C' – copii)

– TypeID – secțiunea din care face parte (ex. 'N' – romane, 'P' – poezii)

– Author – numele autorului cărții

– Name – numele cărții

– Price – prețul

– Copies – numărul exemplarelor existente

– Description – scurtă descriere

Meniul aplicației cuprinde secțiunile cu titlurile:

– Welcome! – pagina de întâmpinare pe site

– How to buy – pagina de îndrumare (help)

– Go shopping! – oferirea produselor și posibilitatea de cumpărare (librăria online)

– Links – legături către alte site-uri cu același profil

Ne vom opri doar asupra secțiunii Go shopping! pentru că ea prezintă cea mai mare importanță. Aici are loc căutarea, alegerea și comandarea cărții alese.

Meniul acestei secțiuni este următorul:

– Adults – cărți pentru adulți ce cuprind subsecțiunile:

– Poems – poezii

– Novells – romane

– Drammas – teatru

– Magazines – reviste

– Children – cărți pentru copii cu subsecțiunile:

– Poems – poezii

– Drawings – cărți de colorat

– Adventures – cărți de aventură

– Fairy Tales – povești

– Legends – legende

– Magazines – reviste

– Search – posibilitatea căutării de cărți după autor

Ne vom opri asupra pașilor importanți din procesul de cumpărare.

Căutarea

Căutarea cărților se face pe secțiuni și subsecțiuni. La fiecare secțiune mai sus menționată se alege o subsecțiune. Fiecare subsecțiune este un link către o pagină ce va conține cărțile găsite în baza de date (books.mdb) de la subsecțiunea respectivă.

Pentru fiecare carte din lista găsită afișăm: numele cărții, autorul, prețul și o descriere ce rezumă conținutul cărții. Cartea însăși este un link către o pagină unde se vor da datele personale pentru a se putea face comanda pentru cartea respectivă. Datele (în special numărul cărții de credit) vor trebui completate, altfel comanda nu va avea loc.

Pentru fiecare subsecțiune pagina pe care o deschidem cu lista de cărți este aceeași, iar ceea ce diferă e doar parametrul. Parametrul transmis paginii este ID-ul secțiunii pe care am accesat-o. Pentru că secțiunea de adulți este foarte asemănătoare cu cea de copii ne vom opri doar la cea de copii pentru a exemplifica mecanismul de accesare a bazei de date.

Pagina pentru copii, ca de altfel și toate celelalte este formată din frame-uri care ne ajută la aranjatul în pagină. Pagina principală ChildrenShopping.jsp arată astfel:

<html>

<head> </head>

<frameset cols= "20%, 60%, 20%" border= "0">

<frame name= "IconShopChildren1" src= "IconShopChildren1.jsp">

<frame name= "ChildrenMenu" src= "ChildrenMenu.jsp">

<frame name= "IconShopChildren2" src= "IconShopChildren2.jsp">

</frameset>

</html>

Pagina IconShopChildren1.jsp pune doar niște imagini pe pagină. La fel și pagina IconShopChildren2.jsp. Prima arată astfel:

<html>

<head> </head>

<body background= "../../Fonts/Yellow.gif">

&nbsp;&nbsp;&nbsp;

<a href= "../Main/GoShopping.jsp" target= "Page2"> <img src= "../../Buttons/B020.gif" border=

"0" alt= "Back to Shopping Menu"> </img> </a>

<br><br>

<img src= "../../Icons/puf.gif">

</img>

<font size= "+1" face= "Another" color= "red">

<b> Read, &nbsp;&nbsp; read, &nbsp;read… </b>

</font>

<br><br>

<img src= "../../Icons/smile2.gif">

</img>

<br>

<a href= "../../Main/WelcomePage.jsp" target= "Page2"> <img src= "../../Buttons/HomeWing.gif"

width= "85" border= "0" alt= "Back home to Welcome Page"> </img> </a>

</body>

</html>

ChildrenMenu.jsp arată astfel (doar partea principală):

<frameset rows= "55%,45%" border= "0">

<frame name= "ChildrenTopics" src= "ChildrenTopics.jsp">

<frame name= "ChildrenList" src= "ChildrenList.jsp">

</frameset>

Fiecare din celelalte două pagini mai conțin la rândul lor frame-uri. În final ajungem și la pagina importantă care conține tabelul cu secțiunile amintite mai sus. Sunt de fapt două pagini (TableCol1.jsp și TableCol2.jsp) fiecare cuprinzând câte trei secțiuni astfel:

<html>

<head> </head>

<body background= "../../Fonts/Yellow.gif">

<table cols= "1" align= "left" cellspacing= "1" cellpadding= "0" border= "0">

<tr>

<td>

<font size= "+2" face= "Angelica" color= "navy">

<% String paramPoems= "0" + "/" + "P"; %>

<a href= "ChildrenBooks.jsp?param= <%=paramPoems%>" target=

"ChildrenList" style= "color:navy"> <b> Poems </b> </a>

</font>

</td>

</tr>

<tr>

<td>

<font size= "+2" face= "Angelica" color= "navy">

<% String paramDrawings= "0" + "/" + "Dr"; %>

<a href= "ChildrenBooks.jsp?param= <%=paramDrawings%>" target=

"ChildrenList" style= "color:navy"> <b> Drawings </b></a>

</font>

</td>

</tr>

<tr>

<td>

<font size= "+2" face= "Angelica" color= "navy">

<% String paramAdv= "0" + "/" + "A"; %>

<a href= "ChildrenBooks.jsp?param=<%=paramAdv%>" target=

"ChildrenList" style= "color:navy"> <b> Adventures </b></a>

</font>

</td>

</tr>

</table>

</body>

</html>

Fiecare secțiune este un link către o pagină unde se va afișa o listă. Către această pagină trimitem un parametru param care specifică secțiunea pe care o dorim (ex.'Dr' – cărți colorate) și un index care la început e 0. Indexul ne indică numărul de cărți afișate la un moment dat pe pagina cu lista.

Cum se accesează baza de date? Aceasta o facem în pagina ChildrenBooks.jsp (comentariile necesare apar în text). Oricum pașii mari sunt preluarea parametrului pentru a recunoaște secțiunea, conectarea la baza de date, selectarea cărților de la categoria și secțiunea alese și afișarea acestora:

<%@ page import= "java.sql.*,java.util.*" %>

<html>

<head> </head>

<body background= "../../Fonts/Yellow.gif">

<%

// preluăm parametrul și îl împărțim pentru a putea identifica indexul și ID-ul secțiunii

// e ca și cum am avea doi parametri separați prin caracterul '/'

String param= request.getParameter("param");

StringTokenizer strToken= new StringTokenizer(param, "/");

int index= (new Integer(strToken.nextToken())).intValue();

String category= strToken.nextToken();

// conectarea la baza de date

String url= "jdbc:odbc:Books";

Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");

Connection connection= DriverManager.getConnection (url);

// crearea instrucțiunii SQL

Statement statement= connection.createStatement (ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_READ_ONLY );

String sqlSelect= "SELECT Name, Author, Price, Description FROM Library WHERE

Library.CategoryID='C' AND Library.TypeID='" + category +"' ORDER BY

Author";

// rs- lista cu toate cărțile găsite

ResultSet rs= statement.executeQuery (sqlSelect);

int i= index;

//suntem la prima carte în baza de date?

boolean first= false;

if (i== 0) {

first= true;

}

// ne poziționăm la înregistrarea a i-a

if (i!= 0) {

rs.absolute(i);

}

boolean next= rs.next();

while (next && (i< index+3)) {

String strAuthor= rs.getString("Author");

String strName= rs.getString("Name");

String str= strAuthor + "/" + strName; %>

// numele și autorul cărții selectate sunt trimise paginii în care se va face comanda

<a href= "../Order/Info.jsp?ind=<%=str%>" target= window>

<font size= "-2" color= "navy" face= "Comic Sans MS">

<b> <%=strAuthor%>

<%=strName%>

($

<%=rs.getInt("Price")%>

) </b>

</font>

</a>

<br>

<font size= "-1" color= "black">

<b> <i> <%=rs.getString ("Description")%> </i> </b>

</font>

<% next=rs.next(); %>

<% i++; %>

<br>

<%}

connection.close();

%>

<script>

// ce se întâmplă la apăsarea butonului Previous? Se trece la cele 3 cărți de dinainte dacă există

// dacă nu – afișare mesaj

function goPrevious() {

if (<%=first%>)

alert("This is the first one!");

else {

<% int indPre= index-3;%>

<% param= (new Integer(indPre)).toString() + "/" + category;%>;

frmPrevious.action= "ChildrenBooksPoems.jsp?param=<%=param%>";

}

}

// ce se întâmplă la afișarea butonului Next? Se trece la următoarele 3 cărți dacă există

// dacă nu – afișare mesaj

function goNext() {

if (<%=!next%>)

alert("That's all!");

else {

<% int indNext= index+3;%>

<% param= (new Integer(indNext)).toString() + "/" + category;%>;

frmNext.action= "ChildrenBooksPoems.jsp?param=<%=param%>";

}

}

</script>

<form name= frmPrevious method= "post" style="MARGIN-TOP: 20px; MARGIN-LEFT:

140px">

<INPUT id= btnPrevious name= btnPrevious type= submit value= Previous

style="BACKGROUND-COLOR: oldlace; BORDER-BOTTOM-COLOR: darkred;

BORDER-RIGHT-COLOR: indigo; BORDER-RIGHT-STYLE: double; COLOR:

midnightblue; CURSOR: default; FONT-SIZE: xx-small; FONT-STYLE: normal; FONT-

VARIANT: normal; FONT-WEIGHT: bold; HEIGHT: 18px; LINE-HEIGHT: 0.5;

WIDTH: 70px" onclick= "goPrevious()">

</form>

<form name= frmNext method= "post" style="MARGIN-TOP: -37px">

<INPUT id= btnNext name= btnNext type= submit value= Next style="BACKGROUND-

COLOR: oldlace; BORDER-BOTTOM-COLOR: darkred; BORDER-RIGHT-COLOR:

indigo; BORDER-RIGHT-STYLE: double; COLOR: midnightblue; FONT-FAMILY: ;

FONT-SIZE: xx-small; FONT-STYLE: normal; FONT-WEIGHT: bold; HEIGHT: 18px;

LINE-HEIGHT: 0.5; MARGIN-LEFT: 230px; TOP: 20px; WIDTH: 35px" onclick=

"goNext()">

</form>

</body>

</html>

Comandarea

Când o carte este aleasă, se va deschide o pagină (Order2.jsp) unde se vor da datele personale. Unele date sunt obligatorii iar altele opționale. Dacă toate datele obligatorii sunt date atunci comanda poate fi făcută. Dacă din cartea aleasă există doar un exemplar, la comandare aceasta va fi ștearsă din baza de date, iar dacă există mai multe exemplare, numărul exemplarelor va scădea cu unul. Un exemplar a fost deja cumpărat.

Întâi se verifică dacă datele au fost completate:

<%@ page import= "java.sql.*,java.util.*" %>

<html>

<head> </head>

<body background= "../../Fonts/gift.jpg">

<% String ind= request.getParameter("ind"); %>

<% StringTokenizer str= new StringTokenizer(ind, "/"); %>

<% String strAuthor= str.nextToken(); %>

<% String strName= str.nextToken(); %>

<input name= txtName value="<%=strName%>" id= txtName style =" BORDER-BOTTOM:

0px; BORDER-LEFT: 0px; BORDER-RIGHT: 0px; BORDER-TOP: 0px; TEXT-

DECORATION: none blink" width= "150">

<input name= txtAuthor value="<%=strAuthor%>" id= txtAuthor style= "BORDER-

BOTTOM: 0px; BORDER-LEFT: 0px; BORDER-RIGHT: 0px; BORDER-TOP: 0px;

HEIGHT: 18px; WIDTH: 170px">

<br><br>

<p> <b> Credit Card </b> <input id= txtCard name= txtCard style="MARGIN-LEFT: 34px;

WIDTH: 150px">

<p> <b> Profession* </b> <input id= txtProfession name= txtProfession style="MARGIN-

LEFT: 34px; WIDTH: 150px">

<br><br>

<font size= "+1" face= "BlackChancery" color= "navy">

<p align= "center"> <b> If you completed all necessary boxes order it now and the book

will be delivered to you in a couple of days. So go ahead! </b>

</font>

<script>

// este o căsuță goală?

function emptyBox(str) {

if (str== "") {

return true;

}

return false;

}

// afișare de mesaj corespunzător căsuței necompletate

function showMessages() {

if (emptyBox(window.parent.frames(0).txtFirstName.value)) {

alert("First Name, please!");

return;

}

if (emptyBox(window.parent.frames(0).txtLastName.value)) {

alert("Last Name, please!");

return;

}

if (emptyBox(window.parent.frames(0).txtCountry.value)) {

alert("Country, please!");

return;

}

if (emptyBox(window.parent.frames(0).txtCity.value)) {

alert("City, please!");

return;

}

if (emptyBox(window.parent.frames(0).txtAddress.value)) {

alert("Address, please!");

return;

}

if (emptyBox(window.parent.frames(0).txtPhone.value)) {

alert("Phone number, please!");

return;

}

if (emptyBox(txtCard.value)) {

alert("Credit Card Number, please!");

return;

}

}

function boxesCompleted() {

if (window.parent.frames(0).txtFirstName.value== "" || window.parent.frames(0).txtLastName.value== "" || window.parent.frames(0).txtCity.value== "" || window.parent.frames(0).txtCountry.value== "" || window.parent.frames(0).txtAddress.value== "" || window.parent.frames(0).txtPhone.value== "" || txtCard.value== "") {

return false;

}

return true;

}

// trimitem către pagina unde se va face comanda autorul și numele cărții alese

function getIndexPage() {

if (boxesCompleted()) {

txtCard.value;

<% String nameAuthor= strAuthor + "/" + strName; %>

frmOrder.target= window.parent.name;

frmOrder.action= "Order2.jsp?nameAuthor=<%=nameAuthor%>";

}

else {

showMessages();

}

}

</script>

<center>

<p> <img src= "../../Icons/hand.gif"> </img>

<form name= frmOrder method="post">

<input id= btnOrder name= btnOrder type= submit value= Order! style="BACKGROUND-

COLOR: lavender; BORDER-BOTTOM: darkblue solid thin; BORDER-LEFT: darkblue

solid thin; BORDER-RIGHT: darkblue solid thin; BORDER-TOP: darkblue solid thin;

COLOR: darkblue; FONT-FAMILY: ; FONT-SIZE: x-small; FONT-WEIGHT: bold;

PADDING-LEFT: 10px; PADDING-RIGHT: 10px" onclick= "getIndexPage()">

</form>

</center>

</body>

</html>

Se face comanda:

<%@ page import= "java.sql.*,java.util.*" %>

<html>

<head> </head>

<body background= "../../Fonts/gift.jpg">

<%

// preluarea parametrului format din numele cărții și a autorului ales

String str= request.getParameter("nameAuthor");

StringTokenizer strToken= new StringTokenizer(str, "/");

String strAuthor= strToken.nextToken().trim();

String strName= strToken.nextToken().trim(); %>

<%

/* dacă toate datele sunt completate atunci din

baza de date se șterge o copie a cărții alese

*/

// conectarea la baza de date

String url= "jdbc:odbc:Books";

Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");

Connection connection= DriverManager.getConnection (url);

Statement statement= connection.createStatement();

String sqlFindCopies= "SELECT Copies FROM Library WHERE Library.Author= '" +

strAuthor + "' AND Library.Name= '" + strName + "'";

ResultSet rs= statement.executeQuery (sqlFindCopies);

int noCopies=0;

while (rs.next()) {

noCopies= rs.getInt("Copies");

}

/* dacă există un singur exemplar din cartea care

se comandă aceasta va fi ștearsă din baza de date

*/

if (noCopies== 1) {

String sqlDeleteBook= "DELETE FROM Library WHERE Library.Author= '" +

strAuthor + "' AND Library.Name= '"+ strName +"'";

statement.executeUpdate (sqlDeleteBook);

}

/* altfel numărul copiilor devine cu

unul mai mic (se cumpără un exemplar)

*/

else {

noCopies= noCopies-1;

String sqlUpdateCopies= "UPDATE Library SET Copies= '" + noCopies + "'

WHERE Library.Author= '"+ strAuthor +"' AND

Library.Name= '"+ strName +"'";

statement.executeUpdate (sqlUpdateCopies);

}

connection.close();

%>

<font size= "+2" face= "BlackChancery" color= "navy">

<p> <b> Order submitted! </b>

&nbsp;&nbsp; <img src= "../../Icons/bag.gif"> </img>

</font>

</body>

</html>

Etapa de Căutare în secțiunea Search e un pic diferită în sensul că trebuie completată o căsuță cu numele autorului ce se dorește a fi căutat. Valoarea din căsuță este preluată și pe baza acesteia se face căutarea în baza de date.

Valoarea din căsuța de căutare este trimisă altei pagini care va prelua parametrul și îl va trimite la rândul ei către pagina unde se va afișa lista cu cărțile scrise de autorul căutat. Pagina de unde va fi preluat autorul tastat în căsuță, GetAuthor.jsp este:

<%

// parametrul trimis mai departe paginii cu lista (0- indexul + numele autorului)

String autor= request.getParameter("AuthorSearch");

String param="0/" + autor;

%>

<jsp:forward page="SearchList.jsp">

<jsp:param name= "param" value="<%=param%>" />

</jsp:forward>

Pagina SearchList.jsp ce afișează cărțile găsite de autorul ales:

<%@ page import= "java.sql.*,java.util.*" %>

<html>

<head> </head>

<body background= "../../Fonts/Yellow.gif">

<font face= "Agatha" color= "navy">

<b> Type the author you are interested in… </b>

<br><br>

<form name= frmFind method= "post" action= "TakeAuthor.jsp">

<input type= "text" id= "AuthorSearch" name= "AuthorSearch">

&nbsp; &nbsp; &nbsp;

<input type= "submit" value= "Search!" style="BACKGROUND-COLOR: oldlace;

BORDER-BOTTOM-COLOR: darkred; BORDER-RIGHT-COLOR: indigo;

BORDER-RIGHT-STYLE: double; COLOR: midnightblue; FONT-FAMILY: ; FONT-

SIZE: xx-small; FONT-STYLE: normal; FONT-WEIGHT: bold; HEIGHT: 18px;

LINE-HEIGHT: 0.5">

</form>

</font>

<%

String p= request.getParameter("param");

StringTokenizer strToken= new StringTokenizer(p, "/");

int index= (new Integer(strToken.nextToken())).intValue();

String authorName= strToken.nextToken().trim();

// conectarea la baza de date

String url= "jdbc:odbc:Books";

Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");

Connection connection= DriverManager.getConnection (url);

Statement statement= connection.createStatement (ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_READ_ONLY );

String sqlSelect= "SELECT Author, Name, Price, Description FROM Library WHERE

Library.Author='" + authorName + "'";

ResultSet rs= statement.executeQuery (sqlSelect);

int i= index;

//suntem la prima carte în baza de date?

boolean first= false;

if (i== 0) {

first= true;

}

// ne poziționăm la înregistrarea a i-a

if (i!= 0) {

rs.absolute(i);

}

boolean next= rs.next(); %>

<%

while (next && (i< index+5)) {

String strAuthor= rs.getString("Author");

String strName= rs.getString("Name");

String str= strAuthor + "/" + strName; %>

<a href= "../Order/Info.jsp?ind=<%=str%>" target= window>

<font size= "-2" color= "navy" face= "Comic Sans MS">

<b> <%=strAuthor%>

<%=strName%>

($

<%=rs.getInt("Price")%>

) </b>

</font>

</a>

<br>

<font size= "-1" color= "black">

<b> <i> <%=rs.getString("Description")%> </i> </b>

</font>

<% next=rs.next(); %>

<% i++; %>

<%}

connection.close(); %>

<script>

function goPrevious() {

if (<%=first%>)

alert("This is the first one!");

else {

<% int indPre= index-5;%>

<% String paramPre= (new Integer(indPre)).toString() + "/" + authorName;%>

frmPrevious.action= "SearchList.jsp?param=<%=paramPre%>";

}

}

function goNext() {

if (<%=!next%>)

alert("That's all!");

else {

<% int indNext= index+5;%>

<% String paramNext= (new Integer(indNext)).toString() + "/" + authorName;%>

frmNext.action= "SearchList.jsp?param=<%=paramNext%>";

}

}

</script>

<form name= frmPrevious method= "post" style="MARGIN-TOP: 20px; MARGIN-LEFT:

120px">

<input id= btnPrevious name= btnPrevious type= submit value= Previous

style="BACKGROUND-COLOR: oldlace; BORDER-BOTTOM-COLOR: darkred;

BORDER-RIGHT-COLOR: indigo; BORDER-RIGHT-STYLE: double; COLOR:

midnightblue; CURSOR: default; FONT-SIZE: xx-small; FONT-STYLE: normal;

FONT-VARIANT: normal; FONT-WEIGHT: bold; HEIGHT: 18px; LINE-HEIGHT:

0.5; WIDTH: 70px" onclick= "goPrevious()">

</form>

<form name= frmNext method= "post" style="MARGIN-TOP: -37px">

<input id= btnNext name= btnNext type= submit value= Next style="BACKGROUND-

COLOR: oldlace; BORDER-BOTTOM-COLOR: darkred; BORDER-RIGHT-COLOR:

indigo; BORDER-RIGHT-STYLE: double; COLOR: midnightblue; FONT-FAMILY: ;

FONT-SIZE: xx-small; FONT-STYLE: normal; FONT-WEIGHT: bold; HEIGHT: 18px;

LINE-HEIGHT: 0.5; MARGIN-LEFT: 210px; TOP: 20px; WIDTH: 35px" onclick=

"goNext()">

</form>

</body>

</html>

BIBLIOGRAFIE

1. Avedal K., Browett R., Diamond J., Griffin J., Hoskinson A., Johnson R. –

Professional Java Server Programming J2EE Edition

2. http://www.expertcenter.net/

3. http://www.mbc.com/practice/

4. http://www.gte.net/pands/business/ecomm/

5. http://www.dti.gov.uk/cii/ecommerce/europeanpolicy/

6. http://www.iwar.org.uk/e-commerce/resources/eu/src/

7. http://hotwired.lycos.com/webmonkey/

8. http://hbsworkingknowledge.hbs.edu/topics/ecommerce/

9. http://www.ftc.gov/bcp/conline/pubs/

10. http://www.wilsonweb.com/

11. http://www.nightcats.com/

12. http://products.ecommerce-guide.com/

13. http://www.anu.edu.au/people/Roger.Clarke/EC/

14. http://www.ilr.cornell.edu/library/reference/guides/ecommerce/

15. http://ecommerce.about.com/smallbusiness/ecommerce/gi/dynamic/

16. http://www.purchasepro.com/

17. http://europa.eu.int/ISPO/ecommerce/answers/

18. http://www.indiatimes.com/infotech/ecomm/

Similar Posts

  • Sistem Informatic de Prelucrare a Datelor Meteorologice

    TEZA DE LICENȚĂ SISTEM INFORMATIC DE PRELUCRARE A DATELOR METEOROLOGICE CUPRINS SARCINA ADNOTARE ( în limba romînă, rusă, engleză ) ABREVIERI INTRODUCERE 1. ASPECTE TEORETICE PRIVIND EVOLUȚIA TUNURILOR ANTIGRINDINĂ Particularitățile apariției și evoluției tunurilor antigrindină Analiza ipotezelor privind eficiența utilizării tunurilor antigrindină Concepții moderne asupra procesului de combatere a grindinii Particularitățile tunurile antigrindină moderne Radarul…

  • Analiza S.w.o,t

    Societatea OMW PETROM considera ca are urmatoarele puncte forte: – puterea de mentinere a potentialului productiv; – capacitatea de crestere a productivitatii muncii; – capacitatea de crestere a numarului de metode si tehnici manageriale; managementul prin proiecte; managementul prin obiective; managementul prin bugete si delegarea; – crestera cifrei de afaceri, a productiei exercitiului si a…

  • Informatizare a Proiectării Tehnologiei de Prelucrare Mecanică a Reperului

    === l === Posibilități de informatizare a proiectării tehnologiei de prelucrare mecanică a reperului “ciupercă 100-460M”, conform desenului anexat, pentru o producție anuală de 350.000 bucăți. Studii teoretice privind relațiile de calcul al valorilor forțelor necesare la operațiile de presare volumică la rece. Proiectarea tehnologiei de prelucrare mecanică a reperului indicat. Informatizarea activităților de proiectare…

  • Proiect Retele de Calculatoare

    Proiect Retele de Calculatoare CABLU TV (Community Antena TeleVision – CATV). CUPRINS: Botoc Constantin Catalin: Sumar Scopul creării sistemului CATV Cerințele către sistemele CATV Rețele de tip CATV Durata de exploatare Draghici Radu: Realizarea sistemei CATV Standardul DOCSIS Stația de bază Bibliografie Sumar: Pentru crearea sau reconstruirea CATV, unde sunt conectați zeci, sute, mii, sau…

  • Crearea Unui Joc 2d Folosind Unity

    CUPRINS Introducere…………………………………………………………………………..3 CAPITOLUL I Ce anume este Unity și la ce îl putem folosi………………….4 I.1. Puțină prezentare………………………………………………………………………………4 I.2. La ce e folosit Unity și cine îl poate folosi…………………………………………….5 CAPITOLUL II Conceptul jocului creat …………………………………………………… 7 II.1. Scena Start………………………………………………………………………………………7 II.2. Scena Meniu…………………………………………………………………………………….8 II.3. Scena Dificultate………………………………………………………………………………8 II.4. Scena Nivel……………………………………………………………………………………..9 II.5. Scena Final…………………………………………………………………………………….10 CAPITOLUL III Cum dezvoltăm de…

  • Inele Si Ideale

    CUPRINS Introducere …………………………………………………………………………………………..1 Capitolul I – INELE SI IDEALE 1.1. Inele.Subinele …………………………………………………………………………………….1 1.2. Ideale. Inel factor 1.2.1. Ideale. Operatii cu ideale ……………………………………………………………..3 1.2.2. Inelul factor ……………………………………………………………………………….5 1.3. Homomorfisme de inele ……………………………………………………………………..6 1.4. Exemple de clase de inele 1.4.1. Produs direct de inele ………………………………………………………………….9 1.4.2. Inelul opus al unui inel ………………………………………………………………10 1.4.3. Centrul unui inel ………………………………………………………………………10…