From f720ca9efb8f81578b156eef15e6570d5312d3b2 Mon Sep 17 00:00:00 2001 From: aymanxoxo Date: Sat, 12 Aug 2017 23:08:34 +0200 Subject: [PATCH 1/9] adding the assumptions --- assumptions.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/assumptions.md b/assumptions.md index c47b198..ccf045a 100644 --- a/assumptions.md +++ b/assumptions.md @@ -1 +1,6 @@ # Assumptions +- url expire time will be configurable by the system admin. +- editing the url expiry time will not affect the url shortened before editing the expiration time. +- using ASP.net, MS SQL as it is for .net position. +- shortening required authentication and each user will have a profile contains his own unique urls. +- retrieving the original urls doesn't require authentication. From 5170d9f6c5327815dff2ff53d413a01048734694 Mon Sep 17 00:00:00 2001 From: aymanxoxo Date: Sat, 12 Aug 2017 23:26:11 +0200 Subject: [PATCH 2/9] adding configuration role assumption --- assumptions.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/assumptions.md b/assumptions.md index ccf045a..8e2620f 100644 --- a/assumptions.md +++ b/assumptions.md @@ -1,6 +1,8 @@ # Assumptions -- url expire time will be configurable by the system admin. -- editing the url expiry time will not affect the url shortened before editing the expiration time. -- using ASP.net, MS SQL as it is for .net position. -- shortening required authentication and each user will have a profile contains his own unique urls. -- retrieving the original urls doesn't require authentication. +- Url expire time will be configurable by the system admin. +- Short url is configured by the system admin. +- Editing the url expiry time will not affect the url shortened before editing the expiration time. +- Using ASP.net, MS SQL as it is for .net position. +- Shortening required authentication and each user will have a profile contains his own unique urls. +- Retrieving the original urls doesn't require authentication. +- Authentication model is out of scope. From bc1eb7381ad84690648a7c666131a8ac02c933c2 Mon Sep 17 00:00:00 2001 From: aymanxoxo Date: Sat, 12 Aug 2017 23:30:58 +0200 Subject: [PATCH 3/9] adding questions --- questions.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/questions.md b/questions.md index 6b2a3b9..e9f5630 100644 --- a/questions.md +++ b/questions.md @@ -1 +1,8 @@ # Questions +- Requirements says that the system should handle urls of any length. However the max length for both url or query string will be UInt max. +- Fragments are browser features it will never be to the server. +- The short url expiry time will be configurable by the system admin or each user will set the expiry time of each url. +- Can we reuse the deactivated urls. +- What will be the replacement of 404 not found error, will an error page be enough. +- Should the system handle the segments after the short url or just regard it as invalid url (ex. travx.ix/abcd for https://facebook.com what will tavx.ix/abcd/messages mean ?) +- Can user deactivate his short urls manually before it expires. From bcf9757d699bc84169d1ae6596dfbba40bfc9888 Mon Sep 17 00:00:00 2001 From: aymanxoxo Date: Sat, 12 Aug 2017 23:35:17 +0200 Subject: [PATCH 4/9] diagrams --- Communication Model.JPG | Bin 0 -> 65715 bytes Component Model.JPG | Bin 0 -> 44563 bytes Entity Diagram.JPG | Bin 0 -> 54241 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 Communication Model.JPG create mode 100644 Component Model.JPG create mode 100644 Entity Diagram.JPG diff --git a/Communication Model.JPG b/Communication Model.JPG new file mode 100644 index 0000000000000000000000000000000000000000..2d70d241e9e9027601893ed5ce3b95d4fdcd13e5 GIT binary patch literal 65715 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

dVv!TNK{m&?JGz#!LL^NO454c& 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 literal 0 HcmV?d00001 diff --git a/Entity Diagram.JPG b/Entity Diagram.JPG new file mode 100644 index 0000000000000000000000000000000000000000..d06f7c92bda312290d65c985bbbda3e02d882100 GIT binary patch literal 54241 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 literal 0 HcmV?d00001 From ec7f8e301a38610df4c8d929678d15a728903fe5 Mon Sep 17 00:00:00 2001 From: aymanxoxo Date: Sat, 12 Aug 2017 23:35:46 +0200 Subject: [PATCH 5/9] not mine --- system-context-diagram.png | Bin 46544 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 system-context-diagram.png diff --git a/system-context-diagram.png b/system-context-diagram.png deleted file mode 100644 index ea14a929d14ce33253202db49227fac70e1bc16c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46544 zcmYg&2RxR28}>~qqlAo>QOO=DD`b@-vr?H62_buB+@eWFsZ{nTR49ApPLVw-WQ6Pn z*?WD*&GUZWcm00v`}DkT_kCa2|9}3^^Ei(4IInv;S|_*C?xH0S2wT-ukDnnBHl8IA zDE+7@@xO3n65rz=8=RHZbg8MSJ9@N#;$LYTRP~(+gl%!;|4_tTz3)ySa1qpwE9rVf z4R^X5o&CP5Fcx`Jlk$*7;GyFxe+Z{f)>`C9cSzpSV3=envXAE)5U8_GjJIK=hwRrT%tkJH} ziv73=@)Z}9P$RqkM*^XeL4dgaXTNj}wJwUaKmXi+#>mLXVC_18zNNjPz1`rss*8-V zp`oF+w)TY!dF8PS3k!e#{FzvJLx|q^-&cf{yn6NO&6_t;_FZGd38~D?%s+qsrqY;N zSy@?FSlHQVuB2vUXx9~Oa1juHGq!o{rmgq;!kU$GsMQiQYC9Zr+e<);_RqB zK4NYC8^7`IU%lD8es)^LL7n*x$R!E;ef8M-}<43;ZeqrH}wk*rGwzfy_C4$PoHa9opr<$8B z4n33O2sL>%X7F*qN&VE?g)hH)^)hqS$B$-HzrG}%44s*pYWnsq{7Vr*hwxZ|{M8>$ zrse0)tt>Cj{_DgObcOS3UlxC5Z)^MG^#xINb@ko5cl&yZ&ZQG!%1K8b6dA=T)sI9rXL8Nn%|QzIy#QmMM@; z5irKtR$nqLYJ`M^E!ejyYW(lHLlEgdfBqzYAq&gBZzd`#7WGj_j@_Ymb#~6m%KE#M z_p633q9*wM{bHBjU#r4-%k}r&&`J))y3bDxm{)|9+q3l3uLqan1s#2TPb`@Uars=7 z;|gw5`{}_;A8*oJyLQdvgmKZ^w&9LE`&fCOg^#!BUc7i=H^X_*R8dj!Ly}s!&T7D( z_=&aCspFBX9lJ8qVXxpl$5m*EP$kU|Mm8v{{%C1=^4!!|4`Frra{upd$)XpF_4M`m z3$qdv&G9wKvA(A?B?)`~dpKr21lGhr4MLDRAv7ce59Z7&Y#{D2W?JpF4gUV@?VYHT>eh&rXFt2Z z@36YEjHMeJ8~gnE1Y;-CKnSP8wM&*T0l`z5s5@f zPUd}_>c@50-{1e!oo$?Q9tTB5Gjikw1O#vfR(tMnHZ?V+)NbMw{_i_z2l3a=zSOuE z6lCL=5gBP{Y8qEmBwL>9_vYQZ@yZALv7`-ERn}?Rh>O*^zHPV!0!l0HiHwr(p^>H0 zAQ_RBoIG2_8!M!r*krmIdtfd+|i>_wylj#O~)PO=2}f_$vG=YaVc|YvO!_n z)~)9*T!{GD&%WBl#KhD)I%=Y$dZ$?B!7@fKC^wsOvdA4m#%*ziH(Z*}(XX5bUW-m+c(Q>h^vEM`}gg`zpD8N{AyoMm#$RKM%^T$s1>(pC+E(cZOPi4s7N+8e_j8!NQ^f2 zp2k6>prAl17h+XcQ>$ufa+w)!d-v{L-C~}HwEnSUpL#ysd0$+-Wy_XFj~->`dSt%M^ONawY0o^YuCug2o7XxdikOFvtox2tE;N&WnNaBG%hVI#Sb){ z^cUHZwTz;uNLv=AVsh>reprQpDyW>P>8rmvQYlj7855HR;t}ixPF0JRh*dF?-6Q_9 zfq{X~Nu8)Y?j!97noOwYqf%2-zrED-nxC+kymsQmiDa#4rt4=6BC9B5(&OVxySi4I zUtj1yarkf+&bG0!vF8g)ei?)xPV%l@yKc6l8V7A$RWw*zB0uK4`t#lSj^@Ly@2Heo zJ34rIdFj|?uQsLNXwk`>Jbv7Jrp+=f+Nd$*#f#=%KRJ`jm$``+rILcH_wR49v>f{S z^=pgPi{ont+pwr}4~uxWwODma=P~>I+q<7JOKSG+U#F>_*jru*=EGS-Ku$)IpaEsFHLsL4cnh zVHn&jBP=Y;8dQGykQaUoc;Z@Tp_-JUrQcd1O;S8QV1ld?5y7^5_u@Bgg%`=m+o|G{ zlBRmg=>!D@3oso z>jO|lrQ|Z&wG0&GZ|jYUUteEu-&MSqx;K`%@=VG;<|(4c3ekn#=gpfM>5$^*S96%B zDSSv;S+GGi?`P!+fA;K|wUrfLhU#To$)dQpIMmy>Z^Krz;^O>_nkOGWdc?O7K!d0C zn)-F=(xts~Row?ACC~qOU3hAO9!HvB94Os9I#?HZ>y(YWiHQkK;L!Bn?{trssgyjt zye6dpaLSHU0r<`D#$DLQ)HOC9L(I)3~(wZJMp&t`_SloTr@edXZI^m`QB zy3froEW{l3n)w{O+y4pb`u>w4Z%jxr{_dju{GOA8nx39V3UWmS1ek1fb#-+Z5)b31 zRRK-a)EKW?9^BDiL-F$EOYEkbn;Wg;k@X6wb4M#V1IY)=A^gwP&F#t0DF1!28YU*O zB!n1uy&A{S>t)?f#jVc-u_GUT>h@TevYveZ@W5sUVQ%i@Z*94|pNg5w$;tIU-pt3a zV~1+`5{*BfpkR1Q)!)B=k(Xj;W0#h^CvG>AY#aC7`Gou2N?eKXd;Z)2<#qFlgww2*RM-TO71^#U+=A{64t;_Hn+IAxIE|0@rIcUgnwhB z)#zzulN)+M=TTm4IB#fZYNn;9Yt{A>nEJ*&d=_U8C|LVzCG&D~Z`mcT8j`Bm;vvTo zP|CG>!=S*)LPsZT?hYFp8y(Ax|H#9KOuEF(mq|(DR*i8Fu&R5Ge66bsUX_llCz!7n z6ZUxn{x+#3)|!=>SE;FtS(cN$_KXj)MSDd=w0=>9110k<7D-A*zPG4hjVC4es|Qo= zp&vrU@$~cr7)A7=hBGqHC-){22={SE=t<> zI~APc1|U6GcXu_y#M@SKalEerg=XbcS_9%G_fDOuA6d;WOcwr4fiuQ-uJg9O%Nf{j<27_38tl8#JcwO z_SPSE$w)}}ns&6Qxp{znes#=4u9W2lG9R-4@Y;n`Jx*k0W_IbnP}k!CbUd#e4B#0p zZvA!Y_cv6K{)tCQwKHUh$Imd7>dVC0k?y(pkR55EoaA~~M#f-iF-3MFmEw3xTAGBI z*j~|;mx+ntv9TF1U-DGwa?$Ofx9lu*MXWP8pJoyOIN7m&?b=1_OZ$Gf{csF&I}kM0 zcS@?=V0TQSK_4z3;swY9i@*w<^=#g;wqJys0RbCG6AIU-_|EHWC@6C1@o$v*lXay| zxvhJ;e{j$j=^meYaDiZFXNSa$OpE_sx&45AF_PYnJ`ByVXTw?|hoX=U7U4&+4CJ$i zC$(&d!6V)CqyeW`z=~pLq@<)wa&6ll9#E%J|60xbnM@58X_+l*W3`eeO%TWrIfLE) zG^OIePln2P%?xK-f4f=l1|IN2J%WjJ5jO z*w}`8d-r|I(>Z@0U&Zr%=H;rGnAq>A*NuV+Ad&!?@?JASGBOLuH%Lil94YDP@|N{c zEQ05^>^P|SlIAp-;QBH1of^nM@iY+;c7#yH@5CdM_Zf4<;x6IO3B|YywU6V z`xj4ah-4fS z5;RGd^uMZ?pu2)+%P=9ax*U{}BF_F}U$szH_6MZ?bz>JNXDm+T-B=1mO4K^zA~)dz z3siW7a`**~u++zb7szbF&dvPb4q$~VSFS8Qj3HgZKXF-G-%~juD@=a}zrLG;e66f3 zdwq%i?LsCgsFR>RNikIa6<^#2n9q-Q=9>$4d)gZr{iuC**xAX+K&}Ja3Wy#EsWLd> zFhSL{_Nf?x#Xka>97p{2?b}ZGsWKkdVjfwSbL}vPHL2dL(PCgU{26L zz&n9@B}a82?pS?E0FucpDJki*zavIY_5{CrGte^>DE|nYeB`Bl86p$}V{JD#vJjyi zE8l76+4cHD280_dpL@UX!NG0h&o%NhGc$AZ@`f9t^61QLaPd5PeTtfnPF+J|kFR6eQ;Nn$=`lyrQM9=j}ZQdV+qB@$B49c;wIyCXO}7DIRZ9q4GaxkU0EER9qHiB z7CdrfKC3~#$g%Hs8QqF`?wX{ccyipM7^i=Bw405YncA0D61#ylm}BuR(uxF3u(sw; ztR*xai9X_d1?T~3LwN*z?uggSo68OE#|PH#n2S{;ViCy#XH`67gpQULy=-ae<>7Jp$`#riQInD-C=*Ok4F552I;`T?Z{NNlAAkLN=ImMg0qpza zK*W$m&68!^|D*Tp1Q!7$#q{)a{CEF}UBPZRDpFE;GcjA&zl3mFU%x72a$dz33LH3< zH%TB?f#_TPh~H@ofiUs-$rDK+Xneg>Uz}0^SkaHJBdhCF8)8r2IES3a7ywymm@imP z@`72hZCfVlEb?@vEH$C>8&cPa;9a1HC$EvIB5C2zYq#jlYrkEogjG>ex>0;qwX&&6 z7h+8pe_W?Leh$)6ettfV12+#(%lGd!3+xbv?gt0sR2I6ArY|5?A4^KPxVmoMvV-fd z2O*BZcj0&PC}}n3M?ywM?1KmKiHZAH)YftSo;^peyYzg#HKDaPK8Q_JD@yuw7r&wq z*4%qxil6k;zU2J*&HViQJ5fh=?%cV1_oN_@3661DLpLRX!OGS)J1?)HvXV;*_|&!L ziEwZ1akchTa`d#fEL~EeJs$swxCLb8T30bXkLy`%tmtFsL(gg{Hf(BbYXin>zy?7o zXl-q6Yz#Y*s5Y=fAf%l>eYy>2f~;R$lXL8)T2nTE4Ko*dV7s2UQ!%tOH8HcXx%Yhz zhN^>#=1}k>BuW!$*rb0F=O4GKE+{}y^a|cBRo~Ged+5-a#)&`8ujl4GkOjmV)^T*d zV!R;n7JYX)D1s5mcNw`WLd5vtTx?KDiF`rj=y&pZJ#cZRB)Bvts039$R#0Mqa-p~u zq0zfMTYoe*jy1*~bK0^$1eJ>J$@volqVCuW+&&bW5|42+6%`e)ZI z%F6>fD-u$sB&dFY%%dm7I!{!@-$vTWc=%9H<>=b8hHaQ|XWOtLph137Bji$9d|Fy? zwaGsZxr@5GO{r&-Az6G+C(?@Vs%vR!DK9U_BbS%I!1;$b>~@5Lkfdd7?1TClA0O}k z1lxK10g5UKmo6Nx`!7#UHL#j3|@%9AX#<%T`Lij1t zBlD&8jC-K0zXL^=_qiTvK}t>io!9N_1t5*b1%<;MGFd1PTrL3*F>nDUGr;*5 zs=u*z{1xdd%d?bqS9VNB}W! z+Peb%v<-&N(uD|12`(<)6GVdNNAt4sLQHO3mceQ0*088P?R*oTmLzo-~@al=ZX6^>avna#% zc4}9Be3o%CMGSM_)X83;AjnJd@bD-LuPt8O;WK4o#P~2IKw8Ek=j-FWw;*YuXiOTT z1faHE%)1u-!*5x#tg>HN@(7HPAO!;YPK|KAb;jcXgvD(VG|o!o^PwJftNk z_PlMgolsvBE*p39_dZnsPkoh3uGxf1Gr@>$`G2Q)4AT{cK@oEz)GF%_-$B@o6D1t(HoU`6aWZmpf6loRPo;3;58 z{X0%*Bcc!3F7f~hS`+m2TLuunJLG8BDvnODoM}44*<~7k z(?ie1cWI6>Jtobezw=ze20XA}JX~A8z_D)=N9Sfj<3)f|#;dE$8HPpHuT z7!oZZtK}&N4j$BrDmp_!P*gQDOK5z~kM-@{b9enQ$vaiHdNJw4Q_@q&DfXR(D%Zpg z9Wp3%NiCl66Kdo>;NrnM&-_*9lB?@9&TNuvZhhiwUlA3@v7buuPjDWBoVnKWY~1sG zT|?SS_PV+&W`V)Mc2-tgd1Q$fM-fy)F*q!YVfXIHk&e6?*}IQin;Ty6A$y@tDqZ{X z_3Lvv&rInGfhry*a>jYh>{845m_!9`c+&uq18)R3LDwMj^1b5ymB%kE8wHwuNl?LY z?tfC?JQV2pZO{4*?D{vk>cPy)`q1R-Z>*vWX^A;8ac(A$Qcpy-W?lkYb2 zT&E9+x=e1*nqug8l~!gD`RRa;k&%Wk+IbD82m4tz5fqhJ*w`RXBT#^>W@cv0Vkp+P zckAptQ4R;FQuMcr_dFHBijyOB2n`!u-Q(B94;^aHvJ9Q$E#)-9lf*su51CJ#i1532 zk7nND(xv#u90K7G;Mi<8v8bRx?3o5I2DqJwQT`aDv$ScD7isUgx6q?*+_-_v3I#7K zYZ8A$Kv3`n%e~@3B95=3q8~_RQ2CiNXAVh7L?88Xv$eIIToL9Fadetc+qZxJ;?(cN zH*ak1?A~ANl&Mla6?VL~VdI&K9*2^--XOsX>C`!^AT1yWBhrlIgW;z(Tp zuYQO!)jX>W`P6R3W_38Lq1{Vhtz-~h+&odkVpSXK9ZS^I+!|5y*nEe|7ZQ;e{{(%E zngcX0zR-+-xeJ2@i=H|LNI5>DU zthXEa4rB|IP@Y@qPcah7L;4N5#C+?{ojZYnv;_m8NOEtc=!NeE1|B+iaBd{8+sWBE z^7(Vn4~T+PHplkJdFV8TSM=4zDv+|XA8}E$vqvNIzxP?pefLgGK|z6=y9~WWuDfVH zqY$Z$|9gn#MZ1Db43OkCH8nxSI^UV!xqW*Rag>v|w72rJjrFD*x(~Zcd^##BhR|=_ zL!XS6Z*SSXhqoSa-TQ^Do(0d;)^2$F_F%jl&h6Nk13-vd?CFVTYn*8$A}UH_MZjr! z!PS$O={vG)Rn_FgM1QoZ*!^7+r+zJ3qTf+`jDn@?jWks!!0^hyPTBbP{)TPnSx^Q0 zTSmG<!**7AFCd4r?wLi5<+PHVKecDkS&r8)tpSJh0|~C zrC+N$imB<2C{Y8;<&ySYa`8?g^71RVALO>^Cvl1g{z94{26z(}@vw8d!+A8Xj_aC# zzTaan=d+;ua(rrfdVaTA*ZIcMerUp9Y560%_ukbpF}aiPC|Rszb`y5=sC!lhHDIwIdT67D^9?Zr8ADBlMT36 zz+|7hsAQ%;hRt85r&>sUS;C<*v&cN+wJkLIVI!OkC1Ov3VnE?{_>=By!Fe1q> zC>S*N^;;XDLiX&UShUvc%*@Kd-wcK2sk55`_9mLr#%E@NP!(rpKK#*&4j3p8)D84| zo-sX2O%M!`ERq;CwXm2TtlRC+m5`WtR8H>l^Yi{5`$8TH6fBS8j-bP@i%$A+!yq-g9 zUvu8I4Flvu{QB0>5m|K^stkv$n}$o90#G#Md8jC=?$tZiInr@o-9Ot0_qT7KFg9jaV%WQPFWSlsZ_-8e zo%CyGB81dzVqZ_b&dAtCOIzqRVgPCifec7>dTQ$as=28tSLrTVTS>H;Wg*XsijD&H zU>mj6)I4W~pHW4qV38;{Y>+LvA4|QC)H{JEYU}FYN>IFZ`QQ#vb7YAGdn+{DiSrW& zh+eI4FM+@v+9F`Lu2l}&Z-d-~hSNTothQmqJTf7TPv@V`qFKlfN%?0Y%shej0|Jgs zzRURVL2=89yIAIH5KdK9RR?!>wxf6d^z}JI&7*($ScqfZeq->7!%|Xgaw^*X{h7!C z>ic?~U9Wu4Fo~70IgjVFVgKbKv&!TL7LUReR1WBEzoZQeY-+ka+|5Loi$p{MaYaO&)a2N|KM}tHlHv}_Ra5c)b>9@X!>`7@rMV9uel77?M4!4` z?uo+LN7`$5pEqGYIe*K0)22;`k+F#hGITc09)Xy_X*ZzFPzL2Kl;bE?d%x}y8Fm4{ zfytI7GAQlA9;2%*4I2m=rEvbhQ3S#vBqRhCr(|hD9T@h=6*_8aoztg}VCf*7K>%vJ zdu>RqtBX59;X<;+rH@oNqf?vjm?4Sc>k>}{PfSg@I6Ei$wzI7r9K}V*dT8uN)(lLT zKt#RP`c`S_6I?I5ONSdb(y@Yjo>EAt)p&Za2cT%l&dbZIv^7Fn^4gE5QBk$s=g*z1 ztE+4N{yoC?c)8=$uhZx#mXcH{A#Xzuc<_5UoiO%pd}1OnB;@6sCKf$x?=ff-Cxdql z3=Z;i^FB2@#DdhDt*xp`U0|@?d0L2K;wkB4-3+hx87?A&V;J!?=(@+lC!wL+h~p0N zGkA3HVpO%Fc@;!Yl~J+Bmx_v$FYVDKu(P#&sqrimKqiX$L`60|Cj{Z5sv)Ni{IdT$eX0`RZftsVwjx4<5~GRWa=qc{5c;u#4Y3Lh#Agp4I1bfE!=_fn_bTBjTw5<*3=G8*yS#(n_4oH< zp@`$OI;o;E zo`-I72*=U(_I6)1p#MV0;k)0WuMs0xkdtw5ety2+b>+&MGv>sl?E2UF`5rjm{=}S{ zC?9W(i(0z7O*A!wdrb+A=McAK1r%w}PCouaY3U`XNqFjbo~QSJ$`cU*3>U6k;qknc z6o2ea?)e!h35lcLb78NHqHCbj8|>CcSLt0|9$Rs-Lyxkfqu99u83`yGz&v(8^52!8 zT#%5I{MY*KQ(0MAcQ+?Vj1WevsaZEr6Jcp#vAj4+O5n_W`1GkXGB>sf_0{i{%hx+= zpr-7=O1m%gDA2`6H~+W<1_eROHtYy;T`_>Y1z8v-9Rn{dc)j#ZO-*r9&!-u@;L~Q@ z?57o?m8|_-{5LWTI(E-cssaN~*&M~+H!?N`m3;c>(Qyl9Yo#>})6DvNyD#z{ek18$ z*ZYokkrf%De*_ZL=d_5+&@AC9!9MXQoVf8OJza#4F9l))uGOVUZE&1&8j3jeU1$Qo zGp|@D59oXt{B?s7t~6jX(jK{oulxD0^cpVYVjcfJgYpv^8k#I{!O{gPTuY2u69wJbo?{q^e?jyv25J|NGW^N)E5VXWJ?hqKGNL3G=^ zX;bdZ)J~Cz-K?zOY^02m1p!gf(B7L&$JQV3h|8}qQ$u)oYHD8R#6bK>&&WvT*5yTr z#Y9E@XulXA#M5sgME&&HGZ0dUP$#CA^B{OZy4(qON=eBID#ObBQ0&K#%C8RP2G$Jl zaC6&s0h|ujzR>@`;&qdK_xyRA=9z%GrB?WJ^+U1wI<`3Bc0-ykUPl2!Y`!b zsot)2NV0`t!$EV{-_iEMh3{K;OJ=utBJemzCVVN;7Z*JL#>#FK0>Z|KO%OJnot?pR zQv+Xm0NA?y`{4G!F$k^EKbmJl_QL_8& z#)i$gtw=m>@K`|7)>ZkNq$kvZoyJKw_<`*0@TYiob~vMQ}X9u0iTy!^9t z1Hh1)$VMGNXS0O>JnZ}T?|%*;Zj+?lmdE41SV8WCu!D{fei_|NPN{2AKVI9g2IYX} zp;HN{qh-YwUiCu@wunI8g(12X7Q+L$ONNd)JFT(ZIj}nkjIm#Q^}me}6QfG>+%P z+e@EHmS;N9nuo(0Eiw_j)?M4T%Kl|4}+ZR)a8`V}#k z_m+Gy3{l(wSmYuNw`K8G`}&DkFU^euB#?!(=i1Y!R8`??yc--0SI=X0$^VYI0P4j4 zgUuusZbNPiqiK|oCB2=PGU$*#a5;iK+_aq^V&CYHFXK*7G z)zVyFs4|fE*RL@A>|kMef#yht$A3G}f*k-Ly&1UYr`JS3dMTPVUXdA-7a)YHiG&p( zgTvnBL?=M>OAppc-b_Vx^UfW}it)zVIOKq3BqQsds2`++ZHD$we^odV$`kj%^9WM% zc28(g5ZK9Ej0$k4Jiq`>C3Goy%?it)xsgrs9awD~YaoOd0_>GKlQx&2t36g{BE)?~ zI|te)Dl}jA=ON^*2w_7v;P-+zL(n-C_o|#Yf!MB=ReAlRvlCrBzCut?m^`R2LZSj- zR6I`9m}c7xPu=l>(c$4YX=%cGL!)p-f?<}*5RD0*!CT~ERVm=6AOxZ;i%LqOaX5f% z);|*#7KSXhJoaf@)5$YQ)vG|Kc-SyJm)Nt~1L{vIWjBJ$x@6nfk;ul==eyuHKb62A z^YP&OypQR)SJbU^S{Zt?HDv-VUXZ-y9pcBvj{T|vY7pOZA z3^%{HSc6A_2aVj2RE+q7H3LJbT8@AJw%#P7sdxfCzXw>CupmGIqe2%{@Sx&$b@&#) zz92i4`C>X=r~;~H-z_!OnbA}((=0|>L!D|WBM|g$0Baf@mt0q<+!rUm&qLJ>vlsZq z1sHM=EE}y4Ag1TVxh8{GZ4eal?`lTypSy5o_?-I>L z4teh#4X1QmAY&*CD{q_M;1_xvcJ1P>`FheB7tMB z`mE8w2Rf|swgZ&<9?(mblqd=|2Jr~Uz)u^`3YpS7+uO%y=ax+c2Sh|dstJKIu!+I3e+4ognEJdz3cC3yKGkAOgvtle(d-578E@VsO?0x9Opw5@FJ9y*w>N

@`bZHYYllc*<2~2>nQEe0k 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 From c75482f461d9918b78d09f7742f1a4c224492d2b Mon Sep 17 00:00:00 2001 From: aymanxoxo Date: Sat, 12 Aug 2017 23:56:45 +0200 Subject: [PATCH 6/9] adding solution description --- solution.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/solution.md b/solution.md index 02bb42e..9675279 100644 --- a/solution.md +++ b/solution.md @@ -1 +1,4 @@ # Solution.md +The solution should enable users to shorten long urls of any schema for both GET & POST endpoints. each user will have a profile that contains his urls so that we may give him some powerful analytics by adding click counter module. + +Any registered user can share his shortened url with the public, the shortened url will hit a rest endpoint in the system that translate it to the long original url - if exists - and redirect the user to the original url keeping the http headers, verb and query string untouched. From fead4ee79006647efdc3f6a6fc8735e624878d65 Mon Sep 17 00:00:00 2001 From: aymanxoxo Date: Sun, 13 Aug 2017 00:01:28 +0200 Subject: [PATCH 7/9] Update assumptions.md --- assumptions.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/assumptions.md b/assumptions.md index 8e2620f..8fb6022 100644 --- a/assumptions.md +++ b/assumptions.md @@ -1,8 +1,6 @@ # Assumptions - Url expire time will be configurable by the system admin. -- Short url is configured by the system admin. - Editing the url expiry time will not affect the url shortened before editing the expiration time. -- Using ASP.net, MS SQL as it is for .net position. - Shortening required authentication and each user will have a profile contains his own unique urls. - Retrieving the original urls doesn't require authentication. -- Authentication model is out of scope. +- Authentication module is out of scope. From 52b2fa97e2a40f2a1d1791b050c7328595310cfa Mon Sep 17 00:00:00 2001 From: aymanxoxo Date: Sun, 13 Aug 2017 00:04:46 +0200 Subject: [PATCH 8/9] Update questions.md --- questions.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/questions.md b/questions.md index e9f5630..14c77e5 100644 --- a/questions.md +++ b/questions.md @@ -1,8 +1,9 @@ # Questions - Requirements says that the system should handle urls of any length. However the max length for both url or query string will be UInt max. -- Fragments are browser features it will never be to the server. +- Fragments are browser features it will never be to the server and it stays on the url after redirection. - The short url expiry time will be configurable by the system admin or each user will set the expiry time of each url. - Can we reuse the deactivated urls. - What will be the replacement of 404 not found error, will an error page be enough. - Should the system handle the segments after the short url or just regard it as invalid url (ex. travx.ix/abcd for https://facebook.com what will tavx.ix/abcd/messages mean ?) - Can user deactivate his short urls manually before it expires. +- Authentication and Authorization are totally absent on the requirements, will it be internal or public system. From 546c0c05474a1c98b86f68e4960152edce3d3ab4 Mon Sep 17 00:00:00 2001 From: aymanxoxo Date: Sun, 13 Aug 2017 01:08:18 +0200 Subject: [PATCH 9/9] Update scale.md --- scale.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/scale.md b/scale.md index 6896f84..14455d9 100644 --- a/scale.md +++ b/scale.md @@ -1 +1,10 @@ # Scale +- Application level: + - Hardware will depends on wheather the technology that will be used will be multi-threaded (Java, ASP.net) or single threaded (Node.Js). + - Create a web farm distributed in different countries to ensure the least network latency. + - Load balancer in front of the web farm to manage the requests either by location and/or the utilization. + +- Database leverl: + - Multi master replication, as there no update requests for the database in the current design this will be the best model. + - Database clustring to ensure the most availability. + - Load balancer to manager queries between the database servers (clusters).