Professional Documents
Culture Documents
web04DezvoltareaAplicatiilorWeb InginerieWeb
web04DezvoltareaAplicatiilorWeb InginerieWeb
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Inginerie Web
Aspecte privind dezvoltarea aplicatiilor Web
detalii in [PSW, 197-298]
http://delicious.com/stacks/view/BDLBYG
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Viitorul este suma pasilor pe care-i faceti,
inclusiv a celor mici, ignorati sau luati in ras.
Henri Coanda
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Aplicatii Web sisteme software complexe,
in evolutie permanenta
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Realitate
mijloace multiple de interaciune Web cu utilizatorul
mobil laptop PC tableta TV ecran urban
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Realitate
suportul oferit de platforma hardware/software
la nivel de server(e) si/sau de client(i)
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Realitate
creterea masei de utilizatori,
avnd ateptri tot mai mari din partea software-ului
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
de la continut textual si interactiune in linia de comanda
la hipermedia si interactiune Web prin gesturi
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Realitate
neadaptare la cerintele de tip business
development vs. marketing vs. management
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Realitate
privind proiectele Web de anvergura
intarzieri in lansare
neincadrare in buget
lipsa functionalitatii
calitatea precara a aplicatiei
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Asigurarea calitatii aplicatiilor Web
corectitudine & robustete (reliability)
extindere + reutilizare (modularitate)
compatibilitate
eficienta (asigurarea performantei)
portabilitate
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Asigurarea calitatii aplicatiilor Web
facilitarea interactiunii cu utilizatorul (usability)
functionalitate
relevanta momentului lansarii (timeliness)
mentenabilitate
securitate
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Asigurarea calitatii aplicatiilor Web
alte aspecte de interes:
integritate
reparabilitate
verificabilitate inclusiv monitorizare (logging)
economie
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Necesitati
scopuri & cerinte clar specificate
dezvoltarea sistematica, in faze, a aplicatiilor Web
planificarea judicioasa a etapelor de dezvoltare
controlul permanent al intregului proces de dezvoltare
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Necesitati
scopuri & cerinte clar specificate
dezvoltarea sistematica, in faze, a aplicatiilor Web
planificarea judicioasa a etapelor de dezvoltare
controlul permanent al intregului proces de dezvoltare
inginerie Web
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Categorii de aplicatii Web
Centrate pe documente
Interactive
Tranzactionale
Colaborative
Orientate spre portaluri
De tip ubicuu
Web social
Web al datelor interconectate (semantic Web)
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Categorii de aplicatii Web
Centrate pe documente
Interactive
Tranzactionale
Colaborative
Orientate spre portaluri
De tip ubicuu
Web social
Web semantic
evolutia in timp
a complexitatii
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
aspecte de interes
Centrate pe documente document centric
continut/pagini static(e):
situri de companii, personale
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
aspecte de interes
Interactive
expozitii virtuale
situri de stiri/turism
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
aspecte de interes
Tranzactionale
online banking
solutii B2B (business-to-business)
fluxuri de activitati (workflow-uri)
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
aspecte de interes
Colaborative
tele-conferinte Web
wiki-uri
servicii e-learning
aplicatii Web peer-to-peer
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
aspecte de interes
Orientate spre portaluri
localizare unitara a informatiilor:
tehnice, de afaceri, guvernamentale,
specie: Web-ul cetatenesc
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
aspecte de interes
De tip ubicuu
servicii mobile bazate pe locatia utilizatorului,
disponibile pe mai multe plaforme:
desktop, dispozitive mobile, tablet,
Web-ul mobil
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
aspecte de interes
Web social
(micro)blog-uri
spatii virtuale de lucru
filtrare colaborativa
divertisment social social (game) computing
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
aspecte de interes
Web semantic (Web of data)
modelarea cunostintelor
pentru a fi intelese de calculatoare
dateinformaiicunotine
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
aspecte de interes
Web semantic (Web of data)
modelarea cunostintelor
pentru a fi intelese de calculatoare
dateinformaiicunotine
Dezvoltarea aplicatiilor Web la nivel de client (anul III, optional)
+ Dezvoltarea aplicatiilor Web (master)
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Web semantic
management avansat de cunotine
recomandare inteligent de resurse
clasificarea, regsirea i reutilizarea datelor
etc.
aspecte de interes
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
In ce mod dezvoltam o aplicatie Web?
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
modelare
Uzual, se recurge la o metodologie
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
modelare
Uzual, se recurge la o metodologie
se prefera abordarile conduse de modele
(MDA model-driven architecture)
www.omg.org/mda/
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
modelare
Metodologii orientate spre modele referitoare la:
date RMM (Relationship Management Methodology),
Hera, WebML
interactiune HDM (Hypertext Design Model),
WSDM (Web Site Design Method), UsiXML
obiecte OOHDM (Object-Oriented HDM),
UWE (UML-based Web Engineering),
OOWS (Object-Oriented Web Solutions)
software WAE (Web Application Extension)
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
avansat
Robert Baxley
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
avansat
Jesse James Garrett
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
dezvoltarea aplicatiilor Web
Cerinte (requirements)
Analiza & proiectare (software design)
Implementare (build)
Testare (testing)
Exploatare (deployment)
Mentenanta (maintenance)
Evolutie (evolution)
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Aspecte importante
stabilirea standardelor de calitate
cerinte
context
con-
tent
users
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Aspecte importante
licitare + negociere a continutului/codului-sursa
copyright
Open Source Licenses
www.opensource.org/licenses/category
Creative Commons
www.creativecommons.org/licenses/
cerinte
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Aspecte importante
documentare privind domeniul aplicatiei Web
cerinte
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
cerinte
Aspecte specifice aplicatiilor Web
Lipsa unei structuri reale (tangibile)
Multi-disciplinaritate
Necunoasterea publicului-tinta real
Volatilitatea cerintelor & constrangerilor
Mediul de operare impredictibil
Impactul sistemelor traditionale (legacy)
Aspecte calitative diferite
Inexperienta vizitatorilor
Termenul de lansare
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
cerinte: exemplu
Punctele de plecare in dezvoltarea Flickr
presupuneri initiale (assumptions):
oamenilor le place sa-si impartaseasca amintirile
folosirea succesului blogging-ului
partajarea nu doar a insemnarilor,
ci si fotografiilor (personale)
suport pentru realizarea de comentarii + tagging
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
cerinte: exemplu
Punctele de plecare in dezvoltarea Flickr
declaratia scopului (claim):
Flickr.com is almost certainly the best online photo
management and sharing application in the world.
pretindea Flickr in 2005
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
noi tipuri de cerinte
Privitoare la continut
audienta e.g., internationalizare
context de navigare
preferinte
disponibilitate permanenta (7 zile, 24 de ore/zi)
recurgerea la surse eterogene de date
etc.
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
noi tipuri de cerinte
Interactiunea cu utilizatorul in contextul Web
inclusiv vizand Web-ul social
content mash-up
its yours to take, re-arrange and re-use
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
noi tipuri de cerinte
Calitative
functionalitate
fiabilitate
utilizabilitate
eficienta
mentenabilitate
independenta de platforma
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
noi tipuri de cerinte
Privitoare la mediul de executie
(in)dependenta de navigatorul Web
wired vs. wireless
on-line vs. off-line
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
noi tipuri de cerinte
Referitoare la evolutie
utilizatorul final exploateaza aplicatia Web
fara a trebui s-o (re)instaleze pe calculator
perpetual beta
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
arhitecturi
Calitatea aplicatiilor Web este influentata
de arhitectura pe care se bazeaza
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
arhitecturi
Dezvoltarea unei arhitecturi software ia in calcul:
cerinte functionale
impuse de clienti, vizitatori, concurenta,
management, evolutie sociala/tehnologica,
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
arhitecturi
Dezvoltarea unei arhitecturi software ia in calcul:
factori calitativi
vizand utilizabilitatea, performanta,
securitatea, refolosirea codului etc.
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
arhitecturi
Dezvoltarea unei arhitecturi software ia in calcul:
aspecte tehn(olog)ice
platforma hardware/software (sistem de operare)
infrastructura middleware
servicii disponibile e.g., via API-uri publice
limbaj(e) de programare
sisteme traditionale (legacy)
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
arhitecturi
Dezvoltarea unei arhitecturi software ia in calcul:
experienta
recurgerea la arhitecturi existente
sabloane de proiectare (design patterns)
folosirea unor solutii la cheie: biblioteci, framework-uri
management de proiecte
etc.
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
arhitecturi
Arhitecturi Web generice componente tipice:
client(i)
firewall
proxy
middleware
server(e) Web
server(e) de stocare persistenta (fisiere, baze de date)
server(e) de continut multimedia
server(e) de management al continutului
server(e) de aplicatii + framework-uri/componente
aplicatii traditionale
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
arhitecturi
Uzual, se adopta arhitecturi stratificate
(N-tier Web applications)
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Exista anumite retete
privind dezvoltarea de aplicatii Web?
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
O problema oricare ar fi aceasta
poate aparea frecvent
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Cei experimentati au gasit diverse solutii
pentru problema in cauza, reusind sa recunoasca
problema si sa aleaga solutia (optima)
care poate fi aplicata intr-un anumit context
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Pattern (sablon)
regula ce exprima o relatie
dintre un context, o problema si o solutie
initial, cu utilizare in arhitectura
Christopher Alexander, 1979
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Pattern (sablon)
regula ce exprima o relatie
dintre un context, o problema si o solutie
context
problema solutie
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Traditional, pattern-urile se utilizeaza in
proiectarea de software
pattern mind sized chunk of information
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Traditional, pattern-urile se utilizeaza in
proiectarea de software
pattern mind sized chunk of information
lucrarea de referinta:
E. Gamma et al., Design Patterns, Addison-Wesley, 1995
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Pattern-uri de proiectare au fost folosite,
ulterior, in alte arii
interactiune dintre om-calculator
design si interactiune Web, mobile computing
modelare conceptuala
proiectarea bazelor de date, ontologii,
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Un pattern poate descrie cunostintele unui expert
(pe baza experientei sale personale)
in domeniul problemei in ceea ce priveste
recunoasterea problemei, a contextului si
a solutiei la acea problema
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Un pattern nu reprezinta o regula ferma
uneori nu trebuie aplicat!anti-patterns
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Este necesara adoptarea unui vocabular comun
corespunzator domeniului problemei
pattern language
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Pattern-uri privitoare la:
proiectare
arhitectura
analiza
dezvoltare
structura
comportament
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Specificarea si/sau recunoaterea unui pattern poate
avea loc la diverse niveluri:
prezentare a datelor (UI, user interaction, visualization,)
procesare (business logic, scripting etc.)
integrare a componentelor (code library development)
stocare a datelor (database queries, database design,)
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Sablon de specificare a unui pattern:
numele
rezumatul
problema
contextul
solutia
exemplele
utilizarile
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Exemple de colectii de sabloane
(patterns repositories)
privind proiectarea de software
http://c2.com/cgi/wiki?DesignPatterns
patterns of enterprise application architecture
http://martinfowler.com/eaaCatalog/
interactiunea cu utilizatorul
www.hcipatterns.org
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Web Patterns
Model View Controller
Page Controller
Front Controller
Template View
Transform View
Application Controller
M. Fowler, Patterns of Enterprise Application Architecture, Addison-Wesley (2003)
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Session State Patterns
Client Session State
Server Session State
Database Session State
M. Fowler, Patterns of Enterprise Application Architecture, Addison-Wesley (2003)
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
proiectare
Data Source Architectural Patterns
Table Data Gateway
Row Data Gateway
Active Record
Data Mapper
M. Fowler, Patterns of Enterprise Application Architecture, Addison-Wesley (2003)
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
mvc
Model View Controller
sablon arhitectural
descris in premiera in 1979 in contextul interactiunii
dintre om si calculator Smalltalk (Xerox PARC)
poate fi implementat si intr-un limbaj neorientat-obiect
incurajat/impus de framework-uri specifice
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
mvc
Controller
responsabil cu preluarea cererilor de la client
(cereri GET/POST emise pe baza actiunilor utilizatorului)
gestioneaza resursele necesare satisfacerii cererilor
uzual, va apela un model conform actiunii solicitate
si va selecta un view corespunzator
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
mvc
Model
resursele gestionate de software utilizatori, mesaje,
produse etc. au modele specifice
desemneaza datele si regulile (i.e. restrictiile)
referitoare la dateconcepte vizand aplicatia Web
ofera controller-ului o reprezentare a datelor solicitate si
e responsabil cu validarea datelor menite a fi stocate
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
mvc
View
furnizeaza diverse maniere de prezentare a datelor
furnizate de model via controller
pot exista view-uri multiple,
alegerea lor fiind realizata de controller
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
mvc
etape tipice:
(1) cerere trimisa de client e.g., navigator Web,
(2) dirijare cerere catre controller,
(3) recurgerea la un model, (4) furnizarea reprezentarii,
(5) selectarea unui view, (6) prezentare continut la client
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
mvc
Arhitectura generica a unei aplicatii Web
va consta dintr-un set de resurse referitoare la
controller, model si view
uzual, framework-ul Web folosit impune o anumita
structura a fisierelor aplicatiei ce va fi implementata
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
mvc
structura de directoare in cazul ASP.NET MVC 3
http://www.asp.net/mvc
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
app
Config
Console
Controller
Lib
Locale
Model
Behavior
Datasource
Plugin
Test
tmp
Vendor
View
Elements
Errors
Helper
Layouts
Pages
Scaffolds
webroot
css
files
img
js
lib
plugins
vendors
structura de directoare
in cazul framework-ului
CakePHP 2.1
http://cakephp.org/
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
app
assets
javascripts
stylesheets
apps
libs
main
controllers
models
views
projects
tasks
conf
evolutions
default
project
public
images
icons
javascripts
structura de directoare in cazul framework-ului
Play! 2.0 pentru Java si Scala
http://www.playframework.org/
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
mvc
Variante derivate:
MVP (Model View Presenter)
Passive View
Supervising Controller
PAC (Presentation Abstraction Control)
Model View ViewModel
http://aspiringcraftsman.com/2007/08/25/interactive-application-architecture/
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
testare
Teste specifice in contextul aplicatiilor Web
privind continutul structura, meta-date
probleme la nivel de hipertext (e.g., broken links)
utilizabilitate inclusiv accesibilitate, multi-lingvism
estetica interfetei Web dificil de evaluat/testat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
testare
Teste specifice in contextul aplicatiilor Web
integrare a componentelor
gradul de disponibilitate permanenta si de flexibilitate
(evolutie continua)
gradul de independenta de dispozitiv multi-screen
(numar mare de dispozitive & caracteristici potentiale)
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
testare
Alte tipuri de testari:
privind performanta
incarcare (load)
stressing
testare continua
scalabilitate
referitoare la securitate
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
testare
Poate fi realizata:
manual
semi-automat
automat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
testare: exemplu codul-sursa
Documente (X)HTML validator.w3.org, Tidy
Documente CSS
Documente XML bine-formatate / valide
Script-uri pe partea client (JavaScript) via JSLint
Programe rulate la nivel de server (JSP, PHP,): xUnit
Integritatea si accesul la sistemul de fisiere
Integritatea si accesul la bazele de date
Rezolvarea independentei de navigator
Prevenirea/solutionarea problemelor de securitate
Rezolvarea scalabilitatii aplicatiei Web
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
exploatare: aspecte de interes
Disponibilitatea imediata & globala:
24 h 7 zile, numar nelimitat de utilizatori
suport permanent acordat clientilor
continua dezvoltare a aplicatiei Web
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
exploatare: aspecte de interes
Includerea aplicatiei Web in fluxul de activitati
(workflow-ul) deja existent al organizatiei
asteptari:
cresterea productivitatii, asigurarea calitatii,
reducerea ciclurilor de activitati etc.
efect posibil:
redefinirea workflow-urilor
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
exploatare: aspecte de interes
Publicarea sitului
server dedicat
furnizor de gazduire Web (hosting)
solutie gratuita vs. comerciala
fara Under construction ori 404 Not found nicaieri!
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
exploatare
Mentinerea (administrarea) continutului
obtinerea, crearea, pregatirea, managementul,
prezentarea, procesarea, publicarea si reutilizarea
continuturilor in maniera sistematica si structurata
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
exploatare
Mentinerea (administrarea) continutului
obtinerea, crearea, pregatirea, managementul,
prezentarea, procesarea, publicarea si reutilizarea
continuturilor in maniera sistematica si structurata
puncte de vedere:
organizational
tehnic
referitoare la utilizator
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
exploatare: management
In nivel organizational:
managementul cunostintelor (knowledge management)
managementul relatiilor cu clientii
(CRM Client Relationship Management)
planificarea resurselor
(ERP Enterprise Resource Planning)
managementul workflow-urilor + business rules
integrarea aplicatiilor (EAI Enterprise App Integration)
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
exploatare: management
In nivel tehnic:
managementul continutului de catre personal non-tehnic
pe baza principiului separation of concerns
sisteme de management al continutului
(CMS Content Management Systems)
instrumente colaborative (e.g., enterprise wiki)
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
exploatare: management
Privind utilizatorul:
utilizabilitate Web
mediatizare, agregare, mixare
cresterea performantei
8090% of the end-user response time is spent
on the front-end (Steve Souders)
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
exploatare: analiza utilizarii
Usage analysis
metode explicite (offline) vs. metode implicite (online)
metode explicite bazate pe date oferite de utilizator
exemple: chestionare, analiza mesajelor de e-mail
metode implicite colectare automata a datelor de interes
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
exploatare: analiza utilizarii
Usage analysis
construirea profilului utilizatorilor: Web usage mining
analiza fisierelor de jurnalizare a accesului
(e.g., access.log la Apache, AWStats,)
masurarea popularitatii sitului: viteza de incarcare,
numarul de accesari, timpul de vizitare etc.
servicii de monitorizare/raportare
e.g., Google Analytics, WordPress Statistics
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Parametrii unui proiect Web:
obiectiv principal
resurse umane
durata
cost
abordare
tehnologii
procese
rezultat
profilul echipei
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Parametrii unui proiect Web:
obiectiv principal
crearea unui produs utilizabil
in cat mai scurt timp posibil
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Parametrii unui proiect Web:
resurse umane
uzual, 39 persoane
strategii: in-house, outsourcing (offshore), near-shore
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Parametrii unui proiect Web:
durata
aproximativ 26 luni
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Parametrii unui proiect Web:
cost
de ordinul miilor de Euro
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Parametrii unui proiect Web:
abordare
metode agile
asamblare de componente
prototipizare inclusiv wireframes, mock-ups
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Parametrii unui proiect Web:
tehnologii
bazate pe componente (servicii Web, API-uri publice,
framework-uri, biblioteci, plugin-uri, extensii etc.)
proiectare/programare vizuala
multimedia
si altele
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Parametrii unui proiect Web:
procese
ad-hoc (agile)
programare (server + client)
creare/adaptare
de continut
mentenanta
testare
documentare
arhitectura info
+ navigare
cerinte
public beta lansare
h
t
t
p
:
/
/
s
i
x
r
e
v
i
s
i
o
n
s
.
c
o
m
/
w
e
b
-
d
e
v
e
l
o
p
m
e
n
t
/
a
g
i
l
e
/
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Parametrii unui proiect Web:
rezultat
reutilizabilitate mare a codului,
recurgerea la componente/limbaje/platforme standard,
aplicatii implementate uzual conform standardelor
designul vizual este, de cele mai multe ori, unicat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Parametrii unui proiect Web:
profilul echipei
specialisti in interactiune e.g., designeri Web
+
dezvoltatori (programatori) Web
+
arhitecti de baze de date
+
specialisti in marketing si/sau relatii cu publicul
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management: personal
Personal aplicatii Web de anvergura
Management: Site editor, Project manager
Dezvoltare: System architect, Creative lead,
Security architect, Data (DB/XML) modeler & developer,
Component developer, Web interface developer,
Graphic artist(s), HCI engineer
Programare: Server-side programmers, Client-side
programmers, Data/component integration programmers
Testare: Testing lead, Client-side tester, Server-side tester,
Component tester, Application integration tester
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management: personal
Personal aplicatii Web de anvergura
Operatii tehnice asupra serverului Web:
Webmaster, Hardware & network technicians,
Network administrator(s), Database administrator(s),
Backup operator, Uptime monitor, Security monitor(s)
Marketing: Content producers & editors,
Branding & advertising experts, Direct e-marketer
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
echipa proiectului Web
management
Web Project
Manager
functionalitate
Software
Engineer(s)
Multimedia
Designer(s)
continut (date)
Domain
Expert
Business
Expert
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management: personal
Caracteristici:
multi-disciplinaritate
paralelism al activitatilor
dimensiuni reduse
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management: personal
Web Designer: mainly a front-end developer
graphics applications, (X)HTML, CSS,
cross-browser compatibility, experienta in design vizual,
cunostinte privind interactiunea Web, JavaScript (jQuery),
familiar cu paradigme de interactiune naturala
(gestures, touch, augmented reality),
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management: personal
Web Developer: mainly a back-end developer
cel putin 1 limbaj obiectual, server-side scripting,
protocoale & standarde Internet/Web,
cunostinte de baze de date (inclusiv XML si/sau NoSQL),
familiaritate cu sisteme CMS/wiki,
cunostinte privitoare la servicii Web (in special REST),
familiar cu alte paradigme de programare
(e.g., functionala, logica, distribuita),
cunostinte referitoare la securitate & performanta Web,
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management: personal
Web Technician: junior Web developer
asistent (ajutor) al webmaster-ului,
designerului sau dezvoltatorului Web
in formare de abilitati
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management: personal
Web Maintainer: maintains information
actualizeaza continutului disponibil pe Web
via o interfata WYSIWYG, uzual
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Evidenta riscurilor factori importanti:
definirea neclara a obiectivelor
focalizarea asupra unei audiente nereprezentative
(e.g., conducerea organizatiei)
procese bazate pe organigrama, nu pe abilitati reale
lipsa consistentei datorata outsourcing-ului
lipsa bugetului alocat mentenantei
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Evidenta riscurilor factori importanti:
preluarea inflexibila a continutului
stocat in cadrul documentelor traditionale
lipsa mijloace de navigare prin sit
neintelegerea diferentei Internet/intranet
subestimarea semnificatiei prezentei pe Web
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Evidenta riscurilor factori importanti:
marketing vs. usability
probleme cauzate de continutul generat de utilizatori
aspectele vizand securitatea aplicatiilor Web
probleme referitoare la performanta
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
management
Supravietuirea dupa dezastru
probleme de securitate
probleme de performanta
aspecte privind continutul
campania negativa
construirea
unui
dark site
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
concluzii
Actualmente, aplicatiile Web
sunt exploatate si integrate continuu
(continuous integration & deployment)
fenomenul perpetual beta
a se vizita The Museum of Modern Betas:
http://momb.socio-kybernetics.net/
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
concluzii
Actualmente, aplicatiile Web
sunt exploatate si integrate continuu
(continuous integration & deployment)
aplicatia trebuie sa reactioneze e.g., adapteze
in timp-real la interactiunea cu utilizatorul
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Development as a Service
A
.
I
q
b
a
l
,
M
.
H
a
u
n
s
e
n
b
l
a
s
,
S
.
D
e
c
k
e
r
(
2
0
1
2
)
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
Web: CodeRun, Cloud9, eXo Cloud
desktop: Eclipse, <oXygen/>, Visual Studio
Google App Engine, Heroku,
Jelastic, Windows Azure
BitBucket, GitHub,
SourceForge, Unfuddle
avansat
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
concluzii
Un numar tot mai mare de aplicatii (servicii)
populare disponibile on-line se bazeaza
pe continut generat de utilizatori
de consultat statisticile oferite de Alexa:
http://www.alexa.com/topsites
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
rezumat
Inginerie Web
dezvoltare, testare & exploatare
managementul aplicatiilor Web
D
r
.
S
a
b
i
n
B
u
r
a
g
a
w
w
w
.
p
u
r
l
.
o
r
g
/
n
e
t
/
b
u
s
a
c
o
?