Download source code tại Sharecode.vn
!
"#$%&#'(")*(+", (&/0%1("
2'3+45
%(&6%7(8&9:&%;(+<("&/0%
", (=,>("%;3
#("7(?8&@("AB(1CBDAA
Download source code tại Sharecode.vn
E2E
Download source code tại Sharecode.vn
FEG
FEHIJ
Download source code tại Sharecode.vn
!"#$%&$'!“Xây dựng
trang web hỗ trợ ôn thi đại học các môn trắc nghiệm” ()*$+!!,
-."#$'!)*$+/$012'")3$4#
(5&6-789,
)*:;!<=&5$+>7?%@
>)*.A/3B0CDBA03BEF/
80G,DH>#I!=&55#5$+/
JB&K>>7)*?%=%2.
A/3 !B$+BA$'#/I1)3)*"#
$'!IL!&,
)*M:;!<5&6-789$+/
JB& !0LJN)*!!.$'!!&$3='()*
$01!K !OJP !"%,
QL#RLS L%RB%&)*$+.
TUI"%0$'!()* N5V?%O,
)*/$01?$OO3 '%O$'!()*W
=&5 !>B$)*O)#?I=> #$'!,
Chúng em xin chân thành cảm ơn!
O "#
DX-78
&6Y8#3
K+LKM
1.1 7(NO8P%
1.2 2Q)R:&S(NO8P%
-C>ZA[/3B0 M>+'5#
%3&$Z*WC\*$OIB>"$Z&;IB
!5#I[ "AM&$Z35W$$3
Download source code tại Sharecode.vn
$01 L=3(:+] !=!&!IL(0CJS,^
/&O)*.:;&J"]_*>*`a$BAT#b$
O230CJS]^: '%5IB$. LA
c>70.#3&$d$BA!5.'
C,
-5#<>:;&J"#.e*>*,
fJP'B,
(.%5AIL308#7Y* *5
#e*> !JP,,,
1.3 T,U&,-V8N%WC
AXYXAT,N%WC
D'!^=M L ,
D'!O9JP!5,
AXYXB&#Z:N%WC
-0J&I!_*>(! O0$013gJN$%
90<50CB NRB%,
50CJPRB%J5O$(3^h##.
"JNL$'!R^3,
Q#.0#.0$01.,
1.4 #'("8%V3:[(NO8P%
-5#L$hJP ! #3JP
e*>*,
-5!I# !I/3_*>i 3i*&j,
-5$'!$+$01"%,
Q#H3!= L 0LJN)3 # !:;&J"$
$)0L,
Download source code tại Sharecode.vn
1.5 \("&]>^Q^,[(6PQ("&]>8&9:8%.(:_>NO8P%
k[I@I/l
D;&I!$'!I=m!>]0<A /&O$O R2
A)3 I!* L JP^"%W$O)
#"6 !3'II!$X !5 # ',
k["6l
-90C/ !0J&(! ,
noI&#I! #OO#,
f&^B !I! #$]I/3(U! O
(. !;%! O,
AX5`,8ab::_>c@R:@R
pXO3=^0l
f=lg$=
f=l]J
f=l-"#$% !0L3
f=Ql-!I#
&d(eM
&#f("A+4G?ghMKMIi!j
1.1. 4&0Rk@8&;8&l("X
q5O$7$$#.7 !I!_*>*
O$+!>]#.7_*>*B** !
?5WT#,5$01XOl
Y&%%_*>*,
I!_*>*>r5?3,*,
Download source code tại Sharecode.vn
%%_*>*,
B$] L]_*>*$,OhJP& '5
#I!l3lss**,$I!N #3 '
!]J_*>*(O,
!OMI!_*>*(7O$
t< '# P !30<0LI! #!>]$'!,
1.2. @:N/(&-7,:d,&;8&l("X
-WJ?I#/3$01O:$7$01#.
X?9^$;&l
D9/3#.l>/50CJS3;t9(W0C
JS#.,G=!&$01"#0CJS>T$=hJP#.,
YI@J?I#l50CI@! 3>!>! %>I/
I@5;V$',
-%l%5J" !5P%I*5
%!!J" !%%(I*,
-.u>l
-5! 7_*>5!
3>!I@>! %,
.I01&/3&PIL&PV>! %*
^ '!&CP,
.I01>I/ LW>! %,
G=#.,
o 8#$'!leJ_
o f='lf>*v_w,mgII* *W>xyymgI
Download source code tại Sharecode.vn
G=J#
o -;#J6hJP L0CJS,
1.3. &m(8n:&-7,:d,&;8&l("X
!:$7$01&=(#.O3;^$
$0 P(#.>X3=l
1.3.1 Chức năng quản lý đề thi.
Pl3\30ChJP0</3/:O&$Z5
'>]$' !;VT#>]$'(U5$O,0Ch
JP"#3O&'B$013\3/3/5 'p]$' !J
;V$01>&'9YI@! !23&'B
$9/30<W! ,O9h:O,
D= !lD= !(9!&I!5 '>X$' !;VT
#0l+$'+;V]J;V$3$3$)j
D=l D=(9!&I!5$01I0 !q
1.3.2 Chức năng Quản lý môn học
Pl9/3/5A3\30ChJP#.O
/3/&$ZH:O5 'J5A,D"#$01
9!&&=0ChJP3O&'B$013\3/3/5 'J
5A>9YI@! !23&'B$9/3
0<W! ,
D= !lD= !I!5 '5A0l+55
D=l-5 'J5A$01I0 !q,
Download source code tại Sharecode.vn
1.3.3 Chức năng Quản lý Thành viên
Pl9!&3\30C7z{J|>'!
z*| L&'B$O/3/J?I#,&'B!&
I!l
/3/5 'J5A
/3/5 '>]$' !;VT#,
YI^>!I!(*
-B&$Z5 '*
D= !lD= !(9!&5 '*
D=l-5 '*$01I0IBq
1.3.4 Chức năng trắc nghiệm
Pl9!&3\3*I!>!T#*5A
S&] !"I"A(*,I!:*%!]3>!>!I! !
$(*$01/3/ !q/#0C13*.:*IB
>!I!( ',
D= !l5I$%>!I!(*0l-}*I!>!$'
!*I"A$3!*$+A,
D=l5I$01I0<gJ?I#0%(
]3>!>%;!$)H;!j
1.3.5 Chức năng thống kê
-.J! (_*>*l8#.3\3:*J
! (_*>*,
-.J>]$' !;Vl0ChJPO&'B0<
O:*>]$';V !$3
~*IB>!I!lhJP9!&*!O=:*IB>!I!
(
-.;V$OO3(! J&# !:*:\$]
(;VO3S13 L%(A &5,$O•&%
$7O&5hJP;V$O !;!;V(_*>*,
~%3B?^O$$$==,
Download source code tại Sharecode.vn
1.3.6 Chức năng Đóng góp câu hỏi
Pl9!&3\30CJS$OO3 !;!;
V$'r9"33)$JB(;V,;V$OO3•
$01>7J&#%3S13•$01hJP$9_*>*,Dh
JP$019!&&=0CJS3$9/3 L0I!!
(_*>*
D= !l]J;30<IC !$3$);V
D=l;V•$01I0IBq
1.3.7 Chức năng phản hồi
9!&3\3! M00CJS&/3 !_*>*
O$OO3?@% '$]O(;V&=0LJN
I!>!T#_*>*0%!?@%$OO3$
_*>*$01!#< , j
&#f("B+io4oIpM2
BXAfN<3&m(:`3:&q:(1("
Download source code tại Sharecode.vn
Hnh 1-1:Sơ đ phân cp chc năng
BXB%W,N<,kr:>kr
2.2.1 Danh sách các Actor và các usecase
$"% !].!I#)*$+3;^,q
;z{|
-{ €^
•
{J
{JI! ;? R
^(_*>*lY&'I@I!
&'2(#.,?
0C? RI@^O
3;&'!
_*>*,
- ; {J O "
# $01 2 9 (
_*>* 0l -B I@ !
! I@ !3;&'
Download source code tại Sharecode.vn
&PD9h:O>!j
-;{JO'
h:O/3/5L,
x
}*
D9/3#.lU]!
O ] . &' L B J
0C{J,
D9 @ ! !
._*>*,
D9LlEO5L
=$9}*>/35
!$9I_*>*,
h 5 l E = 3J* h
5}*• !>! %$O
!h5^:,
~O5lE5M !
5=%}*5
$O !:OVq,
w
Q*
-&/3e*>*:*%5
>! %=,
‚**J>z3X|@%(Q*
'>! %
Bảng 2-1: Danh sách các Actor của hệ thống
Mô tả yêu cầu đối với các Actor
{Jl
ƒ D9/3 !e*>*,
ƒ YI@! ,
Download source code tại Sharecode.vn
ƒ YI^&P,
ƒ -.
ƒ p>J04#._*>*,
}*l
ƒ -h:5>! %,
ƒ €$3TT(Q*,
ƒ YI@ #$9>!,
Q*
ƒ ~*5>! %,
ƒ €h3!X '>! %,
ƒ -%5,
q**
7(Mkr>kr
\("&]>
• D9^!
59$9^I!]!
^(_*>*
x
€O3@
59$OO3@%
TT(&/3(!
w
-T#
59%!I!>!T
#"&%&_*>*
„
/3/$'
/3/>]$'
m /3/;VT /3/;VT# L
Download source code tại Sharecode.vn
#
50l]J;V30<
IC$3$);Vj
…
YI^!
YI^5(!
M023&'B3S13
W!
†
YI^5A
YI^5A!Z>!
&J0LT#
‡
D9/3!
D9/3 !#. L RI!]
! $hJP9O
(]! $013\3hJP
•y
D9/3I^
D9/3 L RI!]0CI^
$O&'BhJP9(
]0CI^,9!&Ox$.
01hJP$OI!l€ !0C
70C7O!&'
L#.R€ !
9(]! 50CA
O&'/3/>]$' !
;VT#,
Bảng 2-1: Danh sách các UseCase
BXB%W,N<Mk:>kr
x,x,•p$X}*Z#.
Download source code tại Sharecode.vn
Hnh 2.2.1: Biểu đ usecase tổng quát
Tóm tắt:
}*!&59Z(#.XO9^
0l-($9@! I# 7^:%3B0g0LJN
$9@! O3@$9/35I&#:*&%&
I*$'$BA$dI@$'$BA$dI@JP
I@&%I@@%I@!I@^.$9
/37,
Tác nhân chính: E! J
Download source code tại Sharecode.vn
BXBXB%W,N<,kr:>krs,0(^Q)>(&Ct:
Hnh 2.2.2: Biểu đ usecase danh mục
Tác nhân:{J
Tóm tắt chung:9!&3\3{JI@JP>XI@5
AI@;VI@$'I@,
D. L`}**I@5Ab
-O9l{J$01&' !I@5AOh:O5A,
Dòng sự kiện chính:
- {J$9/3 !#.
- 8#.7J#
- 0CJSOh:O
- 8#.5AXI0 !<gJ?I# !$05>0CJS
0C13hH:O
- E%)**
Dòng sự kiện phụ:
ƒ 0CJSO(&
ƒ 8#.$OIB
ƒ E%)**
Điều kiện tiên quyết: 0CI@$9/3#.&'I@0L**
Download source code tại Sharecode.vn
>T$= !A5=h:O,
Điểm mở rộnglE5O
D. L`}**I@;Vb
Tóm tăt:{J$01&' !I@;VOh:O;V,D. L
U;V(]$'T#O>.30<I"A !O]I"A
$)O]$]0J6O>>T>]];V,
Dòng sự kiện chính:
- {J$9/3 !#.
- 8#.7J#
- 0CJSOh:O
- 8#.;VXI0 !<gJ?I# !$05>0CJS
0C13hH:O
- E%)**
Dòng sự kiện phụ:
ƒ 0CJSO(&
ƒ 8#.$OIB
ƒ E%)**
Điều kiện tiên quyết:
- 0CI@$9/3#.&'I@0L**>T$= !A5
=h:O,
- A5;V./3/
Điểm mở rộnglE5O
D. L`}**I@$'b
Tóm tăt:
{J$01&' !I@$'Oh:O;V,D. LU$'
O+,D'O.I01;V$01/3 !"I2&J
;!;V$01I0<gJ?I#
Dòng sự kiện chính:
- {J$9/3 !#.
- 8#.7J#
- 0CJSOh:O
Download source code tại Sharecode.vn
- 8#.$'XI0 !<gJ?I#>$' !$05>
0CJS0C13hH:O
- E%)**
Dòng sự kiện phụ:
ƒ 0CJSO(&
ƒ 8#.$OIB
ƒ E%)**
Điều kiện tiên quyết:
- 0CI@$9/3#.&'I@0L**>T$= !A5
=h:O,
- A5;V./3/
Điểm mở rộnglE5O
D. L`}**I@b
Tóm tăt:{J$01&' !I@$'Oh:O;,
Dòng sự kiện chính:
- {J$9/3 !#.
- 8#.7J#
- 0CJSOh:O
- 8#.$'XI0 !<gJ?I#>$' !$05>
0CJS0C13hH:O
- E%)**
Dòng sự kiện phụ:
ƒ 0CJSO(&
ƒ 8#.$OIB
ƒ E%)**
Điều kiện tiên quyết:
- 0CI@$9/3#.&'I@0L**>T$= !A5
=h:O,
- A5;V./3/
Điểm mở rộnglE5O
Download source code tại Sharecode.vn
BXBXY%W,N<,kr:>kr8&%R(^%(r
Hnh 2.2.3 Biểu đ usecase thi online
Tóm tắt:}**!&0CJSOI!>!T#
Tác nhân chính:{(#.
Dòng sự kiện chính:
- }**!&>T$=0ChJPA9T#,
- 8#.&=A5A !$'.T#,
- 0CJSA5A !$'$%!I!>!,
- 8#.7#.;V$'!0CJSA,
- 0CJS%!I!>!>r^A?$3!I!$),
- QLU$'•OCI!>!0<I!>3)#.•
7CI^>%C•$01/3/IP•)3^
>%$01C0%!$T3:%3CI!>!(13I@W$O
O?30<$$B%2,
- %I!>!%C!^0I!>!:#.•"
$]2$>!I!(^J"%^$+A,
- R%0^I!:>!(!0%C^O
]3>!(L<>r2 !)]3>!,
- E$+]3>!&%CI!>!^5I!%3$01>!(!K
Download source code tại Sharecode.vn
O:*$3 !:*%#. !7I^>%,
- 8#./3/$3!0CJSI"A L$3$) !"$]
^$0CJS
- 8#.7%^:*>%$01>;$)>;
Z$$B$01I!>,DXC•7?30<$) !
?30<^$+A$^O$3]J6J!
2$'!&•)3^(.%,p%$0130<!
$)W$O•)3^0$A g /&,
Dòng sự kiện khác:
0CJS(&>V5%!I!>!T#,
Điều kiện tiên quyết:
- 0CJS$9/3! !#.A!2>!I!%
•$01#./3/ !I0 !q3P P0C130CJS
.:*IB>! ',
- %5$9/3! #.•I!]&/3 !>!I!(
0CJS•5$01#.I0IB,
Điểm mở rộng:E5O
8aI&#l
0CJS3O!$$9/3 !#.J##
.•#7 !AA5AXA$'g$]0lJ6
>O,%A]>$]$O•O]J$'5I&#!
AOI !]$'$O$I!$+A]$'$
?$'$OO!r3;>#0CJS>%$01$'$+5,
A$'5I&#>T$=^CI!>! !U;AK$01A
]>.I"A>rJS]^ !)>0LU30<
%;!0$01^#.0I!;$O,E%CI!>!0C
JSI !>`]3>!b#.•"$]^$>B !%
7! !;!?•#7!$V$>BO:* !I!IB,pB
I!:$'!&OI!%3$'5I�<"0 /&>rg ' L
J$',
8"&%l
Download source code tại Sharecode.vn
!&"&%$+$015> !C!&P_*>K
O$)C$O$'L$01$0I !KO]$'J!
0CJS,D0L=3I!! A•A5"&% !
A !5 !A$',!2$O#."$]
&>B !>T$=$01^CI!>!,QLU;O>.30<
I"A !O]$3$)!>B•:*;!$)$A>r
^ !>(]I"A$O$O%3PI!;%3*
$%%C%;>B5I!#.H$7I!;$O,E%C>BI
!>`]3>!b#."$]^$ !$0% '>!>BO
:*;!I!$)H!#.$+>5!$V;!>BI!
,
E$+!!>!( !O%#.•I0IB$(^
W$OIBW$OO:%3B$$=*W=W
&W9,Q#I0IB%M)3 #^O:*%(
W= !I0IB%Mr #0g?^:2
T$B%= !9,
8$'$+
8#.•IJIJ?$'$+"&%(=$1
U$'$g"&%%C•"$]/3/& '
BI!$'$+$01,QL!&•)3^5O$'
#I*g=J4HO #$O>/,,,H L0C13^
$+X0.hIB:*% !.IB
?$+I!:*O=IN&O5W$O)$01
#ˆ%3*,
DO !I!$'$+!&^M3$9/3 !#. L!
$+$01$9@R%0C13^0O!3$9@!
#.•$0$9@^$9@,
E^$+$9/3!5#.^OA !5A^
=I!>!#.•$0J$+$'$+$01*W=W
Download source code tại Sharecode.vn
W@,-^•A]$'$O !•>T$= !I!>!C
!^$.&&"&% !$>#IL2$O
I!g!&$(^•5$01I0 !<gJ?I#!K
7%I^>%$(%!,
BXBXu%W,N<,kr:>kr8&l("U7
Hinh 2.2.4: Biểu đ usecase thống kê
Tóm tắt:}**O9. '.0CO$2I=
?$'O'0C&/3J0C>7,
Tác nhân:{J !!
Dòng sự kiện chính:
DH**`-3$''0C&/32b
Tóm tắt:
Download source code tại Sharecode.vn
{JhJP}**!&$"# #.$'O'0C&/3
2,
Dòng sự kiện chính
- 8#.7.$'O0C&/3'2,
- {J/3.I01..z ^JPl3•y3xy,,| !2)5,
- 8#."# !I2&$'O.I01!0C&/3J
$+/3,
- E%)}**,
Dòng sự kiện phụ
qR2l
• {J(&>V #.,
• 8#.(&>V.3L2 !&L!J$+
A,
• E%)}**,
qRl
• .I013/3 !513I#,
• 8#.75>IU,
• E%)}**,
&=$H>#lE5O&=$H>#
-B#.0L }**`$''0C& /3b $01"
#l{J3$9/30L,
-B#.}**`b$01"#l
• %$9/3!5#.•77,0CJSO"
#9*$)&'B(,
• %$9/32>Bl8#.•$05>`-5$9/3513
I#b !&=$9/3IB,
Dg]lE5O,
Download source code tại Sharecode.vn
DH**`D(^52b
Tóm tắt:
{JhJP}**!&$"# #.0CO$2
25
Dòng sự kiện chính
- 8#.7.$'(?0CO$2
- {J/3.I01..z ^JPl3•y3xy,,| !2)5,
- 8#."# !I2&0CO.$2
- E%)}**,
Dòng sự kiện phụ
{J(&>V #.,
• 8#.(&>V.3L2 !&L!J$+
A,
• E%)}**,
&=$H>#lE5O&=$H>#
-B#.0L}**`-3?0CO$b$01"#l
{J3$9/30L,
-B#.}**$01"#l
• %$9/3!5#.•77,0CJSO"
#9*$)&'B(,
• %$9/32>Bl8#.•$05>`-5$9/3513
I#b !&=$9/3IB,
Dg]lE5O,
DH**`-30CO$2b
Download source code tại Sharecode.vn
BXBX%W,N<,kr:>krs,0(^Q:m,&v%
Hnh 2.2.5: Biểu đ usecase quản lý câu hỏi
Tóm tắt:
}**!&59/3/;VU5A$+$01A,
;V$01BO>$]$OI!J6O>I=I01$01I0<g
*9J=I!•xw,Q#B$];V$3P P #B$'
gJ6>OrA$015I&#W<>2
$%O$:$79I"A(^>;,!RO/3
;V>r*:*I]O#^0C7,
Tác nhân chính:{J !!
Dòng sự kiện chính:
- {A9/3/;V
- 8#.7J#/3/;V,
Thêm:
• 0CJSA5A=;V
• %0CJSA9‰-‰IX3P‰-$01
"#,
• 8#.:TJ#/3/5A,
• 0CJS/35 '5A.B,
• 8#.13I#9/3/
• 0CJSA9/3/;VL,