Lời nói đầu
Trong giai đoạn hiện nay, giáo dục đang là quốc sách hàng đầu của đất nước.
Nhiệm vụ của giáo dục là đào tạo nhân lực, bồi dưỡng nhân tài cho xã hội. Trong quá
trình đào tạo, đo lường và đánh giá là công đoạn quan trọng nhất, vì nó cho biết thành quả
của quá trình đào tạo.
Trải qua nhiều năm, phương thức quản lý đào tạo, dạy và học theo kiểu truyền
thống đã cho thấy sự đóng góp không thể chối cãi trong công cuộc giáo dục và đào tạo.
Tuy nhiên, cùng với sự phát triển và bùng nổ của công nghệ thông tin thì chính những
phương thức đó cũng đã bộc lộ một số yếu kém ảnh hưởng đến việc truyền đạt và tiếp thu
nội dung kiến thức, trong đó có thể kể đến việc quản lý hồ sơ không đạt hiệu quả cao, nội
dung các giáo trình, sách giáo khoa thường khó có thể cập nhật kịp thời, hình thức bài
giảng không tạo được sự hứng thú học tập cho học sinh, sinh viên; việc tra cứu tại chỗ các
tài liệu tham khảo rất hạn chế và mất thời gian Điều đó mang lại hiệu quả học tập
không cao mà chi phí cho đào tạo và học tập lại lớn, dẫn đến sự lãng phí không nhỏ cả về
thời gian và tiền bạc
Nhận thức được những vấn đề trên, công tác giáo dục đã có nhiều thay đổi, cải tiến
với những hình thức học tập mới, khắc phục những hình thức truyền thống. Việc học tập
và đào tạo trực tuyến, với sự trợ giúp của các công nghệ mới nhất trong lĩnh vực công
nghệ thông tin, là hình thức học tập hứa hẹn sẽ khắc phục tốt những nhược điểm của
phương pháp học tập truyền thống. Hình thức học tập này hiện đã rất phổ biến ở nhiều
nước trên thế giới.
Đề tài “ Xây dựng chương trình học Anh văn trực tuyến” đúng như tên gọi của nó,
sẽ tạo ra một hệ thống cho phép người bên trong hệ thống (quản trị viên và giáo viên)
soạn thảo những bài giảng, câu hỏi, và thể hiện chúng qua giao diện web, đồng thời
cho phép các người dùng bên ngoài hệ thống (cần phải đăng ký một tài khoản thành viên)
sử dụng website vào mục đích học tập và kiểm tra trình độ tiếng Anh trực tuyến. Chúng
tôi đã sử dụng bộ soạn thảo FreeTextBox để làm công cụ hỗ trợ cho việc soạn thảo dữ
liệu cho hệ thống. (FreeTextBox là một công cụ xử lý văn bản khá mạnh trên nền web,
đặc biệt nó có 2 phần Design và HTML nên rất linh hoạt cho cả người dùng chuyên
nghiệp và không chuyên. Tính năng chính của FreeTextBox bao gồm: Thay đổi phông,
kích thước và kiểu chữ; chèn liên kết, chèn hình ảnh; đánh số và đề mục; sắp đoạn văn
bản; Hoàn tác/Phục tác, ).
79 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 3359 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Xây dựng chương trình học anh văn trực tuyến, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
h khoá. Thì nay, chỉ cần
một đường truyền Internet và một số thao tác đơn giản, với một ít vốn từ Tiếng Anh,
chúng ta vẫn có thể tự luyện khả năng học Anh văn của mình qua trang web
www.englishworld.com (hiện đang trong giai đoạn thử nghiệm). Nghiên cứu về cách thức
học, làm bài và cách thức chấm điểm, từ đó xây dựng website thử nghiệm chính là mục
tiêu của đề tài. Để thực hiện mục tiêu đó, chúng tôi đã sưu tập và hệ thống lại những vấn
đề liên quan đến đề tài, tham khảo rất nhiều các trang web học Anh văn trực tuyến khác
như www.globaledu.com.vn hay www.tienganh.com.vn. Website này cung cấp cho chúng
ta những bài học bổ ích và thiết thực phù hợp với khả năng của mỗi người. Đủ để chúng
ta có thể tự đánh giá khả năng học tiếng Anh của mình và nhanh chóng nâng cao kiến
thức cho bản thân. Có nhiều dạng kiến thức cho chúng ta lựa chọn. Đặc biệt chúng ta có
thể làm các bài tập trực tuyến mà không cần tải về máy. Website sẽ cho chúng ta biết kết
quả ngay khi chúng ta kết thúc làm bài. Mỗi bài học đều được tổ chức sao cho học viên có
thể tăng cường mọi kỹ năng cần thiết khi học Anh văn (nghe – nói – đọc – viết), thậm chí
chúng ta còn có thể phát triển kỹ năng vi tính của mình khi học Anh văn nữa đấy. Mặc dù
vậy, trong quá trình nghiên cứu, chúng tôi cũng gặp không ít khó khăn về nguồn tài liệu
và thời gian, vì vậy chúng tôi chỉ tập trung vào những vấn đề cơ bản của việc học Anh
văn. Chúng tôi đưa ra sáu dạng câu hỏi cơ bản để làm bài: Trắc nghiệm một lựa chọn;
Trắc nghiệm nhiều lựa chọn; Chia động từ; Câu điền khuyết; Trắc nghiệm Đúng / Sai. 5
dạng câu hỏi sẽ tương ứng với 4 loại điều kiểm (control): textbox, checkbox,
dropdownlist, radiobutton. Do đó chúng tôi xây dựng lên 5 biểu mẫu (form) nhập câu hỏi,
5 form hiển thị câu hỏi, và cách chấm điểm cho từng loại.
I.2. Nhiệm vụ của đồ án
I.2.1 Mục đích
6
- Tìm hiểu kỹ thuật lập trình ASP.NET với cơ sở dữ liệu và triển khai ứng dụng
web.
- Xây dựng website học Anh văn trực tuyến.
I.2.1 Yêu cầu
Giới thiệu về trang web học Anh văn trực tuyến. Website phải cung cấp đầy đủ các
chức năng tìm kiếm hỗ trợ việc học bài.
Giao diện:
Hệ thống hoạt động trên giao diện web application
Màu nền của website là xanh lá, xanh dương.
Tập tin flash: Trên trang chủ của website có 1 đoạn flash.
Giao diện thân thiện dễ sử dụng. Các thao tác trên web tự nhiên và gần
gũi với người dùng.
Phạm vi:
Về mặt dữ liệu:
o Hệ thống đáp ứng việc dữ liệu được cập nhật hàng ngày
o Đáp ứng lưu trữ với khối lượng dữ liệu lớn.
7
o Cho phép chứa nhiều hình ảnh có kích thước và dung lượng mức
trung bình.
Về mặt xử lý:
o Hỗ trợ tìm kiếm thông tin (dành cho admin, giáo viên).
o Không hỗ trợ forum.
Về mạng: Hệ thống hỗ trợ họat động trên Internet (học qua mạng).
Phần cứng, phần mềm: Trong thực tế, hệ thống sẽ cần họat động trên một máy dịch vụ
(server) mạnh đa lõi Xeon 4.5GHz, hàng chục GB RAM, ổ cứng hàng ngàn GB, với hệ
điều hành Windows Server 2003, lõi là ASP.NET 2.0. Tuy nhiên, vì hiện đang thử
nghiệm nên hệ thống chỉ chạy trên máy cục bộ 2 nhân Pentium Dualcore 1.8GHz, 1GB
RAM, ổ đĩa cứng 160GB (localhost) với hệ điều hành Windows XP SP2, và lõi cũng là
ASP.NET 2.0, có thể kèm theo Internet Information Service 5.0 (IIS 5.0).
8
I.2.3 Nghiên cứu hiện trạng
I.2.3.1. Phân tích hiện trạng
Hiện nay, quy trình từ lúc soạn thảo cho đến lúc làm bài thi thử và chấm điểm
được tổ chức như sau:
• Các giáo viên được chỉ định thực hiện việc soạn các bài giảng và câu hỏi.
• Các giáo viên gửi bài về hệ thống, hệ thống tập hợp lại các câu hỏi.
• Hệ thống sẽ lọc và xáo trộn các câu hỏi để thành lập các bài học.
• Hệ thống thiết kế ra các bảng trả lời, bảng đáp án phục vụ cho việc chấm điểm.
• Sau khi thời gian làm bài kết thúc, bài làm của học viên sẽ được gửi lên hệ thống
để chấm điểm. Và học viên sẽ biết được kết quả của mình ngay trên trang đó.
Hầu hết các giai đoạn của quy trình trên đều thực hiện bằng tay, nhất là việc chọn câu hỏi,
xáo trộn và đánh giá. Chính vì thế công việc hết sức khó khăn và phức tạp.
I.2.3.2. Sơ đồ tổ chức của website English World.
9
Hình 1.1. Sơ đồ tổ chức website
I.2.3.3. Các mô tả về người sử dụng và quyền hạn
Admin:
- Chức năng: Người quản trị hệ thống.
- Quyền hạn: Toàn quyền xử lý tất cả các chức năng và cơ sở dữ liệu.
Teacher:
- Chức năng: Có các chức năng gần giống admin, nhưng có quyền thấp hơn.
Chỉ có thể thêm, xóa, sửa bài học.
- Quyền hạn: Thay đổi, chỉnh sửa phần bài học trong giới hạn của mình.
Learner:
- Chức năng: Học viên ghé thăm website, nhưng chưa có ý định trở thành
thành viên của website. Sử dụng các chức năng bên ngoài của hệ thống.
- Quyền hạn: Xem bài học và kiểm tra kiến thức ngay trên website.
I.2.4. Môi trường phát triển
• Môi trường: ASP.NET 2.0.
• Ngôn ngữ: C#.Net, Javascript, HTML.
10
• Công cụ phân tích: Rational Rose 2003, ERWin ERX 3.5.2.
• Hệ quản trị cơ sở dữ liệu: MS SQLServer 2005.
• Sử dụng môi trường .Net Framework để thực thi.
• Công cụ đồ họa:
+ Adobe Photoshop CS8.
+ Adobe ImageReady CS8.
+ Macromedia Dreamweaver 8.
+ Adobe Flash Pro CS3.
I.2.5. Kiến trúc ứng dụng
Hình 1.2. Mô hình kiến trúc ứng dụng
• Mô hình hệ thống được chia làm 3 lớp: Lớp cơ sở dữ liệu (CSDL), lớp giao diện, và
lớp xử lý.
11
• Lớp cơ sở dữ liệu sẽ làm nhiệm vụ lấy dữ liệu và xử lý theo yêu cầu của lớp giao diện
và lớp xử lý.
• Theo mô hình thiết kế, lớp giao diện không được phép truy cập trực tiếp vào CSDL,
nhưng trong một số trường hợp đặc biệt, như tạo GridView, DataSet trên Web, lớp
giao diện sẽ không thông qua lớp kết nối dữ liệu, mà gửi yêu cầu trực tiếp đến CSDL.
I.3. Cấu trúc của đồ án:
Chương 1: Tổng quan: Đặt vấn đề, mục tiêu của đồ án, cấu trúc đồ án.
Chương 2: Cơ sở lý thuyết thực hiện đồ án: Các phương pháp, lý thuyết và công
nghệ sử dụng để thực hiện nhiệm vụ đề ra.
Chương 3: Phân tích và thiết kế hệ thống.
Chương 4: Hiện thực chương trình.
Chương 5: Tổng kết và hướng phát triển.
12
CHƯƠNG II: CƠ SỞ LÝ THUYẾT
II.1. Tổng quan về hình thức soạn bài
Nội dung trong mỗi bài học bao gồm cả 2 phần: tự luận và trắc nghiệm. Tự luận và
trắc nghiệm khách quan đều là những phương tiện để kiểm tra kiến thức, đồng thời đều là
trắc nghiệm (tests). Các bài kiểm tra thuộc loại tự luận mà xưa nay vốn quen thuộc với
chúng ta cũng là một dạng của trắc nghiệm nhằm khảo sát khả năng học tập của học sinh
qua các môn học. Các chuyên gia đo lường gọi chung các hình thức kiểm tra này là “trắc
nghiệm loại tự luận”. Chúng ta gọi tắt “luận đề” là trắc nghiệm tự luận và trắc nghiệm là
“trắc nghiệm khách quan”.
II.2. Các hình thức soạn bài
II.2.1. Câu trắc nghiệm Đúng – Sai (True – False question)
Cấu trúc: gồm một câu phát biểu và phần học viên trả lời bằng cách chọn: Đúng (Đ)
hay Sai (S).
Ưu điểm:
Dễ xây dựng.
Có thể đặt được nhiều câu hỏi trong một bài trắc nghiệm với thời gian cho trước;
điều này làm tăng tính tin cậy của bài trắc nghiệm nếu như các câu trắc nghiệm đúng - sai
được soạn thảo theo đúng quy cách.
13
Trong khoảng thời gian ngắn có thể soạn được nhiều câu trắc nghiệm vì người
soạn không cần phải tìm ra câu trả lời cho học viên lựa chọn.
Những yêu cầu khi soạn câu đúng – sai:
Mỗi câu trắc nghiệm chỉ nên diễn tả một ý tưởng độc nhất, tránh những câu phức
tạp, nhiều chi tiết.
Lựa chọn những câu phát biểu sao cho một người có khả năng trung bình không
thể nhận ra ngay là đúng hay sai mà không cần suy nghĩ.
Những câu phát biểu mà tính chất đúng, sai phải chắc chắn, có cơ sở khoa học.
Tránh dùng những câu phát biểu trích nguyên văn từ sách giáo khoa, như vậy sẽ
khuyến khích học viên học thuộc máy móc.
14
Bảng 2.1. Form soạn câu trắc nghiệm Đúng - Sai
Ví dụ:
1. …………………………………….(True/ False)
2. …………………………………….(True/ False)
3. …………………………………….(True/ False)
4. …………………………………….(True/ False)
Sug_ID Sug_Content Sug_Position Sug_Answer Ques_ID
1 True Null True 5
2 True Null True 5
3 False Null True 5
4 True Null True 5
II.2.2. Câu trắc nghiệm 1 lựa chọn (Single Choice question)
Cấu trúc:
Gồm 2 phần: phần gốc và phần lựa chọn.
Phần gốc: là một câu hỏi hay câu bỏ lửng. Trong phần này, người soạn câu hỏi đặt
ra một vấn đề hay đưa ra một ý tưởng rõ ràng giúp người trả lời hiểu rõ câu trắc nghiệm
ấy muốn hỏi điều gì để lựa chọn câu trả lời thích hợp.
15
Phần lựa chọn: Có nhiều (3, 4, 5,…) gợi ý trả lời nhưng chỉ cho phép học viên
chọn một câu trả lời được xem là đúng nhất, được gọi là “đáp án” (key). Những câu còn
lại đều phải là sai.
Ưu điểm:
Độ may rủi thấp: nếu câu trắc nghiệm có N lựa chọn thì độ may rủi là 1/N.
Có thể khảo sát được số đông học sinh, chấm nhanh, kết quả chính xác.
Nếu soạn đúng quy cách, kết quả có tính tin cậy và giá trị cao.
Nhược điểm:
Tuy độ may rủi thấp nhưng người trả lời vẫn có thể đoán mò.
Để có được một bài trắc nghiệm có tính tin cậy và tính giá trị cao, đòi hỏi người
soạn phải đầu tư nhiều thời gian và phải tuân thủ đầy đủ các bước soạn thảo trắc nghiệm.
Yêu cầu:
Số lựa chọn nên từ 4 trở lên đễ xác xuất may mắn chọn đúng là thấp nhất
Khi soạn phần gốc phải trình bày ngắn gọn, rõ ràng, chỉ hỏi một vấn đề và soạn
đáp án đúng trước, vị trí đáp án đúng được đặt một cách ngẫu nhiên.
Form soạn câu hỏi:
16
Bảng 2.2. Form soạn câu trắc nghiệm 1 lựa chọn
Câu hỏi: .........................................................................
Gợi ý: a, b, c, d
Sug_ID Sug_Content Sug_Position Sug_Answer Ques_ID
1 a Null -1 1
2 b Null 0 1
3 c Null -1 1
4 d Null -1 1
II.2.3. Câu trắc nghiệm nhiều lựa chọn (Multi Choices question)
Cấu trúc:
Gồm 2 phần: phần gốc và phần lựa chọn.
Phần gốc: là một câu hỏi hay câu bỏ lửng. Trong phần này, người soạn câu hỏi đặt
ra một vấn đề hay đưa ra một ý tưởng rõ ràng giúp người trả lời hiểu rõ câu trắc nghiệm
ấy muốn hỏi điều gì để lựa chọn câu trả lời thích hợp.
Phần lựa chọn: Có 3, 4, 5 hay nhiều hơn 5 lựa chọn. Mỗi lựa chọn là một câu trả
lời hay là câu bổ túc. Trong tất cả các lựa chọn chỉ có một lựa chọn được xác định là đúng
nhất, gọi là đáp án. Những lựa chọn còn lại là những câu sai, trong đó có cả những câu có
nội dung gần giống với đáp án, thường gọi là các “mồi nhử”, “câu nhiễu”. Điều quan
trọng là người soạn thảo phải làm sao để các mồi nhử này đều hấp dẫn ngang nhau.
17
Ưu điểm:
Độ may rủi thấp: nếu câu trắc nghiệm có N lựa chọn thì độ may rủi là 1/N
Có thể khảo sát được số đông học sinh, chấm nhanh, kết quả chính xác.
Nếu soạn đúng quy cách, kết quả có tính tin cậy và tính giá trị cao.
Có thể sử dụng để kiểm tra các kỹ năng nhận thức bậc cao.
Nhược điểm:
Tuy độ may rủi thấp nhưng người trả lời vẫn có thể đoán mò.
Để có được một bài trắc nghiệm có tính tin cậy và tính giá trị cao, đòi hỏi người
soạn phải đầu tư nhiều thời gian và phải tuân thủ đầy đủ các bước soạn thảo trắc nghiệm.
Vì có nhiều phương án lựa chọn nên khó xây dựng được các câu hỏi có chất lượng
cao.
Yêu cầu:
Số lựa chọn nên từ 4 trở lên để xác xuất may mắn chọn đúng là thấp nhất
Khi soạn phần gốc phải trình bày ngắn gọn, rõ ràng, chỉ hỏi một vấn đề và soạn
đáp án đúng trước, vị trí đáp án đúng được đặt một cách ngẫu nhiên.
Muốn có được các “mồi nhử” hay thì ta nên chọn những câu Sai thường gặp của
học sinh, không nên là “mồi nhử” do người soạn nghĩ ra. Do đó có 4 bước phải làm khi
soạn mồi nhử:
18
• Bước 1: Ra các câu hỏi mở về lĩnh vực nội dung dự định trắc nghiệm để học
sinh tự viết câu trả lời.
• Bước 2: Thu lại các bản trả lời của học sinh, loại bỏ các câu trả lời Đúng, chỉ
giữ lại những câu Sai.
• Bước 3: Thống kê phân loại các câu trả lời Sai và ghi tần số xuất hiện từng loại
câu sai.
• Bước 4: Ưu tiên chọn những câu sai có tần số cao làm mồi nhử.
Form soạn câu hỏi:
Bảng 2.3. Form soạn câu trắc nghiệm nhiều lựa chọn
Câu hỏi: ..........................................................................
Gợi ý: a, b, c, d
Sug_ID Sug_Content Sug_Position Sug_Answer Ques_ID
1 a Null -1 2
2 b Null -1 2
3 c Null 0 2
4 d Null 0 2
II.2.4. Câu điền khuyết (Filling Blank question)
Cấu trúc: có 2 dạng
19
Dạng 1: Gồm những câu hỏi với lời giải đáp ngắn.
Dạng 2: Là một đoạn văn với nhiều chỗ trống để người trả lời điền vào một từ hay
một nhóm từ ngắn.
Ưu điểm: Dễ xây dựng và người sử dụng không thể đoán mò.
Nhược điểm: Thường chỉ được dùng để kiểm tra trình độ, mức độ hiểu biết, đôi khi
khó đánh giá đúng nội dung trả lời.
Yêu cầu:
Nội dung của phần trả lời càng cô đọng càng tốt.
Nên soạn thảo các câu với các phần để trống sao cho những từ điền vào là duy nhất
đúng, không thể thay thế bằng bất kỳ từ nào khác.
20
Bảng 2.4. Form soạn câu điền khuyết
Ví dụ:
1. She compeletely missed the ….
2. They were talking at … purposes.
3. I think we both got out lines ….
4. She got the wrong end of the ….
Gợi ý: a; b; c; d; e
Sug_ID Sug_Content Sug_Position Sug_Answer Ques_ID
1 a 1 b 3
2 b 2 c 3
3 c 3 a 3
4 d 4 d 3
II.2.6. Chia động từ (Conjugating question)
Cấu trúc: gồm 2 phần
Phần gốc: là một câu ngắn hay một đoạn văn trong đó có bỏ trống một số khoảng
trắng (textbox). Bên cạnh những khoảng trống đó là những từ gợi ý cho sẵn.
Phần trả lời được điền trực tiếp vào những khoảng trắng đã cho sẵn.
Ưu điểm:
21
Dễ xây dựng.
Người sử dụng không thể đoán mò.
Nhược điểm: Khó đánh giá nội dung trả lời.
Yêu cầu:
Nội dung của phần trả lời càng cô đọng càng tốt.
Nên soạn thảo các câu với các phần để trống sao cho những từ điền vào là duy nhất
đúng, không thể thay thế bằng từ nào khác.
Bảng 2.5. Form soạn câu chia động từ
Ví dụ:
1. I am trying … (go) to bed now. Good night!
2. The population of the would … (rise) very fast.
Gợi ý: go; am going; rise; is rising
Sug_ID Sug_Content Sug_Position Sug_Answer Ques_ID
1 go - 1 - 1 3
2 to go - 2 1 3
3 rise - 3 - 2 3
4 is rising - 4 3 3
22
CHƯƠNG III: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
III.1. Mô hình Thực thể kết hợp (Entity Relationship Diagram)
Hình 3.1. Mô hình luận lý
III.2. Đặc tả Use Case
III.2.1 . Phát biểu bài toán
Hệ thống cho phép học viên (sinh viên, học sinh,…) đăng kí một tài khoản để có
thể truy cập hệ thống từ máy tính cá nhân của mình thông qua đường truyền Internet. Các
giáo viên cũng có thể truy cập hệ thống này để thay đổi thông tin bài học: thêm bài giảng,
23
câu hỏi mới, xóa, sửa bài học…Admin là người có quyền tối cao trong hệ thống, ngoài
những quyền của một giảng viên, admin còn có thể thay đổi thông tin người dùng: thêm,
xóa, sửa.
Khi đăng nhập thành công vào hệ thống, học viên có thể tìm kiếm danh sách các
câu hỏi để làm bài. Thông tin về mỗi câu hỏi bao gồm mức trình độ, bài học, loại câu
hỏi… Hệ thống cho phép học viên có thể lựa chọn một mức trình độ (A, B, C…). Sau đó
lựa chọn một bài học bất kì để vào làm bài, kiểm tra kiến thức của mình. Khi quá trình
làm bài của một học viên kết thúc,hệ thống sẽ gửi thông tin tới hệ thống chấm điểm để
học viên có thể biết được kết quả của mình ngay sau khi làm bài.
Những thông tin liên quan tới bài học, bài giảng, câu hỏi chỉ có những người trong
hệ thống (admin, giáo viên) mới có thể thay đổi được, còn học viên thì không có quyền
này. Do đó hệ thống cần có cơ chế bảo mật để ngăn chặn những truy cập không hợp lệ.
III.2.2. Bảng chú giải
III.2.2.1. Giới thiệu
Tài liệu này được dùng để định nghĩa các định nghĩa đặc thù trong lĩnh vực của bài
toán, giải thích các từ ngữ có thể không quen thuộc với người đọc trong các mô tả Use
Case. Tài liệu này có thể được dùng như một từ điển dữ liệu không chính thức, ghi lại các
định nghĩa dữ liệu để các mô tả Use Case có thể tập trung vào những gì hệ thống phải
thực hiện.
III.2.2.2. Các định nghĩa
Bảng chú giải này bao gồm các định nghĩa cho các khái niệm chính trong hệ thống
Học Anh văn trực tuyến.
24
ManageLevel: Quản lý mức trình độ
AddLevel: Thêm một mức trình độ mới
DeleteLevel: Xóa một mức trình độ
UpdateLevel: Cập nhật mức trình độ
ManageLesson: Quản lý bài học
AddLesson: Thêm một bài học mới
DeleteLesson: Xóa một bài học
UpdateLesson: Cập nhật bài học
ManageQuestion: Quản lý câu hỏi
AddQuestion: Thêm một câu hỏi mới
DeleteQuestion: Xóa một câu hỏi
UpdateQuestion: Cập nhật câu hỏi
ManageTeacher: Quản lý giáo viên
AddTeacher: Thêm một giáo viên mới
DeleteTeacher: Xóa một giáo viên.
UpdateTeacher: Cập nhật giáo viên
ManageLearner: Quản lý học viên
25
AddLearner: Thêm một học viên mới
DeleteLearner: Xóa một học viên.
UpdateLearner: Cập nhật học viên
ViewTeacherInformation: Xem thông tin chi tiết về giáo viên
ViewLearnerInformation: Xem thông tin chi tiết về học viên
RegisterMember: Đăng kí làm thành viên
DoExercise: Làm bài tập
ViewLesson: Xem chi tiết bài học
EditMemberInformation: Chỉnh sửa thông tin thành viên
Administrtor:
Người có quyền cao nhất trong hệ thống, có thể thêm, xóa, sửa bài học, bài giảng,
câu hỏi, người dùng.
Teacher: Giáo viên, người có thể thay đổi những thông tin liên quan tới bài học (bài
giảng, câu hỏi).
Learner: Học viên, người đăng kí vào hệ thống để học Anh văn trực tuyến.
Users: Dùng để hiển thị nhiều actors có nhiều sự tương đồng.
Login: Chức năng đăng nhập vào hệ thống.
III.2.3. Đặc tả bổ sung
26
Mục tiêu:
Mục tiêu của tài liệu này là để định nghĩa các yêu cầu của Hệ thống đăng ký học
phần. Đặc tả bổ sung này liệt kê các yêu cầu chưa được thể hiện trong các Use Case. Đặc
tả bổ sung cùng các Use Case trong mô hình Use Case thể hiện đầy đủ các yêu cầu của hệ
thống.
Phạm vi:
Đặc tả này vạch rõ các yêu cầu phi chức năng của hệ thống, như là tính ổn định,
tính khả dụng, hiệu năng, và tính hỗ trợ cũng như các yêu cầu chức năng chung cho một
số Use Case. (Các yêu cầu chức năng được chỉ rõ trong phần Đặc tả Use Case).
Chức năng: Hỗ trợ nhiều người dùng truy cập đồng thời.
Tính khả dụng: Giao diện người dùng tương thích Windows 98/2000/XP.
Tính ổn định: Hệ thống phải hoạt động liên lục 24 giờ một ngày, 7 ngày mỗi tuần, và
thời gian ngưng hoạt động không quá
5% thời gian hoạt động.
Hiệu suất:
Hệ thống phải hỗ trợ đến 2000 người dùng truy xuất cơ sở dữ liệu trung tâm đồng
thời bất kỳ lúc nào, và đến 500 người dùng truy xuất các server cục bộ.
¾
¾ Hệ thống phải có khả năng hoàn tất 80% giao dịch trong vòng 2 phút.
Sự hỗ trợ: Không có.
Tính bảo mật:
¾ Hệ thống phải ngăn chặn học viên thay đổi các thông tin liên quan tới bài học.
¾ Chỉ có giáo viên mới có thể thay đổi thông tin bài học.
¾ Chỉ có admin mới có thể thay đổi thông tin của học viên.
Các ràng buộc về thiết kế:
Hệ thống phải tích hợp với hệ thống có sẵn. ¾
27
Hệ thống phải cung cấp giao diện dựa trên Windows. ¾
III.3 Mô hình Use Case
III.3.1. Lược đồ chính của mô hình
Admin:
Hình 3.2. Mô hình Use Case cho tác vụ Login
Teacher:
28
Hình 3.3. Mô hình Use Case cho vai trò Teacher
Users:
Hình 3.4. Mô hình Use Case cho vai trò Users
Learner:
29
Hình 3.5. Mô hình Use Case cho vai trò Learner
Actor:
Hình 3.6. Mô hình thừa kế cho các Actor
III.3.2 Bảng mô tả các nghiệp vụ trong sơ đồ sử dụng:
30
Bảng 3.1: Danh sách các nghiệp vụ.
STT Tên nghiệp vụ Diễn giải
1 ManageLevel Cho phép người sử dụng (admin) thực hiện
các thao tác quản lý danh mục mức trình độ
(thêm, xóa, sửa).
2 ManageLesson Cho phép người sử dụng (admin) thực hiện
các thao tác quản lý danh mục bài học (thêm,
xóa, sửa).
3 ManageUnit Cho phép người sử dụng (admin, teacher)
thực hiện các thao tác quản lý danh mục bài
giảng (thêm, xóa, sửa).
4 ManageQuestion Cho phép người sử dụng (admin, teacher)
thực hiện các thao tác quản lý danh mục câu
hỏi (thêm, xóa, sửa).
5 ManageAccount Cho phép người sử dụng (admin) thực hiệ
Cho phép người sử dụng (admin) thực hiện
các thao tác quản lý danh mục tài khoản
(thêm, xóa, sửa).
6 Login Cho phép người dùng đăng nhập vào hệ
thống để thực hiện các chức năng bên trong.
7 ViewLearnerInformation Chức năng này chỉ có người dùng trong hệ
thống mới có. Có thể xem được thông tin của
31
học viên theo các tiêu chí hay xem tất cả.
8 RegisterMember Cho phép người sử dụng đăng ký vào để làm
thành viên.
9 ViewLesson Cho phép người sử dụng sau khi đăng nhập
có thể xem toàn bộ các bài học trên website.
10 DoExercise Phần dành cho người học vào làm bài để
kiểm tra kiến thức của mình.
III.3.3. Đặc tả chi tiết các Use Case
III.3.3.1. Login (Đăng nhập)
Tóm tắt: Use Case này mô tả cách một người dùng đăng nhập vào Hệ thống học Anh
văn trực tuyến.
Dòng sự kiện:
¾ Dòng sự kiện chính:
Use Case này bắt đầu khi một actor muốn đăng nhập vào hệ thống:
• Hệ thống yêu cầu actor nhập tên và mật khẩu.
• Actor nhập tên tài khoản và mật khẩu.
• Hệ thống kiểm tra tên tài khoản và mật khẩu được nhập và cho phép actor đăng
nhập vào hệ thống.
32
¾ Dòng sự kiện khác: Nếu trong dòng sự kiên chính, actor nhập sai tên tài khoản hoặc
mật khẩu, hệ thống sẽ hiển thị một thông báo lỗi. Actor có thể chọn để trở về đầu của
dòng sự kiện chính hoặc hủy bỏ việc đăng nhập, lúc này Use Case kết thúc.
Các yêu cầu đặc biệt: Không có.
Điều kiện tiên quyết: Không có.
Điều kiện hoàn tất: Hệ thống thông báo quá trình đăng nhập thành công hay thất bại.
Điểm mở rộng: Không có.
III.3.3.2. ManageTeacher (Quản lý thông tin giáo viên)
Tóm tắt:
Use Case này cho phép admin duy trì thông tin giáo viên trong hệ thống đăng ký.
Bao gồm thêm, hiệu chỉnh và xóa một giáo viên ra khỏi hệ thống.
Dòng sự kiện:
¾ Dòng sự kiện chính: Use Case này bắt đầu khi admin muốn thêm, thay đổi, và/hoặc
xóa thông tin giáo viên trong hệ thống.
• Hệ thống yêu cầu admin chọn chức năng muốn thực hiện (AddTeacher,
UpdateTeacher, DeleteTeacher).
• Sau khi admin cung cấp thông tin được yêu cầu, một trong các luồng phụ sau được
thực hiện:
33
Nếu admin chọn “AddTeacher”, luồng phụ AddTeacher được thực hiện.
Nếu admin chọn“UpdateTeacher”, luồng phụ UpdateTeacher được thực hiện.
Nếu admin chọn“DeleteTeacher”, luồng phụ DeleteTeacher được thực hiện.
o AddTeacher (Thêm một giáo viên)
9 Hệ thống yêu cầu admin nhập vào các thông tin của giáo viên: Tên, ngày
sinh, địa chỉ, phái, ….
9 Sau khi admin cung cấp các thông tin được yêu cầu, hệ thống sẽ phát
sinh và gán một mã số duy nhất cho giáo viên này. Giáo viên này được
thêm vào hệ thống.
9 Hệ thống cung cấp cho admin mã số mới của giáo viên mới.
o UpdateTeacher (Hiệu chỉnh một giáo viên)
9 Hệ thống yêu cầu admin nhập vào mã số của giáo viên.
9 Admin nhập mã số của giáo viên. Hệ thống truy xuất và hiển thị thông
tin của giáo viên này.
9 Admin thay đổi một số thông tin của giáo viên, gồm bất cứ thông tin nào
được chỉ ra trong luồng phụ AddTeacher.
34
9 Sau khi admin cập nhật xong những thông tin cần thiết, hệ thống cập
nhật mẩu tin của giáo viên này.
o DeleteTeacher (Xóa một giáo viên)
9 Hệ thống yêu cầu admin nhập mã số của giáo viên.
9 Admin nhập mã số của giáo viên. Hệ thống truy xuất và hiển thị thông
tin của giáo viên này.
9 Hệ thống nhắc người dùng xác nhận thao tác xóa giáo viên.
9 Admin xác nhận xóa.
9 Xóa thông tin giáo viên này ra khỏi hệ thống
¾ Dòng sự kiện khác:
• Không tìm thấy giáo viên: Nếu trong luồng phụ UpdateTeacher hoặc DeleteTeacher
không tồn tại giáo viên nào có mã số được nhập thì hệ thống sẽ hiển thị một thông
báo lỗi. Admin có thể nhập một mã số khác hoặc hủy bỏ thao tác, lúc này Use Case
sẽ kết thúc.
• Thao tác xóa bị hủy: Nếu trong luồng phụ DeleteTeacher admin quyết định không
xóa giáo viên này nữa, thao tác xóa bị hủy và dòng sự kiện chính được bắt đầu lại
từ đầu.
Các yêu cầu đặc biệt: Không có.
35
Điều kiện tiên quyết: Admin phải đăng nhập vào hệ thống sau khi Use Case bắt đầu.
Điều kiện hoàn tất: Nếu Use Case thành công, thông tin giáo viên được thêm, cập nhật
hoặc xóa khỏi hệ thống. Ngược lại, trạng thái của hệ thống không thay đổi.
Điểm mở rộng: Không có.
III.3.3.3. ManageLearner (Quản lý thông tin học viên)
Tóm tắt
Use Case này cho phép admin duy trì thông tin học viên trong hệ thống đăng ký.
Bao gồm thêm, hiệu chỉnh và xóa một học viên ra khỏi hệ thống.
Dòng sự kiện
¾ Dòng sự kiện chính
Use Case này bắt đầu khi admin muốn thêm, thay đổi, và/hoặc xóa thông tin học
viên trong hệ thống.
• Hệ thống yêu cầu admin chọn chức năng muốn thực hiện (AddLearner,
UpdateLearner, DeleteLearner).
• Sau khi admin cung cấp thông tin được yêu cầu, một trong các luồng phụ sau được
thực hiện:
Nếu admin chọn “AddLearner”, luồng phụ AddLearner được thực hiện.
Nếu admin chọn“UpdateLearner”, luồng phụ UpdateLearner được thực hiện.
Nếu admin chọn“DeleteLearner”, luồng phụ DeleteLearner được thực hiện.
36
o AddLearner (Thêm một học viên):
9 Hệ thống yêu cầu admin nhập vào các thông tin của học viên: Tên, ngày
sinh, địa chỉ, phái,….
9 Sau khi admin cung cấp các thông tin được yêu cầu, hệ thống sẽ phát
sinh và gán một mã số duy nhất cho học viên này. Học viên này được
thêm vào hệ thống.
9 Hệ thống cung cấp cho admin mã số mới của học viên mới.
o UpdateLearner (Hiệu chỉnh thông tin một học viên):
9 Hệ thống yêu cầu admin nhập vào mã số của học viên.
9 Admin nhập mã số của học viên. Hệ thống truy xuất và hiển thị thông tin
của học viên này.
9 Admin thay đổi một số thông tin của học viên, gồm bất cứ thông tin nào
được chỉ ra trong luồng phụ AddLearner.
9 Sau khi admin cập nhật xong những thông tin cần thiết, hệ thống cập
nhật mẩu tin của học viên này.
o DeleteLearner (Xóa một học viên):
9 Hệ thống yêu cầu admin nhập mã số của học viên.
37
9 Admin nhập mã số của học viên. Hệ thống truy xuất và hiển thị thông tin
của học viên này.
9 Hệ thống nhắc người dùng xác nhận thao tác xóa học viên.
9 Admin xác nhận xóa.
9 Xóa thông tin học viên này ra khỏi hệ thống.
¾ Dòng sự kiện khác
• Không tìm thấy học viên: Nếu trong luồng phụ UpdateLearner hoặc DeleteLearner
không tồn tại học viên nào có mã số được nhập thì hệ thống sẽ hiển thị một thông báo
lỗi. Admin có thể nhập một mã số khác hoặc hủy bỏ thao tác, lúc này Use Case sẽ kết
thúc.
• Thao tác xóa bị hủy: Nếu trong luồng phụ DeleteLearner admin quyết định không
xóa học viên này nữa, thao tác xóa bị hủy và dòng sự kiện chính được bắt đầu lại từ
đầu.
Các yêu cầu đặc biệt: Không có.
Điều kiện tiên quyết: Admin phải đăng nhập vào hệ thống sau khi Use Case bắt
đầu.Điều kiện hoàn tất.
38
Nếu Use Case thành công, thông tin học viên được thêm, cập nhật hoặc xóa khỏi hệ
thống. Ngược lại, trạng thái của hệ thống không thay đổi.
Điểm mở rộng: Không có.
III.3.3.4. Manage Lesson (Quản lý bài học)
Tóm tắt
Use Case cho phép admin hay Teacher thao tác trên dữ liệu về các bài học:
• Teacher có thể xem, xóa, sửa, thêm mới các bài học của mình.
• Admin có thể xem, xóa, sửa, thêm mới toàn bộ các bài học của website.
Dòng sự kiện: Use Case bắt đầu khi actor chọn chức năng “ Quản lý bài học”.
¾ Dòng sự kiện chính
Use Case này bắt đầu khi admin muốn thêm, thay đổi, và/hoặc xóa thông tin bài
học trong hệ thống.
• Hệ thống yêu cầu admin chọn chức năng muốn thực hiện (AddLesson,
UpdateLesson, DeleteLesson).
• Sau khi admin cung cấp thông tin được yêu cầu, một trong các luồng phụ sau
được thực hiện:
Nếu Techer chọn “AddLesson”, luồng phụ AddLesson được thực hiện.
Nếu Techer chọn“UpdateLesson”, luồng phụ UpdateLesson được thực hiện.
39
Nếu Techer chọn“DeleteLesson”, luồng phụ DeleteLesson được thực hiện.
o AddLesson (Thêm một bài học)
9 Hệ thống yêu cầu Teacher nhập vào các thông tin chi tiết của bài học:
Lesson_ID, Lesson_Name, Lesson_Description….
9 Sau khi Teacher chọn link “Add”, hệ thống tiếp nhận và thêm thông tin
vào CSDL, sau đó chuyển teacher về Use Case ViewLesson.
o UpdateLesson (Hiệu chỉnh thông tin bài học)
9 Hệ thống yêu cầu Teacher nhập vào mã số của bài học.
9 Teacher nhập mã số của bài học. Hệ thống truy xuất và hiển thị thông tin
của bài học này.
9 Teacher thay đổi một số thông tin của bài học, gồm bất cứ thông tin nào
được chỉ ra trong luồng phụ AddLesson.
9 Sau khi Teacher cập nhật xong những thông tin cần thiết, hệ thống cập
nhật mẩu tin của bài học này.
9 Hệ thống hiển thị lệnh “Cancel” bằng cách chuyển Teacher về Use Case
ViewLesson.
o DeleteLesson (Xóa một bài học)
9 Hệ thống yêu cầu Teacher nhập mã số của bài học.
40
9 Teacher nhập mã số của bài học. Hệ thống truy xuất và hiển thị thông tin
của bài học này.
9 Hệ thống nhắc người dùng xác nhận thao tác xóa bài học.
9 Teacher xác nhận xóa.
9 Xóa thông tin bài học này ra khỏi hệ thống.
¾ Dòng sự kiện khác
• Không tìm thấy bài học: Nếu trong luồng phụ UpdateLesson hoặc DeleteLesson
không tồn tại bài học nào có mã số được nhập thì hệ thống sẽ hiển thị một thông
báo lỗi. Teacher có thể nhập một mã số khác hoặc hủy bỏ thao tác, lúc này Use
Case sẽ kết thúc.
• Thao tác xóa bị hủy: Nếu trong luồng phụ DeleteLesson Teacher quyết định không
xóa bài học này nữa, thao tác xóa bị hủy và dòng sự kiện chính được bắt đầu lại từ
đầu.
Các yêu cầu đặc biệt: Không có.
Điều kiện tiên quyết: Admin và Teacher phải đăng nhập vào hệ thống.
Điều kiện hoàn tất: Nếu trong dòng sự kiện chính không tìm thấy bài học nào, hệ
thống sẽ hiển thị thông báo lỗi. Actor nhận thông báo này và Use Case kết thúc.
Điểm mở rộng: Không có.
41
III.3.3.5. ManageQuestion (Quản lý câu hỏi)
Tóm tắt: Use Case cho phép admin hay Teacher thao tác trên dữ liệu về các câu hỏi:
¾ Teacher có thể xem, xóa, sửa, thêm mới các câu hỏi trong phạm vi của mình.
¾ Admin có thể xem, xóa, sửa, thêm mới toàn bộ các câu hỏi của website.
Dòng sự kiện: Use Case bắt đầu khi actor chọn chức năng “ Quản lý câu hỏi”.
¾ Dòng sự kiện chính
Use Case này bắt đầu khi admin muốn thêm, thay đổi, và/hoặc xóa thông tin câu
hỏi trong hệ thống.
• Hệ thống yêu cầu admin chọn chức năng muốn thực hiện (AddQuestion,
UpdateQuestion, DeleteQuestion).
• Sau khi admin cung cấp thông tin được yêu cầu, một trong các luồng phụ sau được
thực hiện:
Nếu Techer chọn “AddQuestion”, luồng phụ AddQuestion được thực hiện.
Nếu Techer chọn“UpdateQuestion”, luồng phụ UpdateQuestion được thực
hiện.
Nếu Techer chọn“DeleteQuestion”, luồng phụ DeleteQuestion được thực hiện.
o AddQuestion (Thêm một câu hỏi):
42
9 Hệ thống yêu cầu Teacher nhập vào các thông tin chi tiết của câu hỏi:
Ques_ID, Ques_Tittle, Ques_Content….
9 Sau khi Teacher chọn link “Add”, hệ thống tiếp nhận và thêm thông tin
vào CSDL, sau đó chuyển teacher về Use Case ViewQuestion.
o UpdateQuestion (Hiệu chỉnh thông tin câu hỏi)
9 Hệ thống yêu cầu Teacher nhập vào mã số của câu hỏi.
9 Teacher nhập mã số của câu hỏi. Hệ thống truy xuất và hiển thị thông tin
của câu hỏi này.
9 Teacher thay đổi một số thông tin của câu hỏi, gồm bất cứ thông tin nào
được chỉ ra trong luồng phụ AddQuestion.
9 Sau khi Teacher cập nhật xong những thông tin cần thiết, hệ thống cập
nhật mẩu tin của câu hỏi này.
9 Hệ thống hiển thị lệnh “Cancel” bằng cách chuyển Teacher về Use Case
ViewQuestion.
o DeleteQuestion (Xóa một câu hỏi)
9 Hệ thống yêu cầu Teacher nhập mã số của câu hỏi.
9 Teacher nhập mã số của câu hỏi. Hệ thống truy xuất và hiển thị thông tin
của câu hỏi này.
43
9 Hệ thống nhắc người dùng xác nhận thao tác xóa câu hỏi.
9 Teacher xác nhận xóa.
9 Xóa thông tin câu hỏi này ra khỏi hệ thống.
¾ Dòng sự kiện khác
• Không tìm thấy bài học: Nếu trong luồng phụ UpdateQuestion hoặc
DeleteQuestion không tồn tại câu hỏi nào có mã số được nhập thì hệ thống sẽ hiển
thị một thông báo lỗi. Teacher có thể nhập một mã số khác hoặc hủy bỏ thao tác,
lúc này Use Case sẽ kết thúc.
• Thao tác xóa bị hủy: Nếu trong luồng phụ DeleteQuestion Teacher quyết định
không xóa câu hỏi này nữa, thao tác xóa bị hủy và dòng sự kiện chính được bắt đầu
lại từ đầu.
Các yêu cầu đặc biệt: Không có.
Điều kiện tiên quyết: Admin và Teacher phải đăng nhập vào hệ thống.
Điều kiện hoàn tất
Nếu trong dòng sự kiện chính không tìm thấy câu hỏi nào, hệ thống sẽ hiển thị
thông báo lỗi. Actor nhận thông báo này và Use Case kết thúc.
Điểm mở rộng: Không có.
III.3.3.6. RegisterMember (Đăng ký thành viên)
Tóm tắt
44
¾ Use Case này cho phép actor đăng ký làm hội viên của trung tâm ngoại ngữ.
¾ Actor của Use Case này là Learner.
Dòng sự kiện
Use Case bắt đầu khi actor chọn chức năng “RegisterMember”.
¾ Dòng sự kiện chính
• Actor chọn chức năng “RegisterMember”.
• Hệ thống hiển thị form đăng ký thành viên.
• Actor điền vào các thông tin: Tên đăng nhập, tên liên hệ, mật khẩu, xác nhận mật
khẩu, thư điện tử, giới tính, địa chỉ, điện thoại, website.
• Actor chọn “ Đăng ký”.
• Hệ thống sẽ lưu toàn bộ những thông tin mà actor vừa xác nhận xuống cơ sở dữ
liệu.
• Hệ thống hiển thị màn hình của thành viên.
¾ Dòng sự kiện khác
Nếu actor không điền đầy đủ các thông tin bắt buộc ở trên thì hệ thống không cho
đăng ký và hiện thông báo lỗi. Buộc phải điền đầy đủ những thông tin này.
Các yêu cầu đặc biệt: Không có.
Điều kiện tiên quyết: Không có.
45
Điều kiện hoàn tất
- Hiển thị thông báo actor có đăng ký thành công hay không
- Chuyển đến giao diện đăng nhập thành công
Điểm mở rộng
- Tên: chỉ sửa thông tin hội viên
- Vị trí: Ở điểm bắt đầu
III.3.3.7. EditMemberInformation (Chỉnh sửa thông tin thành viên)
Tóm tắt
¾ Use Case này cho phép actor chỉnh sửa thông tin của mình trong hệ thống.
¾ Học viên (Learner) là actor của Use Case này
Dòng sự kiện
Use Case này bắt đầu khi actor chọn chức năng “EditMemberInformation”.
¾ Dòng sự kiện chính
• Actor chọn chức năng “EditMemberInformation”.
• Hệ thống xác định tên tài khoản và mật khẩu đang truy cập
• Hệ thống tìm trong database những thông tin của actor tương ứng với UserName
và Password và hiển thị các thông tin đó trên một form.
¾ Dòng sự kiện khác
46
• Nếu actor chọn “Update”, hệ thống sẽ cập nhật lại những thông tin mà actor vừa
chỉnh sửa vào database.
• Nếu actor chọn “Cancel”, Use Case kết thúc.
• Nếu actor chọn chức năng “EditMemberInformation” mà chưa đăng nhập vào hệ
thống:
Hiển thị thông báo yêu cầu actor đăng nhập hệ thống.
Use Case kết thúc.
Các yêu cầu đặc biệt: Không có.
Điều kiện tiên quyết
Actor phải đăng nhập hệ thống trước khi Use Case bắt đầu.
Điều kiện hoàn tất
Hệ thống phải hiển thị thông báo cho biết phần chỉnh sửa thông tin thành viên có
thành công hay không.
Điểm mở rộng: Không có.
III.3.3.8. ViewLearnerInformation (Xem thông tin học viên)
Tóm tắt
¾ Use Case này cho phép actor xem thông tin của học viên.
¾ Admin là actor của Use Case này.
47
Dòng sự kiện
Use Case bắt đầu khi actor chọn chức năng “ViewLearnerInformation”
¾ Dòng sự kiện chính
• Actor chọn chức năng “ViewLearnerInformation”.
• Hệ thống lấy mã học viên được chọn.
• Hệ thống tìm trong database những thông tin về học viên ứng với mã mà actor đã
chọn.
• Hệ thống hiển thị tất cả các thông tin của học viên ra màn hình.
¾ Dòng sự kiện khác
Actor chọn “Cancel” để kết thúc Use Case.
Các yêu cầu đặc biệt: Không có.
Điều kiên tiên quyết
Actor phải đăng nhập vào hệ thống với role là admin.
Điều kiện hoàn tất: Không có.
Điểm mở rộng: Không có.
III.3.3.9. DoExercise (Làm bài tập)
Tóm tắt
¾ Use Case này cho phép actor vào trong hệ thống làm bài tập.
48
¾ Actor của Use Case này là học viên (learner).
Dòng sự kiện
Use Case bắt đầu khi actor chọn chức năng “DoExercise”.
¾ Dòng sự kiện chính
• Actor chọn chức năng “DoExercise”.
• Hệ thống sẽ cho hiển thị thông tin về các mức trình độ, bài học, câu hỏi.
• Actor chọn mức trình độ phù hợp để vào làm bài.
• Actor chọn một bài học bất kỳ.
• Hệ thống sẽ hiển thị các loại câu hỏi tương ứng với bài học đó.
• Hiển thị màn hình làm bài.
• Actor làm bài tập. Sau khi kết thúc quá trình làm bài, hệ thống sẽ chấm điểm và
hiển thị kết quả ra màn hình.
¾ Dòng sự kiện khác
• Tại mọi thời điểm, học viên đều có thể chọn lưu bài trước khi submit.
• Khi thời gian kết thúc, học viên không thể thay đổi hay chỉnh sửa gì trên bài làm
nữa.
Các yêu cầu đặc biệt: Không có.
49
Điều kiện tiên quyết
Học viên (Learner) phải đăng nhập vào hệ thống trước khi Use Case bắt đầu.
Điều kiện hoàn tất
Nếu Use Case thành công, actor sẽ biết được kết quả của mình sau khi làm bài.
Ngược lại, trạng thái của hệ thống không thay đổi.
Điểm mở rộng: Không có.
III.4. Sơ đồ Sequence diagram
III.4.1. Login (Đăng nhập)
50
Hình 3.7. Lược đồ tuần tự của Use Case Login
III.4.2. AddLearner (Thêm học viên)
Hình 3.8. Lược đồ tuần tự của Use Case AddLearner
51
III.4.3. UpdateLearner
Hình 3.9. Lược đồ tuần tự của Use Case UpdateLearner
52
III.4.4. Delete Learner
Hình 3.10. Lược đồ tuần tự của Use Case DeleteLearner
53
III.4.5. Add Question
Hình 3.11. Lược đồ tuần tự của Use Case AddQuestion
54
III.4.6. RegisterMember
Hình 3.12. Lược đồ tuần tự của Use Case RegisterMember
55
III.4.7. ViewLearnerInformation
Hình 3.13. Lược đồ tuần tự của Use Case ViewLearnerInformation
56
CHƯƠNG IV: THIẾT KẾ CƠ SỞ DỮ LIỆU
IV.1. Sơ đồ quan hệ giữa các bảng
Hình 4.1. Sơ đồ quan hệ giữa các bảng
57
IV.2. Mô tả chi tiết các bảng
Bảng 4.1. Bảng chi tiết về mức trình độ
Level
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
Level _ID Int
ID duy nhất của mỗi
mức trình độ. ID này
được sinh tự động bởi
cơ sở dữ liệu mỗi khi
có bài học mới được
chèn vào.
Khóa chính
Level _Name nvarchar(50) Tên của mức trình độ Not Null
Level _Description nvarchar(Max)
Mô tả thêm về mức
trình độ. Mô tả này
được sử dụng trong
trình đơn ở khu vực
lựa chọn chính, cho
phép người dùng
chọn 1 mức trình độ
để học.
IsActive bit
Xác định mục mức
trình độ có thể được
nhìn thấy trong phần
58
công khai của website
này hay không.
Bảng 4.2. Bảng chi tiết về bài học
Lesson
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
Lesson _ID int
ID duy nhất của mỗi
bài học. ID này được
sinh tự động bởi cơ
sở dữ liệu mỗi khi có
bài học mới được
chèn vào.
Khóa chính
Lesson _Name nvarchar(50) Tên của bài học Not Null
Lesson _Description nvarchar(Max)
Mô tả thêm về bài
học. Mô tả này được
sử dụng trong trình
đơn ở khu vực lựa
chọn chính, cho phép
người dùng chọn 1
bài để học.
Level_ID_FK int
Mức trình độ mà bài
học này thuộc về
Khóa ngoại
59
IsActive bit
Xác định mục bài học
có thể được nhìn thấy
trong phần công khai
của website này hay
không.
Bảng 4.3. Bảng chi tiết về bài giảng
Unit
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
Unit _ID Int
ID duy nhất của mỗi bài
giảng. ID này được sinh
tự động bởi cơ sở dữ liệu
mỗi khi có bài giảng mới
được chèn vào.
Khóa chính
Unit _Name nvarchar(100) Tên của bài giảng Not Null
Unit _Content Nvarchar(max) Nội dung của bài giảng Not Null
IsActive Bit
Xác định mục bài giảng
có thể được nhìn thấy
trong phần công khai của
website này hay không.
Unit_CreateDate smalldatetime Ngày giờ bài giảng này
60
được thêm vào.
Lesson_ID_FK Int
Bài học mà bài giảng này
thuộc về.
Khóa ngoại
Bảng 4.4. Bảng chi tiết về loại câu hỏi
Type
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
Type_ID int
ID duy nhất của mỗi loại
câu hỏi. ID này được
sinh tự động bởi cơ sở dữ
liệu mỗi khi có loại câu
hỏi mới được chèn vào.
Khóa
chính
Type_Name nvarchar(100) Tên loại câu hỏi Not Null
Type_Description nvarchar(Max)
Mô tả thêm về loại câu
hỏi.
Bảng 4.5. Bảng chi tiết về tài khoản
Account
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
Username nvarchar(50) Tên đăng nhập,mỗi account có Khóa chính
61
1 tên duy nhất. Dùng để phân
biệt giữa các users.
Password varchar(100) Mật khẩu Not Null
Role_ID_FK int
Vai trò của Account này thuộc
về.
Khóa ngoại
Bảng 4.6. Bảng chi tiết về câu hỏi
Question
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
Ques _ID int
ID duy nhất của mỗi câu
hỏi. ID này được sinh tự
động bởi cơ sở dữ liệu
mỗi khi có câu hỏi mới
được thêm vào.
Khóa chính
Ques_Tittle Nvarchar(255)
Tiêu đề của nội dung.
Tiêu đề này được hiển
thị trong trang liệt kê câu
hỏi và trang chi tiết câu
hỏi.
Ques _Content nvarchar(Max)
Chứa toàn bộ văn bản
của mục câu hỏi. Văn
Not Null
62
bản này được hiển thị
trên trang chi tiết câu
hỏi.
Approve bit
Xác định câu hỏi này đã
được duyệt hay chưa.
Một câu hỏi đã được
duyệt có thể được hiển
thị trên web, có thể
không.
Not Null
IsActive bit
Xác định mục câu hỏi có
thể được nhìn thấy trong
phần công khai của
website này hay không.
Not Null
Ques_CreateDate smalldatetime
Ngày giờ câu hỏi này
được thêm vào.
Type_ID_FK int
Loại câu hỏi mà câu hỏi
này thuộc về.
Khóa ngoại
Lesson_ID_FK int
Bài học mà câu hỏi này
thuộc về.
Khóa ngọai
Username_FK Varchar(50)
Người tạo mà câu hỏi
này thuộc về.
Khóa ngọai
Ques_Description nvarchar(max) Mô tả thêm về câu hỏi
63
Bảng 4.7. Bảng chi tiết về hồ sơ người dùng
Profile
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
Pro _ID Int
ID duy nhất của mỗi hồ sơ
cá nhân. ID này được sinh
tự động bởi cơ sở dữ liệu
mỗi khi có thông tin mới
được chèn vào.
Khóa chính
Pro_FullName Nvarchar(50) Tên liên hệ đầy đủ
Pro_Address Nvarchar(150) Địa chỉ liên hệ
Pro_Phone Varchar(50) Số điện thoại liên lạc.
Pro_Email Nvarchar(250) Địa chỉ email.
Pro_website Varchar(50) Địa chỉ website.
Pro_Fax Varchar(50) Số Fax
Pro_CreateDate Smalldatetime
Ngày tạo hồ sơ cá nhân
người dùng.
Bảng 4.8. Bảng chi tiết về gợi ý trả lời
Suggest
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
64
Sug_ID Int
ID duy nhất của mỗi câu gợi
ý. ID này được sinh tự động
bởi cơ sở dữ liệu mỗi khi có
gợi ý mới được chèn vào.
Khóa chính
Sug_Content Nvarchar(max) Nội dung của gợi ý Not Null
Sug_Answer Nvarchar(50)
Câu trả lời trong phần gợi ý
đó.
Not Null
Ques_ID_FK Int
Câu hỏi mà gợi ý này thuộc
về.
Khóa ngoại
Sug_Position nvarchar(50) Vị trí của gợi ý này
Bảng 4.9. Bảng chi tiết về vai trò người dùng
Role
Tên trường Kiểu dữ liệu Mô tả Ràng buộc
Role_ID int
ID duy nhất của mỗi vai trò.
ID này được sinh tự động
bởi cơ sở dữ liệu mỗi khi có
thêm vai trò mới được chèn
vào.
Khóa chính
Role_Name nvarchar(50) Tên của vai trò Not Null
Role_CreateDate smalldatetime Ngày tạo vai trò .
65
IV.3. Các ràng buộc toàn vẹn
Ghi chú: bối cảnh là các quan hệ
IV.3.1 Ràng buộc toàn vẹn về miền giá trị
R1:
Bối cảnh: Unit
Điều kiện: Ngày tạo phải là số dương
t TUnit:
[t.CreateDate ] > 0
R2:
Bối cảnh: Question
Điều kiện: Ngày tạo phải là số dương
t TQuestion:
[t.CreateDate ] > 0
R3:
Bối cảnh: Suggest
Điều kiện: Tên của câu trả lời bao gồm: a., b, c, d
t TSuggest:
[t.Sug_Answer = “a” or t.Sug_Answer = “b” or t.Sug_Answer = “c” or
t.Sug_Answer = “d” ]
R4:
66
Điều kiện: Tên loại câu hỏi bao gồm: Single choice, Multi choices, Conjugating, Yes no,
Filling blank.
t TType:
[t.Type_Name = “Single choice” or t.Type_Name = “Multi choices” or
t.Type_Name = “Conjugating” or t.Type_Name = Yes no” or t.Type_Name =
“Filling blank”].
R5:
Bối cảnh: Roles
Điều kiện: Ngày tạo phải là số dương và tên vai trò bao gồm: Admin, Teacher, Learner.
t TRoles:
[t.Roles_Name = “Admin” or t.Roles_Name = “Teaher” or t.Roles_Name =
“Learner” and t.Roles_CreateDate > 0 ]
R6:
Bối cảnh: Profiles
Điều kiện: Tên phái phải là: Nam, nữ. Số điện thoại phải là số, ngày tạo phải là số dương.
t TProfiles:
[t.Pro_Gender = “nam” or t.Pro_Gender = “nữ”] and [t. Pro_CreateDate > 0]
IV.3.2. Ràng buộc toàn vẹn liên thuộc tính
R7:
Bối cảnh: Level, Lesson.
67
Điều kiện:
t TLevel , q TLesson:
[t.Level_ID = q.Level_ID]
R8:
Bối cảnh: Unit, Lesson
Điều kiện:
t TUnit , q TLesson:
[t.Lesson_ID = q.Lesson_ID]
R9:
Bối cảnh: Lesson, Suggest, Type, Account
Điều kiện:
t TUnit , q TLesson:
IV.3.3. Ràng buộc toàn vẹn liên bộ
R10:
Bối cảnh: Level
Điều kiện: Mỗi mức trình độ sẽ có mã riêng biệt không trùng với bất kỳ mã mức trình độ
nào.
t1, t2 TLevel
[t1.Level_ID t2.Level_ID]
Bảng tầm ảnh hưởng:
68
Thêm Xóa Sửa
Level + - +(Level_ID)
R11:
Bối cảnh: Lesson
Điều kiện: Mỗi bài học sẽ có mã riêng biệt không trùng với bất kỳ mã bài học nào.
t1, t2 TLesson
[t1.Lesson_ID t2.Lesson_ID]
Bảng tầm ảnh hưởng:
Thêm Xóa Sửa
Lesson + - +(Lesson_ID)
R12:
Bối cảnh: Unit
Điều kiện: Mỗi bài giảng sẽ có mã riêng biệt không trùng với bất kỳ mã bài giảng nào.
t1, t2 Tunit
[t1.Unit_ID t2.Unit_ID]
Bảng tầm ảnh hưởng:
Thêm Xóa Sửa
Unit + - +(Unit_ID)
R13:
69
Bối cảnh: Question
Điều kiện: Mỗi câu hỏi sẽ có mã riêng biệt không trùng với bất kỳ mã câu hỏi nào.
t1, t2 TQuestion
[t1.Ques_ID t2.Ques_ID]
Bảng tầm ảnh hưởng:
Thêm Xóa Sửa
Question + - +(Ques_ID)
70
CHƯƠNG V: HIỆN THỰC CHƯƠNG TRÌNH
V.1. Giao diện
Hỗ trợ giao diện dễ sử dụng cho cả người quản trị lẫn giáo viên và học viên.
Giáo viên có các chức năng như đưa bài giảng và câu hỏi lên.
Học viên cũng có các chức năng phục vụ cho việc truy cập như làm kiểm tra, tải tài
liệu xuống…
Có chứa các liên kết multimedia (đa phương tiện) bao gồm hình ảnh và âm thanh.
Nói chung giao diện tương đối hài hoà, đẹp mắt, dễ sử dụng, thoả mãn được những đòi
hỏi cơ bản của người sử dụng.
V.2. Chức năng
Ghi lại các thời điểm và hoạt động mà người dùng đăng bài lên.
Hỗ trợ tài liệu người dùng tốt.
Hỗ trợ việc tải lên và tải xuống tài nguyên.
Có tính sử dụng lại cao (có thể lưu trữ, sao chép dự phòng…).
71
V.3. Thiết kế giao diện
Hình 5.1. Giao diện trang chủ
72
Hình 5.2. Giao diện trang đăng nhập
Sau khi đăng nhập thành công sẽ chuyển sang trang chủ quản trị:
Hình 5.3. Giao diện trang chủ quản trị
73
Khi nhấn vào các liên kết ở phía đầu trang quản trị, hệ thống sẽ chuyển sang trang cần
quản lý
Trang quản lý bài học
Hình 5.4. Giao diện trang quản lý bài học
74
Trang quản lý câu hỏi
Khi vào trang câu hỏi, người có thể tìm kiếm các câu hỏi theo trình độ, bài học, loại câu
hỏi, …
Hình 5.5. Giao diện trang quản lý câu hỏi
75
Hình 5.6. Giao diện trang làm kiểm tra
76
Sau khi hoàn tất bài kiểm tra, người dùng nhấn nút Kết thúc, đáp án sẽ hiện ra.
Hình 5.7. Giao diện hiển thị đáp án
77
CHƯƠNG VI: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
VI.1. Đánh giá
VI.1.1. Ưu điểm
Về mặt giao diện
- Cho một giao diện thân thiện với người sử dụng.
- Sử dụng kỹ thuật hình động (flash) nên tạo được giao diện bắt mắt.
Về mặt chức năng website
- Do được xây dựng từ các module đơn lẻ, website có thể dễ dàng nâng cấp các
chức năng cho mình trong một thời gian ngắn.
- Có công cụ biên soạn bài giảng, câu hỏi đơn giản, dễ sử dụng và khá mạnh.
- Nội dung các bài giảng bao gồm các văn bản, hình ảnh, âm thanh khá phong phú.
Về mặt dữ liệu
- Website đã chọn ra những hình ảnh và thông tin về những bài học khá phong phú và
đa dạng.
- Website có khả năng lưu trữ lượng dữ liệu tương đối lớn mà vẫn duy trì được độ ổn
định trong quá trình hoạt động.
78
VI.1.2. Khuyết điểm
Về mặt giao diện: Website có màu sắc và bố cục chưa thật hoàn hảo. Một số chi tiết
như khung viền, canh lề chưa hợp lý
Về mặt chức năng website: Website còn thiếu một số chức năng quan trọng khiến cho
website chỉ mang tính thử nghiệm. Website không có chức năng gửi email riêng, nội
bộ và còn thiếu chức năng diễn đàn, trợ giúp người dùng.
Về mặt dữ liệu: Do hạn chế về mặt thời gian, website vẫn chưa trang bị đầy đủ dữ liệu
thử nghiệm. Hiện tại, chỉ đưa ra một số dạng để kiểm thử.
VI.2. Hướng phát triển
Để tiếp tục phát triển hệ thống, cần khắc phục những khuyết điểm, hạn chế, nâng cấp các
chức năng, giao diện, có thể kể ra như:
Sẽ xây dựng công cụ soạn thảo giáo trình trên nền web.
Thực hiện việc thống kê bài học và câu hỏi theo ngày, tháng, quý.
Tạo các báo cáo thống kê cho các học viên.
Có thể lưu kết quả kiểm tra của từng người dùng.
Hệ thống hỗ trợ học trực tuyến, phát triển thành dạng E-learning.
Ngoài ra, hệ thống cho phép người dùng đăng bài (hiện tại chỉ có admin và giáo viên
mới có chức năng này).
Và sẽ nâng cấp chức năng bảo mật, phân quyền, sửa đổi giao diện.
79
Tài liệu tham khảo
[1] Đặng Văn Đức (2002). Phân tích thiết kế hướng đối tượng bằng UML. Nhà xuất bản
Giáo Dục, Hà Nội.
[2] Wendy Boggs – Micheal Boggs (2002). Mastering UML with Rational Rose. SYBEX
Inc, 1151 Marina Village Parkwa – Alameda – CA 94501.
[4] Bùi Thị Thủy Tiên (1998). Phân tích _ thiết kế và xây dựng chương trình quản lý
Trung tâm môi giới, mua bán và dự báo bất động sản. Luận văn Đại học, Đại học Kỹ
Thuật Công Nghệ.
[5]
[6]
[7] Programing.ASP.NET.2rd.Edition,Oreilly,2003
[8] ASP.NET 2.0 E-Commerce in C# 2005, Cristian Darie and Karli Watson, 2005
[9] "Bài giảng cơ sở dữ liệu & phân tích và thiết kế hệ thống thông tin quản lý ", Ths.
Nguyễn Hữu Trọng.
[10] Programming C#, Jesse Liberty, O’Reilly.
[11] C# in 21 Days, Bradley L.Jones, SAMS.
[11] Windows Forms Programming with C#, Erik Brown, Manning.
[12] Lập trình web dùng ASP.NET & C# tập 5 trong bộ .NET Toàn tập, Dương Quang
Thiện. NXB. Tổng Hợp TP.HCM – 2005.
[13] Beginning ASP.NET 2.0 in C# 2005 From Novice to Professional, Matthew
MacDonald. APress Publishing – 2006.
Các file đính kèm theo tài liệu này:
- Xây dựng chương trình học Anh văn trực tuyến.pdf