ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Vũ Tiến Thắng
HỆ THỐNG HỌC TIẾNG NHẬT TRỰC TUYẾN
KHÓA LUẬN TỐT NGHIỆP HỆ CHÍNH QUY
Ngành: Cơng nghệ thơng tin
HÀ NỘI – 2020
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Vũ Tiến Thắng
HỆ THỐNG HỌC TIẾNG NHẬT TRỰC TUYẾN
KHÓA LUẬN TỐT NGHIỆP HỆ CHÍNH QUY
Ngành: Cơng nghệ thơng tin
Cán bộ hướng dẫn: PGS.TS Nguyễn Việt Anh
HÀ NỘI – 2020
LỜI CẢM ƠN
Lời đầu tiên, cho phép tôi gửi lời cảm ơn chân thành đến thầy Nguyễn Việt Anh –
người đã hướng dẫn tận tình và đưa ra những chỉ dẫn hiệu quả trong q trình tơi làm
khóa luận. Thầy đã chỉ bảo tơi rất nhiệt tình và nghiêm túc để có thể hồn thành khóa luận
tốt nghiệp một cách tốt nhất có thể.
Tiếp theo tơi xin chân thành cảm ơn Khoa Công Nghệ thông tin đã tạo ra môi
trường học tập tốt, giúp tơi hồn thiện những kĩ năng chuyên môn cũng như kĩ năng mềm,
tạo ra sân chơi bổ ích và lành mạnh trong thời gian học tập tại đây để sẵn sàng cho cho
con đường sự nghiệp sau này để thỏa mãn với đam mê của bản thân.
Tôi cũng cảm ơn tập thể K61-C-CLC để đã đồng hành cùng tôi trong 4 năm qua,
nơi lưu giữ những kỉ niệm vui buồn thời sinh siên, cũng là động lực giúp tôi học tập hăng
say hơn trong thời gian vừa qua – một thời gian chắc chắn là tôi khơng thể qn trong
cuộc đời mình.
Cuối cùng tơi cũng gửi lời cảm ơn đến gia đình, điểm tựa vững chắc nhất trong
cuộc đời đã tạo điều kiện hết sức cho tôi học hành và luôn mong tôi trưởng thành từng
ngày.
Tôi xin chân thành cảm ơn!
i
TĨM TẮT
Khóa luận trình bày việc xây dựng hệ thống học tiếng Nhật trực tuyến trên nền tảng Web
sử dụng công nghệ ASP.NET. Hệ thống cung cấp các bài giảng miễn phí và mất phí theo
từng trình độ. Khi học viên đã mua khóa học thì có thể học thoải mái những video trong
khóa học đó. Nội dung bài giảng được xây dựng bám sát nội dung thi thực tế nên học viên
có thể yên tâm về chất lượng của bài học. Hệ thống cung cấp chức năng phản hồi để giải
đáp mọi thắc mắc của người dùng quan tâm và cũng có thể trao đổi nội dung liên quan
đến bài học qua phần bình luận ngay bên dưới bài học. Hệ thống có những bài viết rất hay
liên quan đến cách học tiếng Nhật và văn hóa Nhật Bản giúp học viên có thêm niềm đam
mê với tiếng Nhật. Ngồi ra có các bài thi thử theo từng trình độ có cấu trúc và nội dung
tương tự như đề thi thực tế giúp học viên có thể làm quen với áp lực thi thật và tìm ra
thiếu sót để có hướng ơn tập phù hợp. Hàng tuần quản trị viên sẽ có những bài viết liên
quan đến tiếng Nhật và văn hóa Nhật Bản để mọi người cùng đọc. Hiện tại hệ thống đang
xây dựng trên nền tảng Web và sắp tời có thể phát triển thêm trên các nền tảng khác, có
thể xây dựng thêm những tính năng phù hợp hơn với nhu cầu của người dùng.
Từ khóa: Hệ thống học tiếng Nhật trực tuyến.
ii
LỜI CAM ĐOAN
Tôi xin cam đoạn mọi nội dung liên quan đến khóa luận đều do bản thân tơi thực
hiện dưới sự hướng dẫn của thầy Nguyễn Việt Anh. Mọi tài liệu tham khảo đều được ghi
rõ nguồn gốc rõ ràng và khơng có hành vi sao chép tài liệu hay cơng trình của người khác.
Nếu phát hiện hành vi sai phạm tơi xin chịu hồn tồn trách nhiệm trước khoa công nghệ
thông tin và trường đại học công nghệ.
Hà Nội, ngày
tháng
năm 2020
Sinh viên
Vũ Tiến Thắng
iii
Mục lục
LỜI CẢM ƠN.......................................................................................................................i
TĨM TẮT...........................................................................................................................ii
LỜI CAM ĐOAN...............................................................................................................iii
Mục lục...............................................................................................................................iv
Danh sách hình vẽ...............................................................................................................vi
Danh sách bảng biểu.........................................................................................................viii
Đặt vấn đề............................................................................................................................1
Vấn đề hiện tại..................................................................................................................1
Mục tiêu............................................................................................................................1
Phương pháp.....................................................................................................................1
Nội dung..........................................................................Error! Bookmark not defined.
Kết quả dự kiến.................................................................................................................2
Cấu trúc khóa luận............................................................................................................2
Chương 1. Cơ sở lý thuyết...................................................................................................3
1.1 Thông tin về bài thi và các cấp độ trong tiếng Nhật...................................................3
1. 2 Nội dung bài học........................................................................................................5
1.3 Mơ hình MVC.............................................................................................................5
1.4 Khái qt về ASP.NET MVC.....................................................................................5
1.5 Entity Framework.......................................................................................................6
1.6 Razor...........................................................................................................................6
1.7 Identity User................................................................................................................6
1.8 AJAX..........................................................................................................................6
1.9 LINQ...........................................................................................................................7
1.10 Bootrap......................................................................................................................7
1.11 Jquery........................................................................................................................7
Chương 2. Phân tích thiết kế hệ thống.................................................................................8
2.1 Phân tích các ca sử dụng.............................................................................................8
2.2 Kiến trúc hệ thống.....................................................................................................31
2.3 Cấu trúc thư mục dự án.............................................................................................32
iv
2.4 Thiết kế cơ sở dữ liệu................................................................................................33
2.5 Tầng xử lý dữ liệu.....................................................................................................34
2.6 Các controller chính..................................................................................................34
2.7 Cơ chế xác thực và phân quyền................................................................................35
2.8 Ajax...........................................................................................................................36
2.9 Validate thông qua Model trong ASP.NET..............................................................37
Chương 3. Triển khai thực nghiệm....................................................................................38
3.1 Thực hiện học bài......................................................................................................38
3.2 Thực hiện thi thử.......................................................................................................39
3.3 Khu vực quản trị viên................................................................................................40
3.4 Khu vực học viên......................................................................................................41
3.5 Giao diện bài viết liên quan đến tiếng Nhật..............................................................42
3.6 Trang hỗ trợ người dùng...........................................................................................42
3.7 Trang thông tin giảng viên........................................................................................42
Chương 4. Kết luận............................................................................................................44
4.1
Lý thuyết...............................................................................................................44
4.2 Kỹ năng.....................................................................................................................44
4.3 Công nghệ.................................................................................................................44
4.4 Nhược điểm...............................................................................................................44
4.5 Kế hoạch phát triển...................................................................................................44
Chương 5. Phụ lục.............................................................................................................46
1. Chức năng.................................................................................................................46
2. Cơ sở dữ liệu............................................................................................................50
Tài liệu tham khảo.............................................................................................................59
v
Danh sách hình vẽ
Hình 2. 1 Biểu đồ Use Case của quản trị viên......................................................................8
Hình 2. 2 Biểu đồ Use Case của học viên............................................................................9
Hình 2. 3 Biểu đồ Sequence đăng ký..................................Error! Bookmark not defined.
Hình 2. 4 Biểu đồ Sequence đăng nhập..............................Error! Bookmark not defined.
Hình 2. 5 Biểu đồ Sequence bình luận khóa học................Error! Bookmark not defined.
Hình 2. 6 Biểu đồ Sequence thi thử....................................Error! Bookmark not defined.
Hình 2. 7 Biểu đồ Sequece lưu lịch sử thi..........................Error! Bookmark not defined.
Hình 2. 8 Biểu đồ Sequence thêm khóa học.......................Error! Bookmark not defined.
Hình 2. 9 Biểu đồ Sequece sửa khóa học...........................Error! Bookmark not defined.
Hình 2. 10 Biểu đồ Sequence xóa khóa học.......................Error! Bookmark not defined.
Hình 2. 11 Biểu đồ Sequence thêm chương học.................Error! Bookmark not defined.
Hình 2. 12 Biểu đồ Sequence sửa chương học...................Error! Bookmark not defined.
Hình 2. 13 Biểu đồ Sequence xóa chương học...................Error! Bookmark not defined.
Hình 2. 14 Biểu đồ Sequence thêm bài học........................Error! Bookmark not defined.
Hình 2. 15 Biểu đồ Sequence sửa bài học..........................Error! Bookmark not defined.
Hình 2. 16 Biểu đồ Sequence xóa bài học..........................Error! Bookmark not defined.
Hình 2. 17 Biểu đồ Sequence sao chép đề thi.....................Error! Bookmark not defined.
Hình 2. 18 Biểu đồ Sequence chọn từ ngân hàng...............Error! Bookmark not defined.
Hình 2. 19 Biểu đồ Sequence Import đề thi........................Error! Bookmark not defined.
Hình 2. 20 Cấu trúc dự án..................................................................................................32
Hình 2. 21 Cấu trúc cơ sở dữ liệu.......................................................................................33
Hình 2. 22 Các class xử lý cơ sở dữ liệu............................................................................34
Hình 2. 23 Các Controller cho người dùng........................................................................34
Hình 2. 24 Các controller cho quản trị viên.......................................................................35
Hình 2. 25 Cơ chế xác thực................................................................................................35
Hình 2. 26 Cơ chế phân quyền...........................................................................................36
Hình 2. 27 Kiểm tra quyền và đăng nhập tại tầng View....................................................36
Hình 2. 28 Sử dụng Ajax....................................................................................................37
Hình 2. 29 Validate thơng qua Model................................................................................37
Hình 3. 1 Giao diện trang bài học.......................................................................................38
Hình 3. 2 Phần thi từ vựng.................................................................................................39
vi
Hình 3. 3 Phần thi ngữ pháp và đọc hiểu...........................................................................40
Hình 3. 4 Phần thi nghe hiểu..............................................................................................40
Hình 3. 5 Giao diện quản lý đề thi......................................................................................41
Hình 3. 6 Giao diện quản lý liên quan đến bài học............................................................41
Hình 3. 7 Quản lý thơng tin cá nhân...................................................................................42
Hình 3. 8 Hình ảnh bài viết liên quan đến tiếng Nhật........................................................42
Hình 3. 9 Hình ảnh trang hỗ trợ người dùng......................................................................42
Hình 3. 10 Hình ảnh trang giới thiệu giảng viên................................................................43
vi
Danh sách bảng biểu
Bảng 1. 1 Cấu trúc phần thi từ vựng N5...............................................................................3
Bảng 1. 2 Cấu trúc phần thi ngữ pháp và đọc hiểu N5.........................................................4
Bảng 1. 3 Cấu trúc phần thi nghe hiểu N5...........................................................................5
Bảng 1. 4 Cấu trúc phần thi từ vựng N3............................Error! Bookmark not defined.
Bảng 1. 5 Cấu trúc phần thi ngữ pháp và đọc hiểu N3.......Error! Bookmark not defined.
Bảng 1. 6 Cấu trúc phần thi nghe hiểu N3..........................Error! Bookmark not defined.
Bảng 1. 7 Cấu trúc phần thi từ vựng, đọc hiểu, ngữ pháp N1...........Error! Bookmark not
defined.
Bảng 1. 8 Cấu trúc phần thi nghe hiểu N1..........................Error! Bookmark not defined.
Bảng 2. 1 Mô tả ca sử dụng đăng ký....................................................................................9
Bảng 2. 2 Mô tả ca sử dụng đăng nhập..............................................................................11
Bảng 2. 3 Bảng mơ tả ca sử dụng bình luận khóa học.......................................................12
Bảng 2. 4 Bảng mô tả ca sử dụng thi thử...........................................................................13
Bảng 2. 5 Bảng mô tả ca sử dụng lưu lịch sử bài thi..........................................................14
Bảng 2. 6 Bảng mô tả ca sử dụng quản trị khóa học..........................................................15
Bảng 2. 7 Bảng mơ tả ca sử dụng quản trị chương học......................................................19
Bảng 2. 8 Bảng mô tả ca sử dụng quản trị bài học.............................................................22
Bảng 2. 9 Bảng mô tả ca sử dụng liên quan đến quản trị đề thi.........................................25
vi
Đặt vấn đề
1. Vấn đề hiện tại
Ngày nay nhu cầu lao động biết tiếng Nhật ngày càng tăng do Nhật Bản có tình
trạng dân số già hóa và Việt Nam là điểm đến lý tưởng cho các doanh nghiệp Nhật Bản.
Về cơ bản có những lý do sau: có nhiều sự tương đồng về văn hóa, có lịch sử giao lưu lâu
đời và nhân lực Việt Nam rất nhiều và chi phí khơng cao. Vì lý do đó mà việc làm cho
người biết tiếng Nhật càng nhiều. Nhưng vấn đề lớn đối với họ là ít có thời gian cho việc
học tiếng vì thời gian đi làm chiếm tương đối lớn thời gian trong ngày. Việc học ở trung
tâm tiếng Nhật thì mất thời gian cho việc đi lại và chi phí khá đắt.
2. Mục tiêu
Với những vấn đề trên, tôi quyết định xây dựng hệ thống học tiếng Nhật trực
tuyến giúp các học viên có thể học mọi lúc mọi nơi khi có thời gian rảnh và chi phí khá rẻ
so với học truyền thống. Việc học trực tuyến có rất nhiều ưu điểm như chi phí thấp, có
thể học mọi lúc mọi nơi miễn là có kết nối internet. Bên cạnh đó việc học trực tuyến tồn
tại một số khuyết điểm như: hạn tương tác với giáo viên, tinh thần học sẽ bị ảnh hưởng
bởi bì khơng có sự thúc dục của giảng viên. Với những ưu, nhược điểm trên thì hệ thống
sẽ cố gắng khắc phục những nhược điểm để đạt được hiệu quả trong hoạt động giảng dạy.
3. Phương pháp
Hệ thống sử dụng ASP.NET MVC để phát triển với các tầng như Model(chứa các
phương thức thao tác với cơ sở dữ liệu), Controller(tiếp nhận yêu cầu từ người dùng và
trả kết quả cho View), View(hiển thị dữ liệu và tương tác với hành động người dùng).
Ngoài ra, tơi cịn sử dụng Entity Framework để tự động tạo ra những Model ứng với các
bảng trong cơ sở dữ liệu. Việc xây dựng View sử dụng Bootrap – framework HTML,
CSS, JS phổ biến để phát triển các trang web responsive và các ứng dụng ưu tiên nền
tảng Mobile. Để tăng trải ngiệm của người dùng thì tơi có sử dụng AJAX, những vấn đề
liên quan đến bảo mật thì được giải quyết bằng Identity User tích hợp trong ASP.NET.
4. Nội dung hệ thống cung cấp
Hệ thống gồm nhiều đối tượng người dùng như là quản trị viên và học viên với
những quyền hạn riêng. Học viên có thể xem những bài học miễn phí và sử dụng những
bài học trả phí sau khi mua khóa học. Ngồi ra, học viên sẽ được thi những đề thi theo
từng cấp độ có cấu trúc và độ khó tương tự đề thi thật để đánh giá trình độ bản thân. Sau
mỗi khóa học thì học viên có thể bình luận trực tiếp dưới bài học về nội dung thắc mắc
hoặc góp và sẽ được quản trị viên trả lời ở thời gian gần nhất. Ngoài ra hệ thống cung cấp
chức năng gửi phản hồi những nội dung cần thiết. Quản trị viên sẽ chịu trách nhiệm quản
1
trị nội dung trên hệ thống như hệ thống bài viết về tiếng Nhật và nội dung liên quan đến
văn hóa Nhật Bản, thơng tin người dùng, các đơn hàng đăng kí mua khóa học tiếng Nhật,
nội dung đề thi và bài học. Phần đề thi được xây dựng theo khung chuẩn theo chương
trình thực tế thì thời gian, nội dung và tính điểm. Quản trị viên là người trực tiếp trả lời
những nội dung thắc mắc của người dùng.
5. Kết quả dự kiến
Dự kiến hệ thống ban đầu sẽ phát triển hoàn thiện các chức năng đã nêu với số
lượng người dùng bao gồm cả hai nhóm là học viên và quản trị viên, tất cả các trình độ
đều có các bài học và đề thi tiêu biểu.
Hiện nay có nhiều nền tảng triển khai học trực tuyến như Moodle, … Những nền
tảng này đều rất nổi tiếng nhưng vẫn tồn tại những nhược điểm như giao diện khó thay
đổi và việc phát triển phụ thuộc rất nhiều vào khn mẫu có sẵn nên khó tùy biến và phát
triển thêm những tính năng mà người dùng cần.
6. Cấu trúc khóa luận
Chương 1 Cơ sở lý thuyết giới thiệu những cơng nghệ sử dụng và thơng tin bài thi, trình
độ cho từng cấp độ tiếng Nhật
Chương 2 Phân tích thiết hệ thống bao gồm những thông tin đặc tả và thiết kế chức năng,
cơ sở dữ liệu của hệ thống
Chương 3 Triển khai thực nghiệm gồm những hình ảnh thực tế những gì đã làm được.
Chương 4 Kết luận gồm những kết quả đã đạt được, các biện pháp liên quan đến kĩ năng,
công nghệ, nhược điểm hiện tại và hướng phát triển trong tương lại.
Chương 5 Phụ lục gồm những mô tả ca sử dụng và thông tin các bảng cơ sở dữ liệu chưa
được nêu ở các phần trước
Tài liệu tham khảo sẽ gồm những link tài liệu cụ thể được dùng để tham khảo trong quá
trình xây dụng hệ thống.
2
Chương 1. Cơ sở lý thuyết
Trong chương này tôi sẽ trình bày thơng tin bài thi, nội dung bài học tiếng Nhật và những
công nghệ được áp dụng để xây dựng nên hệ thống học tiếng Nhật.
1.1 Thông tin về bài thi và các cấp độ trong tiếng Nhật
Các cấp độ trong tiếng Nhật: [1]
Trình độ cao sơ cấp (Trình độ N5, N4)
Người học có thể hiểu được câu văn, đoạn văn đơn giản được sử dụng trong sinh
hoạt hàng và trong lớp học.
Trình độ trung cấp (Trình độ N3)
Người học có thể đọc hiểu những thơng tin khái qt nhất có trong báo chí và
nghe hiểu những hội thoại hàng ngày với tốc độ nói tự nhiên. Với trình độ này học
viên có thể bắt đầu hiểu và sử dụng tiếng Nhật trong cơng việc.
Trình độ thượng cấp(Trình độ N2, N1)
Ở trình độ này người học có thể đọc và nghe hiểu những tình huống phức tạp như
nội dung báo chí và tin tức. Ở trình độ này học viên có thể đáp ứng được những
cơng việc cần khả năng tiếng Nhật tốt và được nhiều nhà tuyển dụng săn đón.
Điểm đat ở trình độ N5
Điểm đạt trên trên 80(Tối đa 180)
Điểm kiến thức ngôn ngữ đọc hiểu: Trên 38(Tối đa 120)
Điểm nghe hiểu: Trên 19(Tối đa 60)
Cấu trúc đề thi N5
Phần thi từ vựng
Cấu trúc
Phần 1(Từ vựng)
Mục
Mục 1
Số câu
12
Mục 2
8
Mục 3
10
Mục 4
5
Nội dung
Cách đọc những từ được viết bằng Hán
tự
Những từ được viết bằng Hiragana sẽ
được viết sang Hán tự hoặc Katakana
như thế nào
Tùy theo mạch văn tìm những từ được
qui định phù hợp về mặt ngữ nghĩa
Tìm cách diễn đạt, từ gần nghĩa với từ
đã cho
Bảng 1. 1 Cấu trúc phần thi từ vựng N5
3
Phần thi ngữ pháp và đọc hiểu
Cấu trúc
Mục
Phần 2(Ngữ pháp Mục 1
và đọc hiểu)
Mục 2
Số câu
16
Nội dung
Có thể phán đốn được hình thức ngữ
pháp nào phù hợp với nội dung câu văn
5
Có thể tạo được câu văn mạch lạc về ý
nghĩa và đúng cú pháp
Mục 3
5
Có thể phán đốn được câu nào phù hợp
với với dòng chảy của đoạn văn
Mục 4
3
Đọc và hiểu được những nội dung của
một văn bản khoảng 80 chữ Hán tự đơn
giản về ngữ cảnh, các vấn đề liên quan
đến học tập, cuộc sống hay công việc
Mục 5
2
Đọc và hiểu được văn bản khoảng 250
Hán tự đơn giản về đề tài liên quan đến
cuộc sống hàng ngày
Mục 6
1
Có thể tìm ra những thơng tin trong các
bản tin, bản hướng dẫn có khoảng 250
Hán tự cơ bản
Bảng 1. 2 Cấu trúc phần thi ngữ pháp và đọc hiểu N5
Phần thi nghe hiểu
Cấu trúc
Phần 3 Nghe
hiểu
Mục
Mục 1
Số câu
7
Mục 2
6
Mục 3
5
Nội dung
Có thể hiểu được nội dung khi nghe một
đoạn văn, một đoạn hội thoại. Nghe nắm
bắt được thông tin cần thiết, giải quyết
chủ đề mang tính cụ thể và có thể biết
được cái thích hợp tiếp theo
Có thể hiểu được nội dung khi nghe một
đoạn văn, một đoạn hội thoại. Phải nghe
cái được chị thị từ trước, có khả năng
nghe lược những điểm chính
Vừa nhìn hình vừa nghe giải thích để lựa
chọn đáp án thích hợp
4
Mục 4
6
Nghe câu thoại ngắn chằng hạn như một
câu hỏi rồi chọn đáp án tương ứng
Bảng 1. 3 Cấu trúc phần thi nghe hiểu N5
1. 2 Nội dung bài học
Với mỗi bài học chúng ta có các phần như
Chữ Hán
Từ vựng
Ngữ pháp
Đọc hiểu
Nghe hiểu
Trong từng phần học thì sẽ có video và tài liệu cụ thể liên quan đến phần bài học đó.
1.3 Mơ hình MVC
Mơ hình MVC là mơ hinh phổ biến hiện nay được chưa làm 3 lớp xử lý Model – View –
Controller.[2]
Model : nơi chứa những nghiệp vụ tương tác dữ liệu hoặc hệ quản trị cơ sở dữ
liệu. Nó bao gồm các class/function xử lý nghiệp vụ như kết nối database, truy
xuất dữ liệu, thêm, sửa, xóa dữ liệu trong database
View: nơi chứa giao diện của hệ thống như trang chủ, trang khóa học, trang bài
thi, ….Nó sẽ đảm nhận vai trò hiển thị dữ liệu cho người dùng và giúp người dùng
tương tác với hệ thống
Controller: là nơi tiếp nhận những yêu cầu xử lý được gửi từ người dùng, nó sẽ
gồm các class/function xử lý nghiệp vụ logic giúp lấy đúng dữ liệu thông tin cần
thiết nhờ các nghiệp vụ lớp Model cung cấp và hiển thị dữ liệu đó cho người dùng
nhờ lớp View
1.4 Khái quát về ASP.NET MVC
ASP.NET MVC là một framework web được phát triển bởi Microsoft, thực thi mơ hình
MVC, cho phép các lập trình viên xây dựng các Web động. Nó cho phép ta sử dụng đầy
đủ tính năng của ngơn ngữ lập trình C#. [3]
Cách hoạt động
Dựa trên nền tảng ASP.NET, ASP.NET MVC cho phép các nhà phát triển phần mềm xây
dựng các ứng dụng web như là một cấu thành 3 vai trị: Model, View và Controller. Mơ
hình MVC định nghĩa ứng dụng Web với 3 tần logic.
Model (tầng business – business layer)
5
View (tầng hiển thị – display layer)
Controller (điều khiển đầu vào – input control)
1.5 Entity Framework
Entity Framework (EF) là một framework ánh xạ quan hệ đối tượng (ORM) dành cho
ADO.NET, là 1 phần của .NET Framework. EF cho phép các nhà phát triển Web tương
tác với dữ liệu quan hệ theo phương pháp hướng đối tượng đặc trưng. Lợi ích lớn nhất
của EF là giúp lập trình viên giảm thiểu việc lập trình mã nguồn cần thiết để truy cập và
tương tác với cơ sở dữ liệu. EF được Microsoft hỗ trợ phát triển lâu dài và bền vững, vì
vậy EF là 1 framework mạnh nhất hiện nay để phát triển ứng dụng Web với sự hỗ trợ
đông đảo của các nhà phát triển Web. [4]
Có một số tính năng nổi bật của Entity Framework như:
Code First + Migration
Change Tracker API
Lazy Loading, Eager Loading, Explicit Loading
Trong hệ thống thì có sử dụng Code Firt from database để tạo ra các class tương ứng với
các bảng trong Database.
1.6 Razor
Razor là một trong các công cụ tạo giao diện được hỗ trợ trong ASP.NET MVC. Nó cho
phép bạn viết HTML và code ở phần server dùng C# hoặc Visual Basic. Razor sử dụng
C# có phần mở rộng là .cshtml. [5]
Cú pháp của Razor có đặc điểm như sau:
Nhỏ gọn: cú pháp của nó rất nhỏ gọn cho phép bạn giảm thiểu số lượng kí tự và tổ
hợp phím cần thiết để viết mã.
Dễ học: cú pháp rất dễ học. Người viết có thể sử dụng C# hoặc Visual Basic.
Thông minh: cú pháp hỗ trợ những câu lênh trong Visual Studio
1.7 Identity User
Identity User [6] là thành phần của ASP.NET, nó cung cấp đầy đủ các tính năng và đa
dạng về Authencation. Ví dụ như: Tạo tài khoản, đăng nhập, cập nhật thông tin các nhận.
Ngồi ra nó cịn hỗ trợ những tính năng như đăng nhập với các tài khoản Gmail,
Facebook, Twitter.
Về tính năng phân quyền, Identity hỗ trợ các thao tác liên quan đến quyền của người
dùng. Nói một cách ngắn gọn, Identity là công cụ rất tốt trong việc liên quan đến xác thực
và phân quyền
1.8 AJAX
AJAX[7] (Asynchronous JavaScript and XML) trong các ứng dụng web được sử dụng để
6
cập nhật một phần của trang web và lấy dữ liệu từ máy chủ bất đồng bộ. AJAX giúp cải
thiện hiệu năng của ứng dụng web và làm cho ứng dụng thân thiện với người dùng hơn.
1.9 LINQ
LINQ[8] là viết tắt của Language Integration Query. Ngôn ngữ truy vấn của Microsoft
được tích hợp đầy đủ và cung cấp truy cập dữ liệu dễ dàng từ các đối tượng trong bộ
nhớ, cơ sở dữ liệu, tài liệu XML và nhiều hơn nữa. Thơng qua một bộ các tiện ích mở
rộng, LINQ có thể tích hợp các truy vấn trong C # và Visual Basic. Hướng dẫn này cung
cấp một cái nhìn sâu sắc hồn tồn về LINQ với các ví dụ và mã hóa phong phú. Tồn bộ
hướng dẫn được chia thành các chủ đề khác nhau với chủ đề phụ mà người mới bắt đầu
có thể chuyển dần sang các chủ đề phức tạp hơn của LINQ.
1.10 Bootrap
Bootstrap[9] là công cụ mã nguồn mở để phát triển với HTML, CSS và JS. Nó giúp
chúng ta nhanh chóng tạo nguyên mẫu cho ý tưởng của bản thân hoặc xây dựng toàn bộ
ứng dụng hệ thống lưới đáp ứng, các thành phần dựng sẵn mở rộng và các plugin mạnh
mẽ được xây dựng trên jQuery.
1.11 Jquery
Jquery[10] là một thư viện JavaScript nhanh, nhỏ và giàu tính năng. Nó làm cho mọi thứ
như chuyển đổi và thao tác tài liệu HTML, xử lý sự kiện, hoạt hình và Ajax đơn giản hơn
nhiều với API dễ sử dụng, hoạt động trên vơ số trình duyệt. Với sự kết hợp giữa tính linh
hoạt và khả năng mở rộng, jQuery đã thay đổi cách hàng triệu người viết JavaScript.
7
Chương 2. Phân tích thiết kế hệ thống
2.1 Phân tích các ca sử dụng
Hệ thống có hai đối tượng người sử dụng chính là quản trị viên và học viên.
Quản trị viên là người có quyền hạn cao nhất và quản trị mọi nội dung trên hệ thống.
Những nội dung mà người này quản trị gồm có nội dung bài học, đề thi, các đơn hàng,
bài viết, trả lời các phản hồi của học viên, thông tin giảng viên.
Học viên có thể mua các khóa học theo yêu cầu. Sau khi thanh tốn thành cơng, hệ thống
sẽ gửi mã kích hoạt và có thể học được sau khi kích hoạt khóa học. Ngồi ra, học viên có
thể tham gia các bài thi thử để đánh giá năng lực của bản thân, đặt câu hỏi sau mỗi bài
học để quản trị viên vào giải đáp.
Hệ thống cịn cung cấp các thơng tin giảng viên, các bài viết về việc học tiếng Nhật và
đất nước Nhật Bản để mọi người có thêm niềm say mê với tiếng Nhật. Sau đây là biểu
đồ các ca sử dụng đối với từng người dùng.
Ca sử dụng của quản trị viên:
Hình 2. 1 Biểu đồ Use Case của quản trị viên
Ca sử dụng của học viên:
8
Hình 2. 2 Biểu đồ Use Case của học viên
1. Ca sử dụng đăng ký
Tên ca sử dụng
ID
Ca sử dụng trước
Tác nhân
Mơ tả tóm tắt
Đăng ký
UC01
Khơng
Người dùng
Người dùng đăng kí tài khoản sử dụng hệ thống với
những thông tin được yêu cầu
Tiền điều kiện
Người dùng đang ở trang đăng kí hệ thống
Hậu điều kiện
Người dùng đăng kí thành cơng
Luồng sự kiện
- Người dùng ở trang đăng kí tài khoản
- Người dùng nhập thơng tin đăng ký
- Kiểm tra tính hợp lệ của dữ liệu, nếu hợp lệ thì gửi
yêu cầu tạo tài khoản
Luồng thay thế
- Dữ liệu không hợp lê: Thông báo để người dùng
nhập lại
- Dữ liệu chưa đầy đủ: Thống báo để người dùng
nhập lại
Mức độ ưu tiên
Cao
Yêu cầu phi chức năng Không
Bảng 2. 1 Mô tả ca sử dụng đăng ký
Biểu đồ hoạt động
9
Biểu đồ tuần tự
2. Ca sử dụng đăng nhập
Tên ca sử dụng
ID
Ca sử dụng trước
Tác nhân
Mơ tả tóm tắt
Tiền điều kiện
Hậu điều kiện
Luồng sự kiện
Luồng thay thế:
Đăng nhập
UC02
Không
Người dùng
Người dùng đăng nhập với tài khoản đã có
Người dùng đang ở trang đăng nhập
Người dùng trở về trang chủ
- Người dùng ở trang đăng nhập
- Người dùng nhập thông tin tài khoản yêu cầu
- Hệ thống kiếm tra và đăng nhập thành cơng nếu
thơng tin chính xác
- Thơng tin khơng hợp lệ hệ thống sẽ xuất ra thông
báo cho người dùng
1