scieee Science in your language
[ca] (orig)

Desenvolupament de cua d'espera de peticions web

Author: Rodríguez Martín, Marc
Publisher: Universitat Politècnica de Catalunya
Year: 2025
Source: https://upcommons.upc.edu/bitstream/2117/428639/2/193336.pdf
id193336


DESENVOLUPAMENT DE CUA D'ESPERA DE
PETICIONS WEB
MARC RODRIGUEZ MARTIN
Di ec o /a
VÍCTORFERRUSOLAIJORDÀ(CONSORCIPERALANORMALITZACIOLINGUISTICA.CCT.)
Ponen :CARLESFARRETOST(Depa amen d'Enginye iadeSe eisiSis emesd'In o mació)
Ti ulació
G auenEnginye iaIn o mà ica(Enginye iadelSo wa e)
Memò ia del eball de i de g au
Facul a d'In o mà ica de Ba celona (FIB)
Uni e si a Poli ècnica de Ca alunya (UPC) - Ba celonaTech
23/01/2025

1. Con ex ......................................................................................................................................................3
1.1 In oducció.......................................................................................................................................3
1.2 Definicions.......................................................................................................................................3
1.3 P oblema a esold e.......................................................................................................................4
1.4 Ac o s implica s..............................................................................................................................4
2. Jus ificació............................................................................................................................................... 6
2.1 Es udis p e is..................................................................................................................................6
2.2 Jus ificació......................................................................................................................................7
3. Abas ..........................................................................................................................................................9
3.1 Objec ius i subobjec ius................................................................................................................9
3.2 Requisi s.......................................................................................................................................... 9
3.3 Obs acles i iscos po encials.....................................................................................................10
4. Me odologia i igo ................................................................................................................................12
4.1 Me odología..................................................................................................................................12
4.2 Validació........................................................................................................................................ 14
5. Planificació inicial..................................................................................................................................15
5.1 Desc ipció de les asques.......................................................................................................... 15
5.1.1 In oducció.................................................................................................................................15
5.1.2 Tasques......................................................................................................................................15
5.1.3 Recu sos.................................................................................................................................... 17
5.2 Taula i Gan ..................................................................................................................................19
5.2.1 Taula de asques.......................................................................................................................19
5.2.2 Diag ama de Gan ................................................................................................................... 20
5.3 Ges ió del isc: Plans al e na ius i obs acles..........................................................................21
5.3.1 In oducció.................................................................................................................................21
5.3.2 Inexpe iència en les ecnologies necessà ies.....................................................................21
5.3.3 Calenda i anca ........................................................................................................................22
5.4 P essupos ....................................................................................................................................23
5.4.1 Iden ificació dels cos os......................................................................................................... 23
5.4.2 Cos os de pe sonal pe ac i i a ............................................................................................23
5.4.3 Cos os gene als........................................................................................................................25
5.4.4 Con ingències i imp e is os................................................................................................... 26
5.4.5 Con ol de ges ió.......................................................................................................................27
6. In o me de sos enibili a ......................................................................................................................28
6.1 Au oa aluació...............................................................................................................................28
6.2 Dimensió econòmica.................................................................................................................. 29
6.3 Dimensió Ambien al....................................................................................................................29
6.4 Dimensió Social............................................................................................................................30
7. Cua d’espe a de pe icions web...........................................................................................................31
7.1 In oducció.................................................................................................................................... 31
7.2 Vis a lógica....................................................................................................................................31
7.3 A qui ec u a...................................................................................................................................34
7.4 Se eis AWS..................................................................................................................................35
7.5 Plan illes Amazon Cloud o ma ion...........................................................................................38
7.6 Documen ació API pública.........................................................................................................44
7.7 API p i ada....................................................................................................................................46
7.8 Diag ames de seqüència............................................................................................................48
7.9 Modificacions i implemen ació.................................................................................................52
7.10 P o es i alidació.......................................................................................................................59
7.11 Possibles millo es......................................................................................................................60
7.12 Conclusió.................................................................................................................................... 60
8. Aplicació Web........................................................................................................................................ 60
8.1 In oducció.................................................................................................................................... 60
8.2 A qui ec u a...................................................................................................................................61
8.3 Disseny ex e n..............................................................................................................................61
8.4 Disseny in e n...............................................................................................................................63
11.5 P o es i alidació.......................................................................................................................64
8.6 Conclusió.......................................................................................................................................65
9. Iden ificació de lleis i egulacions......................................................................................................66
10. Resul a final del p ojec e..................................................................................................................67
10.1 Planificació final.........................................................................................................................67
10.2 P essupos final.........................................................................................................................68
11. Conclusions.........................................................................................................................................70
11.1 Reflexió........................................................................................................................................70
11.2 Compe encies............................................................................................................................70
12. Re e ències.......................................................................................................................................... 72
1
1. Con ex
1.1 In oducció
Aques p ojec e, “Desen olupamen d’una cua d’espe a de pe icions web”, es ac a del eball
de fi de g au de la Facul a d’In o mà ica de Ba celona (FIB). Aques p ojec e é com a objec iu
posa en p àc ica els coneixemen s i habili a s adqui ides du an la ca e a, i específicamen
l’especiali a escollida, en aques cas la d’enginye ia del so wa e.
Aques eball es à e en modali a B, i pe an en col·labo ació amb una emp esa ex e na.
Aques a emp esa és el Conso ci pe a la No mali zació Lingüís ica (CPNL), una ins i ució
o mada pe la Gene ali a de Ca alunya que é com a objec iu acili a i p omou e l’ús del
ca alà a la població adul a de Ca alunya mi jançan cu sos ad eça s, an a la ciu adania en
gene al, com a col·lec ius conc e s. A a és d’aques s cu sos es omen a l’ensenyamen , la
igual a d’opo uni a s, la cohesió social i l’ús p o essional, disponibili a i o e a en ca alà pe
p omou e-hi l’ús i la quali a de la llengua ca alana.
A aó de la g an quan i a d’usua is, en e alumnes i p o esso s, que é el CPNL, és impo an
eni un sis ema que ges ioni de mane a eficien aques olum d’usua is. Aques p ojec e
ac a de soluciona aques p oblema amb una cua d’espe a de pe icions web que ac uï quan
un g an olum d’usua is ulguin accedi simul àniamen a un ma eix se ei. P o egin els
sis emes i millo an l’expe iència d’usua i amb la in o mació necessà ia.
1.2 Definicions
● CNL: Cen e de No mali zació Lingüís ica. Els CNL són cen es d'ensenyamen de
ca alà que poden engloba al es cen es. Sol ha e -hi només un pe coma ca.
● SLC: Se ei Local de Ca alà. Els SLC són pun s de se ei d’ensenyamen de ca alà que
són a dins d’una xa xa d’un CNL.
● OC: Oficina de Ca alà. Els OC són, com els SLC, pun s de se ei d’ensenyamen de
ca alà que o men pa d’una xa xa d’un CNL. Aques es oficines enen un amany
meno que els SLC.
2
● ADP: Adminis ació Digi al i P ocessos. Fa e e ència a la uni a dins del Se ei TIC del
CPNL. Aques a uni a s'enca ega d'en end e les necessi a s del negoci, conèixe els
seus p ocessos i es a ègies i de adui -les en solucions ecnològiques òp imes i
eficien s.
1.3 P oblema a esold e
El Conso ci pe a la No mali zació Lingüís ica[1] ac ualmen é una es uc u a de 22 cen es de
no mali zació lingüís ica i disposa de més de 140 pun s de se ei en e els di e sos SLC i OC.
Això es adueix en mile s d’usua is que han de ges iona els di e en s se eis in o mà ics del
CPNL a l’ho a de e els di e sos àmi s com insc ipcions, p o es de ni ell i di e en s ipus de
sol·lici uds.
Tenin en comp e el g an olum d’usua is que poden eni els di e en s se eis de l’emp esa en
un momen de e mina , és impo an eni un sis ema que eguli el flux dels usua is de
mane a o denada pe , d’una banda, p o egi i dimensiona els sis emes, i pe l’al a banda
ga an i una bona expe iència d’usua i, donan suficien in o mació i e i an caigudes del
se ei.
D’aques a mane a, la solució p e én dona aques es ga an ies amb una cua d’espe a i ual
que edi igeixi als usua is a una al a pàgina on es iguin in o ma s de la se a posició, el seu
emps d’espe a ap oxima i la se a posició a la cua.
1.4 Ac o s implica s
● T eballado s: To s els eballado s del CPNL que poden accedi a qualse ol àmi
poden passa pe alguna cua d’espe a en algun momen de e mina . Poden se
p o esso s, di ec ius, adminis a ius…
● Alumnes: Els alumnes del CPNL poden passa pe una cua d’espe a en algun momen
dels seus àmi s.
● Uni a ADP del Conso ci: La uni a dels Se eis TIC del CPNL més in e essada en
aques p ojec e, que un cop finali za , el pod à in eg a el pod à in eg a amb les se es
es uc u es.
3

● Desen olupado : L’au o del ma eix p ojec e.
4
2. Jus ificació
2.1 Es udis p e is
Ac ualmen , el sis ema u ili za al Conso ci pe ges iona el flux de pe icions web és Queue-i [2],
una emp esa que o e eix una solució pe con ola el àfic al eu lloc web du an
esde enimen s de g an demanda.
El seu se ei p incipal és una cua i ual que s’implemen a pe e i a que un lloc web col·lapsi
quan in en en accedi un g an nomb e d’usua is simul àniamen . Aques se ei es po
desplega du an un pe íode de emps defini on es p e eu un g an olum d’usua is, com pe
exemple, l’obe u a d’insc ipcions.
El se ei de Queue-i col·loca els usua is a una cua i ual de mane a que accedeixen al lloc
web de mane a o denada i esglaonada, e i an una sob ecà ega del sis ema i millo an
l'expe iència d’usua i, p opo cionan in o mació com el seu lloc a la cua i el emps d’espe a
ap oxima .
Les p incipals ca ac e ís iques que o e eix queue-i són:
● Cua i ual: Quan el àfic supe a la capaci a del lloc, els usua is són edi igi s a una
cua i ual. Els usua is eben una posició en la cua, emps ap oxima d’espe a i al es
in o macions pe es a in o ma s en o momen .
● Dis ibució jus a: Queue-i s’assegu a que l’en ada al lloc web sigui jus a, ges ionan
l’accés pe o d e d’a ibada i així e i an que bo s o usua is amb connexions més
àpides accedeixin injus amen .
● Moni o a ge en emps eal: Els adminis ado s poden con ola el ànsi , ajus a
di e en s pa àme es, eu e es adís iques en emps eals… To això, acili a una ges ió
més eficien del lloc web.
● In eg ació àcil: Es po in eg a àcilmen mi jançan els ecu sos p opo ciona s sense
necessi a de ees uc u a la in aes uc u a exis en amb APIs i documen ació pe
di e en s llengua ges com Ja aSc ip o .NET.
5
● Solució escalable: És capaç d’adap a -se a un g an nomb e d’usua is, des dels mile s,
fins als milions.
Figu a 1: Exemple de cua d’espe a de Queue-i . Fon : [2]
2.2 Jus ificació
Com s’ha is a l’apa a an e io , el se ei que p opo ciona Queue-i és mol a ac iu i eficien .
El p incipal p oblema del se ei de Queue-i és el p eu. La llicència anual de Queue-i més
ba a a cos a p op dels 20.000 €[3] i cob eix un màxim d’un milió d’usua is edi igi s a una cua
d’espe a al mes.
És pe aques mo iu que desen olupa una cua p òpia que aci una unció simila , sense
a iba a o es les ca ac e ís iques que o e eix Queue-i , és un p ojec e que ind ia un impac e
econòmicamen posi iu al CPNL.
Aques a cua se ia desen olupada amb ecnologia Amazon Web Se ices, seguin la se a
implemen ació inicial[4]. Amazon dona una es imació dels següen s p eus[5] de la se a
implemen ació d’una cua d’espe a:
● Cos dia i sense cap esde enimen : $11
6
● Cos d’un esde enimen amb 50.000 usua is a una cua d’espe a du an 2 ho es: $94
● Cos d’un esde enimen amb 100.000 usua is a una cua d’espe a du an 2 ho es:
$348
7
5. Planificació inicial
5.1 Desc ipció de les asques
5.1.1 In oducció
La du ació d’aques p ojec e és d’ap oximadamen 4 mesos. Des del 19 de se emb e de 2024
fins al 17 de gene de 2025.
Les asques es an di idides en 3 g ups: Ges ió del p ojec e, desen olupamen i documen ació
i comunicació. Dins de l’apa a de desen olupamen s’han ag upa les asques en blocs.
Pe cada asca s’ha assigna un codi i la quan i a d’ho es es imades pe acili a la
planificació del p ojec e, a més d’una explicació de cada asca.
5.1.2 Tasques
➔ Ges ió de p ojec e:
➔ GP1 - Con ex uali zació i abas : S’elabo a un documen que con ex uali za i
desc iu l’abas del p ojec e (20 ho es).
➔ GP2 - Planificació: S’elabo a un documen que desc iu les asques del
p ojec e, les ho es dedicades, els ecu sos i la ges ió de iscos (20 ho es).
➔ GP3 - P essupos i sos enibili a : S’elabo a un documen amb l’es imació del
p essupos del p ojec e i una pa inicial de l’in o me de sos enibili a (20
ho es).
➔ GP4 - In eg ació final del documen : S’elabo a un documen que in eg a i
millo a a a és del eedback els con ingu s de o es les pa s de la ges ió del
p ojec e (20 ho es).
● Desen olupamen :
14

I - Incepció:
➔ I1 - P epa ació de l’en o n: Desca ega o s els p og ames necessa is
pe a la ges ió, disseny i p og amació del p ojec e (5 ho es).
➔ I2 - De e mina la cà ega del sis ema: De e mina la mane a de
mesu a la cà ega al sis ema pe configu a la cua d’espe a (15 ho es).
EP - C eació en o n de p o es
➔ EP1 - Backend: C ea una backend pe l’en o n de p o es (20 ho es).
➔ EP2 - F on end: C ea un on end pe l’en o n de p o es (20 ho es).
➔ EP3 - Base de dades: C ea una base de dades pe l’en o n de p o es
(10 ho es).
CA - Cua AWS[8]
➔ CA1 - Es udia a qui ec u a: Es udia l’a qui ec u a, p opo cionada pe
AWS, pe la cua d’espe a i ual (20 ho es).
➔ CA2 - Desplega cua de p o es: Configu a i desplega la cua de
p o es, p opo cionada pe AWS, a l’en o n de p o es pe amilia i za -se
amb el seu uncionamen (20 ho es).
➔ CA3 - Desplega s ack p incipal: Configu a i desplega el s ack
p incipal de la solució a AWS CloudFo ma ion. Reque i pe la
uncionali a p incipal de la cua (20 ho es).
➔ CA4 - Desplega s ack d’au o i zacions: Configu a i desplega el s ack
d’au o i zacions a AWS Cloud o ma ion. Dissenya pe e ifica els
okens assigna s a la cua d’espe a (15 ho es).
➔ CA5 - Desplega OpenID s ack: Configu a i desplega l’OpenID s ack a
AWS CloudFo ma ion. Pe assegu a -nos de la iden i a dels usua is i
augmen a la segu e a al nos e lloc web (15 ho es).
15
➔ CA6 - Desplega s ack d'es a ègia d’en ada: Configu a i desplega el
s ack d'es a ègia d’en ada. Pe de e mina l'es a ègia d’en ada dels
usua is a la cua i configu a la se a capaci a (15 ho es).
➔ CA7 - Cus omi zació de la pàgina d’espe a: Pe sonali za l’es il isual
de la cua d’espe a pe compa i un aspec e uni o me amb el lloc web
(10 ho es).
● Documen ació i comunicació:
➔ DC1 - Seguimen : S’apun en els esde enimen s que es agin eali zan pe al
de po a un seguimen i inclou e-ho a la documen ació. Aques a asca es
eali za à con ínuamen i és pe això que no é una du ada específica.
➔ DC2 - Redacció de memò ia i epàs: Es dedica à emps a l’elabo ació de la
documen ació ela i a al desen olupamen i millo an les pa s p è iamen
esc i es (70 ho es).
➔ DC3 - Comunicació: Es du an a e me eunions amb el u o del p ojec e pe
e un seguimen del p ojec e i esold e dub es (20 ho es).
5.1.3 Recu sos
Recu sos humans:
● [CP] Cap del p ojec e
● [AS] Analis a de So wa e
● [DS] Desen olupado de So wa e
● [DU] Dissenyado UI/UX
● [T] Tes e
● [PP] Ponen del p ojec e
● [TE] Tu o de l’emp esa
● [CADP] Cap de la uni a ADP de l’emp esa
16
● [TGEP] Tu o de GEP
Recu sos ísics:
Se an necessa is pe a o es les asques del p ojec e.
● Espai de eball
● O dinado po à il
● Ra olí
Recu sos de so wa e:
● [VSC] Visual S udio Code
● [GIT] Gi hub
● [GW] Google Wo kspace
● [GC] Google Ch ome
● [AWS] Amazon Web Se ices
● [SQLS] SQL Se e
● [TA] Taiga
17
5.2 Taula i Gan
5.2.1 Taula de asques
Codi
Tasca
Du ació (h)
Dependències
Recu sos
GP
Ges ió del p ojec e
80
-
GP1
Con ex uali zació i abas
20
-
CP, TGEP, GW, GC
GP2
Planificació
20
GP1
CP, GW, GC
GP3
P essupos i sos enibili a
20
GP2
CP, GW, GC
GP4
In eg ació final del documen
20
GP3
CP, GW, GC
I
Incepció
20
-
I1
P epa ació de l’en o n
5
-
DS, GC, VSC, GIT, AWS
I2
De e mina la cà ega del sis ema
15
-
AS, GW, GC
EP
C eació en o n de p o es
50
-
EP1
Backend
20
I1
DS, GC, VSC, GIT
EP2
F on end
20
I1
DS, GC, VSC, GIT
EP3
Base de dades
10
EP1
DS, GC, VSC, GIT, PSQL
CA
Cua AWS
115
-
CA1
Es udia a qui ec u a
20
-
AS, GC
CA2
Desplega cua de p o es
20
I, EP, CA1
DS, T, GC, VSC, AWS
CA3
Desplega s ack p incipal
20
CA2
DS, T, GC, VSC, GIT, AWS
CA4
Desplega s ack d’au o i zacions
15
CA3
DS, T, GC, VSC, GIT, AWS
CA5
Desplega OpenID s ack
15
CA4
DS, T, GC, VSC, GIT, AWS
CA6
Desplega s ack d'es a ègia d’en ada
15
CA5
DS, T, GC, VSC, GIT, AWS
CA7
Cus omi zació de la pàgina d’espe a
10
CA3
DU, T, GC, VSC, GIT, AWS
DC
Documen ació i comunicació
90
DC1
Seguimen
-
-
CP, GW, TA
DC2
Redacció de memò ia i epàs
70
-
CP, TE, CAPD, TGEP, GW
DC3
Comunicació
20
-
CP, TE, CAPD, TGEP, GW
To al
355
Taula 1: Ho es de dedicació, dependències i ecu sos pe a cada asca. Fon : Elabo ació p òpia
18
5.2.2 Diag ama de Gan
Pe e el diag ama de Gan s’ha ingu en comp e l’inici del p ojec e (19 de se emb e), el final del p ojec e (17 de gene ) i s’ha decidi defini una
mi jana de 4 ho es dià ies, mi ja jo nada, de dilluns a dissab e. A iban a les 24 ho es de dedicació se manals.
Pe eali za aques diag ama s’ha u ili za el so wa e Gan P ojec [9].
Figu a 3: Diag ama de Gan . Fon : Elabo ació p òpia.
19

5.3 Ges ió del isc: Plans al e na ius i obs acles
5.3.1 In oducció
Com ja s’ha esmen a an e io men , un p ojec e com aques no es à exemp de iscos i
obs acles que puguin dificul a la se a p og essió. A con inuació s’ha c ea una aula amb els
possibles iscos que ens podem oba , la se a p obabili a i la quan i a d’ho es ap oximades
que poden eque i .
Risc
P obabili a
Ho es ap oximades
Inexpe iència en les
ecnologies necessà ies
Al a
40
Calenda i anca
Mi ja
20
E o s d’implemen ació
Mi ja
30
Taula 2: P obabili a i ho es ap oximades pe cada isc. Fon : Elabo ació p òpia
5.3.2 Inexpe iència en les ecnologies necessà ies
En comença aques p ojec e, no es é expe iència en les ecnologies que s’u ili za an,
pa icula men Amazon Web Se ices. S’han a egi asques pe es udia i ap end e aques es
ecnologies, pe ò és p obable que la poca expe iència pugui enda e i el desen olupamen del
p ojec e.
Les asques a ec ades d’aques isc són p incipalmen les que enen a eu e amb la cua (CA).
El pla al e na iu pe aques isc se à dedica -hi més ho es a l’es udi de les ecnologies
mencionades. Amazon Web Se ices, al se una pla a o ma mol popula pe
desen olupado s i u ili zada mundialmen , pe an es a à ús de la g an quan i a de
documen ació i cu sos online g a ui s pe esold e els dub es i p oblemes que es poden
a iba a ind e i com a conseqüència, enda e i les al es asques.
20
5.3.3 Calenda i anca
Aques p ojec e é una da a d’en ega definida i, pe an , és una possibili a que no es pugui
comple a en el emps dona .
Aques isc a ec a a o es les asques, ja que, si s’enda e eix el p og és d’alguna asca, les
al es asques ambé s’enda e i an com a conseqüència. Doncs, com a pla al e na iu
d’aques isc, es po a à un seguimen de les asques compa a i amen amb el diag ama de
Gan que s’ha planifica p è iamen . Si s’acaba de ec an un enda e imen , es p ocu a à de
eballa més ho es a la se mana pe al de po a el p ojec e al dia. Com a úl im ecu s, en
cas que enca a dedican -hi més ho es no es puguin a iba a comple a o es les asques del
p ojec e, es e alla à l’abas del p ojec e, es an -li les asques de pe sonali zació isual (EP2,
CA7) al no a ec a al uncionamen de la cua i les asques dels s acks que no enen un
compo amen c í ic dins la cua (CA4, CA5).
5.3.4 E o s d’implemen ació
Un p oblema comú a la p og amació i el desen olupamen són els e o s d’implemen ació.
Aques és un possible isc que po enda e i el p og és del p ojec e. Especialmen , quan es a
ús de no es ecnologies en les quals no es enen expe iència. Pe an , se à impo an es eja
el codi so in i e ús del con ol de e sions de Gi pe minimi za l’impac e d’aques s e o s.
Aques isc po a ec a a o es les asques de desen olupamen (EP1-3, CA2-7). Da an
d’aques s e o s d’implemen ació s’hau an de dedica ine i ablemen més ho es se manals
pe comple a les asques a ec ades a emps.
21
5.4 P essupos
5.4.1 Iden ificació dels cos os
Un cop planifica el p ojec e, definin les asques i el calenda i a segui , es con inua amb
l’elabo ació del p essupos .
El p ime pas pe calcula el cos o al del p ojec e se à de e mina el cos o al del di e en s
ols del p ojec e. Les es imacions del sala i b u de cada ol s’han ob ingu de la pàgina web
Glassdoo [10].
Rol
Sala i/ho a (b u ) [€]
Sala i/ho a + Segu e a
Social (*1,3) [€]
[CP] Cap de p ojec e
24,27
31,55
[AS] Analis a de So wa e
18,44
23,98
[DS] Desen olupado de
so wa e
17,22
22,38
[DU ]Dissenyado UX/UI
18,36
23,87
[T] Tes e
11,45
14,88
Taula 3: Cos pe ho a de cada memb e de l’equip. Fon : Elabo ació p òpia
5.4.2 Cos os de pe sonal pe ac i i a
Un cop defini el cos pe ho a de cada in eg an , basan -se en la aula de asques de la
planificació empo al. Es po defini el cos de cada asca i, conseqüen men , el cos o al de
les asques del p ojec e..
S’ha elabo a la següen aula que desglossa el cos del pe sonal pe ac i i a .
22
Codi
Du ació
(h)
Ho es
Cos [€]
CP
AS
DS
DU
T
GP
80
80
2.524,00
GP1
20
20
631,00
GP2
20
20
631,00
GP3
20
20
631,00
GP4
20
20
631,00
I
20
15
5
471,60
I1
5
5
111,90
I2
15
15
359,70
EP
50
50
1.119,00
EP1
20
20
447,60
EP2
20
20
447,60
EP3
10
10
223,80
CA
115
15
60
10
35
2.462,00
CA1
20
15
5
434,10
CA2
20
15
5
410,10
CA3
20
15
5
410,10
CA4
15
10
5
298,20
CA5
15
10
5
298,20
CA6
15
10
5
298,20
CA7
10
10
5
313,10
DC
90
90
2.839,50
DC1
-
DC2
70
70
2.208,50
DC3
20
20
631,00
To al
9.416,10
Taula 4: Cos del ecu sos humans pe asca. Fon : Elabo ació p òpia
23
7. Cua d’espe a de pe icions web
7.1 In oducció
L’objec iu d’aques a cua és el de egula les sol·lici uds dels usua is al nos e lloc web, du an
esde enimen s de g an àfic, de mane a jus a i sa is ac ò ia pels usua is. C ean un p o o ip
àcilmen modificable i escalable pe al de eu e la se a iabili a . Pe al, d’aconsegui
aques s objec ius a em se i els se eis d’Amazon Web Se ices. El p incipal mo iu d’u ili za
aques a pla a o ma és que aques s se eis ens p opo ciona an una in aes uc u a obus a al
nú ol, a més que al CPNL ja a se i ac ualmen els se eis d’AWS i, pe an , es an
amilia i za s amb el seu uncionamen .
En el cas d’aques a cua, AWS ens dona una solució en o ma de plan illa inicial que
implemen a la in aes uc u a necessà ia pe una sala d’espe a i ual pe egula el àfic.
7.2 Vis a lógica
Els elemen s d’aques a is a ep esen en els ipus i la e minologia de la solució.
Figu a 4: Vis a lògica de l’a qui ec u a. Fon [17]
30

Pàgina web
Aques ipus ep esen a la pàgina web que es à sen p o egida pe la sala d’espe a i ual.
Comp ado
Aques ipus ep esen a la posició nume ica del final de la cua, o el que és el ma eix, el
nomb e o al de pe sones que són o han passa pe la sala d’espe a.
Esde enimen
Aques ipus ep esen a un esde enimen únic pe a un lloc web que eque eix p o ecció
con a un excés d'usua is concu en s. L'esde enimen associa el lloc web, la cua de la sala
d'espe a, les claus c ip og àfiques i els comp ado s numè ics que s'u ili zen pe a ança els
usua is a a és de la sala d'espe a.
Sala d’espe a
Aques ipus ep esen a la cua d’espe a d’usua is que espe en pe en a al lloc web. La sala
d’espe a es à o mada pe un conjun o dena de pe icions, cadascuna amb una posició única
a la cua. La posició a la cua i la posició en a enció de e minen quan un nou usua i po accedi
de nou a la pàgina web.
Posició en a enció
Aques ipus ep esen a la posició a la cua més al a que é accés pe con inua cap al lloc
web. To es les pe icions amb una posició de cua igual o meno a aques alo poden so i de
la cua i accedi al lloc web.
Clau pública
Aques ipus ep esen a la JSON Web Key pública que és gene ada pe aques a ins al·lació de
la sala d’espe a. La clau pública és u ili zada pe e ifica signa u es de JSON Web Tokens que
s’assignen des de la sala d’espe a i ual.
Clau p i ada
Aques ipus ep esen a la JSON Web key p i ada que és gene ada pe aques a ins al·lació de
la sala d’espe a. La clau p i ada és u ili zada pe assigna JSON Web Tokens pe au o i za la
so ida de la sala d’espe a.
31
Pe ició
Aques ipus ep esen a una pe ició e a pel clien pe en a a la cua de la sala i ual. La
pe ició és moni o i zada du an el seu pas pe la sala d’espe a. La pe ició es à elacionada
amb la posició a la cua, la qual po se in e io o supe io a la posició en a enció. La pe ició
ambé po es a elacionada amb un oken d’accés en o ma de JWT.
Token d’accés
Aques ipus ep esen a un JSON Web Token assigna pe la sala d’espe a pe guanya accés
al lloc web o in e ac ua amb les API p o egides del lloc.
Posició a la cua
Aques ipus ep esen a una posició numè ica d’una pe ició de la cua de la sala d’espe a. Una
posició a la cua in e io a la posició en a enció pe me so i de la sala d’espe a i accedi al lloc
web de nou.
Es a de la sessió
Aques ipus ep esen a l’es a d’una pe ició. És un es a complemen a i u ili za pe
moni o i za un JSON Web Token desp és de se assigna . Aques es a s’u ili za pe
comp o a si un oken ha es a u ili za , l’usua i ha ma xa de la sala o el oken a expi a .
32
7.3 A qui ec u a
A la següen ima ge es po eu e l’a qui ec u a comple a d’aques a solució:
Figu a 5: In o mació gene al de l’a qui ec u a. Fon : [4].
1. Dis ibució d’Amazon Cloud on pe p opo ciona c ides d’API públiques al clien .
2. API pública pe p ocessa pe icions de la cua desde la sala i ual, segui les posicions
de la cua i alida els okens d’accés a la pàgina web.
3. Una Simple Queue Se ice (SQS) d’Amazon pe egula el àfic a les uncions del
se ei Lambda que p ocessen els missa ges de la cua.
4. API p i ada pe uncions adminis a i es.
5. Funcions de Lambda pe alida i p ocessa les pe icions i espos es de les API.
6. Amazon Vi ual P i a e Cloud (VPC) pe allo ja les uncions de Lambda que
in e ac uen di ec amen amb Elas icache, pe me e la comunicació en e els di e en s
se eis de la solució i connec a amb els endpoin s de Cloud on .
7. Una egla de Amazon Cloudwa ch que in oca una unció de Lambda que
pe iòdicamen en ia ac uali zacions d’es a .
8. Taulas d’Amazon DynamoDB pe gua da els okens, posició a la cua i el núme o de
pe sones a les que s’es an se in .
9. AWS Sec e s Manage pe gua da claus pe ope acions amb okens i al a in o mació
sensible.
33
10. (Opcional) Componen d’au o i zació consis en d’un ol d’AWS Iden i y and access
Managemen (IAM) i una unció d’au o i zació de Lambda.
11. (Opcional) Amazon Simple No ifica ion Se ice (SNS), Cloudwa ch i uncions Lambda
pe l’ús d'es a ègies d’en ada.
12. (Opcional) Connec o d’OpenID amb una API Ga eway i uncions de Lambda pe
p o ei au en icació d’usua is al lloc web del clien .
13. (Opcional) Dis ibució Cloud o m amb un bucke S3 d’Amazon pe la mos a de la web
de la sala d’espe a.
7.4 Se eis AWS
Tal com s’ha obse a a l’apa a an e io , aques a a qui ec u a a ús de di e sos se eis
d’Amazon Web Se ices. A con inuació hi ha un desglossamen de cadascun dels se eis
u ili za s:
● Amazon CloudFo ma ion
Amazon CloudFo ma ion és un se ei que pe me c ea i ges iona ecu sos AWS de
mane a au omà ica mi jançan plan illes de codi. Aques es plan illes es defineixen en
o ma YAML o JSON i pe me en desc iu e ecu sos d’una es uc u a.
En el cas de la cua d’espe a, aques se ei jun amen amb aques es plan illes pe me à
desplega l’a qui ec u a mos ada an e io men de mane a au omà ica i modula . Això
pe me e i a e o s humans en la configu ació de la in aes uc u a, eni una
a qui ec u a escalable i con olada.
● API Ga eway
API Ga eway és un se ei que pe me c ea , publica i ges iona API a g an escala. API
Ga eway ac ua com a "po a d'en ada" en e les aplicacions ex e nes (com a
aplicacions mòbils o web) i els se eis que es oben al nú ol, pe me en als
desen olupado s exposa de mane a segu a les uncionali a s del backend a a és de
REST ul APIs, WebSocke APIs o APIs basades en HTTP.
En el cas de la cua d’espe a u ili za em aques se ei pe les dues API. P incipalmen la
pública la a em se i pe c ides elacionades amb les posicions de la cua i e ifica
JSON Web Tokens, i la p i ada pe au en ica els JSON Web Tokens.
34
Aques se ei ambé ens pe me à ges iona un g an nomb e de c ides d’API
simul àniamen , el que se à impo an si enim pensa ind e un g an olum d’usua is
en a i so in de la cua en un cu pe íode de emps.
● Amazon Simple Queue Se ice (SQS)
Amazon SQS és un se ei que acili a l’en iamen , la ecepció i emmaga zema ge de
missa ges en e se eis. O e eix cues escalables pe emmaga zema i p ocessa
missa ges en e sis emes de mane a fiable.
Té una u ili a a la cua ges ionan l’en ada o denada d’usua is, emmaga zeman les
sol·lici uds dels usua is i in ocan la unció Lambda que p ocessa els missa ges de la
cua pe lo s en comp es de e -ho indi idualmen .
● AWS Lambda
El se ei AWS Lambda pe me execu a codi sense necessi a de ges iona se ido s.
Es dispa a au omà icamen en espos a a esde enimen s com la ecepció d’un
missa ge en una cua. La se a u ili a au en la capaci a d'execu a codi de mane a
eficien i només quan sigui necessa i, eduin cos os ope a ius i millo an l'escalabili a
de l'aplicació.
Aques se ei alida i p ocessa i alida c ides de l’API p i ada i pública i és de g an
u ili a pe aques a solució pe la se a g an escalabili a , eficiencia i cos os. T es pun s
i als pe una aplicació que ges iona un g an nomb e de sol·lici uds.
● Amazon VPC (Vi ual P i a e Cloud)
Amazon VPC (Vi ual P i a e Cloud) és un se ei que pe me c ea una xa xa i ual
p i ada dins de l'en o n d'AWS. Aques a xa xa o e eix con ol o al sob e l'en o n de
xa xa, incloen -hi configu acions d'IP, subxa xes, aules de u es i passa el·les de xa xa.
AWS VPC ga an eix la segu e a i l'aïllamen dels ecu sos desplega s, pe me en
connec i i a segu a amb In e ne , al es se eis d'AWS o xa xes locals mi jançan VPN
o AWS Di ec Connec .
Aques se ei pe me es abli una connexió segu a en e les uncions de Lambda i
al es se eis de la solució.
● Amazon CloudWa ch
35

Amazon CloudWa ch és un se ei de moni o a ge i obse abili a que ecull i anali za
mè iques, egis es i esde enimen s dels ecu sos i aplicacions d'AWS. P opo ciona
isuali zacions en emps eal, ale es i accions au oma i zades pe ajuda a man eni
l'es abili a , l'op imi zació del endimen i la ges ió dels cos os.
Amazon CloudWa ch pe me in oca a uncions Lambda pe moni o i za l’es a de la
cua pe iòdicamen , de de un panell de con ol pe exemple. Aques se ei ambé ens
pe me habili a no ificacions quan la cua es igui en un es a c í ic que eque eixi la
nos a a enció. De la ma eixa mane a que es po e se i pe implemen a una
es a egia d’en ada on la posició en a enció s’ac uali za pe iòdicamen .
● Amazon DynamoDB
Amazon DynamoDB és un se ei de base de dades NoSQL comple amen ges iona i
al amen escalable, dissenya pe o e i un endimen àpid amb una la ència baixa
consis en .
Aques se ei pe me emmaga zema okens, posicions a la cua i la posició en a enció
a dis in es aules.
● AWS Sec e s Manage
AWS Sec e s Manage és un se ei ges iona que ajuda a p o egi sec e s com a a
c edencials de bases de dades, claus d'API i al es dades sensibles. P opo ciona
emmaga zema ge segu , o ació au omà ica de sec e s i accés con ola mi jançan
pe misos in eg a s amb AWS Iden i y and Access Managemen (IAM).
Aques se ei és d’u ili a pe gua da okens i al es dades sensibles, man enin la
nos a in aes uc u a segu a.
● AWS Iden i y and Access Managemen (IAM)
AWS IAM (Iden i y and Access Managemen ) és un se ei que pe me ges iona de
mane a segu a l'accés als ecu sos d'AWS. Amb IAM, po s c ea i adminis a usua is,
g ups i ols, defini polí iques d'accés g anula s i con ola qui po e què dins de la
in aes uc u a AWS.
36
Aques se ei és d’especial u ili a pe ges iona l’accés a ce es pa s de la nos a
in aes uc u a. Conc e amen , a l’API p i ada que ges iona l’assignació de okens i el
comp ado de la posició d’a enció que egula el flux de la cua d’espe a.
● Amazon Simple No ifica ion Se ice (SNS)
Amazon SNS (Simple No ifica ion Se ice) és un se ei de missa ge ia ges iona que
acili a l'en iamen de no ificacions en emps eal a a és de di e en s canals com
SMS, co eu elec ònic, o publicació en emes ( òpics) que al es se eis poden
subsc iu e. És al amen escalable i dissenya pe in eg a -se àcilmen amb al es
se eis d'AWS.
Amb aques se ei és possible en ia no ificacions als usua is en cas que a ibi el seu
o n pe a ança a la cua. To i que, a aques a, solució, es à in eg a amb el se ei
Lambda pe implemen a la es a egia d’en ada MaxSize, que inc emen a la posició
en a enció basa en el nomb e màxim de ansaccions que s’ha defini .
● Amazon Simple S o age Se ice (S3)
Amazon S3 (Simple S o age Se ice) és un se ei d'emmaga zema ge d'objec es
al amen escalable, segu i du ado , dissenya pe gua da qualse ol ipus de dades,
com fi xe s, ima ges, ídeos o egis es. S3 o e eix opcions d'accés flexible, con ols de
segu e a a ança s i in eg ació amb al es se eis d'AWS.
Aques se ei es a à se i pe deposi a el codi on de la cua un cop s’hagi modifica .
Des d’aques se ei s’ex eu la URL pe desplega les plan illes que es c ea an a
CloudFo ma ion.
7.5 Plan illes Amazon Cloud o ma ion
Pe al de desplega l’a qui ec u a, a AWS obem les plan illes de Cloud o ma ion. Aques es
desc iuen la in aes uc u a i els ecu sos que es olen ges iona a AWS mi jançan el se ei
CloudFo ma ion.Aques es plan illes es defineixen en o ma YAML o JSON i ac uen com a
ulls de u a pe desplega i configu a els se eis AWS de mane a au omà ica i modula .
37
Unse
Unse
Unse
Una plan illa de CloudFo ma ion cons a de di e ses seccions que defineixen els ecu sos i les
configu acions necessà ies pe a la in aes uc u a. Aques es són algunes de les seccions
més elle an s d’aques ipus de fi xe s:
1. Ve sió del o ma
Especifica la e sió del o ma de l’a xiu que s’es à ac an .
"AWSTempla eFo ma Ve sion": "2010-09-09"
2. Desc ipció
Desc ipció de la plan illa pe documen a la se a finali a
"Desc ip ion": "(SO0166) Vi ual Wai ing Room on AWS %%VERSION%%",
3. Pa àme es
Defineix alo s d’en ada que els usua is poden p opo ciona quan es c ea un conjun
de ecu sos (pila). Aques s pa àme es poden se pe sonali zables, com noms de
ecu sos, ipus d’ins ància, egions, e c.
"Pa ame e s": {
"E en Id": {
"Desc ip ion": "Unique ID o his ins ance o he wai ing oom",
"Type": "S ing",
"MinLeng h": 1,
"Cons ain Desc ip ion": "Please en e a alue o his ield."
4. Mappings
Pe me defini dades es à iques que es poden u ili za en al es pa s de la plan illa,
com a a egions o configu acions específiques
38
Unse
Unse
"Mappings": {
"Sou ceCode": {
"Gene al": {
"S3Bucke ": "%%BUCKET_NAME%%",
"KeyP e ix": "%%SOLUTION_NAME%%/%%VERSION%%"
}
5. Ou pu s
P opo ciona in o mació sob e els ecu sos c ea s, com URL d'accés, iden ificado s,
e c. Això és ú il pe compa i alo s amb al es conjun s de ecu sos (pila) o pe
isuali za in o mació impo an .
"Ou pu s": {
"PublicApiIn okeURL": {
"Value": {
"Fn::Sub": [
"h ps://${CloudF on DomainName}",
{
"CloudF on DomainName": {
"Fn::Ge A ": [
"PublicApiCloudF on ",
"DomainName"
]
}
L’a qui ec u a d’aques a solució es à di idida en 5 plan illes:
● i ual-wai ing- oom-on-aws. empla e
Aques a plan illa desplega la uncionali a p incipal de la cua. Incloen les API
públiques i p i ades i se eis del nú ol pe c ea els esde enimen s de la sala d’espe a.
Con é els següen s pa àme es de pe sonali zació:
Pa ame e
Pe de ec e
Desc ipció
E en ID
Sample
ID unic pe aques a
ins ancia de la sala i ual
d’espe a
39
ii. Response body: { "se ing_num": INTEGER }
iii. S a us codes:
200: Success
400: In alid e en ID
4. /num_ac i e_ okens
i. Desc ipció: Re o na el nomb e de okens ac ius. Un oken ac iu é un a ibu
exp que és pos e io a l’ho a ac ual.
ii. Au o i zació: IAM
iii. Mè ode: GET
i . Tipus de con ingu : applica ion/json
. Pa àme es que y: e en _id
i. Reques body: NONE Response body: { "ac i e_ okens": INTEGER }
ii. S a us codes:
200: Success
404: In alid e en ID
5. / ese _ini ial_s a e
i. Desc ipció: Aques a API einicia els comp ado s in e ns a ze o i esbo a i
desp és o na a c ea la aula de DynamoDB u ili zada pe l’API.
ii. Au o i zació: IAM
iii. Mè ode: POST
i . Tipus de con ingu : applica ion/json
. Pa àme es que y: e en _id
i. Reques body: { "e en _id": EVENT_ID } Response body: { "message": "Coun e s
ese . DynamoDB able ec ea ed." }
ii. S a us codes:
200: Success
400: In alid e en ID
6. /upda e_session
i. Desc ipció: Aques a API can ia l’es a d’un oken assigna .
ii. Au o i zació: IAM
iii. Mè ode: POST
i . Tipus de con ingu : applica ion/json
. Pa àme es que y: NONE
i. Reques body: { "e en _id": EVENT_ID, " eques _id": REQUEST_ID, "s a us":
INTEGER (1 = comple ed, -1 = abandoned) }
ii. Response body: NONE
iii. S a us codes:
200: Success
400: In alid e en ID o eques ID
404: Reques ID doesn' exis o s a us al eady se
46

7.8 Diag ames de seqüència
El següen diag ama mos a els p ime s passos d’un usua i quan en a a la sala d’espe a i
ob é una posició a la cua.
Figu a 6: Diag ama de seqüència en a a la sala d’espe a. Fon [17]
47
El següen diag ama mos a els passos pe ob eni la posició de l’usua i en se i l’ID ebu
pel diag ama an e io .
Figu a 6: Diag ama de seqüència ob eni posició. Fon [17]
48
El següen diag ama mos a els passos, que so in es epe eixen en un in e al, pe eb e la
posició d’a enció de la cua d’espe a.
Figu a 7: Diag ama de seqüència posició d’a enció. Fon [17]
49
El següen diag ama mos a els pasos pe ob eni un JSON Web Token de l’API pública un cop
la posició d’a enció ha supe a la posició de l’usua i a la cua.
Figu a 8: Diag ama de seqüència ob eni oken. Fon [17]
50
El següen diag ama segueix els pasos u ili za s amb l’API Ga eway au ho ize .
Figu a 9: Diag ama de seqüència API Ga eway. Fon [17]
7.9 Modificacions i implemen ació
To i que les plan illes de CloudFo ma ion pe me en un ce g au de pe sonali zació
modifican els pa àme es, a l’ho a d’implemen a la nos a solució no s’han desplega les
plan illes a Amazon Cloud o ma ion di ec amen , sinó que s’ha eballa des del eposi o i del
codi on de la in aes uc u a pe e les modificacions necessà ies i desp és c ea les
plan illes amb el codi modifica , e un desplegamen a un bucke d’Amazon S3 i pe úl im
desplega -ho a Amazon Cloud o ma ion.
Les p incipals modificacions del codi han es a a la plan illa
i ual-wai ing- oom-on-aws-sample. Aques a és la plan illa que p opo ciona una mos a de
51

Unse
l’aplicació web de la cua. La p ime a modificació ha es a sob e l’es è ica de l’aplicació web.
Aques es modificacions s’han e in en an sembla la web del p opi CPNL, donan -li un ó
e mell i a egin el logo. Com es po eu e a la pàgina de ben inguda.
Figu a 10: Sala d’espe a, ben inguda. Fon Elabo ació p òpia
Un cop em clic al bo ó de ese a passem a la següen pàgina on obem la sala d’espe a
amb di e en s componen s que donen in o mació a l’usua i.
La posició, nomb e d’usua is sen a ingu s i mida de la sala d’espe a, s’ob enen mi jançan
c ides a l’API pública.
L’úl im componen , el emps ap oxima de so ida, unciona de mane a que calcula una
eg essió lineal que es ima quan de emps al a pe a iba al capda an de la cua amb
aga an mos es an e io s que a ac uali zan .
upda eExi Ex apola ion() {
// upda e he sample and es ima e om he ime
cons now = new Da e().ge Time();
// c ea e a new sample wi h he posi ion and imes amp
cons i em = [ his.queuePosi ion, now];
// add o he end
his.samples.push(i em);
// im he olde samples om he on i needed
while ( his.samples.leng h > MAX_SAMPLES) {
52
his.samples.shi ();
}
// c ea e he i unc ion om he samples
cons i Func ion =
linea Reg essionLine(linea Reg ession( his.samples));
// es ima e he exi imes amp o he use 's line posi ion
cons es ima e =
Numbe .pa seIn ( i Func ion( his.myPosi ion));
i (!isNaN(es ima e)) {
his.es ima edExi Times amp = es ima e;
// c ea e he human- eadable
his. emainingTime = momen (). o(new
Da e( his.es ima edExi Times amp));
} else {
his.es ima edExi Times amp = 0;
}
}
53
Figu a 11: Sala d’espe a. Fon Elabo ació p òpia
Un cop a iba el o n de l’usua i pe a ança a la cua, se li desbloqueja el bo ó pe a ança i
a iba a la pàgina de so ida segu a. A aques a pàgina s’in o ma a l’usua i de l’es a del seu
oken i un cop el e ifica po so i de la sala d’espe a i ual. S’ha a egi un a ibu que in o ma
de que el oken ha es a alida co ec amen , a a és d’aques a alidació, debloqueja el bo ó i
pe me so i de la cua i ana al lloc web desi ja . La in eg ació amb el lloc web s’ha e
mi jançan edi eccions HTTP 302, de la ma eixa mane a que ho an se i al se ei queue-i .
54
Figu a 12: Sis ema de so ida segu a. Fon Elabo ació p òpia
Aques a ma eixa plan illa ambé inclou un panell de con ol pe ges iona la nos a cua.
Aques panell eque eix d’un usua i IAM que s’ha de configu a al nos e comp e d’AWS i
enllaça a a és del se ei IAM a la cua d’espe a. Un cop inguem l’usua i IAM, ind em
l’access key i la sec e access key pe connec a -nos i modifica els a ibu s del panell de
con ol.
55
Unse
Figu a 18: Flux de na egació d’aplicació web. Fon Elabo ació p òpia
8.4 Disseny in e n
Pe al de desen olupa l’aplicació web s’ha e se i el amewo k .NET i el llengua ge C#.
Aques a aplicació web cons a de di e sos componen s:
Els con olado s, Regis e Con olle i LoginCon olle , eben les dades dels o mula is, ac en
les dades i comuniquen amb la base de dades. En el cas de Regis e Con olle , e ifica la
alidesa del model, enc ip a la con asenya amb BC yp i desa les dades a la aula Use s. En el
cas de Login Con olle , busca l’usua i a la base de dades pel seu co eu i compa a la
con asenya in oduïda amb la que apa eix a la base de dades. En o s dos casos es edi igeix
cap a l’inici.
Les iews són esponsables de gene a el con ingu HTML que es mos a a l’usua i. Alguns
exemples són la pàgina d’inici i els o mula is de egis e i inici sessió.
Els models són classes que desc iuen l’es uc u a de les dades i les se es p opie a s, com pe
exemple la classe Use .
using Sys em.Componen Model.Da aAnno a ions;
namespace TFG_Web.Models {
public class Use {
62

Unse
[Key]
public in Id { ge ; se ; }
[Requi ed]
[MaxLeng h(100)]
public s ing Email { ge ; se ; }
[Requi ed]
[MaxLeng h(255)]
public s ing Passwo dHash { ge ; se ; }
}
}
I finalmen enim la classe Applica ionDBCon ex que és el componen p incipal de la capa de
dades i connec a l’aplicació amb la base de dades SQL se e .
using Mic oso .En i yF amewo kCo e;
using TFG_Web.Models;
namespace TFG_Web.Da a {
public class Applica ionDbCon ex : DbCon ex {
public Applica ionDbCon ex (DbCon ex Op ions<Applica ionDbCon ex >
op ions) : base(op ions) { }
public DbSe <Use > Use s { ge ; se ; }
}
}
11.5 P o es i alidació
Pe al de es eja el lloc web, s’han desen olupa es s uni a is pe comp o a que la base de
dades no ingui cap e o i assegu a un bon uncionamen de les se es uncionali a s.
63
A pa dels es s uni a is, ambé s’ha es eja manualmen el lloc web pe al d’assegu a una
bona expe iència d’usua i i el bon uncionamen del eco egu des de la pàgina p incipal fins a
la cua d’espe a.
8.6 Conclusió
Aques lloc web, que imi a la es é ica del CPNL, se eix com a demos ació d’un cas d'ús de la
cua d’espe a, on els usua is han de passa obliga ò iamen pe la cua d’espe a abans de pode
in odui les se es dades. En un hipo è ic cas en el que inguéssim un g an flux d’usua is que
olguessin egis a -se la cua ac ua ia com a mecanisme de egulació i p o ecció, ga an in
una expe iència d’usua i con olada i e i an possibles sa u acions.
64
9. Iden ificació de lleis i egulacions
Es po afi ma que aques p ojec e no ulne a cap llei ni egulació. Obse an els componen s
p incipals del p ojec e, l’en o n web de p o es i la cua d’espe a, no hi ha cap uncionali a que
pugui ulne a la segu e a dels usua is ni comp ome e les se es dades.
L’en o n web de p o es no ecull ni p ocessa dades eals de cap usua i, ja que només és un
en o n on e ifica el uncionamen de la cua d’espe a i, pe an , o s els usua is a egi s no
se an eals. El lloc web ampoc ind à p oblemes de ulne abili a s, ja que no es a à obe al
públic.
Respec e a la cua d’espe a, ampoc ecull cap dada de l’usua i, es limi a a edi igi i in o ma
els usua is de la se a posició a dins la cua. La cua ampoc ind à cap p oblema de
ulne abili a s pe què es a à p o egida pe la in aes uc u a d’AWS, que compleix amb els
es ànda ds de segu e a necessa is.
65
10. Resul a final del p ojec e
En aques apa a es po eu e com ha acaba el p ojec e. Du an la du ació
10.1 Planificació final
En aques apa a enim la planificació final del p ojec e. La g an majo ia d’apa a s han so i
a més ho es de les que es a en planejades. El mo iu d’aques inc emen ho es ha es a la
e alo i zació de les asques, a més que s’han a egi no es asques. Això a se degu a e
una planificació inicial massa op imis a, un cop a egides les no es asques i ecalculades les
p è ies, enim un o al d’ho es de 470, sense comp a iscos i obs acles.
L’única ase del desen olupamen que no augmen a en ho es és la ase d’incepció, ja que s’ha
elimina una asca elacionada amb de e mina la cà ega del sis ema. El mo iu pe elimina
aques a asca és que la cà ega del sis ema depèn comple amen de la web on implemen em
la cua, pe an , en un p ojec e on no s’a egeix la cua a un en o n eal, no é sen i e aques a
asca.
Codi
Tasca
Du ació (h)
Dependències
Recu sos
GP
Ges ió del p ojec e
80
-
GP1
Con ex uali zació i abas
20
-
CP, TGEP, GW, GC
GP2
Planificació
20
GP1
CP, GW, GC
GP3
P essupos i sos enibili a
20
GP2
CP, GW, GC
GP4
In eg ació final del documen
20
GP3
CP, GW, GC
I
Incepció
10
-
I1
P epa ació de l’en o n
10
-
DS, GC, VSC, GIT, AWS
EP
C eació en o n de p o es
90
-
EP1
F on end
40
I
DS, GC, VSC, GIT
EP2
Base de dades
30
I
DS, GC, VSC, GIT, SQLS
EP3
Tes eja en o n de p o es
20
EP1
DS, GC, VSC, GIT
CA
Cua AWS
200
-
CA1
Es udia a qui ec u a
30
-
AS, GC
CA2
Desplega cua de p o a
40
I, CA1
DS, T, GC, VSC, AWS
CA3
Configu ació s ack d’au o i zacions
15
CA2
DS, T, GC, VSC, GIT, AWS
66
CA4
Configu a s ack d'es a ègia d’en ada
15
CA2
DS, T, GC, VSC, GIT, AWS
CA5
Cus omi zació de la pàgina d’espe a
40
CA1
DU, T, GC, VSC, GIT, AWS
CA6
Desplega cua p incipal
40
CA3, CA4, CA5
DS, T, GC, VSC, GIT, AWS
CA7
Tes eja la cua d’espe a
20
CA2, CA6
DU, T, GC, VSC, GIT, AWS
DC
Documen ació i comunicació
90
DC1
Seguimen
-
-
CP, GW, TA
DC2
Redacció de memò ia i epàs
70
-
CP, TE, CAPD, TGEP, GW
DC3
Comunicació
20
-
CP, TE, CAPD, TGEP, GW
To al
470
Taula 15: Taula de asques final Fon : Elabo ació p òpia
10.2 P essupos final
De la ma eixa mane a que amb la aula de asques, el p essupos ha augmen a pe
p àc icamen o es les asques excep e pe l’incepció.
Codi
Du ació
(h)
Ho es
Cos [€]
CP
AS
DS
DU
T
GP
80
80
2.524,00
GP1
20
20
631,00
GP2
20
20
631,00
GP3
20
20
631,00
GP4
20
20
631,00
I
10
10
223,80
I1
10
10
223,80
EP
90
50
20
20
1.894,00
EP1
40
20
20
925,00
EP2
30
30
671,40
EP3
20
20
297,60
CA
200
30
130
20
20
4.403,80
67

CA1
30
30
719,40
CA2
40
40
895,20
CA3
15
15
335,70
CA4
15
15
335,70
CA5
40
20
20
925,00
CA6
40
40
895,20
CA7
20
20
297,60
DC
90
90
2.839,50
DC1
-
DC2
70
70
2.208,50
DC3
20
20
631,00
To al
11.885,10
Taula 16: Cos humà final Fon : Elabo ació p òpia
Un cop ecalcula el p essupos final, enim que la di e ència en e el p essupos inicial
(13.773,53) i el final (16.242,53) ha es a de 2.469€. Un augmen del 17,92%. Aques a
des iació és bas an ele ada, o i així, és cohe en amb la quan i a d’ho es i amb la quan i a
d’ho es a egides. Amb l’expe iència d’aques p ojec e, es pod ia ap oxima un p essupos més
p ope a la eali a en un u u p ojec e.
Cos os
Cos [€]
Cos os de pe sonal pe ac i i a
11.885,10
Cos os gene als
1.049,96
Con ingències
1.293,27
Imp e is os
2.014,20
To al
16.242,53
Taula 17: P essupos final Fon : Elabo ació p òpia
68
11. Conclusions
11.1 Reflexió
A aques p ojec e s’ha pogu desen olupa i implemen a una solució de cua d’espe a de
pe icions web pe ges iona g ans olums de àfic web basada en els se eis d’Amazon Web
Se ices. Aques a solució s’ha cons uï amb un en ocamen escalable, modula i amb una
al a capaci a pe a la pe sonali zació i adap abili a , complin d’aques a mane a els nos es
p incipals objec ius i o e in una al e na i a al se ei de Queue-i .
G àcies a l’ús dels se eis d’AWS, la in aes uc u a és obus a i àcilmen escalable depenen
del ànsi espe a . Les plan illes són flexibles i pe me en an una pe sonali zació supe ficial
en ús dels pa àme es d’en ada com una pe sonali zació més p o unda mi jançan el codi
on de la solució.
De la ma eixa mane a, el lloc web compleix amb els objec ius de mos a la àcil in eg ació
d’aques a cua a una aplicació web qualse ol mi jançan edi eccions i ga an i un eco egu
sa is ac o i des de la web fins a la cua i e o na .
En conclusió, el p ojec e ha alida amb èxi la iabili a d’aques a in aes uc u a basada en
AWS, demos an que és una solució escalable, adap able i àcilmen pe sonali zable pe a
di e sos casos d’ús. A més, o e eix una al e na i a obus a i compe i i a al se ei de Queue-i ,
amb la capaci a d’ajus a -se a necessi a s específiques i d’e oluciona pe inco po a millo es
u u es.
11.2 Compe encies
CES1.1: Desen olupa , man eni i a alua sis emes i se eis so wa e complexos i/o c í ics.
[En p o undi a ]
Pel desen olupamen d’aques p ojec e s’ha segui un en ocamen clàssic amb uns equisi s i
objec ius cla s. Du an el desen olupamen s’han e ec ua els ajus amen s necessa is pe
esold e els possibles obs acles o des iacions i s’han desen olupa es s pe al de man eni
un con ol de quali a sob e el so wa e.
69
CES1.2: Dona solució a p oblemes d'in eg ació en unció de les es a ègies, dels es ànda ds i
de les ecnologies disponibles. [En p o undi a ]
Du an el desen olupamen del p ojec e s’han hagu d’a on a ep es pe in eg a di e en es
pa s. Pe exemple, a la pàgina web s’ha hagu d’implemen a una base de dades SQL se e i
ambé s’ha hagu d’in eg a la cua d’espe a amb la pàgina web pe al que pugui abso bi el
àfic. Pe an , s’han hagu de busca solucions pe aques s p oblemes d’in eg ació.
CES1.3: Iden ifica , a alua i ges iona els iscos po encials associa s a la cons ucció de
so wa e que es poguessin p esen a . [En p o undi a ]
Du an la ase inicial del p ojec e es a du a e me un anàlisi exhaus iu pe iden ifica els
possibles iscos i obs acles que pod ien a ec a a la planificació. Aques a planificació ens ha
ajuda a minimi za els iscos i assegu a la cons ucció del so wa e
CES1.4: Desen olupa , man eni i a alua se eis i aplicacions dis ibuïdes amb supo de
xa xa. [En p o undi a ]
Pe la pa de la cua d’espe a, s’ha hagu de eballa amb mol s se eis di e en s d’AWS. To s
se eis basa s en el nú ol i amb necessi a de comunica -se en e sí de mane a segu a i
eficien .
CES1.5: Especifica , dissenya , implemen a i a alua bases de dades. [Una mica]
Pe la pa de l’aplicació web s’ha emplea una base de dades SQL se e que s’ha hagu
d’in eg a amb els o mula is de la p òpia pàgina web pe gene a usua is amb di e en s
a ibu s i eque imen s.
CES1.7: Con ola la quali a i dissenya p o es en la p oducció de so wa e. [En p o undi a ]
Pe al de comp o a la quali a del so wa e s’han hagu de passa es s uni a is pe alida
les uncionali a s dels sis ema an pe la pa de la cua d’espe a com pe l’aplicació web. I de
la ma eixa mane a s’han hagu de es eja manualmen les in e ícies pe assegu a el seu
co ec e uncionamen i accessibili a pels usua is.
CES2.1: Defini i ges iona els equisi s d'un sis ema so wa e. [En p o undi a ]
Des de la planificació inicial es an ecopila una se ie de equisi s que el p ojec e ha ia de
compli pe se sa is ac o i. D’aques s equisi s han so i les bases del eball i els objec ius i
han ajuda a assoli el p ojec e.
70
12. Re e ències
[1] “CPNL”. Visi a el 19 de se emb e de 2024: h ps://www.cpnl.ca /
[2] “Queue-i ”. Visi a el 21 de se emb e de 2024: h ps://queue-i .com/
[3] “Queue-i : Vi ual Wai ing Room - Digi al Ma ke place”. Visi a el 23 de se emb e de
2024:
h ps://www.apply osupply.digi alma ke place.se ice.go .uk/g-cloud/se ices/347629176609
675
[4] “Sala de espe a i ual de AWS | Soluciones de AWS”. Visi a el 23 de se emb e de
2024: h ps://aws.amazon.com/es/solu ions/implemen a ions/ i ual-wai ing- oom-on-aws/
[5] “Cos - Vi ual Wai ing Room on AWS”. Visi a el 23 de se emb e de 2024:
h ps://docs.aws.amazon.com/solu ions/la es / i ual-wai ing- oom-on-aws/cos .h ml
[6] “The 5-min Kanban module o e iew - Tu o ials and Guides - Taiga Communi y”.
Visi a el 24 de se emb e de 2024:
h ps://communi y. aiga.io/ / he-5-min-kanban-module-o e iew/122
[7] “Gi Hub”. Visi a el 24 de se emb e de 2024: h ps://gi hub.com/
[8] “Abso b la ge bu s s o affic o you websi e wi h he Vi ual Wai ing Room on
AWS” Room ”. Visi a el 30 de Se emb e de 2024:
h ps://docs.aws.amazon.com/solu ions/la es / i ual-wai ing- oom-on-aws/welcome.h ml
[9] “Gan P ojec ”. Visi a l’1 d’Oc ub e de 2024: h ps://www.gan p ojec .biz/
[10] “Sueldos de la emp esa | Glassdoo ”. Visi a el 7 d’Oc ub e de 2024:
h ps://www.glassdoo .es/Sueldos/index.h m
71