Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
Lời mở đầu
Ngày nay,cùng với những bước đột phá mới của thời đại, đáp ứng cho những như cầu
phát triển chung của thế giới đặc biệt là đối với Việt Nam. Những ứng dụng mới của công
nghệ thông tin vào cuộc sống đã phần nào làm giảm đi những cực khổ trong công việc của
con người.Để tạo nên những sàn phẩm điện tử tốt thì đòi hỏi những lập trình viên phải luôn
nâng cao kỹ năng lập trình của mình. Bên cạnh việc tự mình đi tìm cho mình những kiến thức
mới để bổ xung vào lượng kiến thức mình đang có thì việc học hỏi kinh nghiệm hay kiến
thức,cách suy nghĩ của những người có niềm say mê tin học khác, hay luyện tập với nguồn
bài tập phong phú là một cách để phát huy hiệu quả nhất tính năng động và sáng tạo của một
lập trình viên, của một người say mê tin học.
Qua những cuộc thi lập trình sinh viên toàn cầu, kể từ khi bắt đầu đã trở thành một sân
chơi bổ ích cho các sinh viên ngành tin học . Ở đó các sinh viên có thể thư thách , cùng nhau
tư duy giải những bài toán kỹ năng lập trình. Không dừng lại ở phạm vi cuộc thi với số lượng
có hạn các đội tham gia, một số trường Đại Học trên thế giới đã xây dựng một hệ thống bài
tập trên mạng để sinh viên trường có thể luyện tập , thi đấu với nhau .Rồi từ đó, nhờ sự phát
triển của Internet, việc giao lưu trở nên cần thiết …các hệ thống này trở thành một website để
các sinh viên yêu thích tin học có thể truy cập và cùng luyện tập, thảo luận, thi đấu với nhau
qua các cuộc thi của website tổ chức…Nhưng riêng đối với sinh viên Việt Nam thì chưa có
một hệ thống luyện tập tin học trực tuyến cho chính mình
Qua môn học Phân Tích Thiết Kế Hệ Thống Thông Tin của thầy Nguyễn Gia Tuấn
Anh , chúng em đã có một kiến thức nền tảng phân tích thiết kế một hệ thống.Trước như cầu
thực tiễn trên đồng thời muốn tìm hiểu sâu sắc hơn về môn học này, chúng em đã thực hiện
đồ án “ Hệ thống luyện tập lập trình trực truyến “ những mong sẽ tạo nên một hệ thống luyện
tập trực tuyến cho sinh viên Việt Nam .
Để hoàn thành đồ án này , chúng em xin chân thành cảm ơn thầy Nguyễn Gia Tuấn
Anh , thầy đã truyền đạt cho chúng em các kiến thức cơ bản về Hệ Thống Thông Tin, cách
thiết kế một hệ thống, thầy đã hỗ trợ rất nhiêu cho chúng em. Đồng thời nhóm xin cảm ơn
khoa Công Nghệ Thông Tin trường Đại Học Khoa Học Tự NHiên đã tạo điều kiện cho chúng
em học hỏi , tìm hiểu kỹ hơn về hệ thống này... Hy vọng đồ án này sẽ được một số nhóm
nghiên cứu tiếp thu và hoàn thiện nó.Và trong giới hạn thời gian học môn chúng em tìm hiều
về vấn dề này sẽ có những thiếu sót trong đồ án.Nhóm chúng em rất mong nhận được sự đóng
góp ý kiến để dố án được hoàn thành tốt hơn.Chúng em chân thành cảm ơn.
Thành phố HCM, ngày 24 tháng 5 năm 2009
Nhóm làm đồ án
Trần Thượng Khanh – Nguyễn Thị Hoài Vân
1
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
Mục Lục
I.Khảo sát hệ thống và phân tích hiện trạng hệ thống...............................3
1. Khảo sát hệ thống..........................................................................3
2. Phân tích hiện trạng hệ thống.......................................................5
II. Phân tích yêu cầu ....................................................................................5
1. Yêu cầu chức năng ......................................................................5
2. Yêu cầu phi chức năng.................................................................5
III. Phân tích hệ thống.................................................................................6
1. Mô hình thực thể ERD ................................................................6
a. Các thực thể ERD..............................................................6
b. Mô hình ERD....................................................................8
2. Chuyển mô hình ERD sang mô hình quan hệ ...........................8
3. Mô tả chi tiết cho các quan hệ ....................................................9
4. Mô tả bảng tổng kết.....................................................................18
a. Tổng kết quan hệ...............................................................18
b. Tổng kết thuộc tính...........................................................19
IV. Thiết kế giao diện ..................................................................................21
1. Sơ đồ các trang ............................................................................21
2. Thiết kế giao diện ........................................................................24
3. Mô tả form ...................................................................................25
V . Thiết kế các ô xử ký ...............................................................................40
VI. Đánh giá ưu khuyết điểm ......................................................................47
VII. Phân công công việc..............................................................................48
2
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
I Khảo sát và phân tích hiện trạng hệ thống
1. Khảo sát :
Tình hình trên Internet hiện nay , các website lập trình trực tuyến hiện thu hút
rất lớn một lượng sinh viên , người dùng tham gia. Các website này có số lượng trên
1000 thành viên .
Chúng ta có thể liệt kê một số hệ thống như vậy :
http://acm.uva.es : trang luyện tập của Đại Học Valladodid – Tây Ban Nha
http://acm.timus.ru : trang luyện tập của Đại Học Liên Bang Nga
http://spoj.pl : trang luyện tập của Hội Đồng Tin Học Ba Lan
Trang timus
Tình hình tại Việt Nam ,trước 2002 các sinh viên Việt Nam đa phần giải bài
trên các website hệ thống nước ngoài như đã nói ở trên. Hoặc một số sinh viên có tâm
huyết đã thành lập một website : Vietnamese Online Programming Contest tại địa chỉ
website của thành viên mg9h , một thành viên của diễn đàn www.ddth.com :
http://www.mg9h.net/contest/index.php?more=amazing& . Nhưng website này không
có chức năng chấm tự động như hệ thống nước ngoài nên việc tổ chức thi thường ít
diễn ra, dẫn đến việc luyện tập của các thành viên chỉ là làm và tự chấm với nhau .
Năm 2003 : Ioicamp có địa chỉ là www.ioicamp.net của Khối Chuyên Toán
Tin Đại Học Khoa Học Tự Nhiên ĐHQG Hà Nội tạo ra một hệ thống luyện tập trên
mạng do chính người Việt Nam tạo ra. Và đây là hệ thống đầu tiên được ứng dụng cho
sinh viên học sinh Việt Nam trong việc luyện tập và thi tin học trực tuyến. Hệ thống
này có thể cho phép người dùng đăng bài, gửi bài và được chấm trực tiếp bằng máy,
do đó hệ thống này có thể được xem là tương đông với các hệ thống nước ngoài. Hệ
thống được đặt tại khối chuyên ĐH Khoa Học Tự Nhiên ĐHQG Hà Nội, ký túc xá
Mễ Trì. Trong quá trình hoạt động hệ thống Ioicamp đã là nơi giao lưu, luyện tập của
3
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
các sinh viên học sinh chuyên tin Việt Nam trên Internet. Hệ thống đã nhiều lần tổ
chức thi trực tuyến thành công với nhiều kết quả khả quan tạo ra một sân chơi hữu ích
cho các sinh viên học sinh chuyên tin. Tuy nhiên năm 2007, sau một thời gian thử
nghiệm, hệ thống đã được các thầy Đại Học Khoa Tự Nhiên Hà Nội nghiệm thu thành
đề tài nghiên cứu khoa học dẫn đến hệ thống không còn tồn tạii chức năng chấm bài
trực tuyến và tù đó hệ thống không còn hoạt động trên Internet nữa .
Trang chủ Ioicamp
Năm 2007 : Sau khi hệ thống Ioicamp không còn hoạt động , một số thành viên
kỳ cựu của website đã họp lại và tạo nên hệ thống VNSPOJ đặt tại địa chỉ
http://vn.spoj.pl . Hệ thống này đã thực sự thay thế cho hệ thống Ioicamp . Tuy nhiên
hệ thống VNSPOJ chỉ là một hệ thống con được phát triển dựa trên hệ thống SPOJ của
Ba Lan. Vì vậy, dữ liệu, chương trình chấm trực tuyến vẫn đặt tại nước ngoài và hoàn
toàn phụ thuộc vào website SPOJ .
4
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
Trang chủ VNSPOJ
Ngoài ra , chương trình PC^2 đã được một số trường Đại Học trên thế giới đưa
ra cho mọi người tải về sử dụng .
Chính vì vậy, khi bắt đầu tham gia vào các kỳ thi lập trình mang tầm vóc thế
giới, trường Đại Học Khoa Học Tự Nhiên – ĐHQG TPHCM muốn tạo ra một hệ
thống luyện tập trực tuyến như vậy, để sinh viên có thể luyện tập, thi đấu ,giao lưu học
hỏi với nhau .
2. Phân tích hiện trạng :
- Hệ thống được đặt trên máy chủ của khoa Toán Tin , Trường Đại Học Khoa
Học Tự NHiên với cấu hình :
Chương trình PC^2 là chương tình chấm bài trực tuyến bằng máy.Tại
đây khi thành viên tham gia giải bài tập,nộp bài cho hệ thống thì
ngay sau đó hệ thống sẽ trả ra kết quả bài của thành viên đó là đúng
hay sai và sai vì lỗi gì…
Tên miền : www.acm.hcmuns.edu.vn đã được đặt .
- Bên cạnh để luôn có bài cho thành viên luyện tập thì các thành viên như tác
giả có thể cung cấp bài cho hệ thống,các bài được cung cấp đó sẽ được quản trị đem
kiểm tra lại về tính đúng đắng của bài toán và kết quả sau đó mới được đưa vào ứng
dụng.
II/ Phân tích yêu cầu
1.Yêu cầu chức năng
Quản lý danh sách các bài tập( thêm, sửa, xóa các bài tập)
5
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
Quản lý thành viên trong hệ thống .
Quản lý các cuộc thi do hệ thống tổ chức( quản lý các thành
viên tham gia , tìm người đạt giải) .
Cho thành viên tìm kiếm các dạng bài theo ý muốn
Tổ chức lưu trữ bài tập thành từng danh sách .
2.Yêu cầu phi chức năng
Hệ thống có khả năng bảo mật và phân quyền .
Người dùng: đăng kí,được cấp quyền,phân quyền cho mỗi
nhóm người được truy cập và sử dụng những chứa năng nhất
định của hệ thống.
Đổi mật khẩu: Người dùng có thể đổi mật khẩu để truy cập
vào trang dữ liệu và sử dụng thuộc phạm quy của người
dùng đó được cho phép.
Cách phân quyền cho người dùng rất cần thiết khi truy cập, để tiện cho việc kiểm
soát và theo dõi người dung và chương trình của người quản trị,đồng thời trách đi
việc mất đi hay lộ dữ liệu trong cuộc thi.
III/ Phân tích hệ thống
1. Mô hình thực thể ERD
a. Các thực thể
1/ Thực thể : THANHVIEN
Miêu tả thành viên của hệ thống .
Các thuộc tính :
- Mã thành viên (MaTV) : đây là thuộc tính khóa, dùng để phân biệt
với các thành viên khác .
- Tên đăng nhập ( TenDN )
- Mật khẩu (Matkhau )
- Tên thành viên ( TenTV)
- Địa chỉ thành viên (DiachiTV)
- Trường ( Truong)
- Emai thành viên (EmailTV)
- Năm sinh (namsinh)
2/ Thực thể : BAITAP
Miêu tả bài dùng cho thành viên luyện tập trực tuyến
Các thuộc tính :
- Mã số bài tập (MasoBT): đây là thuộc tính khóa, phân biệt bài tập
này với bài tập khác .
- Mã bài tập (MaBT)
- Tên bài tập (TenBT)
6
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
-
Địa chỉ tải (Diachitai ): đây là đường dẫn đến địa chỉ chứa tập tin của
bài dùng cho thành viên muốn lưu trữ .
- Nội dung (Noidung ): nội dung của bài tập .
3/ Thực thể : DANHSACH
Miêu tả danh sách 100 bài tập ra định kỳ .
Các thuộc tính :
- Mã danh sách (MaDS) : Đây là thuộc tính khóa,phân biệt các danh
sách(100 bài) với nhau
- Tên danh sách (TenDS)
4/ Thực thể DANGBAI
Miêu tả các dạng bài tập như : Hình học , đồ thị , quy hoạch động
Các thuộc tính :
- Mã dạng bài (Madang) : đây là thuộc tính khóa
- Tên dạng bài (Tendang)
5/ Thực thể : TACGIA
Miêu tả tác giả của các bài tập và bài thi .
Các thuộc tính :
- Mã tác giả ( MaTG)
- Tên tác giả (TenTG)
- Số bài (Sobai )
- Địa chỉ email ( EmailTG)
6/ Thực thể CUOCTHI
Miêu tả cuộc thi được tổ chức trên hệ thống
Các thuộc tính :
- Mã cuộc thi ( MaCT) : đây là thuộc tính khóa
- Tên cuộc thi ( TenCT)
- Thời gian bắt đầu ( ThoigianBD)
- Thời gian kết thúc ( ThoigianKT)
7/ Thực thể BAITHI
Miêu tả ngân hàng bài thi được dùng cho các cuộc thi .
Các thuộc tính :
- Mã bài thi (MaBThi ): đây là thuộc tính khóa,để phân biệt các bài thi
với nhau
- Tên bài thi (TenBThi )
- Nội dung bài thi (NoidungThi)
8/ Thực thể : QUANTRI
Miêu tả quản trị viên của hệ thống
Các thuộc tính :
7
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
- Mã quản trị (MaQT) : Đây là khóa chính
- Mật khẩu quản trị ( MatkhauQT)
- Tên quản trị ( TenQT)
9/ Thực thể : TINTUC
Miêu tả tin tức của hệ thống
Các thuộc tính
- Mã tin tức ( MaTT)
- Nội dung tin tức ( NoidungTT)
- Ngày đăng tin tức ( Ngaydang )
- Nguồn đăng tin tức ( Nguondang )
b.Mô hình ERD :
8
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
2. Chuyển mô hình ERD sang mô hình quan hệ
THANHVIEN(MaTV, TenDN, Matkhau, TenTV, DiachiTV, Truong EmailTV,
Namsinh )
BAITAP( MasoBT, MaDS, Madang, MaBT, TenBT, Noidung, Diachitai,
Gioihanthoigian, Gioihanbonho, Dulieunhap, Dulieura )
BANGGIAIBAITAP ( MasoBT, MaTV, Lan , Ketqua ).
CUOCTHI ( MaCT , MaDT ,TenCT , ThoigianBD , ThoigianKT)
BANGTHAMGIATHI ( MaTV , MaCT )
QUANTRI ( MaQT, MatkhauQT,TenQT )
QUANHEHIEUCHINH ( MaQT ,MaBthi )
TACGIA ( MaTG , TenTG , EmailTG , Sobai)
QUANHERADE ( MasoBT , MaTG )
DANGBAI ( Madang , Tendang )
DANHSACH ( MaDS, TenDS)BAITHI ( MaBthi , MaCT, TenBthi,
NoidungBT, Ketquathi, Ghthoigian,Ghbonho,DLnhap, DLra )
QUANHERABAITHI (MaTG ,MaBthi )
TINTUC ( MaTT, NoidungTT, Ngaydang, Nguondang )
QUANHEHIEUCHINHTT( MaQT, MaTT )
3. Mô tả chi tiết các quan hệ .
3.1 Quan hệ Thành Viên :
THANHVIEN (MaTV , MaQT, TenDN, Matkhau ,TenTV,
DiachiTV,Truong, EmailTV , Namsinh) .
Tên quan hệ : THANHVIEN
STT Tên thuộc
tính
1
2
MaTV
Diển giải
Mã thành
viên
C
Kiểu DL
Chiều
dài
Loại DL
10
B
Khóa
chính
MaQT
Mã đăng
nhập cảu
quản trị
C
20
B
TenDN
Tên đăng
nhập của
thành viên
C
30
B
9
Ràng
buộc
Khóa
ngoại
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
3
Matkhau
Mật khẩu của
thành viên
C
30
B
4
TenTV
Tên thật của
thành viên
CU
50
K
CU
120
K
5
DiachiTV Địa chỉ thành
viên
6
Truong
Tên trường
của thành
viên
C
10
K
7
EmailTV
Email của
thành viên
C
50
B
Tổng 325
Khối lượng :
Số dòng tối thiểu :500
Số dòng tối da : 10000
Kích thước tối thiểu : 500 x 325 = 162.5 KB
Kích thước tối đa : 10000 x 325 = 3250 KB
3.2 Quan hệ Bài tập
BAITAP( MasoBT, MaDS, Madang, MaBT, TenBT, Noidung, Diachitai
, Gioihanthoigian, Gioihanbonho, Dulieunhap, Dulieura )
Tên quan hệ : BAITAP
STT
Tên thuộc tính
Diễn giải
Kiểu
DL
Chiều dài
Loại
DL
Ràng buộc
1
MasoBT
Mã số của
bài tập
C
8
B
Khóa
chính
MaDS
Mã số của
danh sách
mà bài tập
thuộc
SN
10
B
Khóa
ngoại
Madang
Mã số của
dạng bài
tập
SN
6
B
Khóa
ngoại
2
MaBT
Mã của bài
tập và
chương
trình
C
8
B
3
TenBT
Tên bài
tập
CU
40
B
10
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
4
Diachitai
Địa chỉ tải
bài tập
C
40
5
Noidung
Nội dung
của bài tập
CU
5000
B
NT
20
B
5
6
Gioihanthoigian Giới hạn
thời gian
chạy của
bài tập
B
7
Gioihanbonho
Giới hạn
bộ nhớ của
bài tập
SN
20
B
6
8
Dulieunhap
Dữ liệu
đưa vào
của bài tập
C
30
B
7
9
Dulieura
Dữ liệu ra
của bài tập
C
30
B
8
Tổng
5212
Khối lượng :
Số dòng tối thiểu :500
Số dòng tối da : 20000
Kích thước tối thiểu : 500 x 5212 = 26.060 KB
Kích thước tối đa : 20000 x 5212 = 104240 KB
3.3 Quan hệ Bảng giải bài tập
BANGGIAIBAITAP ( MasoBT, MaTV, Lan , Ketqua ).
Tên quan hệ : BANGGIAIBAITAP
STT
Tên thuộc
tính
Diển giải
Kiểu DL Chiều dài
Loại
DL
Ràng buộc
1
MasoBT
Mã số của
bài tập
C
8
B
Khóa
chính
2
MaTV
Mã số của
thành viên
C
10
B
Khóa
ngoại
3
Lan
Số lần thành
viên giải
cùng một bài
tập
SN
65535
B
4
Ketqua
Kết quả lần
giải bài tập
này
CU
5000
B
11
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
5
Ngonngu
Ngôn ngữ
của bài
C
30
6
Bonho
Bộ nhớ của
bài làm
C
65535
7
Thoigian
Kết quả thời
gian của bài
NT
60
8
Thoigianlam Thờigian
làm bài
NT
30
Tổng
136208
Khối lượng :
Số dòng tối thiểu :500
Số dòng tối da : 20000
Kích thước tối thiểu : 500 x 136208 = 68104 KB
Kích thước tối đa : 20000 x 136208 = 272416000 KB
3.4 Quan hệ Bảng tham gia thi :
BANGTHAMGIATHI ( MaTV , MaCT ).
Tên quan hệ : BANGTHAMGIATHI
STT
Tên thuộc
tính
1
MaTV
2
MaCT
Diển giải
Kiểu DL
Chiều dài
Loại
DL
Ràng buộc
Mã số của
thành viên
C
8
B
Khoá
chính
Mã số của
cuộc thi
C
8
B
Khoá
ngoại
Loại DL
Ràng
buộc
Tổng 16
Khối lượng :
Số dòng tối thiểu :300
Số dòng tối đa : 1000
Kích thước tối thiểu : 300 x 16 = 4.8 KB
Kích thước tối đa : 1000 x 16 = 16 KB
3.5 Quan hệ Danh sách :
DANHSACH ( MaDS, TenDS)
Tên quan hệ : DANHSACH
STT
Tên thuộc
tính
Diển giải
Kiểu DL
12
Chiều
dài
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
1
MaDS
Mã số của
danh sách
mà bài tập
thuộc
SN
10
B
Khóa
ngoại
2
TênDS
Tên của
danh sách
bài tập
CU
40
B
Khóa
ngoại
Tổng 50
Khối lượng :
Số dòng tối thiểu :50
Số dòng tối đa : 2000
Kích thước tối thiểu : 50 x 50 = 2.5 KB
Kích thước tối đa : 2000 x 50= 100 KB
3.6 Quan hệ Dang Bài :
DANGBAI ( Madang , Tendang )
Tên quan hệ :DANGBAI
STT
Tên thuộc
tính
Diển giải
Kiểu DL
Chiều
dài
Loại DL
Ràng
buộc
1
Madang
Mã số của
dạng bài tập
SN
6
B
Khóa
chính
2
Tendang
Tên dangạ
bài tập
CU
40
B
46
Khối lượng :
Số dòng tối thiểu :100
Số dòng tối đa : 5000
Kích thước tối thiểu : 100 x 46 = 4.6KB
Kích thước tối đa : 5000 x 46 = 230 KB
3.7 Quan hệ Tác Giả :
TACGIA ( MaTG , TenTG , EmailTG , Sobai)
Tên quan hệ : TACGIA
STT
Tên thuộc
tính
1
MaTG
Diển giải
Mã số của
tác giả
Kiểu DL
Chiều
dài
Loại DL
Ràng
buộc
C
10
B
Khoá
chính
13
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
2
TenTG
3
EmailTG
4
Sobai
Tên của tác
giả
CU
30
B
Địa chỉ
email của
tác giả
C
10
B
Số bài nộp
của tác giả
SN
8
K
Tổng
58
Khối lượng :
Số dòng tối thiểu :300
Số dòng tối đa : 5000
Kích thước tối thiểu : 300 x 58 = 17.4 KB
Kích thước tối đa : 5000 x 58 = 290 KB
3.8 Quan hệ Quan Hệ Ra Đề :
QUANHERADE ( MasoBT , MaTG )
Tên quan hệ : QUANHERADE
STT
Tên thuộc
tính
Mã
số
của
bài
tậpC
8BK
hóa
ngoạ
i1
MaTG
Tổn
gMa
soB
T
2
18
Diển giải
Mã số của
tác giả
Kiểu DL
Chiều
dài
Loại DL
Ràng
buộc
C
10
B
Khóa
chính
Khối lượng :
Số dòng tối thiểu :300
Số dòng tối da : 10000
Kích thước tối thiểu : 300 x 18 = 5.4 B
Kích thước tối đa : 10000 x 18 = 180 KB
14
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
3.9
Quan hệ Quan Hệ Ra bài Thi :
QUANHERABAITHI (MaTG ,MaBthi )
Tên quan hệ : QUANHERABAITHI
STT
Tên thuộc
tính
1
MaTG
2
MaBthi
Diển giải
Kiểu DL
Chiều
dài
Loại DL
Ràng
buộc
Mã số của
tác giả
C
10
B
Khoá
chính
Mã số của
bài thi
C
8
B
Khoá
ngoại
Tổng
18
Khối lượng :
Số dòng tối thiểu :300
Số dòng tối đa : 10000
Kích thước tối thiểu : 300 x 18 = 5.4 KB
Kích thước tối đa : 10000 x 18 = 180 KB
3.10 Quan hệ Cuộc Thi:
CUOCTHI ( MaCT , MaDT ,TenCT , ThoigianBD , ThoigianKT)
Tên quan hệ : CUOCTHI
STT
Tên thuộc
tính
1
MaCT
2
3
Diển giải
Kiểu DL
Chiều
dài
Loại DL
Ràng
buộc
Mã số của
cuộc thi
C
10
B
Khoá
chính
MaDT
Mã số của
đề thi
C
10
B
Khoá
ngoại
TenCT
Tên của
cuộc thi
CU
30
B
4
ThoigianBD Thời gian
bắt đầu của
cuộc thi
ST
20
B
5
ThoigianKT Thời gian
kết thúc của
cuộc thi
ST
20
B
Tổng
Khối lượng :
Số dòng tối thiểu :100
Số dòng tối đa : 10000
15
90
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
Kích thước tối thiểu : 100 x 90 = 9 KB
Kích thước tối đa : 10000 x 90 = 900 KB
3.11 Quan hệ Bài Thi :
BAITHI( MaBthi, MaCT, TenBthi, NoidungBT, Ketquathi, Gioihanthoigian,
Gioihanbonho, Dulieunhap, Dulieura )
Tên quan hệ : BAITHI
STT
Tên thuộc
tính
Diển giải
Kiểu DL
Chiều
dài
Loại DL
Ràng
buộc
1
MaBthi
Mã số của
bài thi
C
8
B
Khoá
chính
MaCT
Mã số của
đề thi
C
10
B
Khoá
ngoại
Tên của
bài thi
CU
20
B
Nội dung
của bài thi
CU
5000
B
2
TenBthi
3
NoidungBT
4
Ketquathi
Kết quả
của cuộc
thi
CU
30
B
5
Ghthoigian
Giới hạn
của thời
gian chạy
của bài thi
NT
20
B
6
Ghbonho
Giới hạn
bộ nhớ của
bài thi
SN
20
B
7
DLnhap
Dữ liệu
đưa vào
của bài thi
C
30
B
8
DLra
Dữ liệu ra
của bài thi
C
30
B
Tổng
5168
Khối lượng :
Số dòng tối thiểu :100
Số dòng tối đa : 8000
Kích thước tối thiểu : 1000 x 5168 = 5168 KB
Kích thước tối đa : 8000 x 5168 = 41344 KB
16
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
3.12 Quan hệ Quản Trị
QUANTRI ( MaQT, MatkhauQT, TenQT )
Tên quan hệ : QUANTRI
STT
Tên thuộc
tính
1
MaQT
2
3
Chiều
dài
Loại DL
Ràng
buộc
C
10
B
Khoá
chính
MatkhauQT Mật
C
khẩu của
quản trị
30
B
30
B
TenQT
Diển giải Kiểu DL
Mã số
của
Quản trị
Tênc ảu
quản trị
CU
Tổng 70
Khối lượng :
Số dòng tối thiểu :1
Số dòng tối đa : 5
Kích thước tối thiểu : 1 x 70 = 70 B
Kích thước tối đa : 5 x 70 = 350 B
3.13.Quan hệ Hiệu Chỉnh Bài Tập
QUAHEHIEUCHINH (MaQT,MasoBT )
Tên quan hệ : QUANHEHIEUCHINHBT
STT
Tên thuộc
tính
Diển giải
Kiểu DL
Chiều
dài
Loại DL
Ràng
buộc
1
MaQT
Mã số
của Quản
Tri
C
10
B
Khóa
chính
2
MasoBT
Mã số
của Bài
Tập
C
8
B
Khóa
ngoại
Tổng
18
Khối lượng :
Số dòng tối thiểu :200
Số dòng tối đa : 20000
Kích thước tối thiểu : 200 x 18 = 3.6 B
Kích thước tối đa : 20000 x 18 = 360 KB
17
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
3.14.Quan hệ Hiệu Chỉnh Tin Tức
QUAHEHIEUCHINHTT (MaQT , MaTT)
Tên quan hệ : QUANHEHIEUCHINH
STT
Tên thuộc
tính
Diển giải
Kiểu DL
Chiều
dài
Loại DL
Ràng
buộc
1
MaTQ
Mã số
của Quản
Trị
C
10
B
Khóa
chính
2
MaTT
Mã số
của tin
tức
C
10
B
Khóa
ngoại
Tổng
20
Khối lượng :
Số dòng tối thiểu :100
Số dòng tối đa : 20000
Kích thước tối thiểu : 100 x 20 = 2 KB
Kích thước tối đa : 20000 x 20 = 400 KB
3.15 Quan hệ Tin Tức
TINTUC (MaTT , NoidungTT,Ngaydang, Nguondang )
Ten quan hệ : TINTUC
STT
Tên thuộc
tính
Diển giải
Kiểu DL
Chiều dài
Loại DL
Ràng
buộc
1
MaTT
Mã số của tin
tức
C
10
B
Khóa
chính
2
NoidungTT
Nội dung của
tin tức
CU
6000
B
3
Ngaydang
Ngày đăng
của một tin
tức
NT
20
B
4
Nguondang
Nguồn đăng
của một tin
tức
C
30
B
Tổng 20
Khối lượng :
Số dòng tối thiểu :100
18
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
Số dòng tối đa : 20000
Kích thước tối thiểu : 100 x 20 = 2 KB
Kích thước tối đa : 20000 x 20 = 400 KB
4. Mô tả bảng tổng kết
a) Tổng kết quan hệ
SST
Tên quan hệ
Số Byte
Kích thước tối đa
(KB)
1
THANHVIEN
335
3350
2
BAITAP
5212
104240
3
BANGGIAIBAITAP
136208
272416000
4
BANGTHAMGIATHI
16
16
5
DANHSACH
50
100
6
DANGBAI
46
230
7
TACGIA
58
290
8
QUANHERADE
18
180
9
QUANHERABAITHI
18
180
10
CUOCTHI
90
400
11
BAITHI
5168
41344
12
QUANTRI
70
350
13
QUANHEHIEUCHINH
18
360
14
QUANHEHIEUCHINHTT
20
400
15
TINTUC
20
400
147367
272567840
Tổng
b) Tổng kết thuộc tính
STT
Tên các thuộc
tính
Diễn giải
Thuộc quan hệ
THANHVIEN
BANGGIAIBAITAP
BANGTHAMGIATHI
1
MaTV
Mã số thành viên
2
TenDN
Tên đăng nhập
của thành viên
THANHVIEN
3
Matkhau
Mật khẩu của
THANHVIEN
19
Hệ thống luyện tập và thi lập trình trực tuyến
-------------------------------------------------------------------------------------------------------
thành viên
4
TenTV
Tên thật thành
viên
THANHVIEN
5
DiachiTV
Địa chỉ của thành
viên
THANHVIEN
6
EmailTV
Địa chỉ email của
thành viên
THANHVIEN
7
Truong
Tên trường của
thành viên
THANHVIEN
8
MasoBT
Mã số của bài tập
BAITAP
BANGGIAIBAITAP
QUANHERADE
9
MaBT
Mã của bài tập và
chương trình
BAITAP
10
TenBT
Tên bài tập
BAITAP
11
Diachitai
Địa chỉ tải bài
lam
BAITAP
12
Noidung
Nội dung của bài
tập
BAITAP
Gioihanthoigian Giới hạn thời
gian chạy của bài
tập
BAITAP
13
14
Gioihanbonho
Giới hạn bộ nhớ
của bài tập
BAITAP
15
Dulieunhap
Dữ liệu nhập vào
của bài tập
BAITAP
16
Dulieura
Dữ liệu được trả
ra của bài tập
BAITAP
17
Madang
Mã số của dạng
bài tập
BAITAP
DANGBAI
18
Tendang
Tên dạng bài tập
BAITAP
19
MaTG
Mã số của tác giả
TACGIA
QUANHERADE
QUANHERABAITHI
20
TenTG
Tên của tác giả
TACGIA
21
Sobai
Số bài đăng của
tác giả
TACGIA
22
EmailTG
Địa chỉ email của
TACGIA
20
- Xem thêm -