From 16c8449fff7e7b1488ecc423c30b5c73c80ac9ca Mon Sep 17 00:00:00 2001 From: Lara Date: Sat, 24 Feb 2024 14:00:24 +0100 Subject: [PATCH] Documentacion arreglada --- docs/images/08_1_pantalla-estadisticas.png | Bin 0 -> 16064 bytes docs/images/08_1_pantalla-juego.png | Bin 0 -> 10485 bytes docs/images/08_1_pantalla-principal.png | Bin 0 -> 13609 bytes docs/src/01_introduction_and_goals.adoc | 17 +++++++++------ docs/src/02_architecture_constraints.adoc | 20 +++++++++++------ docs/src/04_solution_strategy.adoc | 8 +++---- docs/src/08_concepts.adoc | 24 ++++++++++++++------- docs/src/09_architecture_decisions.adoc | 4 ++-- docs/src/10_quality_requirements.adoc | 6 +++--- docs/src/11_technical_risks.adoc | 2 +- docs/src/12_glossary.adoc | 9 -------- package-lock.json | 6 ++++++ 12 files changed, 56 insertions(+), 40 deletions(-) create mode 100644 docs/images/08_1_pantalla-estadisticas.png create mode 100644 docs/images/08_1_pantalla-juego.png create mode 100644 docs/images/08_1_pantalla-principal.png create mode 100644 package-lock.json diff --git a/docs/images/08_1_pantalla-estadisticas.png b/docs/images/08_1_pantalla-estadisticas.png new file mode 100644 index 0000000000000000000000000000000000000000..90534cc39b9d986ca2499322727de194b856e825 GIT binary patch literal 16064 zcmeHu2|U!_yT7CwEix2|q7hN{Wo(5QWS1qo48|B{3}a8SO(9VT*;_0{)~pFp$R1@^ zQkE=3S+n0WhWqRH{eAEK-TS})|Nq|Kef@fQ&3xvZ=kuI%p65Bw`+1&o3enM0Ikf-y zekv-eL#me$x>QuVhQRYr$X@WdHhK6I_}b;7tD-=a)5Et9}gF&JRNSup+Bgz#tfqop`24jms*-&Uigha&ng+%y8 z#Po%QxkN9DiGmLyDFI0lDH94k5{+`)W~hn3hQVTyTq4Ti0z!Zlk0Hj<2Jhhl9<}tr zhp-T67F7UGpaU*OdGv&f@q(6%PEJ^qA<9Y}1LmPDE-E1)3J1+R>X-C2HMm3+!7~=) zfC67CC~F5i`4vSw0v-oil!Zk^1OV%;G4+tPNCM_J7UVUdT#;zXdi3zR{1_!$TLnog zf{g^h$QgkWrmVvqMR3939k-V)Dj+N%PU&#&K-DZ(YH#3ghQuqOYB zDsGDr{BT5qDQ$^Yhf7hE>!L6k$@p!B&#_6vct?`bIDC=zvZxbR31hQJUmbu+zi^py+Zo9z=7{*^wkQ?-@ zk=Va&HN@Ds+EHjFMI)a<{OdOPudq{cvr!arLD;EW)pu4? zce7VTt7!6zQ3T_T#JX(@m(t+k>a`4!6x$Sae$~9)B?g zG0E*VyWb2!L~Oeexov>xf8|Y{^?yW3fM#3A|Ni{RUh@y8@TcSne zQ=HVF=xs;8|8vx~?Js{*8gg^_Ih^VI&rE|+Hf$>oI{u{>g*UsR7fRh&$*>;UPG0Ki@{ALRx;{OoF zume|r*BX?OAO!xWG5js!|BW&1DE=SN7`Ee~KQ#t5HxwFA_6v%59LQ;0!Sg@;!e0k} ze`5-Nf)W2HegQxo8SQ>E1$_((=Y$7snkX9#`P&Ik0H0fS@lR9uLmu!)QxM&8wEuu! z;cxQ*9TWi+VE!h`1L-A5v;VD_{EcAmy=^g`_@Ae=Ihe=&uRESUn9fE^=h#?+jLxX@R3?x!%{YueCql6M43U334;W zpHtudAs2=%#N>fr%@JRDiCXqOXo!9}hK=?VG4-3u(*t*oXxZ zw(7-5J+N9icD`*)YV5`!_^4QtP5W5*)sKpXgK8H<{^2mqG$S-QSvg2uE1B*Txrw8T zX1aVv_9mqM8sy9QEwcNeR4_Av+4%#Yn~FOBj31=_284==njWxeRHA|kFng`sBy;rd zVU#CY%h7;(A(?Un<_C!lJ-@C%CY7I}<*3PLr>5E(+n)fHCpIZ1-=K`SNJBr=b9fgO zcnMIJK{#qgVA@q={v7n))WJ?uL1fvHCu{~N2@x4r$^7YqFYH1{E-F${ZBgn70Lrp= z9|X51{Wh5j#@~Ukkau*%sa;akrtGJ#OnO zZf>MLaRWWQC!ep+X%<;lQ?F;_L?xjSAI{XMs3;S^$;nAZT%Q=JxQ6Bm!ek}l z$%_|y{1&fzLM$z5w!}27{3W((Elt|#i{DDE;EhL&Ih|RCS^L

$IfET@B4y!_gQc zmQyy@GOmrM#eU4nt;|fmKC4>fPBK|Y6ZGLN(c(N`ej3L2xCGY^7Z(zG_~J6OGl>0$ z(Fxh>MpXhZ9_n*J!C6UCO-0;_#kC@xliUu)N^0xrw(Sj1wcVSFaf6m|ZS+Cv~t8p52WM z{!!t*^sy`3bm2sO&CLUhn=u7*1*j%hFL{xUuC6OdpZZ{lXS1T=Bk{Lx-C{vu$|}pt zWvXYJ<3wMYOJPk%Ta&Wj_|MPXr+OmvGX>n}zaQSRkb*PsySmahe%|$c%533zieczT znCD_I+Re>+h0^C1jCPCynnp%o9yE1NlJr@{Fu7%tVh921PXV^_n00~ zH3^Isc>(#+7=4bh{C*(H*4v}7kn=9QAw4Ir{(ivYvn-`%f-HGhJ&8@YhwgY+j5-re zI$+DG=uqnh+?a1yS>Q}dlTAInUdM`m>NPidGChrPb0tWTlsot*M`xH)Q+s@0xQoDO7{ z*IDJ0r`Er*ZyH?^jW9dccG!2Re9$0eF0m<6+-liaxD) z-&ND~K>C88XZ5)Gs?7OtO?YM%H?a1I)Dzol_ggE>UhDW&FSqgYIihES8?idLDEM7f zaW;)zcNAV_YI#GpdxQ6r2JAX;#p{}3V{IvdJ=z}te6Xk;rU10%G=J3YWCF%GsLgHB8LgalwZWinHS*`KwU6Z znH_bt`AoY^cvP*L+sQnu+`Ot4!#)!+=Bc8r9GMf%z7jE*U($VT?kEx?ndGx9c^5LK z80J6$J{}qoR80q_XQnD+)!4+CFg|Ya@bL;o)>#<*9)xFA0T-4sScB!r@g?>;~L?<&Ud2*JrXA&uAe= zWk$Zg)9Ik6s6|a)tz~w~QC(gAk*3m(3vIM2;rI7$!S-t|>NDEO`m2j1z1bGyoD;K} z#^&bc6QNhvtZdRFXjN`S-r5?PV?Xr_us>IfaiwBkv|^>`ivPZo@73|kow+_HV?W-J7Eu(3S0pddKwDe8Q4rctVvZ=KCzw%!8YRvj8FK5Y z_<+b6KY^v6VCU)LnY^d+>tPZ%H6#hCVvsGEx=e3}$9GTGT>VwU{Mb$)7p|2goi^MZ zwRi8{*_W~(l!BeO6W{5{^&%`bVs6VKHA2!8T$jRqL9# zfzr#Wm{NTeYwIT~pO-2#WM?Dp9w|~sls@&uux)MQ#~d6AYs+oE78M&SlWJ-oYo$|Z z)_=S?oYmgm{`f%NFFy$LxyVAw;v*PJz2?%HE_vOMY|IT8Q&vl_0PxN~U(0u~Ux$9^ zQV=BU;#OdmPx~%sylP`1cj6|qg-*(HGkX8DR`Tu}02vp!pIeavv{0vEW=_BC$kbFc zYMNh)x-Im`sBTi~^yu2evy6|7+UFmA-rQJ1<8EDNE?hf3)FfE-T*8OcSCqxmwhJu+ zfwm%om#o$0Z1%k}&FQ$=>|FoUaCQ(DG(+n@=<&LJBcHw-Rce$*CK zJc1r9C{oFZ9<+~62~9{${5aTtPLAF1DQ=HcT`m2)D8Kvn4zo!<94@&bx7yn_@pJ7< z;Ni?Y2bi87_W7>3GUL#l!)rVlEr+jKFHSyJFuFP%rJaetF_)kQM@COl;?$%w^xU4y z$N29`ib+UhRaaLB+!V0W%YmI8lszr?K;Wu^Agp=Ut`x|t*~W8fm6%Boi_i{5I}5nz z&=_xg?Cc!(GP)x^a@`14v#j$i-iZFeAy}dV2mO#)h_fusZFLYt3tTlxsih%6hb+hY z?%z_HpAvjHLn3viU6l&xE-WhIijE5$d$-EI_GMpZl8gt#*dE;dL21&|l)j>(BJC`? zHL=}eBOQzTOwXDSA8&jAiRP%RtZa_Tu zLu}5~RL=#BjO7trGYblW)A&1Jp0MQEQX=%S=@F7Uu?*s5U|{e#%yN`<%{MO*N7Dr< zDT4}4zPGlv7H#ac3e0zDO_XB6{Xk;B?524P;(ZmRNcUHq_Z+Qb8a8auwmQE8I09ga z_9wcTK4ux_wi>CxS<(yfaNFK)4NcAQ=fy=u2Ae0`Z5WUkZ8{fDdMxLZPr2rDe3b^= zQ$oiHLcNDxo_N5oKJ5nMJ2)epC37lI%s5Mv`%@hs=Q~bL&J~8J5w$wr^?m&Z`i?C6 z_O_q6(igM%A;d{jQ&WrDelWF%3p01^EbH1yanF7J10b;|`}uY181&s0VpwUfLscfg6_buAD>^k zIVgunmu_JD>7Se;X3@X9LX7pZ?O%udg{XstzEM;2LWa-PbR;I_@9p+bf&`}7>czwe&fnvc zND)Uy(eC?{-|hS%B=5XjoTHD-CzD0s6gy6+-m zjNbJ>lz8bY{ z9CG(Ean}#ZKBuyb;$jJ`qosd<0w!Y2B-G4*!r!(0N$vg@G3PevWD{7;b{}%Q5=n6R zu{<;}VP6C?q0~Da#itU+h=HsXZ{e$xd?d7It@1K#?MwHSy(x^v_=5qYChvk!vOy0{>vIQ2eeW-);R)uR6w$S^>eJa=##?tw~ zmP7ep_?odL*F!dXKfg_y^o)#k50SkmVKvEnjHw%k=lPzN?)InJHCiU8NDW;)6Vu1Y zoq^s}djdkFw@h9Y<)cUXT7^KonbZgT<a zdLVscPbjjD`nC+%h}#Up5+Ll-u9rxkD@;#F5fC7sG*WRP5OlLmOSEwP#hRN{Wo5=; zckgBe?mL_*?$C8wY3*xmXvh*tqNbI9K?gc0KuKd6jJwfo$p$A*oKSuB*v?FH|BS!? zE(2rZIJc;;-@bo;Ix#b2c=YH|?CJJ-Qc^yPN(JxRdC0-^BxK>#`YsT7vG*erw&HYa9FGczxhl3s_w3?n0H^B-GD2$@60q<@o9KBIWfUN+CwUL zn~Z5aIU;%eS00l}!^DW&hoG`*Aqh5Rgyte1JvX|Nm#|N2=C%KB`-O>4`|ccb(Sj~g ze@WK#v?H!5P82Ps-hXD*t>NjR*tkGL9W$)aD;xkM(|yi8E0;S?CEbz30YZLoE4AW**}h6PAzSj6Zs}!zZC3r z`DaY!&r(gTD1NnK8BjiuYtBedC!AH;CyJDjVG=HEDp~YCz%20b@nr*pG(6Q*M<&!B z`a%Q77hscuEc5} zh1IVq=8bgUtQy;0Mw{E=;$mWU&V_NRrUmDPBqbkwf#s?WtgNgs_^662=0x8}yN!%t z9v-b(d@?WE9Ci}u{?kJXwsZ7DU!C|(vz!wWmCxTf*09f4PfxES$o-{dstF@J&QfPB zz~RAcW$gC!Cs{v0rsY%bd4JuYs;x& zM({y0YWAE)JKn;slDPb4TZ?BGPL_CC$ad7uus{W5zeO(6gV{7Qamge+c%V~)9~6j( z1d)vBY@@~zl19_5%EUkx&rCik16y9R;XDtMgoTes&s{kkU5JAgH@zNr)WSkz<}`Sv zu!qj`F~Xy1^lG%Clhpe!J0n8;hPpbDIY|6%HR^qHsFd>cSm?9Yc9q@SVvlT(vwELPG zZC!hDeUtgccMI}cf=e2dQ5Ov9Of>+&tsmS=voaPMSNYkXM51)=l%wm?Z)8m#H?i)t}u2WSfxgvi(g|?o#oe+V}XFIpyyL zZgO7$eHyJZ;}B1;QtuUR=eq@heYe@kep^_DxE_+WNNg~!^y_Quy?vBBfiDF_cIU{Q z5lWzw3wSg>;GCb4{q>zgh@KP>Atu){cyRbZR^|56BipQ+PZa#o>#K58-m>|lkGH9@ z*mC+m$RKir%*6WwnMqA3@asAQ{=l6t9FqtBUl5E-28H0fZfgJpe6Ij7kfDWRhk=^B z6oBJRS`BUO)ft$&c&CH& zwA=O7YJCWeLD$vQLknu({uvt4ksS ze3fkr)h>0tz)_QCZ62BYRaQzfos2cWSgW7#@>0AlOxb>@xIcu#PJybSD)#jH$etC zTz2bUkcf~YrR~Tt#n*k~(@8(11nc4|;Ty~#AR;1y*j6JN4atzcDiGuF);%A!JUcQ0 zd~19JTaCdln%+2v;f1<7WvePWzC#y(pgak-%D;jca2lA7tIE@N6nm=D}Z7n|2Mgr_YKvYs-Wlwyjk@GQxfOLwuh3MoC+&xTQ=~aW@esdlBkxA0TC=F)&ufi41;w z5FyEMXIhM5sR45!8WM)Bn;0Lz43yKk*;<&M@JxgC2((aUGdWe@`2f;CV!gTsN>gWWZwr>qE3UcK zaZ9?qupT^}`cldX-4*>gvb1fkgHg}|ggifcV$w!RwOcKVd5lNiz9qi&S#@tmNMh>? z_+Q3}4C#-2c7?Guzt%%FJQHbig<)fFz3F-$2;+<1%X>5^yE>zhsG0WqeqP|KsRqW8 zTZIK0jWE~aOI{W z{rpzXXl&UNpI6c4a58KE?JGN20XmdrdXFWT%=wHDpc1D^Nh2KnzFqYr!E7=A8Mksh?;T~oQO>uUTYR@dm42{yR|1f z2`|+r@S9#z1GF#xI$>IM! z+CRX@|2?ODZr2DX?yQ{=x^RJ16(#(G9^l728w%jabN@#H=8vBIKaEg-pTXLu-^oAZ zDOGSOsb}D{D5DtHpT0RbFz~#tzP__Ma9?Mt)B-p+p%pF=9lEaMiN*5q&M^*^UtcCDeCPT$IX&H_+{01~t&50&c7jtY$HB^M zQ9?t9(z_S|^UU0cC5<|tpI>Vc#TKTf3HLh_PQ|D>1%5qd+YL_6$as>Om8G}3G^4G* z=PmosNBQ}e53D9ixhS+TK59#6mr<9{&~+{_ey}l87oZ`%ta#JQqV8~SaJe#(bFazt z=!3+W+j+quHs$GN(&FL0q(Jb%9q zK<)Gfzl2yvOkqCq&E6u98H;uNo26erzl9X|JlITUOKLp%Ozpu4b(vJe-0-CmeVys$ zD>)l+VP|d5xw%Sd^$SG3-Ie12J)NE}wU3RvuF`y^y?5ccF)(D)y`vi4siT z+EnxgPlO6qK27%BSSCU;3d9o#PC}t#5;PYRxaMM}u3K8l#}>7?6?5$K0Wo_7(-5e} zWojnCG3|88oSP-MODJt`Z*PmA4e)T;r26wqXW~I>p8qjfNGeLnNJN`c;KGMP-vz0t z4zQ5#0$jLYKiQQXBH~p1s7;9&bn8}Re6;v@^f^Or5tW7?Sg5S;#`TVLK~sn(6Au@* zT+G4a9xo%D3vJ4#NqgY|4$Xj!idNrLz7z;!8?AcFk@T>i%cqKf}!(*=417^D`tCnnd>UXK{~2Nd1plj|}O@Ipw`dJo`_gFk0O5ITCett-%#2<(LqM6B zv|nYYPDl!ETQhqbngw!%AV;VDk%wcn!!89Mb9Z(94ksVDs^=EiI&@uYd7@FU!8a4a z!!jg{vjGmDuO;1tF$S(j3WxikK}uH>r%Fr{G?s~3_^jbjgWLdZOv&z2iQ+>aQ}#8_ z)ySPQ$LxZ-b1^`BtA`IVBfUDAbmpd<&Q2{lj#~2eOie|1kF?yNpX#)GCqbTO90(#ds8wg3QBhJzNPN zyqSj@kHg{$RjVKnAMiDbp-pncx?6kl~SmZQ5yz4T8v4FYj&97EXe ziW1dLj1aR$G-FNF7Mk&=la4-uB1$1T2e6S|798?H0xHB4`<0KR3rRhBc!`zXDS>Kk zfb?tF>I5wDK(?`yK$Hs;4K3p-9S*?PpX$U*HmEz#vC9u?hVKNxaPqHl)Xgp>-=ad@ zf}I2kZL7;PT8-&XYY^rAX&#L2p?3XFK=eGaL?HJ^iSEB$xNBDltx(&iaBYFEQ#EDp z~k8>YSXgT()0 zs`B@N;P2!*br*@`pdWb4}f&$nJV>9JR1ed%nH6<(EnG#@9Y~ zwoxxLD>BrLmuj|xI?p7;vA3YM;nHmgz9;YEg&(hXgXZnQ<+<~d;+ zoK$s^Gv|s(+6;%bU#E)suU49UDsw?Ab0=n97+mQpiM$?tF)qA&aC5_>Wdz)L;T6T3 z66-+%^5ch7K-nt~kR!Z36qQE;pyX2R_@VgXR}o?12s_SbpX%aJcr_bF(s6D8I;AAM z8!E8BYgYVtNkg0#5&!9B+6$cqF=hd?r%hGh$iakWSbAAL_Ap*bTdhu8Zr%0kg(&kT zuln#4AHIruOq=n`5_~i@!!|q|9I`e{TVK@H+@a#E$-0uQ3r-|ITET*BsYk?TFLYSs>f&tsJ&4XSQs z3DK>@w^q)!l+Mnxfm+MS#eAO&m(F;mu{QSx|ELRNT?j*f5+m$M%#F8q zl|q@)=EWZv_b-;^ZCou-ZS{B?%iz|&sz3}4FD*R5Q8N?sM2VR83d^33<$G)e7eg^1 zy}w04hd{Q=6=ItgX35RRk~`1aZC*xDibeJJ_cMMKq&_x)wQc+gj=;6OMUiitn0{iX zphE?12NtadAw91iGYo;WD>c12(y!N*>6NoIsQNGjed$odpiR8IL;KGQ3X;AqhC`TR z@eQVT`-hwF)Al>ua~IMWWo{DYf) z#eH#jBju}?xUuLTAQ8zk@3D<7`NfHvca6(KqD7D{n#Glov{mY79p_#Rv!`-R(L)7J zP3gKG1xg{s=iRp;xtXrECxdai!ntlN=g@{i5{kx_=f)iJBSARsq-pdywj)ofZJxCg zP*7QzVG=-??^5~PmaSr7JPPCk`Wh=Hfn=A^gpM~*enbN>#9Yg%T~xo zft8om>u`k80-3(g)rsodYvj8#h8A8*4FY!F%y@xvP}Ui1j*BXk;^WzH_ge$#V`k`9RXI9v&3G1 zu0Wi7H2OnaLn|mS5JMjvOf`2Nc8^Xh5F$fQ# z{Kv;Jn@M;4gMyt72HXkVI(Y~4L-e$iS{~iH=mWj(4S$TL6yW(CyQm16L@A;s-&|Oc){}K)ExN0P2Af-vSJ_2B6;!ZY2J5ILN;* z%uB&}38P4g669awsW*48J*pe33<>)R{^L0v%1G5#Q1r$3(Hfuj+EBlhov zU{F^Q#ajrjDFlOI$z(}q0@lR~>q(I$;=DlDJLsqz26_}f+PMFXg~@icz9riVA?X0P#{VaLm)bn{3zho&>UQ(pr9G9 z0q(#9S?T>-e_82sphcZb_P}9qj(P;J4s98@oFrTpG>hu#m>cK|!4TlygW!$>Ur3yj zJBd03;p#>51TET9Fqk9|y*H;B7LWBJ{F?}>PB?F@%f3D)ZZLgAU8J@ag?!o4%}`y_ zNfxY>+Q%2?MIn%gf7OOdN=eG>KkyD9zU=G-bH|dMF-`^ute>-)l?mR_%UT)*lrVytVLVJ7{q^OH@iOvo zPh)E%B*Ie4*9jpb?{4nq=NgFD#9h|GYZ}Vq;U-QB7QQGMf2_KhJ{sYLbU~YW%lJAX zhVa=QZtjUffk`B?+(jBD^HAKj3c~KNRO%3427##z=mX@!T zP9QQ+$^&f`fOW=5;T4R%G^NdvX6Cp+S9ui7-AB)d;w+=1FWW@YY8`(^E9}OmnL8|>gl&H$+1% zWYC6w2Bz-bCYokuKtur17lAg@(Ka);G>2Mw!HtmWpp}I4whVNI`FQJ^7{iRcO$btC zIUNr4Tp7P%ASxX*~l2S8J@RzN|UQObP`$ zX=qFN%DDJT6X7VNx`v;INuZTqAQ&rUU`5fQ7&y8}8(6u5dktq#R{~bo#0sMu=x9X2 zVRYe6erBF>KGq%-Pk$LS7~%mV=)+uOP*54L1KPd>7gwaCKGX$cjMYORV9-FQiIbkA zvB_mG9W-^tCJJaRV}hwOa8eC43S6L$-Wty8{uG22%+K6S7Om?D99eJbl}%$`ol`gF?uhOt?~W`sKC9 zu19iqis6Z`pwU7+TOPFn@>|%Qt+GD{P6y3a;oN!D6%>Y9cwrZ1K&q7 zo!nE%NM!`GT-rqr4Qi{J8GGeaZYl#CaT*!^7O~f4!oWKE=$+XG20j{Eh_o`TX5|zw zEsfg$ug@Z)Vt&7keQ`LbdWVwr9)uzfTXZg>cHlxtRyZo!} z$wM`M?Ty!th|zv2bI0U(C|>^%8Wt9|m_JbJA~J4cZGFDtnbC<0_V+qc<=QJRe^1#_ z2QbG+6VcCDyEb-Xak2eE`%|;LAD?pcVDj>!X1V$aaF-7{Ha0ekq`{Yj#a5$G)47`Y zdQ<5Net`ly|DCM>s~TU=Pm^~=jM}1@xSXfEpMDw|N{@NCQ&3cNf$a?`WX1-eX?egb zY(8>%x+g!D#wb&z&hc~J)R$+%#pgd+$J^&y6y9mQEAl|#q&zJx1nlDq+uBM|n1qt= z>}`kbX$-1y?Bp~?hdPI4ow@Dyd#m>9qXQ?}M?>dI z@D9tLYi;c|mJ;URKW?6*E`k+$mb|rgIbds{1^4MOYVq2IVD-6%-Ozx(nqf4BX?MLd z?8k$Kt(@B5jYqsj8xI8hOm?|*w5kh(&|KSCnOTe@1q-e>cMT8QuiHnbt1cyXo^7H} zNszRDDcVX5VdIg^N2gln=I76ZMdg%jRr}1G7dJ|iPw4MyU&U>$EtKFpPESouor0MU zP4XG@?w$2+!%I`2au)jYs@+Fj05ZPmL_ceXuIf=eK(9^&5nEYts4$58G>O8UEvu>yhm;B~Ko8b8vV%kBq% zP4{KFm1XfVr0H-$-!SaW`9tl}rAvILw0s!Td^n<6cn$AVV;n-z#D;BO_a*c%8U0A~ zQ8XF-TY9B0N>ROADwsRlZ>cFOxp?H0_uDl4Z#k>eTQ5_Kh!CIi5qk%%8ZxP2lU{?4 zSUxe(i+dcEIubZjs5yzgt-3YJ(q}9%n-~>aESdXBdN)vpwzMO{Mn1@1ec zzsmZ4lz$<%7fu5e${!AHJ-=|r@MM0+%0|;W#enBa?-UgrJVgh>j4bDUmR`GIik3f? z4)*qCf0{owq0Qa27XyviY3=Hx$sJ>$yK2w{`4Qp>MIM4JJR#k>WCa!Q~?+IenP#d}4h0%%UR^oJg`?#Q9b?X-? z%tmD))+nieDUPr4r;Ze4&)u>ZyccG34N~=o>6urwR3VenKj(pW8Jq2z@vzAvudDC5 z1BCx~>d2OM=*H*Fw$+B+ZB}?LZiR^}q(&QKU}GOsEM(xZ7su705f?%iZj|^hj5#Z{ zmDs9o4s_nps^1uWwWtv(L2x{>w=Y*1Yd44H6RA$@^XmY&?Ud-j?o6uK#iFq7_Lt{1 z`;UvfrN;OEV;}qEUEU{|^gNl9eiF@E*>u^%UGi-T5Aumvf{%`3NKWU0k0ThRXXTuo z=@QDH)ry4l5@YI_$9ZM%m1p~eY|l76uqws(m}(iU@-@m}$AqccykS2{EV??TT)L!o zLal0uDL=M&=l#eGe~39zB4h2)`eUOBE>vXLS`)9Z$o!PD#R&lqtz$}5yLt)V<{Vv? zdJ)=NFyCK&mGtuK=J2YDg8%PJi$-z^)0308uN^rdoNBVhbvkFBa%F;a<(|xD!GZWW zmhG~l5CdxLe3neMj@-WcXW1_>yz|emFLz7k7?k~%3wLIL{zdvpQ1#H?S9#B_o>A~R ztH7#p!agpMac1C+n@y)=c{M9m>`p(`lWxN!5;WJ^?u*^uUS4@;$sx$W#bFXQ<4|WL z_iF9agL?DzbavUg`3cqC0D-piI>e%o2g%hOje(g&L91WhHO35qFAFogR}ytzAA=8j;VTws|uxxB)%wGf7hhp;d+>$ANi-|=Xt&GLD?3_&U7VA;spoEYF)*U zxIfnu*)bK0gXs#S`;0TsCg(%ugIa3_EKW3aS)6@A4}|e~(e-@rB6;8SmbZhiFK_u~ zZ$Gi%oo9T&e|QZjq;~1%G104#`H=>Pdf->r=hD#SdVXzz%U#HE5H)L)-JKipqEZZ? zCk-7Z!|+nZY7Dc)49_QAm3QYPOYk@PScgP#$WiPz`@utBP3~Bi7M4Y2?NYIX7=3kq z;+J>LZMlQ$|L($*#>??xTTW9mGe^pCxNlj}Ja>wM$Hj7^<@g#cx?VHyMaiUNlhf08 zNTExqO&NSR>jBZXp{q3`C_lf|;?$VPH4Wi28u2B2liofOLB)Vp0nrdr)#S`~-d+C^ z%ULJh&7>-^m|_LfqkD`n{6GY*JyB?>F>~|lg!p@0Nmh{8%oHjRPvJQskah^|vEPd^ z;tQ$4&OYduOx3UQFZ#1RPMR!kl@l33ci6KRt64{D-#MQ68;NY|gB28()&S*sT|O=I z@Qd9v(MCc-VuiDCJyf$2Z~k>ZOlq;NwL9zxLipYEpT^o&N&+4Q=2BWV)QdI;_Ufm1$wTzR`rc?pvSX};W)c!shel`E| zYB+Du>xzIED)!~??kvQIot-#4lQvJ!a*>Zp)U-}uIehpVwG#5|_aFl*LT@lS@ubgV>05?_d4f~vHaCho+-UKW!Ek`Pb%;|P-j~dWIPO_>+GVwXm?QIO- z?Q1mu(__K0J;=a{rH@IXCJI1HXZ~=AOP2Pjy@|rZX=ye4X#|A#^rxY-g77t3Jux}B zFXxgP4V!Fu4C8)RHBP$!p7Q@}*yP-^#X+k?;M?rm)t+ButNa%pc?{QD?Etpjy0yNP z)6lRRR{1_dS*fZaCr9W!e(<>h<>$K}t#^?tn}Gk8xb>V*hGMUX+m!2rw1w{mr-W|3 z7hnj2>}rt#8hplr5nY=8fV99uHkSE&Wr<%!MT|0T>c;epjJH2%AFc~x8$F%LM7*kI z0rtzn>z=zJ-Fd?lM)$-@(uj&e*iLPMU5&+u4CPek#vaWzkXfL#pRDE_s4k$H;lO%E zhxShbEIz~=3~jwG!+tBL4i`rsDsu=Viwa}G>0qww6yReb4O>gOe;(nevw(3B0r>jy1=&?#`TQ zlZ6}+=3|wi)s&z9JsNxpa`SBC)QCa?Wh{3`iPnPFOx-s*NA+fU`S&9w>`m5MmRh~B z4XK?yis_Si*J`XcUp_ZTmF>CcY!@XzO3%=yL&GNNWd8fydAg?9Vs`nCq@gkKF#7?C z-e-T{BJU-y_Kw=urRmJ98h!+psi=J4lgT+WTH>M#=bgHWG=JS>1v#z{M99;a^QuNH zLtl(MS}yidv{}J$Zqm(^V7C>&UjOc935r+umCVj}NfAUIZ3h zc>nbBO|~Z@VrL8^eL^b+bDG|2-5_ruq7KimEqsr*yD9s&QIEoRTMQ_SsXa+LNXIDv z*i$YX+ajqf{VR0%iN0lYz+ciClt$STO(sz(A$RVLA@FECE|j zAMd~yy<|Y_87rPfU7xsl3f|oDxf-^kymGyGF6sU-xtTZP4<=wq2Mk>S=X1tIn-Ox9 zpY?pBoA`DHx$Ku@$iip8pqiSRyQ`5wK|x|lHtR?7x}%sc&(xOGRg03g0(6 z25kXjPefdTz2_BS20m66pm~PnD1n__hXo^cxMBv)?vypf8k0dIa3%yo*pGkBx-@LJ zWW3gx_F{GySadcEKhs`tjIdqV^zX5(w#vzI_mw1n{2%P;;>qj2_t+0%|Vu8?2vb_9AM` zeXuU~AHTWwggg=nhah=1PE)6*p?h&mEz&9OOz3{$W*G>XMCj1(MQJ{&Ul$}ak@kiB z-=^H4+_%|*(#38wqt+}$G_@Y`hvU+V^AWwh7FDamLAZ_-8LvJ&zj5u@wVzSGnoV)n zNm7N`y;M6D{CMkH)#nhlhrCLDbN5hpg=2ls*v9cc;GaFP_1*xg3cO3@3u!R^Q{*Fmq%o?|EVDddoe+^*fk=OPgbY+4klcGf34tPO%Yj1O|P z3D&IYQvVX~i5eiU8Xmz>gz%msXa|4qn*x{PV6_u=uwX+9SVe%-%e5j@Nqzvh@2-4a9QF&8XD z*Hy+BpdX!qYE()QZ^p z(gg0;V42T@LW@@dJoR=*f;vt*G<1}@baKW~5+?+?oo@IiU35Kp?jCSS(H$=|vFn^` zbk2hdnu7#x)lgem(y;jVw{c>aY-N&$rsbDP@~Fl@F}5k`#3=syJSbj`=RB}~*8FmC zDSaiPd@ZQmT5h}z0fMTL_~F&&M`llYQ8{l6c2&c6f$KE8*o-Cd`uH7D4WLJ|Ila6mY?`rr;T5q_5MBX%VQDQ63^@4r;K@S`}8PsW>pOH{NC{Ju;xei)}N_3`M}5e{^Bi|FLvz|WB2$= z3#%6Hc3&~};H(8WeI|E`D_(P>M1_{8emJ`&KK&|!9z9_mEtYMyaMwu1N`~EnZ3Uia zJ$;HGKZyG-$n;e11|)A{D^;j|BY2JXy~eH@Sh_~Y!{7zrA7f6&r&+`m52&*HHnmru zD8n}dK22Ij)Na7TMiVcL5!d7-!VSfd?4yA*C;&tBZ-Db6)B1=YOed4!Z~6>8J%*~w zrtfJcsyg0is1RQ<&9wz$z20OSlfW{U$==mV&xEqgAv;?{#eARS1xlx~+*$TNa1M#= zrFYp92bX5L0*9tux#?EnQ`TEVSwO)%SRLZF7suN>Fl#njbsU3O<0?i#Ng2NPLmj)$ zbt{3ARgU9RhYHUx!ra{4s9sx7!+zY`DTPr+cHy&>_il(%rx5P*$|AOU$~$Sr7aEDQ zN!rPylL?rHyopHn(Yc>n?I#^(_+1mEeqi*_F6~_?E`RXCYS-*2Te(1N`bhvIQrZ$CneBt9 ziSDnTQp>>Dx=-}tRacv{f6%(!4vHaPRckS3O4q1*FF8}c`{C?=Owzjbm^nBfaIp}|d zzXFryzN5I}tczn@v&Rn}25H8LD|Ko2C9O&{mq&oJwNG7Q5Aa!@?D`?v!mZ?+RF<-q zl66$}9y0i9dZQXYI7k}B4@y5#CO)(lSe4$nd$aPo(8u9n$(CE(cVpQ_QWP})Ar{*_ zo%^1D=yPn2#0Bu~44X8dm!6#;Zn3qKzHH{k;8z(okDum{)SYJ7kKu=2gx zqZlCJ0=sP0YQnrPhZQhVW(J+hf4lzEl(*iDxpZdS&&vqZW#(2q`#{p}^bG@XTdS(f(s5uL9|#>2`i+1;uA)p_&nRy~i%0xBs3r^k zmU{PRvQUI&B0C~$iS6fM^d{MVTJG-J_gW0?^3P>+>Ix$aqMsoBAU2jAE7*W*R6 zGL5s1T*`wQL%_zd&W;zD^G0#W5$}Dj5?*dotgUG z=bsd*`dgzt`54^mD+f@)pzOzU24E|LQba@}I3w4hA6{g(^gcX@ni)TmaJ?I(Pq?L@ z9Wdh8%0+4UaTF(8FO2%yXKrq;dGHxJ|ITVbSt)a!_*gjIo2fw2#)I^m>r-G~7ih`GqZ%4Kv|A`mHBd-{nVJG9}z;pcZ!Gx;WzRpL? zXXK4#Zk&036aU6YW!_-TfWI3$%yHVppKO7@~Eg!0z3gnk#aV{D^@-2 zafy75Sw^zspTi!=#ZGFYX76>+#z$%8&AT-Azz`x9D((PH8-BMi?dBf%7(4DNFv}w3 z9+KU27nHvR9_Q#ixTRQ>zVnK8QQxXrkcG{c(g-jx?1O6hcyzNxyLF3PH*ebsM7VzC z$+?_@o=0XnEXbOGfkK-K;id9y+&$)-stu_h+|oZPgEuG$7`CvTiQoNHI+DjzD#;57hP5&i)i+%+kC=2L-|+u&uF);1pry}YeXg_s7xKzA>__hcccDtCgCXD;3g1m* zFr4Wcb(F@z)~A-!ec+843W-F*9@qe+^$Grqv`gOqgtP~RB&G?MpX25#d%syX3zFC@ zHbYZC4>(GE9ZCy3^?hdPJ4cRnrtMsQG+>7;g;JqKT6qqjXgraVpM<`&jc(szeNkhC z5uF)lLC)0F1pXQ*MQ&lSBfX`aDq=;oi@H5MU1it|^xl_mH9J2H} z6pL)7@8(-&9X%LvE940Aw>{Et`*Lh4%D?$U>BWoMkxLIxKQ#a%4t)5Jhjo;f%PNFyynI<+u043=#rHqo zzCHBz^=*6gD%>hNrs!1LB}728T>rVF$29W3wROD6nphx6{iW zv(cY5%{k`1T$%M9Na;W5-tyYZv1uaIfG&J$*Y{Fq8io?Er=@qY z&+O&xYJ9f=gNNK6``dLt>l8h-F9!k`*&({e@_)Pj_muxn8`hX@R88q$ButHuK4O>t sl#567Xrm$q{92J2XNkfa7|@&t_Ym-*{(UmLOZ`G=8EQV)xOC-z04cnqF#rGn literal 0 HcmV?d00001 diff --git a/docs/images/08_1_pantalla-principal.png b/docs/images/08_1_pantalla-principal.png new file mode 100644 index 0000000000000000000000000000000000000000..29e252a8ca0af92ac5cfcc12856d674a891d82f2 GIT binary patch literal 13609 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 literal 0 HcmV?d00001 diff --git a/docs/src/01_introduction_and_goals.adoc b/docs/src/01_introduction_and_goals.adoc index c222772..d79e835 100644 --- a/docs/src/01_introduction_and_goals.adoc +++ b/docs/src/01_introduction_and_goals.adoc @@ -48,10 +48,13 @@ See https://docs.arc42.org/section-1/[Introduction and Goals] in the arc42 docum * Los usuarios podrán registrarse en la aplicación. * Los ususarios registrados podrán iniciar su sesión en la aplicación. * Los usuarios registrados podrán jugar. +** El juego tendrá 5 preguntas con 3 respuestas incorrectas y una correcta cada una, generadas aleatoriamente. +** Cada pregunta deberá ser respondida en un plazo de tiempo. * Los usuarios registrados podrán consultar su historial de participación -** Número de juegos +** Número de juegos jugados ** Preguntas acertadas/falladas ** Tiempo de respuesta y partida +* === Metas de Calidad @@ -78,9 +81,9 @@ A table with quality goals and concrete scenarios, ordered by priorities [cols="e,2e" options="header"] |=== |Nombre|Descripción -|*Usabilidad*| _La aplicación tiene que poder usarse por un publico diverso_ +|*Usabilidad*| _La aplicación tiene que poder usarse por el mayor tipo de usuarios_ |*Rendimiento*| _El tiempo de respuesta de la aplicación debe ser rápido_ -|*Testeable*| _La aplicación debe probarse con cada actualización_ +|*Testeable*| _La aplicación debe pasar las pruebas generadas automaticamente para cada versión_ |*Disponibilidad*| _La aplicación debe estar disponible y caerse lo menos posible_ |=== === Stakeholders @@ -108,10 +111,10 @@ Table with role names, person names, and their expectations with respect to the [cols="e,2e,2e" options="header"] |=== |Rol/Nombre|Expectativa|Descripción -| *Cristian Augusto* | _Una buena aplicación_ | _Profesor de la asignatura_ +| *Cristian Augusto* | _Una aplicación que cumpla todos los requisitos propuestos en la asignatura_ | _Profesor de la asignatura_ | *HappySw* | _Una aplicación buena para atraer al mayor número de usuarios_ | _Equipo de desarrollo_ -| *Wikidata* | _Un buen uso de su aplicación_ | _Empresa que nos facilita la API para obtener información_ -| *Usuarios Registrados* | _Una buena aplicación_ | _Los usuarios de la aplicación_ +| *Wikidata* | _Usar su aplicacion con precaución, sin sobrecargar sus servicios_ | _Empresa que nos facilita la API para obtener información_ +| *Usuarios Registrados* | _Una aplicación que proporcione los servicios esperados_ | _Los usuarios de la aplicación_ | *Usuarios No Registrados* | _Una buena aplicación_ | _Los usuarios de la aplicación_ -| *RTVE* | _Una buena versión de su juego "Saber y Ganar"_ | _Empresa contratista, el cliente_ +| *RTVE* | _Una buena versión de su juego "Saber y Ganar"_ | _Dueño del producto_ |=== diff --git a/docs/src/02_architecture_constraints.adoc b/docs/src/02_architecture_constraints.adoc index 39fb0ba..52e29d3 100644 --- a/docs/src/02_architecture_constraints.adoc +++ b/docs/src/02_architecture_constraints.adoc @@ -26,8 +26,8 @@ See https://docs.arc42.org/section-2/[Architecture Constraints] in the arc42 doc **** -Este proyecto está limitado por una serie de pautas marcadas por los responsables de la asignatura. -Por ello esta aplicación está desarrollada siguiendo una serie de requisitos los cuales nombraremos a continuación. +Este proyecto está limitado por una serie de restricciones de arquitectura marcadas por los responsables de la asignatura. +Por ello esta aplicación está desarrollada siguiendo una serie de limitaciones las cuales nombraremos a continuación. === Limitaciones técnicas @@ -36,15 +36,15 @@ Por ello esta aplicación está desarrollada siguiendo una serie de requisitos l |Restricción |Explicación |*GIT* -|_Esta tecnología nos permite almacenar el proyecto y llevar un control de versiones de este, utilizando el servicio de GitHub. Además nos permite +|_Esta tecnología es un sistema de control de versiones que nos permite almacenar el proyecto, además de utilizar el servicio de GitHub. Además nos permite una continua integración mediante la paralelización del trabajo usando el sistema de ramas. También GitHub permite organizar las distintas tareas de cada miembro del equipo mediante el uso de las Issues._ |*Docker* -|_Este programa es utilizado para desplegar aquí la aplicación web y realizar las pruebas pertinentes._ +|_Este sistema es utilizado para desplegar la aplicación web en el entorno de desarrollo como en el de producción._ |*Wikidata* -|_Todas las preguntas del juego se obtienen a partir de esta plataforma, generando aleatoriamente las preguntas y respuestas correctas y también las falsas._ +|_Fuente de información desde donde generaremos las preguntas y respuestas correctas e incorrectas del juego._ |=== === Limitaciones organizativas @@ -80,5 +80,13 @@ a través de nuestro grupo de WhatsApp y en casos necesarios realizamos reunione |_Para crearla usaremos la plantilla Arc42 con la finalidad de que sea sencilla y práctica._ |*Accesibilidad* -|_Nuestro aplicación puede ser utilizada por cualquier tipo de usuario, sin importar quien sea, ya que será fácil de entender e interactuar._ +|_Intentaremos que nuestra aplicación puede ser utilizada por cualquier tipo de usuario, sin importar quien sea. Seguiremos los estandares de accesibilidad y +usaremos el color, tamaño de texto... adecuados para ello._ + +|*Estructura* +|_Debe seguir una estructura fija y bajo los mismos estandares. Los diferentes modulos estaran separados en carpetas +principalmente: 'users' para el la api rest y el registro de usuarios, 'webapp' para el desarrollo de la aplicación, 'docs' +para la documentación._ + + |=== diff --git a/docs/src/04_solution_strategy.adoc b/docs/src/04_solution_strategy.adoc index 394a729..c2e909f 100644 --- a/docs/src/04_solution_strategy.adoc +++ b/docs/src/04_solution_strategy.adoc @@ -31,14 +31,14 @@ See https://docs.arc42.org/section-4/[Solution Strategy] in the arc42 documentat **** -* *JavaScript*: Este lenguaje es muy buena opción para utilizar en proyectos en que se emplé la tecnología REACT. Nos pareció mejor opción que otros lenguajes como TypeScript debido a que su compresión y manejo es más sencillo. +* *JavaScript*: Este lenguaje es muy buena opción para utilizar en proyectos en que se empleé la biblioteca REACT. Nos pareció mejor opción que otros lenguajes como TypeScript debido a que su compresión y manejo es más sencillo. -* *React*: Esta libreria de JavaScript permite la creación de interfaces de usuario para la aplicacion web, simplificando la creación de interfaces gráficas. +* *React*: Esta libreria de JavaScript permite la creación de interfaces de usuario para la aplicacion web, simplificando el desarrollo de las interfaces gráficas. -* *Docker*: Utilizaremos los contenedores de Docker como lugar donde desplegar la aplicacion web, de manera que pueda probarse la aplicación de forma aislada. +* *Docker*: Utilizaremos esta plataforma para desplegar la aplicacion web. * *Firebase*: Esta API nos servirá como sistema de autenticación del usuario para poder llevar un registro de su historial de partidas, así como algunas de sus estadísticas. -* *Microservicios:* Enfoque arquitectónico donde el software está compuesto por pequeños servicios independientes. Lo hemos elegido por encima de MVC, por la facilidad a la hora de modificar una parte de la aplicación sin afectar al resto. +* *Microservicios:* Enfoque arquitectónico donde el software está compuesto por pequeños servicios independientes. * *MongoDB:* Es una base de datos NoSQL sencilla de utilizar y que ya conocemos. diff --git a/docs/src/08_concepts.adoc b/docs/src/08_concepts.adoc index 591ccf1..a960622 100644 --- a/docs/src/08_concepts.adoc +++ b/docs/src/08_concepts.adoc @@ -1,7 +1,7 @@ ifndef::imagesdir[:imagesdir: ../images] [[section-concepts]] -== Cross-cutting Concepts +== Conceptos transversales [role="arc42help"] @@ -56,18 +56,26 @@ See https://docs.arc42.org/section-8/[Concepts] in the arc42 documentation. **** -=== __ +=== Prototipos de pantalla -__ +En la siguiente sección, vamos a mostrar los primeros prototipos de pantalla, aunque pueden estar sujetos a cambios en el futuro. +*Pantalla principal* +La pantalla principal que aparece al entrar en la aplicación, con las opciones de jugar y ver las estadisticas de los juegos +solo si estás registrado en la aplicación. Además de las propias opciones de iniciar sesión y registrarse. +image::08_1_pantalla-principal.png["Prototipo de pantalla principal"] -=== __ +*Pantalla de juego* +Irán apareciendo 5 diferentes preguntas con 4 posibles rspuestas, de las cuales solo una +será la correcta. También podremos ver el tiempo que trascurre durante todo el juego. -__ +image::08_1_pantalla-juego.png["Prototipo de pantalla de juego"] -... +*Pantalla de estadísticas* +Solo se podrá acceder a esta página si estás registrado en la aplicación. Aqui +podremos observar diferentes estadisticas en los juego que hayas jugado. + +image::08_1_pantalla-estadisticas.png["Prototipo de pantalla de destadisticas"] -=== __ -__ diff --git a/docs/src/09_architecture_decisions.adoc b/docs/src/09_architecture_decisions.adoc index 54a06d9..b0b45f9 100644 --- a/docs/src/09_architecture_decisions.adoc +++ b/docs/src/09_architecture_decisions.adoc @@ -48,13 +48,13 @@ There you will find links and examples about ADR. |_Marco de trabajo para desarrollar la parte grafica de la aplicación._ |*React* |_Hemos elegido este framework ya que simplifica la creación de interfaces gráficas._ -|*Angular.* +|*Angular, Vue...* |*Base de Datos* |_Donde almacenaremos la informacion de los usuarios._ |*MongoDB* |_La hemos elegido porque es una base de datos NoSQL fácil de usar que ya conocemos._ -|*MySQL.* +|*MySQL, Postgress, Redis, MariaDB, SQLLite...* |*Arquitectura* |_La forma en la que se estructura la aplicación._ diff --git a/docs/src/10_quality_requirements.adoc b/docs/src/10_quality_requirements.adoc index 610a688..959ddd4 100644 --- a/docs/src/10_quality_requirements.adoc +++ b/docs/src/10_quality_requirements.adoc @@ -77,9 +77,9 @@ Tabular or free form text. [options="header",cols="1e,2,2,2"] |=== |*Calidad* |*Escenario* | *Acciones de usuario* | *Respuesta* -|*Usabilidad*| Un usuario que nunca ha interactuado con la aplicación | El usuario quiere iniciar sesión y posteriormente jugar | La aplicación facilita al usuario iniciar/registrar en la aplicación y posteriormente se le muestra la opción para jugar de forma visual -|*Rendimiento*| Un usario, un poco impaciente y ya registrado quiere jugar tranquilamente una partida | Empieza la partida y espera a que se procese la pregunta y respuestas | El sistema de obtención de preguntas es ágil y se muestra la pregunta con sus respuestas antes de que el usuario se canse de esperar +|*Usabilidad*| Un usuario que nunca ha interactuado con la aplicación | El usuario quiere iniciar sesión y posteriormente jugar y que todo sea intuitivo | La aplicación facilita al usuario iniciar/registrar en la aplicación y posteriormente se le muestra la opción para jugar de forma visual +|*Rendimiento*| Un usario, un poco impaciente y ya registrado quiere jugar tranquilamente una partida | Empieza la partida y espera a que se procese la pregunta y respuestas, sin importar cuantos usuarios esten jugando en ese momento | El sistema de obtención de preguntas es ágil y se muestra la pregunta con sus respuestas antes de que el usuario se canse de esperar |*Testeable*| Un desarrollador esta realizando una nueva funcionalidad del sistema, pero se equivoca y produce fallos en la aplicación | Igualmente realiza un commit en su rama con el objetivo de incorporar la nueva funcionalidad al sistema | Las pruebas automáticas detectan un error de programación e impide que el problema se propague a la aplicación funcional -|*Disponibilidad*| Un usuario quiere jugar a las 03:00 AM | El usuario inicializa la aplicación de forma estandar |La aplicación es funcional pese a no ser una hora habitual +|*Disponibilidad*| Un usuario quiere jugar a las 03:00 AM, sin que ocurra ninguna caida por mantenimiento o cualquier otro error. | El usuario inicializa la aplicación de forma estandar |La aplicación es funcional pese a no ser una hora habitual |=== diff --git a/docs/src/11_technical_risks.adoc b/docs/src/11_technical_risks.adoc index a115873..6e501f5 100644 --- a/docs/src/11_technical_risks.adoc +++ b/docs/src/11_technical_risks.adoc @@ -42,7 +42,7 @@ suficiente tiempo al desarrollo de este proyecto._ las planeadas para solucionar este tipo de problemas._ |*Caída de Servicios* -|_El desarrollo del proyecto puede verse afectado si alguno de los servicios utilizados, como por ejemplo Docker, pueden no funcionar en algún momento. Esto podría bloquear la entrega de alguna de las +|_El desarrollo del proyecto puede verse afectado si alguno de los servicios utilizados, como por ejemplo Docker, parará de funcionar en algún momento. Esto podría bloquear la entrega de alguna de las funcionalidades del proyecto._ |=== diff --git a/docs/src/12_glossary.adoc b/docs/src/12_glossary.adoc index 359904a..edb1d96 100644 --- a/docs/src/12_glossary.adoc +++ b/docs/src/12_glossary.adoc @@ -40,18 +40,9 @@ See https://docs.arc42.org/section-12/[Glossary] in the arc42 documentation. |*Arc42* |Un marco de arquitectura que proporciona un conjunto de prácticas y plantillas para documentar y diseñar arquitecturas de software. -|*Back-end* -|La parte de un sitio web o aplicación que no es visible para los usuarios finales y se encarga del procesamiento de la lógica del negocio y la gestión de los datos. - -|*Contenedor* -|Entorno virtual ligero que contiene todo lo necesario para ejecutar una aplicación, incluidas bibliotecas, herramientas y códigos. - |*Docker* |Plataforma de código abierto que automatiza el despliegue de aplicaciones dentro de contenedores de software. -|*Front-end* -|La parte de un sitio web o aplicación que interactúa directamente con los usuarios, visible y accesible en el navegador. - |*GitHub* |Plataforma de desarrollo colaborativo para alojar proyectos utilizando el sistema de control de versiones Git. diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..c0440e0 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,6 @@ +{ + "name": "wiq_es05a", + "lockfileVersion": 3, + "requires": true, + "packages": {} +}