pfc plot suite - uab barcelonatambé hi ha un mapa conceptual per poder tenir una visió general...
TRANSCRIPT
PLOT SUITE
Memòria del projecte d'Enginyeria en Informàtica realitzat per Néstor Pando Caparrós i dirigit per Miquel Àngel Senar Bellaterra, 10 de Juny de 2008
2
3
El sotasignat, .......................................................................... Professor/a de l'Escola Tècnica Superior d'Enginyeria de la UAB, CERTIFICA: Que el treball a què correspon aquesta memòria ha estat realitzat sota la seva direcció per en I per tal que consti firma la present. Signat: ............................................ Bellaterra, ........de...............................de 200.....
4
Índex 1.- Introducció 05
1.1.- Cronologia del PFC 08 1.2.- Estructura de la Memòria 09
2.- Anàlisi i disseny 10
2.1.- Casos d’ús 12 2.2.- Escenaris 14 2.3.- Tecnologies 18 2.4.- Arquitectura 19
2.5.- Estructura de dades 20
3.- Estructura de l’aplicació 23
3.1.- Search Plots 26 3.2.- Add Plots 30 3.3.- Administration 35
3.3.1.- Add user in Data Base 36 3.3.2.- Modify Data Base 38
3.4.- Modify or Delete a plot 40 3.5.- Privilegis 44
4.- Conclusions i resultats obtinguts 45 5.- Bibliografia 51
5
1. – Introducció
Aquest projecte pretén facilitar a l’usuari , mitjançant una aplicació web, una bona
organització de plots. Els plots son un conjunt de “imatges” de diferents mides i estils, que es
troben guardats en format electrònic. Estan generats per diferents programes: AutoCAD,
PhotoShop, Indesign, FreeHand, GIS, Corel Draw...
Amb aquests plots, es pretén testejar el producte de l’empresa, que son els denominats
Plotters. Els Plotters son impressores de gran format que imprimeixen amb una mida de 24 o 48
polzades segons el model.
Hi ha diferents tests a realitzar al producte, com la qualitat d’impressió, la velocitat
d’impressió... Per poder fer tots aquets tests és important disposar d’una bona quantitat de plots .
És evident que quan més gran sigui la mostra, més complet serà el test de les màquines. Això
implica tenir una bona organització de tots ells.
Aquesta eina, pretén centralitzar els plots per tal de facilitar-ne la recerca per a un test en
concret. Els plots més tècnics son plots de línies, fets per AutoCAD, amb aquests podem veure
la precisió dels plotters a l’hora d’imprimir les línies.
Però també ens interessen veure altres estils com ara imatges reals (com poden ser les
fotografies) , imatges amb degradats o imatges homogènies amb un mateix color.
En definitiva, hi ha una quantitat bastant elevada de plots (actualment uns 1500) per
realitzar els tests i era necessària una eina per tal de tenir-los controlats, tan la seva localització
(on estan guardats) com una breu descripció amb les seves principals característiques (mida,
tipus, color...).
El projecte s’ha pogut desenvolupar gràcies a la col·laboració de Hewlett Packard, que
és una multinacional molt important a nivell mundial. En Espanya trobem dos plantes d’aquesta
companyia: Madrid i Sant Cugat del Vallès (Barcelona).
6
Com que és una empresa molt gran ha de tenir una gran organització. La planta està
estructurada en diferents grups, per poder treballar en paral·lel les diferents parts que consta el
producte (Hardware, Software...).
Aquest projecte s’ha desenvolupat a l’empresa Hewlett Packard Española S.L, a les
instal·lacions situades a Sant Cugat del Vallès. Dins de l’equip de Software Quality, es volia
aconseguir una organització eficaç dels plots per tal de ser fàcilment localitzables.
Abans d’aquesta aplicació els plots estaven emmagatzemats en diferents ordinadors o
servidors, la qual cosa, a la hora de buscar algun plot era bastant caòtic, ja que s’havia de buscar
dins de cada ordinador on hi haguessin plots emmagatzemats, i dintre cada ordinador mirar les
diferents carpetes on es poguessin trobar aquets plots.
Un altre problema que hi havia, era la duplicitat de molts plots. Era molt comú trobar
plots idèntics extrets de diferents fonts, això implica tenir informació redundant e innecessària.
El nom amb que estaven guardats els plots, indicava les principals característiques, com
ara l’alçada, amplada... El problema era que no hi havia un única nomenclatura per etiquetar els
plots, i es podien trobar moltes maneres diverses de ser representats. És evident que un arxiu
amb extensió .CAD, serà un plot amb línies. Però no és l’únic que interessa dels plots, ja que
també és interessant la mida, la resolució, els colors i altres paràmetres.
Seria pràcticament impossible posar tota la informació del plot al nom de arxiu, ja que
tindríem cadenes massa llargues i seria complicat intentar buscar algun plot d’una manera fàcil.
L’objectiu del projecte és centralitzar tota aquesta formació de manera que no hi hagin
plots repetits, i sigui fàcil poder buscar un tipus de plot per un test específic.
Una primera idea era realitzar un estructura de carpetes i subcarpetes, per classificar els
diferents plots. Es va realitzar una reunió a nivell de grup (Software Quality), per decidir la
manera de crear els diferents nivells per catalogar els plots. A part d’aquesta estructura, s’havia
de decidir una nomenclatura per nombrar els plots, de manera que tots els plots tinguessin una
mateixa estructura en el nom.
7
El principal problema del sistema de carpetes i subcarpetes era la dificultat que aquestes
carpetes estiguessin ordenades d’una forma clara per a tothom que necessiti buscar un plot, ja
que cada persona podria pensar una manera diferent d’ implementar aquesta estructura. Així que
era millor pensar en una altre forma de emmagatzemar la informació.
La solució es va orientar cap a les Bases de Dades. Mitjançant formularis de recerca i
consultes SQL, podríem tenir una manera fàcil de localitzar aquests plots. D’aquesta manera es
compliria amb els requisits inicials que eren:
- Centralització de la informació
- Eliminar la duplicitat dels plots
- Forma fàcil de buscar plots.
La principal idea del software es que permetés a l’usuari mitjançant menús de navegació
fàcilment utilitzables, fer consultes a la Base de Dades sense haver d’escriure cap sentència
SQL, sinó omplint certs camps o seleccionant certes caselles. Finalment, segons les opcions
seleccionades es crearia una sentencia automàticament i s’executaria , llavors la Base de Dades
retornaria el resultat de la consulta.
Una altre opció de la aplicació seria la possibilitat de poder incloure nous registres a la
Base de Dades. Així que s’havia de pensar de fer-ho d’una forma fàcil, per tal que aquesta eina
pugui ser utilitzada per tot tipus d’usuari.
La idea era fer una aplicació robusta, però que al mateix temps fos flexible, per tal de
poder anar adaptant la Base de Dades en funció de les restriccions que sorgien.
1.1
tenia
com
reali
aplic
per
com
elev
evol
del
van
el re
totes
1 - Crono
El projec
a com a obj
mençar amb
ització de p
cació robusta
intentar troba
Un cop
mpletar la Ba
vat de plots.
A la fig
lucionat el pr
El diagra
programa. P
fer encara m
endiment i la
s aquestes m
ologia de
cte es va de
jectiu definir
el disseny
proves sobre
a. A mesura
ar tots els po
testejada
ase de Dade
gura 1, ten
rojecte.
ama de la fig
Posteriormen
més funciona
robustesa d
millores.
el projec
esenvolupar a
r les funcion
de l’aplicac
e l’estructura
a que s’anav
ossibles defe
correctamen
es per veure
im un diagr
figura
gura 1, repre
nt a aquesta
al l’aplicació.
de l’aplicació
8
cte
al llarg d’ ap
nalitats que
ció. Aquest
a del progra
va creant el d
ectes que po
nt l’aplicació
e realment e
rama on es
a 1: Diagrama
esenta el per
primera ver
Van augmen
ó. En els seg
proximadame
tindria el pr
disseny, ten
ama, ja que
disseny es v
guessin apa
amb les f
el rendiment
s represente
a de temps
íode on es v
rsió hi van h
ntar les pres
üents aparta
ent vuit meso
rojecte. Un c
nia un proc
era importa
van anar fen
rèixer.
funcions bàs
t de l’aplica
en totes les
va desenvolu
haver algune
stacions del p
ats estan exp
os. La prime
cop definide
cés paral·lel
ant que sig
nt tot tipus de
siques, s’ h
ció amb un
s etapes pe
par la prime
es modificaci
programa, va
plicats detalla
era etapa
s, es va
amb la
ues una
e proves
havia de
nombre
r on ha
ra versió
ions que
a millorar
adament
9
1.2 - Estructura de la memòria
En aquest apartat hi trobem, una petit resum del contingut de la memòria. En els capítols
següents s’explicaran els passos que s’han anat seguint al llarg del desenvolupament del
projecte.
En el punt 2 de la memòria, es troba descrit l’anàlisi del problema. En aquest apartat es
parlarà sobre la funcionalitat de la aplicació i les seves pertinents restriccions, ja siguin
restriccions de disseny o restriccions de tecnologia ( llicencies, servidors... ).
En aquest punt es definiran les diferents accions del actors, que son les diferents funcionalitats
que tindran els usuaris en l’aplicació i també els diferents escenaris que es poden trobar. En
aquest punt també es parla sobre el tema de l’arquitectura de l’aplicació. Aquí estaran definits
els components que hi formen part, tan a nivell físic (Servidor), com a nivell lògic (taules SQL) .
En el punt 3, estan especificades, les diferents seccions que formen part de l’aplicació.
També hi ha un mapa conceptual per poder tenir una visió general dels diferents camins per on
es mourà l’aplicació. En aquest punt estan representades les captures de pantalla més important
amb alguns petits exemples d’execució. Aquest capítol està dividit en 5 apartats, que son els que
formen l’estructura del programa: Search, Add, Administration, Modify i Privilegis.
En el capítol 4, estan les conclusions i els resultats que s’han aconseguit al finalitzar el
projecte. També estan comentades les futures ampliacions que podria tenir el software.
10
2.- Anàlisi i Disseny
Abans de començar amb el projecte, és important definir un bon anàlisi del problema a
resoldre. Primer de tot, es van definir les funcions que havia de tenir la aplicació, a partir
d’aquestes funcionalitats i algunes restriccions, es continuaria amb el disseny de la aplicació. Les
principals funcionalitats de la aplicació eren:
- Buscar (Download) plots
- Afegir plots
- Modificar/Eliminar plots
A part de buscar plots, també era interessant l’opció de afegir nous plots a la Base de
Dades. Ja que eventualment es creen nous plots i s’haurien de poder incorporar a la Base de
Dades per tal de fer-la cada com mes extensa i completa.
Un cop estiguessin els plots a la Base de Dades, podria ser interessant canviar algun
camp d’informació del plot, per tal de tenir més ben catalogat el plot afegint-hi nova informació.
Ja que podria ser que inicialment no estiguessin tots els camps omplerts.
Per afegir un plot a la Base de Dades, es fa mitjançant un formulari. Aquest formulari té
una sèrie de camps per tal de catalogar d’una manera molt precisa el plot en qüestió. Gracies als
formularis, evitem qualsevol error d’usuari a l’ hora d’escriure la consulta SQL, ja que segons els
camps omplerts i les opcions seleccionades, la aplicació anirà generant la sentència.
Una de les restriccions importants que es van tenir en compte, era a l’hora d’adjuntar el
plot en aquest formulari. Ja que les eines que hi ha lliures per poder adjuntar arxius en
formularis, limiten la mida de l’arxiu en uns 300 Mb.
Finalment aquesta part es va millorar, i ara la restricció de mida ha augmentat als 2 Gigabytes
aproximadament. Això ha estat possible gracies a la tecnologia .NET, donant molta més llibertat
als usuaris per poder fer Uploads d’arxius en formularis web. Això ha fet possible la inclusió de
tots els plots disponibles, ja que el plot més gran que hi havia no superava 1 Gigabyte.
11
Una altre restricció que es va imposar era la possibilitat de poder canviar l’estructura de
la base de dades dinàmicament, sense tenir que modificar el codi. Es volia controlar el cas de
que en un futur es pogués introduir un nou camp a la Base de Dades o simplement voler-ne
eliminar un que no fos realment útil.
Aquesta restricció va complicar el disseny de tot el conjunt, però un cop resolta, és te un
dinamisme total, que permetrà poder seguir utilitzant la aplicació encara que es modifiqui
l’estructura de la Base de Dades. L’aplicació es modelable per l’administrador de la aplicació.
Definirem com a actors, els diferents usuaris que interactuen en la aplicació. Es poden
diferenciar tres nivells d’actors en la Plot Suite.
1er Nivell : Actors que només poden buscar i fer Downloads dels plots
2on Nivell: Actors que a part de tenir els mateixos privilegis del actors del primer nivell,
poden afegir, modificar plots.
3er Nivell: Administradors, que a part de poder fer totes les accions anteriors, poden
eliminar plots de la base de dades y poden donar d’alta a nous usuaris, adjudicant-los el
permís del nivell que fos necessari.
2.1
A co
privi
1.- B
L’us
Però
perm
2.- A
L’us
aban
plots
3.- M
L’us
dade
que
1 Cassos
ontinuació es
ilegis que dis
Buscar un p
suari busca u
ò abans s’ha
misos per bu
Afegir un plo
suari afegeix
ns s’ha de
s.
Modificar un
suari modific
es, però aba
vulguem mo
d’ús
s definiran el
sposi, podrà
plot
un plot dins
a de mirar s
scar plots.
ot
un plot a la
mirar si te
n plot
ca un plot a
ans s’ha de
odificar.
s 7 casos d’ú
fer unes det
la Base de
si aquest us
base de dad
permisos p
a la base d
buscar el pl
12
ús que const
terminades a
dades.
suari te
des, però
er afegir
de
ot
ta la aplicaci
accions. ó, segons l’uusuari, i el tippus de
4.- F
L’us
però
que
5.- E
L’us
fer
elim
6.- A
L’ad
de D
tindr
7.- E
L’ad
usua
Fer un Down
suari fa un d
ò abans s’ha
es volen bai
Eliminar un
suari elimina
una cerca
minar.
Afegir nou u
dministrador
Dades dels u
rà a l’aplicac
Eliminar usu
dministrador
ari.
nload de plo
download d’u
a de fer una
ixar.
plot
un plot, pe
dels plots
usuari
afegeix a u
usuaris i li a
ció..
uari
borra de la
ots
un o més pl
cerca dels p
erò abans s’h
s que es v
n nou usuar
atorga els pe
a base de d
13
lots,
plots
ha de
volen
ri a la Base
ermisos que
dades a un
14
2.2 Escenaris
A continuació es definiran els diferents escenaris que consta la Plot Suite. El primer
escenari que s’ha definit es l’escenari de Buscar Plots. Aquest escenari esta composat d’uns
altres tres escenaris com son:
- Download de plots
- Modificar plots
- Eliminar plots
S’han agrupat aquets tres escenaris dins l’escenari de Buscar, ja que abans de fer
qualsevol de les tres accions descrites, és necessari fer una recerca del plots per fer la operació
necessària. Quan l’usuari accedeix a una zona en concret, la aplicació fa una identificació
automàtica de l’ usuari, que permetrà o no (segons els permisos) dur a terme l’acció sol·licitada.
Bus
taula
Qua
obtin
de f
dos
un p
scar , Down
Després
a. D’aquesta
an es vulgui
ngut, l’usuar
En el ca
fer la recerca
funcions mo
plot de la Plo
nloads, modi
s de finalitza
a manera ob
fer un Dow
i haurà de se
as de Modific
a, l’única cos
odificaran la
ot Suite.
ificar i elim
ar una recer
btindrem d’u
wnload, prèvi
eleccionar el
car i Elimina
sa que els d
Base de Da
15
minar plots
rca, l’aplicac
na forma ele
ament haure
s plots que i
ar plots, son
iferencia és
ades, ja sigu
ció ens reto
egant la con
em de have
nteressin.
dos casos s
que al ser p
ui modificant
rnarà els re
nsulta que l’
r fer una rec
semblants, ja
processada q
camps d’inf
esultats en fo
usuari hagi
cerca, i del
a que primer
qualsevol d’a
formació o e
orma de
realitzat.
l resultat
r haurem
aquestes
eliminant
Afeg
l’esc
Bas
acce
l’apl
perm
l’ope
pass
la B
Afeg Aqu
afeg
que
Suit
aque
tenir
dona
usua
man
esce
reali
siste
auto
perm
gir plots a la
En la fig
cenari d’afeg
e de Dade
edeix a
icació dete
misos corres
eració. Un co
sos, s’incorp
ase de Dade
gir i eliminar
est escena
gir i esborrar
puguin acce
e. L’usuari q
estes tasqu
r permisos
ar d’alta o ba
aris, de l
nera que
enaris, a
itzar cap
ema
omàticament
misos de l’us
Base de Dad
gura de la dre
gir nous plo
es. Un cop
aquesta
ectarà si
ponents per
op finalitzats
porarà un no
es.
usuari de la
ari permet
usuaris per
edir a la Plot
que realitza
ues ha de
per poder
aixa a altres
a mateixa
els altres
bans de
acció el
comprova
els
suari.
des
eta hi ha
ots a la
l’usuari
funció,
te els
realitzar
s tots els
ou plot a
Base de Dad
16
des
Afeg
es e
Bas
que
total
actu
nece
cam
Hi h
esbo
perm
algu
Tot
al pu
de l’
gir i eliminar
L’últim e
el d’afegir i
e de Dades.
fa que
lment inter
ualitzada c
essari la in
mps de recerc
han camps
orrats, enca
misos d’esb
uns son total
això esta ex
unt 2.5 de la
’estructura d
camps de la
escenari que
eliminar cam
Aquest esce
la Plot Su
ractiva i p
cada qua
ncorporació
ca.
que no po
ara que l’usu
orrar camps
lment impres
xplicat amb m
a memòria, o
e dades.
a Base de Da
hi trobem
mps de la
enari és el
uite sigui
pugui ser
an sigui
de nous
odran ser
uari tingui
s, ja que
scindibles.
més detall
on es parla
17
ades
18
2.3.- Tecnologies Aprofitant que la secció on es desenvolupa el projecte, Software Quality, ja disposava
d’un servidor propi, es va decidir aprofitar-lo per penjar aquesta aplicació.
Donades aquestes restriccions de disseny, la aplicació es desenvoluparia amb els
següents llenguatges:
- Html: Crear les pagines estàtiques (formularis)
- ASP: Dinamitzar les pagines estàtiques fetes amb HTML i fer poder fer consultes a la
Base de Dades.
- ASP.NET: Última actualització de la aplicació per tal de poder fer Upload sense
restriccions de mida. (fins 2Gb)
- JavaScript: Donar funcionalitat a les pagines HTML.
- SQL Server: Mitjançant les comandes ASP, interactuarà amb la Base de Dades
L’aplicació finalment correrà sota un Windows Server 2003 amb 4 Gb de memòria RAM.
Té dos disc durs RAID (150 Gigas cada un), amb aquest discs durs es doble la velocitat de
lectura i escriptura en el disc, per tant agilitzarà tots els processos de l’aplicació.
2.4
travé
pàgi
s’ex
aplic
emm
form
els t
man
4.- Arqui
Tal i co
és d’una pàg
Hi haurà
ina. La part
xecuta al pro
cació i arriba
magatzemad
men part de la
Finalme
thumbnails c
nera interactu
itectura
om s’ha com
gina web, és
à una part de
de javascrip
opi servidor.
aran en form
a al servido
a Plot Suite.
nt en aquest
corresponen
uarà el PC d
mentat anteri
a dir, estarà
e HTML, que
pt també s’ex
Els càlculs o
mat HTML a
or, per tenir
t servidor tro
ts. A la figu
el usuari am
figura2: E
19
iorment, l’ap
à programat a
e serà la part
xecutarà al o
o consultes q
l client. Tam
r guardada l
obem dos ca
ra 2, obser
mb el servidor
Estructura de
plicació està
amb diferent
de codi que
ordinador de
que es realit
mbé hi ha un
la informació
rpetes on tin
rvem l’estruc
r de l’aplicac
l’arquitectura
pensada pe
ts llenguatge
e executarà e
el client. En
tzin, s’execu
na Base de
ó dels plots
ndrem emma
ctura de l’arq
ió.
a
er fer-la fun
es.
el client al ca
canvi la par
uten al servid
Dades SQL
s i dels usu
agatzemats e
quitectura i d
cionar a
arregar la
rt d’ASP,
dor de la
L Server,
aris que
els plots i
de quina
2.5
crea
punt
intro
crea
adm
de
com
5.- Estru
L’aplicac
ar una Base d
- TAB
- TAB
- USE
Quan es
t és molt im
oduir un de n
ar era una
ministrador de
Dades anom
mentat anterio
ctura de
ció, a part de
de Dades am
BLE_PLOTS_
BLE_TYPE
ERS_TABLE
s creïn aque
portant, ja q
nou, s’hauria
Base de D
e la aplicació
menada Plot
orment:
e Dades
e les diferen
mb 3 taules p
_DINAMIC
E
estes taules,
que si es cre
a de canviar
Dades dinàm
ó introduís un
ts_Database
20
ts pàgines H
principals.
s’han de de
een una sèrie
r tota l’estruc
mica, que a
n nou camp
e on s’introd
HTML que es
efinir els cam
e de camps
ctura del pro
anés creixen
per cataloga
duïen les ta
starà formad
mps que hi fo
, i al cap d’u
ograma. Per
nt a mesura
ar els plots. E
aules (figure
Figura3: P
a la web, s’h
ormaran part
un cert temp
tant, el que
a que un u
Es va crear u
es 3 i 4) qu
Plots_Databas
haurà de
t. Aquest
ps es vol
es volia
usuari o
una Base
ue s’han
se
Ara
a) T
b) T
es definiran
TABLE_PLO
que con
ser dinà
incorpor
no es po
- ID: s
- Path
- Path
- Size
TABLE_TYPE
TABLE_
típics tip
com ara
puguin a
les tres gran
TS_DINAMI
Aquesta tau
tindrà tots el
àmica, ja que
rar una nova
Tot i que aq
odran elimina
serà l’ identif
h_plot: la ruta
h_thumb: la r
e_bytes: es la
E:
És una taul
_PLOTS_DIN
pus de dade
a Drop Down
aparèixer en
figura
ns taules que
C
la serà la ta
ls plots amb
e si es vol in
columna a l
questa taula
ar ( ni per l’a
ficador únic p
a física on es
ruta física on
a mida en by
a que guard
NAMIC, i tam
es que ens p
(llista desple
un futur.
21
a4: taules bas
e s’han creat
ula on hi hau
la seva corr
ncloure un a
a taula.
serà dinàmi
dministrador
per a cada p
s troba el plo
n es troba el
ytes del plot.
da el tipus d
mbé haurà de
proporciona S
egable) i Mu
e de dades
t i amb quin o
urà la major
responent inf
altre camp pe
ca, hi haura
r), i son els s
lot.
ot dins del no
thumbnail en
de dades qu
e ser dinàmi
SQL (int, ch
ultiselect (mu
objectiu.
part de la in
formació. Aq
er catalogar
n 5 camps q
següents:
ostre servido
n el servidor
ue te emmag
ca. D’aques
ar…) podem
lti selecció),
formació. És
uesta taula h
els plots, s’
que seran fix
or.
.
gatzemades
ta manera a
m crear-ne d
o altres opc
s la taula
haurà de
’haurà d’
xes i que
la taula
a part del
de nous,
cions que
22
c) USERS_TYPE: És una taula on estant tots els usuaris que tindran accés a la aplicació Plot
Suite. Aquesta taula és estàtica i tindrà 5 camps
- Search permission (recerca dels plots)
- Add permission (afegir a la base de dades nous plots)
- Modify Plot permission ( modificar/eliminar plots de la base de dades)
- Add User permission (afegir/eliminar usuaris i els seus pertinents permisos)
- Modify Data Base permission (afegir/eliminar camps de la base de dades)
Aquests permisos seran consultats al entrar en les diferents seccions de la Plot
Suite. Més endavant es comentarà amb més detall.
3.- Un
nave
Dins
com
- Estru
Un cop
cop s’acced
egació tal i c
s del menú in
- Sea- Add- Adm
A la figu
mplexitat de la
uctura
definits els c
deixi a la a
com ens ho m
nicial de la P
arch Plots (B
d a Plot in Dministration
ura 6, trobem
a estructura.
de l’ap
components
aplicació (Plo
mostra la figu
figura5:
Plot Suite, dife
Buscar plots
atabase ( Af
( Disseny de
m un esquem
23
plicació
que tindrà la
ot Suite) din
ura 5
: menú navega
erenciem 3 g
a la base de
fegir Plots a
e la base de
ma global de
ó
a aplicació, é
ns la pàgina
ació pàgina w
grans seccio
e dades)
a la base de d
dades i usua
la aplicació
és comentar
a web, apa
web
ns:
dades)
aris)
per tal de fe
rà la seva es
reixerà el m
er-nos una id
structura.
menú de
dea de la
figura6:
24
Estructura dee la Aplicació
25
Tal i com es pot veure a la figura6 de la pàgina anterior l’aplicació te 4 branques
principals, la qual una d’elles “Search Plots” deriva cap a una nova anomenada “Modify Plots”.
Així que en total tenim 5 blocs ben diferenciats en l’estructura. A continuació s’explicaran cada un
d’ells.
3.1 2 gr
La p
1 Search
En aque
ans seccions
primera part e
- File_
- Size
Plots
esta opció es
s (figura 7):
es troben do
_name
e_bytes
s poden bus
Figur
os camps per
26
car plots om
ra7: Menú Sea
r omplir
mplint un form
arch Plots
mulari. El formmulari està ddividit en
el n
impl
facil
enca
que
omp
Dad
s’uti
sele
com
form
com
mos
Aquests
nom complet
lementat que
itarà al usua
Llavors
ara més la r
s’han anat c
plir el formula
des. És a dir,
litzi aquest
eccionar una
Per exe
m aplicacions
mulari de rec
mpleixen les r
Un exem
stra per panta
s camps sera
t, sinó un a
e la recerca
ari la recerca
trobarem la
recerca de p
creant al llarg
ari, estaran
, és un formu
formulari, le
de les opcio
emple, quan
s diferents t
cerca de plot
restriccions e
mple de busc
alla l’aplicaci
an fixes. La c
amb una pa
estarà de la
del plot.
a pestanya d
lots. Tots els
g del desenv
extretes de
ulari dinàmic
es possibles
ons que ens s
es desplega
inguin els p
ts correctam
exigides pel u
car un plot e
ió.
Figura8
27
cerca del no
rt del string
a següent for
de Advance
s camps que
volupament d
la informaci
c, ja que a m
opcions ( a
sortiran al de
a la opció d
plots de la B
ment, l’aplicac
usuari.
el trobem a l
8: Resultat de
m esta feta d
g en tindrem
rma: %nom
Search. Aq
e hi ha dins
d’aquest soft
ó dels plots
mesura que la
a part de po
esplegable.
e aplicació,
Base de Da
ció procedirà
la pàgina se
buscar plots
de tal forma
m prou. Ja q
de l’ arxiu%
questa opció
de Advance
tware. Les p
emmagatze
a Base de D
osar-ne de n
apareixeran
ades. Quan
à amb la rec
güent a la fi
que no cald
que en el c
. D’aquesta
ó serveix pe
e Search, so
possibles opc
emats en la
Dades s’amp
noves ) , e
n tantes pos
ja s’hagi om
cerca dels p
gura 8, tenim
drà posar
codi esta
a manera
er acotar
n camps
cions per
Base de
lia, quan
es podrà
sibilitats,
mplert el
plots que
m el que
fer l
form
cam
desi
sele
apar
(figu
Abans d
’ usuari en a
mat Excel (fig
Tornant
mps dels plots
itgi, podrem
eccioni una c
reixen els ca
ura 10 i figura
d’observar els
aquesta part
gura 9)
a la figura
s. Aquesta ta
ordenar la n
columna, es
amps impor
a 11):
Figura
s resultats q
t. Una d’elles
f
8, s’observa
aula que s’o
nostre recerc
s farà una n
rtants que te
10
28
ue ha tornat
s és una fun
figura9: Cons
a que la cap
obté és dinàm
ca per el cam
ova consulta
enim a la Ba
la consulta,
nció que ens
sulta en Excel
pçalera de la
mica, ja que
mp que s’hag
a a la Base
ase de Dade
Fig
tenim instruc
s converteix
l
a taula apare
si es selecc
gi selecciona
e de Dades.
es, però s’in
gura 11
ccions del qu
la nostra rec
eixen els no
ciona el camp
at. Cada cop
A la taula
ntrodueixen
ue podrà
cerca en
oms dels
p que es
p que es
resultant
de nous
a) El pr
interess
botó dow
altre pàg
arxius s
Quan ha
una fine
ruta que
Les pro
fins 2 G
A la par
ha tau
Downloa
l’usuari t
plots fin
triga en
constant
connexió
b) El se
obtenir u
píxels, p
c) El ter
compos
pàgina e
de Dade
rimer camp
in. Un cop s
wnload.
Aquest botó
gina que far
seleccionats
agi creat el
estra per gu
e l’usuari indi
ves s’han fe
Gb i funcione
rt de final de
ules amb
ads.
Fent el zip,
tindrà una d
s que l’usua
baixar-lo. La
t. La velocita
ó de xarxa, a
egon camp
una petita id
per alleugerir
rcer camp (Mat per boton
es podrà mo
es. El tema d
(-), és del t
’hagin selecc
ó redirigirà a
rà un copia d
i crearà un
ZIP, apareix
uardar-lo en
qui.
et amb zips
n correctam
e la memòria
resultats
s’aconsegue
escarrega m
ari els te al o
a creació del
at de downlo
al ser una int
(Image) sim
dea del plot
r la càrrega d
Modify) situa
s, el qual qu
odificar les ca
de Modificar
29
ipus Check
cionat els plo
una
dels
zip.
xerà
n la
s de
ent.
a hi
de
eix comprim
més ràpida. E
ordenador se
zip dependr
oad, dependr
tranet oscil·la
mplement és
que estem b
de la pàgina.
at en la darr
uan es premi
aracterístique
i eliminar plo
Box, que p
ots, a la part
Figu
ir el volum d
El temps tota
eria el que ta
rà de la mida
rà de la conn
a entre 500K
la imatge d
buscant. Cre
rera posició
, es redirigirà
es del plot, o
ots està expli
ermet selec
t inferior de
ura12: Downlo
de dades qu
al des de qu
arda en crea
a, però semp
nexió de l’ us
Kb/s i 2Mb/s.
del thumbna
eem thumna
de la colum
à a una altra
o fins i tot eli
icat en el pun
cionar els p
la taula es tr
oad d’un fitxe
ue es vol ba
e es selecci
ar un zip mé
pre va a una
suari. Norma
ail, per tal d
ils de mida
mna de la dre
a pàgina. En
iminar-lo de
nt 3.4.
plots que
robarà el
er
ixar, així
onen els
és el que
velocitat
alment la
de poder
100x100
eta, esta
aquesta
e la Base
3.2
tingu
En u
Dad
cara
sele
opci
2 Add Pl
Dins d’a
ui permisos p
una primera
des.
La prim
acterístiques
eccionar cara
Actualm
ions inicials.
lots
aquesta opci
per fer aques
a versió de l
mera era p
. La segona
acterístiques
ment només h
Primer de to
ió, es podra
sta acció
l’aplicació, l’
er afegir p
era poder af
dels plots.
hi ha una opc
ot l’usuari es
30
n afegir plot
usuari tenia
plots de un
fegir més d’u
ció per afegi
trobarà una
Figura 13
ts a la Base
dos opcion
n en un, i
un plot a la B
r plots. I esta
interfície co
3a
e de Dades,
ns per afegir
llavors es
Base de Dade
a formada pe
m la mostrad
sempre que
r plots a la
pecificar les
es, però sens
er la fusió de
da a la figura
e l’usuari
Base de
s seves
se poder
e les dos
a 13a
Dad
una
per
impl
poss
uplo
figur
En aque
des. Si volgué
altre barra p
Un cop
tal de que l’a
lementat un
sibles interru
Tota aq
oads de fins a
Un cop
ra 14:
est primer m
és afegir mé
per seleccion
seleccionat
aplicació com
na funció qu
upcions.
uesta pàgina
a 2 Gigabyte
s’hagin puja
menú l’usuar
és d’un, haur
nar un nou ar
els arxius,
menci a puja
ue evita qu
a ha estat pr
es de mida.
t els plots al
31
ri afegirà els
ria d’anar pre
rxiu. En la fig
Figura 13b
l’usuari haur
ar els arxius
e l’usuari p
rogramada a
servidor, es
s arxius que
ement el botó
gura 13b ten
rà de selecc
al servidor.
pugui selecc
amb ASP.NE
s passarà a u
vulgui inco
ó de “AddFil
im un exemp
cionar el bot
Quan s’exe
cionar cap b
ET, que es la
una nova int
rporar a la
e” per que a
ple de Uploa
tó de Upload
ecuta el Uplo
botó, així s
a que ha pe
terfície com
Base de
aparegui
d.
d Image,
oad, s’ha
s’evitaran
ermès fer
mosta la
sufic
Plot
Inici
En el ca
Thumb,
cient per pod
. En aque
alment hi ha
as que es pug
serà el thu
der veure el p
est camp tro
a un límit de m
gi mes d’un a
umbnail del
plot. Es selec
obem una r
mida d’arxiu
32
Figura14
arxiu, l’usuar
arxiu, aprox
ccionarà de
restricció qu
a 50Kbytes.
ri haurà de te
ximadament
la mateixa m
ue es pot r
.
enir en comp
100 x 100 p
manera que s
reconfigurar
pte que tots
píxels. És u
s’ha fet amb
per l’admin
na mida
el camp
nistrador.
ja qu
man
Bas
de la
llista
En a
Valu
de a
disp
que
aque
opor
L’aplicac
ue si la imat
nera que al m
Els dem
e de Dades.
a Base de D
En els c
a, s’observar
aquest cas B
També e
ue. S’ha impl
afegir una n
ponible. D’aq
ja han estat
En els c
est camp de
rtunes, o inc
ció recomana
tge supera a
mostrar un re
més camps se
Les possible
ades.
camps Drop
ran les possi
B&W, Color y
es podrà ob
lementat d’a
nova opció,
uesta maner
introduïdes
camps Multi
e tots els p
lòs afegir-ne
a que la mid
questes dim
esultat, tots e
eran opciona
es opcions d
down, inicia
bles opcions
y Grayscale (
Figur
servar l’opc
questa mane
ja que pod
ra obliga a l’
anteriormen
select, es ve
lots. Es pod
e de nous. (fig
33
da de la imat
mensions, la p
els thumbs tin
als i es gene
dels camps M
lment aparei
s:
(figura15)
ra15: Drop Do
ció de afegir
era per força
dria ser que
’usuari a mir
nt
euran tants C
dran seleccio
gura 16)
ge sigui apro
pròpia aplica
nguin una m
raran depen
Multi select, y
ix el valor de
own
un nou valo
ar al usuari a
volgués po
rar la llista de
Check boxes
onar tots les
oximadamen
ació redimen
ida estàndar
ent dels cam
y Drop Down
e no selecte
or selecciona
a veure la llis
osar una op
e elements i
s, com opcio
s opcions qu
nt de 100x10
sionarà la im
rd.
mps que hi h
n, també s’ e
ed. Si es des
ant el valor A
sta de opcion
pció que ja
a no repetir
ons s’hagin t
ue l’usuari c
00 píxels,
matge de
agin a la
extrauran
splega la
Add New
ns abans
estigues
r opcions
trobat en
consideri
s’ex
als a
Uplo
haur
puja
a la
arxiu
un m
el se
un n
Un cop
xecuti un scri
arxius amb u
Si per q
oad, els arxi
rà informació
El plots
aran al servid
Base de Da
Abans d
us s’hauran g
move a la car
Per tal d
eu ID, (id)_n
A la bas
nou plot, es m
finalitzat el
ipt per introd
un ID únic, pe
ualsevol erro
ius que l’usu
ó perduda al
es pujaran a
dor dins la ca
des per cada
de que cada
guardat en u
rpeta destí, j
de que no hi
nomarxiu, on
se de dades
mirarà l’ últim
figu
formulari e
duir els nous
er tal de no t
or de la aplic
uari ha pujat
servidor.
al servidor d
arpeta de Th
a arxiu pujat
parella d’arx
una carpeta t
a que introd
hagin confli
n el id serà ú
apareix una
m ID, i s’incre
34
ura16: Add ne
es selecciona
s Plots a la B
tenir Plots am
cació, o de l’u
en el primer
ins la carpet
humbs. Un co
.
xius vaguin
temporal, a p
uirem canvis
ictes amb els
únic per a cad
a columna de
ementarà per
ew value
aria el botó
Base de Dad
mb un mateix
usuari no es
pas, s’elimin
ta de Pics. E
op fet el Uplo
a la seva pe
partir d’ aquí
s en el seu n
s noms, dav
da plot/thum
e id, llavors
rquè el nou p
de Upload
des, i al mate
x nom.
finalitza al 1
naran autom
El thumbnail
oad, es crea
ertinent carpe
se’ls hi canv
om per no cr
vant de cada
bnail.
cada cop qu
plot tingui un
Plot. Això f
eix temps, id
00% tot el p
màticament. A
(si s’ha esc
arà una nova
eta, primera
viarà el nom
rear un confl
plot es conc
ue es vulgui
de diferent.
farà que
dentificar
rocés de
Així no hi
ollit) , es
a entrada
ment els
i es farà
licte.
catenarà
introduir
3.3
canv
Dins
3. – Adm
Finalme
viar el admin
s la opció d’a
- Add
- Mod
ministrati
nt dins la op
nistrador de l
administració
User in Data
dify Data Bas
ion
pció de admin
a aplicació (f
figu
ó apareixen d
a Base
se
35
nistració, es
figura 18)
ura 18 : Admin
dos sub apar
poden veure
nistració
rtats
e les diferentts opcions quue podrà
3.3
dins
perm
mod
usua
base
pitja
.1. - Add
És una s
s la pàgina w
misos per im
Per exe
dificar. (figura
La prime
aris de HP.
A contin
e de dades.
Llavors
a el botó de A
d User in D
secció on es
web. Si l’usua
pedir l’accés
emple, potse
a 19)
era opció de
nuació del do
Normalment
es seleccion
Add User, pe
Data Base
s podrà dona
ari ja existeix
s de usuaris a
er es vol qu
f
el formulari e
omini, s’afeg
t sol ser el co
na els permis
er introduir l’
36
e
r d’alta a nou
, es podran m
a àrees que
ue un emple
figura 19: ad
esta omplerta
irà l’ identific
ognom i algu
sos a las se
usuari a la B
us usuaris, a
modificar els
no volem qu
eat pugui b
dd user
a amb “EME
cador de la p
una part del n
ccions que f
Base de Dade
afegint les àre
s seus drets.
ue tinguin acc
buscar plots,
EA\”, que es
persona que
nom.
formen part
es.
ees que tind
S’utilitzaran
cés.
, però no e
el domini de
e es vol afeg
de la Plot S
rà accés
aquests
els pugui
e tots els
ir dins la
uite, i es
privi
Al fin
Hi ha un
ilegis. (figura
nal de cada f
na opció “Sh
a 20)
fila hi ha un
how users”,
figu
boto per pod
37
que mostrar
ura20: llista d
der esborrar
rà una taula
d’usuaris
un usuari de
a amb tots e
e la llista si es
ls usuaris i
s desitges.
els seus
3.3
cam
altre
que
elim
s’ha
com
infor
entr
plen
Aba
sorti
asse
esbo
Hi h
podr
prot
volg
apar
indic
de
cam
impr
els p
Els c
.2 - Modif
Secció o
mp, y el tipus
es camps ja
compleixi aq
També
minar camp
agin afegit,
mpte que es
rmació de
ades que
nes en aque
ns de esb
irà un miss
egurar que
orrar.
han camps q
ran esborra
egits, encar
guéssim
reixeria un
cant la imp
esborrar-lo.
mps seran c
rescindibles
plots.
camps que h
fy Data B
on es podrà
s de dades q
creats, perq
quest requisi
es poden
ps que
tenint en
perdrà la
totes les
estiguin
est camp.
borrar-ho,
satge per
el volem
que no es
ar. Estan
a que es
esborrar,
missatge
possibilitat
Aquests
comuns e
per a tots
hi han actual
ase
introduir no
que contindr
uè sinó es c
it.
ment son aq
38
us camps a
rà. El nom d
crearia un co
quests 24, qu
a la Base de
del camp hau
nflicte. Per t
Figura
ue apareixen
e Dades, indi
urà de ser d
ant, s’ha imp
a21: Data Bas
a la figura 2
icant el nom
diferent als n
plementat un
se
21
m del nou
nom dels
na funció
39
En el primer formulari, es poden afegir nous camps. Al input de Column Name, indicarem
el nom del nou camp, en el cas que el camp tingui mes de una paraula, haurà d’anar entre
claudàtors “[camp compost]”.
Un cop introduït el nom, es seleccionarà el tipus de dada, “Data Type”.
- String: per introduir text
- Decimal: introduir números
- Date time: introducció de dates
- Drop_down, multi select: aquests dos camps podran tenir caràcters i números, ja
que la gràcia consisteix en anar creant nous elements, els quals siguin futures
opcions per emplenar dades de la nostre plot suite.
Finalment es seleccionarà el boto “Add New Column”, i s’actualitzarà a la part de la
esquerra, on esta la estructura de la nostre base de dades, que s’incrementarà amb el nou camp.
En el segon formulari es podran esborrar camps. Els camps en una tonalitat groga, no es
podran esborrar (esta programada una funció que ho impedeix). Aquests camps son els privats.
Qualsevol dels camps amb una tonalitat gris es podran esborrar, ja que son els que s’han anat
afegint. L’única cosa que s’ha de tenir en compte, es que es perdran les dades que s’hagin
omplert dins del camp que es vol esborrar.
Per esborrar el camps s’ha d’escriure o copiar el camp al input de “Delete field Name”,
de la mateixa manera que el primer formulari, tenint en compte que si es un nom compost haurà
d’anar entre claudàtors.
Si el camps que es volen esborrar no existeix, lògicament, no esborrarà res. Si existeix,
apareixerà un missatge de confirmació per esborrar-lo.
3.4
loca
de e
form
podr
Aqu
4 - Modi
Per acce
alitzat, es pitj
entrar en un n
En aque
mat taula (figu
Tot segu
rà afegir nou
est formulari
ify or de
edir a aques
arà el botó d
nou formular
esta nova pà
ura 22)
uit, trobem u
us valors, pe
i recollirà la i
elete a Pl
t formulari, p
de la darrera
ri per poder
àgina es pod
figu
un nou formu
er tal de am
informació q
40
lot
primer s’ha d
a columna (ta
variar o pos
drà observar
ura22: modifi
ulari (sembla
mpliar, modif
ue hi ha de l
de buscar el p
al i com he c
ar nova infor
r a la part su
icar plot
nt al de rece
ficar o elimin
a següent fo
plot que vole
comentat en
rmació del pl
uperior, la in
erca de plots
nar la inform
orma: (figura
em modificar
la secció 4.1
lot.
nformació de
s), però en e
mació actual
23 )
r. Un cop
1) per tal
el plot en
l qual es
del plot.
haur
ha d
Per mod
rem de canv
En el ca
disponibles.
F
dificar dades
viar el número
as de Drop D
Figura23: form
s, simplemen
o.
Down, prime
41
mulari modific
nt es canviem
er s’haurà de
car
m al formular
e desplegar l
ri. En el cas d
la llista per v
del camps n
veure quins
umèrics,
valors hi
Dow
desp
valo
esp
Fina
simp
Però
inter
S’observ
wn, el valor
plegar la llis
ors, per tant e
Llavors
ai per tal de
alment es po
En el c
plement s’ha
ò també es p
En el ca
ressaria canv
va millor en
que ens m
ta, i mirar e
es selecciona
a la part de
e posar el n
dria observa
camp de M
aurà de selec
pot crear un v
amp de Colo
viar-lo pel va
un exemple
marca es el
els altres valo
aria l’últim va
figu
e la dreta, e
nou valor qu
f
ar el nou valo
Multiselect, s
ccionar els C
valor nou de
or Space del
alor CMYK. (
42
(figura 24). E
Adobe Pho
ors possible
alor Add new
ura24: add ne
el la column
ue volem (fig
figura25: new
or per el cam
si es volgué
Check boxes
la següent m
l tipus Multi
figura 26)
En el camp A
otoshop. Si
s que trobem
w value.
ew value
na de Add N
gura 25)
value
mp Application
és canviar d
que interess
manera.
select, esta
Application q
es volgués
m. En aques
New Value
n.
de valor o
sin.
seleccionat
que es del tip
canviar s’ha
st cas no hi
apareixerà
afegir-ne d
el valor sRG
pus Drop
auria de
ha mes
un
de nous,
GB, però
botó
Tot s
CMY
podr
cop
Si es
del t
pose
un p
Llavors
ó Add New V
seguit apare
En aque
YK. També e
rà tenir mes
realitzats els
s selecciona
tipus, Estàs s
es aquesta p
plot sense vo
s’hauria d’om
Value.(figura
eixerà una no
est cas parti
es podrien se
d’un valor.
s canvis , s’a
a el boto de e
segur de que
prevenció, am
oler. (figura 2
figura26
mplir la case
27)
f
ova Check Bo
f
icular, es de
eleccionar e
Al afegir un
apradarà el b
esborrar el pl
e els vols esb
mb un simple
29)
43
: multiselect
ella de <Add
figura27: new
ox per poder
figura28: CM
esselecciona
ls dos a la v
nou valor, a
boto de modif
lot, sortirà un
borrar?, ja q
e click, es po
d new value>
w multiselect
r al seleccion
MYK
aria la opció
vegada, perq
aquests valo
ficar.
n missatge
ue sinó es
odria esborra
> amb el valo
nar(figura 28
sRGB, i es
què aquest ca
or apareixera
ar
Figu
or CMYK i p
8)
s marcaria l’o
amp es mult
an als formu
ura29: menú f
prémer el
opció de
ti select i
laris. Un
final
44
3.5 - Privilegis
S’ha implementat un procés per tal de no fer visibles totes les parts de la aplicació a
qualsevol usuari. Ja que interessa que certs usuaris no tinguin accés a determinades seccions.
S’explicarà el procés que es fa per mostrar el contingut de la pàgina a un usuari que
vulgui accedir a zones de la Plot Suite. Cada pàgina que es vulgui afegir algun tipus de restricció
cap als usuaris, haurà de tenir aquest codi al principi de pàgina. Aquest codi estarà programat en
ASP, de manera que s’executarà al servidor, abans que li arribin les dades al client.
Primer de tot s’haurà de saber quin usuari esta connectat , això es fa gràcies a la
autentificació integrada de Windows, i una funció en ASP que permet identificar l’usuari
connectat. Un cop reconegut l’ usuari, es consultarà a la Base de Dades , a la taula on estan
emmagatzemats els usuaris amb els seus corresponents permisos.
Depenent dels permisos que tingui, se li mostrarà la pàgina sol·licitada. Si no tingués
accés, sortiria un missatge per pantalla dient-li que no te accés a la zona i automàticament
tornem a la pàgina anterior.
45
4. - Conclusions i resultats aconseguits
El problema es plantejava al principi era que abans de l’existència de la Plot Suite es
disposava d’un nombre molt elevat de plots, però no tenien una estructura per poder buscar-los
d’una manera eficient. Per tant, no era una feina fàcil i ràpida intentar buscar un plot amb unes
certes especificacions, ja que no estaven catalogats amb molt de detall i no hi havia una única
font d’origen.
Aquest problema s’ha resolt gracies a la Plot Suite, ja que tenim físicament tots els plots
en un mateix directori dins del servidor. Però amb l’avantatge de tenir una interfície web per
poder fer els tràmits de recerca de plots, o incorporar-ne de nous d’una manera fàcil. A més,
quan busquem els plots per determinades característiques el resultat de la recerca que ens
retorna l’aplicació es molt intuïtiva. Ens mostra en primer terme una petita imatge del plot, per
guiar a l’usuari de quin tipus de plot es tracte. A les columnes següent estan especificat amb més
detall totes les seves característiques, com mida en Mb, dimensions en cm, el tipus de color, el
tipus de plot, el contingut del plot...
Actualment hi han mes de 1500 plots emmagatzemats a la Base de Dades, que en total
ocupen un 35 GigaBytes. Per cada plot que es puja a la Base de Dades, s’han d’omplir el
formulari amb la seva corresponent informació. El problema és que aquest procés es una mica
lent, ja que els arxius son bastant diferents i no hi ha una manera rapida de omplir els camps
automàticament i s’ha de fer de manera manual.
Els arxius que hi ha a la Base de Dades son de: Adobe Acrobat, Adobe Photoshop,
ArcGis, AutoCAD, Catia, Corel Draw, FreeHand, Illustrator, InDesign, Power Point, QuarkXpress.
Però també ni han d’altres que no tenen una única aplicació com ara els TIFF, JPG, PLT, PRN...
De moment es pot observar que es una aplicació bastant robusta, l’únic punt dèbil que hi
havia era la limitació del Upload, per ha estat solucionada amb una restricció mes que suficient
(aproximadament 2 Gb). Actualment no hi ha cap Plot amb una mida superior a 1 Gb, per tant
tots els plots han estat introduïts a la Base de Dades correctament sense cap excepció.
46
En una Base de Dades es important tenir una aplicació robusta, i que tingui molta
informació emmagatzemada, per tal de tenir un catàleg de plots que el puguin utilitzar en
qualsevol àmbit.
S’ha intentat fer una aplicació que suporti la concurrència, encara que no serà
estrictament necessària, ja que es una aplicació que no serà executada normalment per més
d’un usuari a la vegada. A l’ hora de buscar plots no hi haurà cap problema amb la concurrència.
Els punts crítics serà quan es vulgui fes més d’un UPLOAD o DOWNLOAD al mateix temps.
S’han fet proves simultànies amb 3 usuaris afegint plots, a la Base de Dades, al mateix
temps que es baixaven uns altres plots.
La concurrència funciona bé, ja que s’ha previst que a l’hora diferents usuaris puguin
pujar diferents arxius. Els arxius pujats al servidor, son tractats en subcarpetes diferents, que
son creades per l’aplicació amb el nom del usuari que la estigui executant. Per tant quant un
usuari vulgui fer un UPLOAD o DOWNLOAD , es crearà una carpeta en el servidor de la
aplicació amb el nom de l’usuari connectat. Un cop feta l’acció, la carpeta amb els corresponents
arxius serà eliminada.
Per altra banda, s’utilitza una llibreria per tal de fer zips al servidor que permet la
concurrència a l’ hora de generar els zips. Aquesta llibreria es utilitzada per una funció d’ASP que
crearà els zips corresponents.
Temps de Recerca
El temps de recerca es realment molt ràpid. Hi ha mes de 1500 plots a la base de dades,
i el temps de recerca es pràcticament en temps real. Per tal de ajudar a carregar la pàgina, s’ha
utilitzat una paginació a l’hora de mostrar els resultats per pantalla. De manera que un cop
retorna el resultat de la recerca, apareixeran 20 resultats per pantalla. Així nomes s’hauran de
carregar (en el pitjor dels casos) 20 thumbs de com a màxim 50Kb, és a dir 1Mb de imatges.
Aquesta es una millora que s’ha implementat respecte a la primera versió del programa i encara
optimitza la creació de la pàgina web que mostrarà els resultats trobats.
47
Temps de Upload
El temps de Upload vindrà determinat per el pes del arxiu o arxius que es vulguin
introduir a la Base de Dades. La prova mes gran que s’ha fet es un conjunt de plots que el seu
mida era superior a 1.6 Gb. El temps de Upload en aquella prova va ser aproximadament de 20
minuts. Ja que l’aplicació corre sota una intranet i es bastant mes àgil que una Internet. Per tant
2 Gb de Upload com a màxim és un bon límit, ja que tampoc interessa tenir temps de upload
gaire gran i la mida del plot més gran no supera els 1000Mb. Aquesta és una altre millora
respecta a la primera versió del programa, ja que inicialment el màxim estava en 300 MB, i
aquest fet limitava bastant la utilitat de l’eina.
Temps de Download
El temps de Download s’hauria de separar en dos parts. La primera consisteix en la
creació del zip dels arxius seleccionats. Aquest procés tindrà un temps constant al seu mida
total, és a dir, el temps que tardaria qualsevol compressor a fer un zip.
La segona part és la de baixar el arxiu al ordinador del client. Aquest és un procés que
dependrà de la connexió. Però tal i com s’ha comentat anteriorment, l’aplicació està en una
intranet.
Resultats Obtinguts
A part de tenir una aplicació robusta i completament testejada, era interessant veure els
resultats amb el seu rendiment.
Primer es va fer un test amb el rendiment de baixar plots de la aplicació. La gràfica que
es troba a continuació reflexa els diferents temps que es van obtenir al fer un download de plots
de diferents mides, des de 1Mb fins a 2Gb.
fins
que
proc
aque
enda
Suit
un p
dade
mida
qual
Cal acla
que l’usuari
triga en cre
cés és durà a
esta aplicaci
Aquesta
avant es co
e.
Es pot o
plot de 1Mb
es alhora de
Per tant
a del plot. É
lsevol plot.
arir que aque
el te disponi
ar els zips d
a terme al pr
ó.
a gràfica s’ha
mentaran el
observar que
com si es b
e fer el downl
, al tenir una
s a dir, guar
esta gràfica m
ble. Abans d
dels plots se
ropi servidor
a obtingut a p
s resultats o
e tenim una t
baixa un de
oad per un u
a tassa de tra
rdarà una pr
48
mesura el te
d’aquest proc
leccionats. P
r, i seria un t
partir de la in
obtinguts am
assa de tran
2Gb. El valo
usuari en con
ansferència c
roporció entr
mps des de
cés, hi ha un
Però no han
temps igual p
nteracció d’u
mb més d’un
nsferència de
or aproximat
ncret es de 1
constant, tind
re la mida de
que es com
n temps d’esp
estat consid
per a qualse
n sol usuari
usuari inter
e dades cons
de la tassa
1.1Mb/s.
drem una grà
el plot i el te
mença a baixa
pera que es
derats, ja que
evol usuari qu
amb l’aplica
ractuant amb
stant, tant si
a de transferè
àfica lineal s
emps que tri
a el plot,
el temps
e aquest
ue utilitzi
ació. Més
b la Plot
es baixa
ència de
egons la
ga per a
simu
usua
prov
dade
velo
Uplo
inclu
arxiu
calc
pant
plots
inde
supe
que
Un cop
ultàniament.
ari, es a dir,
ves i les tass
es vindrà de
ocitat CPU.
Un cop
oad. Per fer e
usió d’un o v
Un cop
us, i un cop
cula el temps
talla el següe
s.
Tal com
ependentmen
erior a 1Mb/
fa que el tem
finalitzat aqu
Es va obse
el coll d’amp
ses de transf
eterminada
comentats e
el Upload, ho
aris arxius.
es prem el b
analitzats es
s que hi ha
ent pas del f
m passava e
nt de la mid
/s i la de Up
mps total de
uest test, es
ervar que la
polla es el pr
ferència de
per la capa
els resultats d
o fem mitjanç
botó de envia
s procedeix a
a entre que
formulari, qu
n el Downlo
da del plot. L
pload es apr
transferència
49
va tornar a
a tassa de t
ropi ordinado
cada usuari
acitat de la
del Downloa
çant un form
ar, primer s’a
amb l’enviam
s’envia la p
e es el de om
oad, la veloc
L’única difer
roximadamen
a sigui lleuge
repetir però
transferència
or de cada or
eren superi
maquina: m
d, era intere
mulari web, el
analitzen les
ment. La gràf
petició de U
mplir amb da
citat de tran
rencia és qu
nt de 0.8Mb
erament sup
ò amb varis u
a del downlo
rdinador clie
ors a 1Mb/s
memòria RA
ssant compr
qual l’únic c
dades del fo
fica que es m
pload, fins q
ades els cam
sferència de
ue la velocita
/s, que es ll
perior.
usuaris baixa
oad depèn
nt. Ja que es
. La transfer
M, velocitat
rovar els res
camp que ten
ormulari, és
mostra a con
que ens mo
mps d’informa
e dades es
at de Down
leugerament
ant plots
de cada
s van fer
ència de
de HD,
ultats de
nim es la
a dir, els
ntinuació
ostra per
ació dels
constant
load era
t inferior,
50
Un cop finalitzat el test amb un sol usuari, també es va testejar fent Uploads per varis
usuaris a la vegada. Tal i com passava amb el Download, el coll de botella al trobem en el
ordinador client de cada usuari. Cada ordinador, segons la seva capacitat, tindrà una velocitat de
transmissió depenent dels seus components Hardware.
Millores a implementar
Totes les aplicacions tenen sempre coses a millorar per intentar fer un software més
perfeccionista. Actualment el projecte no esta del tot tancat, ja que eventualment es van
incorporant noves millores. A continuació es comenten les possibles millores que
s’implementaran el més aviat possible.
Un dels problemes que es pot observar es que al navegar per les diferents pàgines web
que consta l’aplicació a vegades tarda 1 o 2 segons com a màxim. Aquest fet es degut a que es
fan unes crides per incloure algun tipus de font, les quals no faria falta, i encara agilitzaria més la
aplicació.
Per altre banda, també es podria millorar l’acció de fer un Upload de plots. Ja que
actualment es fa en 2 passos. Un primer per pujar els plots, i l’altre per omplir les característiques
i adjuntar un thumbnail. Tal i com està programat ara, està d’una forma robusta, contemplant els
casos en que no es finalitza correctament el procés, o si es tanques la finestra. Però seria
interessant fer-ho tot en una operació perquè d’aquesta forma farà totes les accions de cop, fent
l’aplicació encara més robusta del que es ara.
51
5 .– Bibliografia
- Llibre per HTML
Domine HTML y DHTML Lopez Quijado,J Editorial Ra-ma
- Llibre per Javascript
Professional Javascript for web developers Zakas, Nicholas C. Editorial WROX/WILEY
- www.w3schools.com
Exemples pràctics d’ASP
- http://msdn2.microsoft.com/es-es/default.aspx
Exemples pràctics de ASP i ASP.NET
- Llibre SQL Server
SQL Server 2003
Francisco Charte Ojeda Editorial Anaya Multimedia
52
53
Resum (català, castellà i angles)
CATALÀ:
Una Plot Suite és una aplicació web que permet localitzar plots d’una Base de Dades a
partir de formularis. S’obtindran taules on apareixeran els plots amb les seves característiques i
es podrà obtenir copies dels plots sol·licitats. Gracies al seu disseny es podran afegir nous plots
a la Base de Dades i fins i tot modificar l’estructura d’una manera molt intuïtiva.
CASTELLANO:
Una Plot Suite es una aplicacion web que permite localizar plots de una Base de Datos a
partir de formularios. Se obtienen tablas donde aparecerán los plots con sus características y se
podrán obtener copias de los plots solicitados. Gracias a su diseño, se podran añadir nuevos
plots a la Base de Datos y hasta se podrá modificar la estructura de una manera muy intuïtiva.
ENGLISH:
A Plot Suite is a web application that it allows to locate plots of a Database from forms.
Tables are obtained where the plots will appear with his characteristics and there will be able to
be obtained copies of the requested plots. Thanks to an easy design, can it add new plots to the
Database and even it will be possible modify the structure of application with intuitive way.