Documente Academic
Documente Profesional
Documente Cultură
Proiectarea Web
Proiectarea Web
Aplicaţiile web moderne sunt sisteme software complexe, iar dezvoltarea acestora necesită o
abordare metodologică. Similar cu proiectarea aplicaţiilor software, proiectarea web implică
utilizarea unei abordări sistematice şi cuantificabile pentru realizarea specificaţiilor,
implementării, operaţiilor şi întreţinerii aplicaţiilor web de calitate superioară. Din punct de
vedere al istoricului dezvoltării şi complexităţii distingem anumite tipuri de aplicaţii web:
orientate pe documente, interactive, tranzacţionale, cu caracteristici ubicue sau trăsături ale web-
ului semantic. Cerinţele particulare ale proiectării aplicaţiilor web rezultă din caracteristicile lor
speciale din sfera produselor software, precum şi din dezvoltarea şi utilizarea lor. World Wide
Web are o influenţă enormă şi permanentă asupra vieţii noastre. Economia, industria, educaţia,
sănătatea, administraţia publică, divertismentul – majoritatea componentelor vieţii noastre au fost
pătrunse de World Wide Web. Motivul acestei omniprezenţe constă în special în natura web-
ului, caracterizată prin disponibilitatea globală şi permanentă dar şi prin accesul omogen la
informaţiile distribuite la nivel global sub forma paginilor web[1].
Deşi iniţial web-ul a fost proiectat ca un mediu pur informaţional, în prezent el evoluează
într-un mediu al aplicaţiilor. Aplicaţiile web de astăzi sunt sisteme software complexe care oferă
servicii interactive şi personalizabile accesibile prin intermediul diferitelor dispozitive; ele oferă
posibilitatea realizării tranzacţiilor între utilizatori şi de obicei stochează datele într-o bază de
date. Elementul distinctiv al aplicaţiilor web comparativ cu aplicaţiile software tradiţionale este
modul în care este utilizat web-ul: tehnologiile şi standardele sale sunt utilizate ca o platformă de
dezvoltare şi ca platformă utilizator în acelaşi timp. O aplicaţie web poate fi definită astfel:
O aplicaţie web este un sistem software bazat pe tehnologiile şi standardele consorţiului
World Wide Web (W3C), care oferă resurse web specifice (conţinut şi servicii) prin intermediul
unei interfeţe utilizator numită browser web.
Această definiţie include în mod explicit tehnologiile şi interacţiunea cu utilizatorul. De
aici putem deduce că tehnologii precum serviciile web nu sunt aplicaţii web, dar pot fi o parte a
acestora, iar siturile web lipsite de componente software (cum sunt paginile HTML statice) nu
sunt considerate aplicaţii web.
[1] Berners-Lee, T., WWW: Past, Present, and Future, IEEE Computer, 29 (10), 1996, pp. 69–77
Legătura strânsă dintre aplicaţiile web sporeşte pericolul răspândirii problemelor de la o aplicaţie
la alta. Cauza acestei situaţii este complexă şi poate fi abordată din mai multe perspective:
- abordarea centrată pe document. Dezvoltarea aplicaţiilor web este încă deseori
considerată a fi centrată pe document – o activitate de authoring care include crearea şi
realizarea legăturilor din siturile web şi includerea elementelor grafice. Deşi anumite tipuri de
aplicaţii web (de exemplu paginile principale, ziarele online) aparţin acestei categorii, o abordare
de tip authoring nu este adecvată pentru dezvoltarea de aplicaţii web concentrate pe software;
- presupusa simplitate a dezvoltării aplicaţiilor web. Disponibilitatea largă a diferitelor
utilitare, (cum ar fi editoarele HTML sau generatoarele de formulare) permite crearea de aplicaţii
web simple, fără a fi necesare cunoştinţe de specialitate. De obicei, accentul se pune pe
proiectarea vizuală şi nu pe structurarea internă sau programare. Aceasta duce la inconsistenţe şi
redundanţă;
- cunoştinţele specifice din discipline relevante nu pot fi aplicate sau nu sunt utilizate.
Există o concepţie greşită conform căreia dezvoltarea aplicaţiilor web este similară cu
dezvoltarea aplicaţiilor tradiţionale şi din acest motiv pot fi utilizate metodele din Ingineria
Software, în sensul abordării sistematice, cu măsuri adecvate de control a calităţii. Acest lucru
este neadecvat în majoritatea cazurilor datorită caracteristicilor speciale ale aplicaţiilor web. În
plus, concepte şi tehnici din domenii relevante (cum ar fi hypertext-ul sau interacţiunea om-
calculator) nu sunt aplicate într-o manieră consecventă. Standardele de dezvoltare pentru
aplicaţiile web de calitate sunt inexistente, acest lucru datorându-se şi relativ scurtei istorii a
web-ului.
Proiectarea web - nu este un eveniment imediat
Abordare disciplinară
aplicarea unei abordări sistematice şi cuantificabile (concepte, metode,
tehnici şi utilitare) în analiza, proiectarea, implementarea, testarea,
operarea şi întreţinerea aplicaţiilor web de calitatea superioară;
o disciplină ştiinţifică implicată în studiul acestei abordări
Termeni din literatură asociaţi - proiectarea siturilor web, proiectarea hipermedia,
proiectarea documentelor, proiectarea conţinutului şi proiectarea software-lui Internet.
>> PROIECTAREA WEB
Proiectarea web nu este un eveniment imediat; este un proces realizat pe tot parcursul ciclului de
viaţă al aplicaţiei web, similar celor din ingineria software. În ce mod diferă proiectarea web faţă
de proiectarea software-ului şi pot fi ele considerate discipline separate?
O disciplină poate fi definită ca un domeniu de studiu al ştiinţei, mai mult sau mai puţin
independent, care include cercetarea, învăţarea şi diseminarea informaţiei ştiinţifice sub forma
publicaţiilor. Numărul mare de publicaţii, cursuri, programe analitice, seminarii ştiinţifice şi
conferinţe demonstrează că, în acord cu această definiţie, Proiectarea web poate fi considerată o
ramură independentă a ingineriei software. Proiectarea reprezintă în general o aplicaţie practică a
ştiinţei (în comerţ sau industrie) folosită în scopul dezvoltării aplicaţiilor într-un mod mai bun,
mai rapid, mai ieftin şi mai sigur. Ingineria software este definită ca o aplicaţie a ştiinţei şi
matematicii prin care capacităţile unui sistem de calcul sunt pot fi utilizate de oameni prin
intermediul programelor, procedurilor şi documentaţiei asociate. Pe baza acestei definiţii şi a
celei lui Deshpande[1], putem defini Proiectarea web în două moduri:
- Proiectarea web reprezintă aplicarea unor abordări sistematice şi cuantificabile
(concepte, metode, tehnici, utilitare) în analiza cerinţelor, proiectarea, implementarea, testarea,
exploatarea şi întreţinerea aplicaţiilor web de calitate superioară;
- Proiectarea web reprezintă şi disciplina ştiinţifică implicată în studiul acestor abordări.
Termenii din literatură asociaţi sunt Proiectarea siturilor web, Proiectarea hipermedia,
Proiectarea documentelor, Proiectarea conţinutului şi Proiectarea software-lui Internet. Prin
comparaţie, ”Proiectarea web” este un termen concis, deşi dacă vorbim în mod strict nu este
foarte precis: nu web-ul este proiectat, ci aplicaţiile web.
Din punct de vedere al Ingineriei Software, dezvoltarea aplicaţiilor web este un nou
domeniu al aplicaţiilor. În ciuda anumitor similitudini cu aplicaţiile tradiţionale, caracteristicile
speciale ale aplicaţiilor web necesită o adaptare a multor abordări ale Ingineriei Software sau
chiar dezvoltarea unor abordări complet noi.
Principiile de bază ale Proiectării web pot fi descrise totuşi în mod similar celor din
Ingineria Software:
- obiective şi cerinţe clar definite;
- dezvoltarea sistematică, în faze, a aplicaţiilor web;
- planificarea foarte atentă a acestor faze;
- auditul continuu al întregului proces de dezvoltare.
Proiectarea web face posibilă planificarea şi repetarea proceselor de dezvoltare, facilitând
astfel evoluţia continuă a aplicaţiilor web. Aceasta permite nu doar reducerea costurilor şi
minimizarea riscului pe parcursul dezvoltării şi întreţinerii, ci şi creşterea calităţii şi măsurarea
calităţii rezultatelor fiecărei faze[2].
[1] Deshpande, Y., Murugesan, S., Ginige, A., Hansen, S., Schwabe, D., Gaedke, M., White, B.,
Web Engineering, Journal of Web Engineering, 1 (1), 2002, pp. 3–17
[2] Mendes, E., Mosley, N., Web Engineering, Springer, 2006
Caracteristicile produselor
Caracteristicile legate de produs formează blocurile principale de dezvoltare a unei aplicaţii web
şi constau în conţinut, structură hipertextuală (structură de navigare) şi prezentare (interfaţa
utilizator). Conform paradigmei orientat-obiect, fiecare din aceste părţi nu are doar aspecte
structurale sau statice ci şi aspecte comportamentale sau dinamice.
Conţinutul
Generarea conţinutului, disponibilizarea acestuia, integrarea şi actualizarea lui sunt la fel
de importante precum dezvoltarea software-ului pentru o aplicaţie web. Aplicaţiile web sunt
utilizate în special datorită conţinutului pe care îl oferă, fiind valabil motto-ul ”Conţinutul este
regele”, iar dezvoltatorii lor trebuie să se comporte atât ca programatori cât şi ca autori.
Aspectele importante sunt gradul variat al structurii conţinutului şi cererile de calitate făcute de
utilizatori asupra conţinutului.
* Caracterul „axat pe document” şi multimedia. În funcţie de modul de structurare, conţinutul
este oferit sub forma tabelelor, textului, elementelor grafice, animaţiilor, elementelor audio sau
video. Caracterul "axat pe document" în aplicaţiile web se referă la faptul că sunt generate
documente care prezintă informaţia în mod adecvat pentru anumite grupuri de utilizatori (de
exemplu informaţii pentru turiştii aflaţi în vacanţă într-o anumită regiune). Aceasta implică şi
anumite cerinţe speciale privitoare la uşurinţa în folosire. Conţinutul este într-o anumită
proporţie generat şi actualizat dinamic (de exemplu numărul de camere disponibile într-un sistem
informaţional pentru turism). Mai mult, web-ul poate fi folosit ca infrastructură pentru
transmiterea conţinutului multimedia (de exemplu videoconferinţe sau aplicaţii Real Audio).
* Cererile de calitate. În funcţie de domeniul aplicaţiei, conţinutul unei aplicaţii web nu
este supus doar actualizărilor cu o anumită frecvenţă, ci şi diferitelor măsurători de calitate
privitoare la actualitate, exactitate, consistenţă şi încredere. Aceste cereri de calitate trebuie luate
în considerare atât la stabilirea cerinţelor, cât şi la evaluarea complianţei cu aceste principii.
Siturile de ştiri, de exemplu, necesită o frecvenţă sporită a actualizărilor şi trebuie să facă
faţă cererilor utilizatorilor privind caracterul de ultimă oră al conţinutului. Ca mediu de
distribuire a informaţiei, alături de televiziune, radio şi presă, web-ul oferă un potenţial mult mai
mare decât mijloacele de informare tradiţională pentru adresarea acestor cereri, datorită
personalizării. Pe de altă parte, există opinii conform cărora aplicaţiile personalizate "inteligente"
("conştiente" de locaţie), necesită dezvoltarea unor noi genuri de aplicaţii; motivul este acela că
aplicaţiile noi bazate pe conţinut (ex. podcasting sau conţinut mobil) sunt un mediu foarte diferit,
greu de adaptat la conţinutul existent.
O calitate superioară este necesară îndeosebi pentru informaţiile privind preţul şi
disponibilitatea produselor în sistemele de cumpărare online, acestea formând baza tranzacţiilor
unei afaceri. Preţurile incorecte pot duce la anularea vânzării, iar informaţiile vechi privind
disponibilitatea pot conduce la incapacitatea de a vinde produsele din stoc sau la probleme de
livrare deoarece produsele afişate drept disponibile nu există în stoc. Indiferent de scopul cu care
este utilizat o aplicaţie web, calitatea conţinutului este un factor esenţial pentru acceptarea ei.
Marea provocare o reprezintă capacitatea de a garanta calitatea datelor în ciuda volumului mare
şi frecvenţei crescute a actualizărilor.
Hipertext
Una dintre caracteristicile specifice aplicaţiilor web este natura non-liniară a
documentelor hipertextuale. Paradigma hipertext, folosită ca bază pentru structurarea şi
prezentarea informaţiei, a fost menţionată pentru prima dată de Vannevar Bush. Elementele de
bază ale modelelor hipertext sunt nodurile, legăturile şi ancorele. Un nod este o unitate de
informaţie unic identificabilă, autonomă. Pe web acesta poate fi un document HTML care poate
fi accesat printr-un URL (Uniform Resource Locator). O legătură este calea de la un nod la altul.
Pe web aceste căi sunt întotdeauna unidirecţionale, scopul acestora nefiind clar definit (poate fi
„următorul nod în acord cu ordinea de citire recomandată”). O ancoră este zona din conţinutul
unui nod care este sursa sau destinaţia unei legături (de exemplu o secvenţă de cuvinte dintr-un
text sau un obiect grafic dintr-un desen). Pe web, ancorele sunt posibile doar în documentele
HTML.
Trăsăturile esenţiale ale paradigmei hipertext sunt non-liniaritatea conţinutului produs de
autori şi a conţinutul receptat de utilizatori, alături de problemele potenţiale de dezorientare şi
supra-încărcare cognitivă.
* Non-liniaritatea. Hipertextele implică stereotipuri privind citirea relativ sistematică,
prin aceasta aplicaţiile web diferenţiindu-se în mod evident de aplicaţiile software tradiţionale.
Acest stil de citire individual, adaptabil la nevoile şi comportamentul utilizatorilor, este cel mai
potrivit pentru capacitatea de învăţare umană. Utilizatorii se pot mişca liberi în spaţiul
informaţional, în funcţie de interesele şi cunoştinţele anterioare. Ancorele şi legăturile nu sunt
doar predefinite în mod static de autori, ci pot fi generate dinamic ca o reacţie predefinită la
modelele de comportament al utilizatorilor.
* Dezorientarea şi supra-încărcarea cognitivă. Este foarte important, în dezvoltarea
aplicaţiilor web, să facem faţă acestor două probleme fundamentale ale paradigmei hipertext.
Dezorientarea reprezintă tendinţa de a pierde direcţia într-un document non-liniar. Supra-
încărcarea cognitivă este cauzată de concentrarea suplimentară necesară pentru memorarea
simultană a diverselor căi sau sarcini. Hărţile siturilor, căutările prin intermediul cuvintelor
cheie, urmărirea căilor (modul history) şi afişarea timpului de accesare şi a timpului petrecut pe
sit ajută utilizatorii să-şi păstreze orientarea în cadrul aplicaţiei. Crearea unor legături cu înţeles
şi denumirea inteligentă a legăturilor reduc supra-încărcarea cognitivă. În plus, folosirea
şabloanelor de proiectare în modelarea aspectului hipertext poate ajuta la contracararea acestei
probleme.
Prezentarea
Estetica - ”look and feel” - succesul sau eşecul (e-comm)
Auto-explicarea - utilizare, sistemul de navigare
Prezentarea
Două trăsături speciale ale aplicaţiilor web la nivelul prezentare (interfaţă utilizator) sunt
estetica şi auto-explicarea.
Estetica. Spre deosebire de aplicaţiile tradiţionale, estetica nivelului prezentare al unei
aplicaţii web este un factorul important, şi datorită presiunii competitive ridicate de pe web.
Prezentarea vizuală a paginilor web este supusă tendinţelor în modă şi deseori determină
succesul sau eşecul, în special pentru aplicaţiile de comerţ electronic.
Auto-explicarea. Dincolo de estetică, este esenţial ca aplicaţiile web să fie auto-
explicative: să fie posibilă utilizarea aplicaţiei web fără a consulta o documentaţie în prealabil.
Sistemul de navigare sau cel de interacţiune trebuie să fie consecvent în întreaga aplicaţie, astfel
încât utilizatorii să se poată familiariza rapid cu utilizarea aplicaţiei web.