ocwiki - bài tập lớn uml

53
Bài tập lớn UML Đề tài: Wiki học liệu mở – ocwiki.org Sinh viên: Lê Ngọc Minh : 20071946 Nguyễn Việt Hà : 20070960 Lê Anh Quang : 20072297 Phan Anh Huy : 20071324 Nguyễn Văn Sao : 20072418 Phan Duy Hiệp : 20071172 Giáo viên: Thầy Nguyễn Hữu Đức Hà Nội, tháng 12/2010

Upload: minh-ngoc-le

Post on 29-Jun-2015

1.561 views

Category:

Documents


0 download

DESCRIPTION

Bài tập lớn môn UMLNhóm sinh viên lớp Khoa học máy tính K52Viện Công nghệ thông tinTrường đại học Bách Khoa Hà Nội

TRANSCRIPT

Page 1: OCWiki - Bài tập lớn UML

Bài tập lớn UML

Đề tài: Wiki học liệu mở – ocwiki.org

Sinh viên: Lê Ngọc Minh : 20071946Nguyễn Việt Hà : 20070960Lê Anh Quang : 20072297Phan Anh Huy : 20071324Nguyễn Văn Sao : 20072418Phan Duy Hiệp : 20071172

Giáo viên: Thầy Nguyễn Hữu Đức

Hà Nội, tháng 12/2010

Page 2: OCWiki - Bài tập lớn UML

Mục lụcChương 1: Giới thiệu ................................................................................................................................. 5

1.1. Giới thiệu bài toán nghiệp vụ ......................................................................................................... 5 1.2. Kế hoạch ......................................................................................................................................... 5

1.2.1. Thành phần nhóm phát triển ................................................................................................... 5 1.2.2. Phương pháp thực hiện ........................................................................................................... 5 1.2.3. Môi trường phát triển .............................................................................................................. 5 1.2.4. Công cụ làm việc nhóm .......................................................................................................... 5 1.2.5. Phân công công việc ............................................................................................................... 6

Chương 2: Phân tích hệ thống .................................................................................................................... 8 2.1. Nhu cầu người dùng ....................................................................................................................... 8

2.1.1. Mục tiêu dự án ........................................................................................................................ 8 2.1.2. Môi trường .............................................................................................................................. 8

2.1.2.1. Môi trường nghiệp vụ ..................................................................................................... 8 2.1.2.2. Môi trường vật lí ............................................................................................................. 8 2.1.2.3. Môi trường kĩ thuật ......................................................................................................... 8

2.1.3. Các tác nhân và các bên liên quan .......................................................................................... 9 2.1.3.1. Thư viện .......................................................................................................................... 9 2.1.3.2. Thi trực tuyến .................................................................................................................. 9 2.1.3.3. Hỗ trợ người học ............................................................................................................. 9 2.1.3.4. Hỗ trợ giáo viên .............................................................................................................. 9

2.1.4. Ghi chép phỏng vấn ................................................................................................................ 9 2.1.4.1. Ngày 13/11/2010, cô Phạm Thị Tâm hiệu trưởng trường THPT Trần Hưng Đạo – Hà Nội ................................................................................................................................................ 9 2.1.4.2. Ngày 12/11/2010, anh Nguyễn Thế Phúc - giáo viên Toán, Tin trường THPT Nguyễn Du, Nam Định ............................................................................................................................ 10 2.1.4.3. Ngày 09/11/2010, thầy Bùi Khiết giáo viên tiếng anh: ................................................ 11 2.1.4.4. Ngày 09/11/2010, em Phan Thị Vân Anh, học sinh lớp 12A1 trường trung học Nghĩa Hưng C - Nam Định ................................................................................................................... 12

2.1.5. User stories ........................................................................................................................... 12 2.1.5.1. Tìm kiếm bài tập ........................................................................................................... 12 2.1.5.2. Tìm phương tiện và tài liệu tham khảo ......................................................................... 12 2.1.5.3. Chuẩn bị đề kiểm tra trắc nghiệm ................................................................................. 12 2.1.5.4. Tra cứu theo từ khoá ..................................................................................................... 13 2.1.5.5. Tra cứu theo chủ đề ....................................................................................................... 13

2.1.6. Quy trình nghiệp vụ .............................................................................................................. 13 2.1.6.1. Soạn bài kiểm tra, thi .................................................................................................... 13 2.1.6.2. Tổ chức thi .................................................................................................................... 13

2.2. Đặc tả yêu cầu hệ thống ............................................................................................................... 14 2.2.1. Yêu cầu phi chức năng ......................................................................................................... 14

2.2.1.1. Chống phá hoại ............................................................................................................. 14 2.2.1.2. Tính dễ dùng ................................................................................................................. 14 2.2.1.3. Tính thuận tiện .............................................................................................................. 14 2.2.1.4. Tôn trọng quyền riêng tư .............................................................................................. 14 2.2.1.5. Yêu cầu độ tin cậy ......................................................................................................... 15 2.2.1.6. Yêu cầu hiệu năng sử dụng và khả năng mở rộng ........................................................ 15

2.2.2. Yêu cầu môi trường .............................................................................................................. 15

Page 3: OCWiki - Bài tập lớn UML

2.2.2.1. Phần cứng ...................................................................................................................... 15 2.2.2.2. Phần mềm ...................................................................................................................... 15 2.2.2.3. Application Programming Interface ............................................................................. 15

2.3. Các trường hợp sử dụng (use case) .............................................................................................. 16 2.3.1. Người dùng ........................................................................................................................... 16

UC1 - Đăng nhập bằng FBConnect ........................................................................................... 16 UC2 - Đăng nhập bằng OpenID ................................................................................................. 16 UC3 - Đổi hình đại diện ............................................................................................................. 17 UC4 - Tải lên hình đại diện mới ................................................................................................ 17 UC5 - Lấy hình đại diện từ URL ............................................................................................... 18

2.3.2. Thư viện ................................................................................................................................ 18 UC6 - Tạo bài ............................................................................................................................. 19 UC7 - Sửa bài ............................................................................................................................. 19 UC8 - Xoá bài ............................................................................................................................ 20 UC9 - Sửa đề thi ......................................................................................................................... 20 UC10 - Chọn câu hỏi ................................................................................................................. 20 UC11 - Chọn chủ đề .................................................................................................................. 21 UC12 - Phục hồi phiên bản ........................................................................................................ 21 UC13 - Phục hồi bài bị xoá ........................................................................................................ 21

2.3.3. Tra cứu .................................................................................................................................. 22 UC14 - Tìm kiếm theo từ khoá .................................................................................................. 22 UC15 - Tìm kiếm theo chủ đề .................................................................................................... 22

2.3.4. Thi trực tuyến ....................................................................................................................... 23 UC16 - Tạo đề thi ...................................................................................................................... 23 UC17 - Chỉnh sửa đề .................................................................................................................. 24 UC18 - Kiểm tra đề .................................................................................................................... 24 UC19 - Thực hiện thi ................................................................................................................. 24 UC20 - Chấm thi trắc nghiệm .................................................................................................... 25 UC21 - Chấm thi tự luận ............................................................................................................ 25 UC22 - Phúc tra ......................................................................................................................... 25

2.3.5. Hỗ trợ người học ................................................................................................................... 26 UC23 - Làm câu hỏi trắc nghiệm ............................................................................................... 26 UC24 - Thi thử ........................................................................................................................... 27 UC25 - Đăng lời giải .................................................................................................................. 27 UC26 - Gợi ý bài cần làm .......................................................................................................... 27 UC27 - Đánh dấu bài cần làm .................................................................................................... 28

2.3.6. Hỗ trợ giáo viên .................................................................................................................... 28 UC28 - Tìm bài tập .................................................................................................................... 28 UC29 - Trộn đề .......................................................................................................................... 29

2.4. Biểu đồ lớp cho các trường hợp sử dụng ...................................................................................... 30 2.4.1. Thư viện ................................................................................................................................ 30

2.4.1.1. Tạo bài .......................................................................................................................... 30 2.4.1.2. Sửa bài ........................................................................................................................... 30 2.4.1.3. Chọn chủ đề .................................................................................................................. 30 2.4.1.4. Chọn câu hỏi ................................................................................................................. 31 2.4.1.5. Phục hồi phiên bản ........................................................................................................ 31 2.4.1.6. Tải lên phiên bản mới của tập tin .................................................................................. 31

2.4.2. Tra cứu .................................................................................................................................. 32 2.4.2.1. Tìm kiếm theo từ khoá .................................................................................................. 32

Page 4: OCWiki - Bài tập lớn UML

2.4.2.2. Tìm kiếm theo chủ đề ................................................................................................... 32 2.4.3. Thi trực tuyến ....................................................................................................................... 33

2.4.3.1. Chấm bài ....................................................................................................................... 33 2.4.3.2. Kiểm tra đề .................................................................................................................... 34 2.4.3.3. Làm bài thi .................................................................................................................... 34 2.4.3.4. Phúc tra ......................................................................................................................... 36 2.4.3.5. Sửa đề ............................................................................................................................ 36 2.4.3.6. Tạo đề ............................................................................................................................ 37 2.4.3.7. Làm bài thi .................................................................................................................... 38

2.4.4. Hỗ trợ người học ................................................................................................................... 38 2.4.4.1. Trả lời câu hỏi trắc nghiệm ........................................................................................... 38 2.4.4.2. Thi thử ........................................................................................................................... 38 2.4.4.3. Đánh dấu bài cần làm .................................................................................................... 39

2.4.5. Hỗ trợ giáo viên .................................................................................................................... 39 2.4.5.1. Tạo thư mục .................................................................................................................. 39 2.4.5.2. Tải xuống thư mục ........................................................................................................ 39 2.4.5.3. Thêm bài vào thư mục .................................................................................................. 39

2.5. Biểu đồ trình tự ............................................................................................................................. 40 2.5.1. Thư viện ................................................................................................................................ 40

2.5.1.1. Tạo bài .......................................................................................................................... 40 2.5.1.2. Sửa bài ........................................................................................................................... 41 2.5.1.3. Chọn chủ đề .................................................................................................................. 41 2.5.1.4. Chọn câu hỏi ................................................................................................................. 42 2.5.1.5. Phục hồi phiên bản ........................................................................................................ 42 2.5.1.6. Tải lên phiên bản mới của tập tin .................................................................................. 43

2.5.2. Tra cứu .................................................................................................................................. 43 2.5.2.1. Tìm kiếm theo từ khoá .................................................................................................. 43 2.5.2.2. Tìm kiếm theo chủ đề ................................................................................................... 44

2.5.3. Thi trực tuyến ....................................................................................................................... 44 2.5.3.1. Chấm bài ....................................................................................................................... 44 2.5.3.2. Kiểm tra đề .................................................................................................................... 45 2.5.3.3. Phúc tra ......................................................................................................................... 46 2.5.3.4. Sửa đề ............................................................................................................................ 47 2.5.3.5. Tạo đề ............................................................................................................................ 48 2.5.3.6. Làm bài thi .................................................................................................................... 48

2.5.4. Hỗ trợ người học ................................................................................................................... 49 2.5.4.1. Trả lời câu hỏi trắc nghiệm ........................................................................................... 49 2.5.4.2. Thi thử ........................................................................................................................... 49 2.5.4.3. Đánh dấu bài cần làm .................................................................................................... 50

2.5.5. Hỗ trợ giáo viên .................................................................................................................... 50 2.5.5.1. Tạo thư mục .................................................................................................................. 50 2.5.5.2. Tải xuống thư mục ........................................................................................................ 50 2.5.5.3. Thêm bài vào thư mục .................................................................................................. 51

Chương 3: Thiết kế hệ thống .................................................................................................................... 52 3.1. Phân chia hệ thống con ................................................................................................................. 52 3.2. Đặc tả sản phầm ........................................................................................................................... 52 3.3. Đặc tả mô hình cài đặt .................................................................................................................. 53

Page 5: OCWiki - Bài tập lớn UML

Chương 1: Giới thiệu

1.1. Giới thiệu bài toán nghiệp vụÝ tưởng về Wiki Học liệu mở được khởi nguồn từ một bài tập lớn tại trường. Yêu cầu đề bài là

thiết kế một website cho phép người dùng tạo và làm các đề thi trắc nghiệm đồng thời hỗ trợ tạo, tráo đề cho thi trắc nghiệm trực tuyến giúp giảm gánh nặng cho hệ thống thi cử truyền thống và chấm thủ công.

Khi đã hoàn thành những phần yêu cầu trên nhóm chúng tôi nhận thấy một hệ thống như thế cần hỗ trợ nhiều hơn cho người học. Xuất phát từ nhu cầu hiện tại, các hình thức thi trắc nghiệm đang dần phổ biến nhưng hầu như các hệ thống cho phép tham khảo các đề thi trực tuyến chỉ dừng lại ở mức cho phép người học thực hiện câu hỏi với câu trả lời có sẵn mà không liên hệ được với những kiến thức liên quan đến câu hỏi. Hơn nữa, nhu cầu về một kho học liệu mở với những kiến thức chuyên ngành giành cho người học nói chung và sinh viên nói riêng là rất lớn.

Do đó, nhóm chúng tôi quyết định phát triển website trắc nghiệm đã được nhóm thực hiện trở thành Wiki Học liệu mở nhằm giúp người học liên kết được tới các kiến thức mang tính học thuật cao khi nghiên cứu và ôn luyện từ các câu hỏi trắc nghiệm đơn giản đến những bài toán phức tạp của từng chuyên ngành.

1.2. Kế hoạch

1.2.1. Thành phần nhóm phát triển• Trưởng nhóm: Lê Ngọc Minh

• Project manager: Lê Anh Quang

• Developer: các thành viên còn lại

1.2.2. Phương pháp thực hiện• Tiến trình thực hiện dự án được chia thành nhiều iteration, mỗi iteration thực hiện một tính

năng và kéo dài 2 tuần.

• Trong mỗi iteration, người thực hiện phân tích - thiết kế chi tiết và cài đặt hoàn chỉnh tính năng đó.

1.2.3. Môi trường phát triển• Eclipse IDE

• Hibernate Tools

• JUnit 4.0

1.2.4. Công cụ làm việc nhóm• Google code

Page 6: OCWiki - Bài tập lớn UML

◦ Trang web nhóm

◦ Hệ thống quản lý vấn đề (issue tracking system)

◦ Hệ thống quản lý phiên bản Mercurial

• Hòm thư chung của nhóm

• Trình khách quản lý phiên bản HgEclipse

1.2.5. Phân công công việcSTT Công việc Người thực hiện Ngày hoàn thành

1 Xây dựng ý tưởng Cả nhóm 6/11Nghiên cứu sơ bộ

2 Phỏng vấn: Tìm hiểu cách soạn giáo án Minh 13/113 Phỏng vấn: Tìm hiểu cách tổ chức thi Hà 13/114 Phỏng vấn: Tìm hiểu cách tra cứu tài liệu Sao 13/115 Tìm hiểu mô hình wiki Hiệp 13/116 Viết tài liệu: Thi trực tuyến Hà 17/117 Viết tài liệu: Tra cứu Sao 17/118 Viết tài liệu: Hỗ trợ người học Quang 17/119 Viết tài liệu: Hỗ trợ giáo viên Minh 17/11

10 Viết tài liệu: Thư viện Hiệp 17/1111 Đặc tả yêu cầu (chung) Minh 20/11

Mô hình hoá ca sử dụng12 Người dùng Huy 24/1113 Thư viện Hiệp 24/1114 Tra cứu Sao 24/1115 Thi trực tuyến Hà 24/1116 Hỗ trợ người học Quang 24/1117 Hỗ trợ giáo viên Minh 24/11

Tìm lớp tham gia ca sử dụng18 Tìm lớp Cả nhóm 27/11

Mô hình hoá tương tác19 Người dùng Huy 2/1220 Thư viện Hiệp 2/1221 Tra cứu Sao 2/1222 Thi trực tuyến Hà 2/12

Page 7: OCWiki - Bài tập lớn UML

23 Hỗ trợ người học Quang 2/1224 Hỗ trợ giáo viên Minh 2/12

Thiết kế tổng thể25 Phân chia hệ thống Quang 5/1226 Đặc tả sản phẩm Hà 5/1227 Đặc tả cài đặt Huy 5/12

Báo cáo28 Tổng hợp tài liệu Minh 8/12

Page 8: OCWiki - Bài tập lớn UML

Chương 2: Phân tích hệ thống

2.1. Nhu cầu người dùng

2.1.1. Mục tiêu dự ánXây dựng một thư viện tư liệu học tập gồm bài giảng, bài tập, đề thi, phương tiện... theo mô

hình wiki (mở cho phép mọi người có thể sửa đổi). Trên cơ sở dữ liệu đó, xây dựng hệ thống hỗ trợ việc dạy và học:

• Cho phép người học học và quản lí quá trình học tập trực tuyến• Hỗ trợ giáo viên trong các tác vụ soạn giáo án, bài tập, đề thi...• Cho phép quản lý của một tổ chức đào tạo có thể tổ chức cho học viên thi trắc nghiệm/tự luận

trực tiếp trên hệ thống

2.1.2. Môi trường

2.1.2.1. Môi trường nghiệp vụTrong wiki mọi người sử dụng đều là biên tập viên (có quyền sửa đổi bài viết). Các biên tập

viên làm việc trên tinh thần tự nguyện và thường tổ chức thành các nhóm chuyên đề để hợp tác.

Một nhóm thành viên đặc biệt gọi là bảo trì viên được trao quyền lớn hơn các thành viên khác để chống lại những kẻ phá hoại. Các bảo trì viên được cộng đồng bầu ra và cũng làm việc trên tinh thần tự nguyện.

Người học sử dụng hệ thống theo cá nhân. Người học thường muốn giữ kín kết quả học tập của mình tuy nhiên cũng có nhu cầu chia sẻ một số thành quả đạt được với bạn bè, người thân...

Một cuộc thi trực tuyến có thể có sự giám sát của giám thị hoặc không. Đề thi cần được giữ kín với những người không phải thí sinh cho đến khi cuộc thi kết thúc. Cuộc thi được tổ chức tại:

● Các trung tâm đào tạo tập trung như trường phổ thông, trung cấp, cao đẳng, đại học, sau đại học..

● Các kì thi khu vực như các kì thi thuộc cấp quận, thành phố, toàn quốc.● Các tổ chức giáo dục phân tán như giáo dục từ xa, trực tuyến.

2.1.2.2. Môi trường vật líHệ thống cài đặt trên máy phục vụ web, người sử dụng chủ yếu ở Việt Nam và sử dụng hệ

thống thông qua mạng Internet.

Hệ thống có giao diện riêng dành cho di động cho phép người dùng thực hiện những tác vụ cơ bản thường dùng.

2.1.2.3. Môi trường kĩ thuậtTrên máy tính bàn và xách tay, phần lớn người sử dụng vẫn dùng Internet Explorer, sau đó là

Firefox, Safari và Chrome.

Trên di động phổ biến là Opera Mini và các trình duyệt cài đặt sẵn khi xuất xưởng với tính năng rất hạn chế.

Page 9: OCWiki - Bài tập lớn UML

2.1.3. Các tác nhân và các bên liên quan

2.1.3.1. Thư việnThư viện câu hỏi – đề thi – bài giảng được tổ chức theo mô hình wiki.

• Biên tập viên: Mọi thành viên của trang web đều là biên tập viên, có quyền sửa đổi nội dung (trừ những nội dung bị khoá).

• Bảo trì viên: Một số thành viên được cộng đồng bầu chọn để bảo trì nội dung trang web, có quyền khoá bài viết, cảnh cáo, cấm thành viên, đứng ra làm trọng tài khi có tranh chấp giữa các thành viên.

2.1.3.2. Thi trực tuyến● Ban tổ chức: lên kế hoạch, lập lịch, kiểm tra tiến độ của các khâu, sắp xếp danh sách thí sinh, tổ

chức các nhóm chức năng.● Nhóm ra đề: tạo đề bài từ các câu hỏi có sẵn trong hệ thống hoặc các câu hỏi mới, chịu trách

nhiệm về nội dung, giới hạn kiến thức của đề bài.● Nhóm kiểm tra nội dung đề: độc lập với nhóm ra đề, xác minh nội dung, tính chính xác của đề

bài.● Thí sinh: Thực hiện bài thi.● Nhóm chấm điểm: thực hiện chấm điểm với bài thi tự luận (điều chỉnh thang điểm nếu được yêu

cầu), xác minh kết quả với bài thi trắc nghiệm.

2.1.3.3. Hỗ trợ người học● Người học: Tra cứu tài liệu, làm bài tập và tự quản lý quá trình học tập trên trang web.

2.1.3.4. Hỗ trợ giáo viên● Giáo viên: Sử dụng trang web làm kho tài liệu tham khảo, thư viện bài tập và đề thi để hỗ trợ

việc giảng dạy.

2.1.4. Ghi chép phỏng vấn

2.1.4.1. Ngày 13/11/2010, cô Phạm Thị Tâm hiệu trưởng trường THPT Trần Hưng Đạo – Hà Nội

1. Cô hãy mô tả vắn tắt quy trình tổ chức thi tại trường

. Đầu tiên là ra đề cương môn học, truyền tải đến từng thí sinh

. Việc ra đề được giao cho bộ phận ra đề, dựa trên đề cương môn học, hình thức thi và khối lượng bài trên thời gian làm bài.

. Đề được ra sau đó được kiểm tra lại nhờ nhóm kiểm tra tách biệt với nhóm ra đề, nếu có trục trặc thì chuyển lại cho bộ phận ra đề để sửa chữa.

. Đề đã sửa được chuyển qua in ấn sau đó lại được chuyển về cho bộ phận kiểm tra.

. Khi không còn lỗi đề được niêm phong và chờ ngày thi.

Page 10: OCWiki - Bài tập lớn UML

. Thí sinh dự thi được chia phòng và ghi số báo danh.

. Sau cùng là chấm thi và công bố điểm.

2. Trong công đoạn ra đề cần chú ý những điểm gì?

. Đề do tổ chuyên môn ra, phải đảm bảo:

▪ không sai

▪ dễ chấm

▪ đề làm xong thì làm đáp án.

▪ Việc kiểm tra thẩm định đề phải được thực hiện nhiều lần

▪ Khâu kiểm tra sau in cũng rất quan trọng

3. Vậy còn công đoạn chấm điểm?

. Việc chấm thường được phân chia cho 2 người

. Nếu là bài tự luận thì có thể điều chỉnh ba-rem điểm để đảm bảo hầu hết học sinh đạt điểm tốt nhất

. Học sinh là những người kiểm định kết quả chấm của giáo viên và có thể xin phúc tra.

4. Ngoài ra về công đoạn đánh mã số:

. Mã số đánh để mình dễ nhận ra đây là sinh viên khối lớp nào. vd lớp 10: 10xxxx

5. Việc bảo mật đề được đảm bảo bới toàn bộ nhóm ra đề, người kiểm tra và bộ phận in ấn. Sau đó đề được niêm phong và cất trong tủ khoá.

6. Cô có thể kể về nhưng trục trặc khi tổ chức:

. Trường hợp đáng nhớ nhất là mất bài thí sinh, dù đã được giám thị kiểm tra là đủ bài, khi chấm vẫn thiếu

. Trường hợp nữa là ghi nhầm số báo danh, số đề hoặc xuất hiện 2 thí sinh cùng số báo danh. Trường hợp này phải dựa vào tình huống cụ thể để giải quyết.

7. Ngoài ra cô còn nhắc nhờ điều gì không ạ?

. Ngoài các vấn đề trên thì nội dung kiến thức hợp lý là điều quan trọng, đề thi phải bám sát chương trình học.

2.1.4.2. Ngày 12/11/2010, anh Nguyễn Thế Phúc - giáo viên Toán, Tin trường THPT Nguyễn Du, Nam Định

1. Anh chuẩn bị cho một buổi dạy như thế nào ạ?

. Cần phải thực hiện các bước: Soạn giáo án - Chuẩn bị phương tiện - Khảo sát học sinh

2. Làm thế nào để soạn một giáo án tốt?

Page 11: OCWiki - Bài tập lớn UML

. Anh cần các tài liệu chuyên môn để biết anh cần dạy gì, cái gì cơ bản, cái gì nâng cao

. Các bài tập phù hợp (bài tập trong giờ dạy và bài tập cho về nhà)

. Các tài liệu tham khảo cùng loại: giáo án của đồng nghiệp của bài đó, bài giảng, trình chiếu của bài đó

3. Chuẩn bị phương tiện như thế nào ạ?

. Tuỳ thuộc vào hình thức mà cần chuẩn bị phương tiện thích hợp: dạy chay hay dạy có hỗ trợ các thiết bị, thí nghiệm,... Tuỳ từng môn: Toán, Lý, Hoá, Sinh,...mà khác nhau.

4. Thế còn khảo sát học sinh?

. Anh cần biết học sinh đang ở trình độ nào: biết gì, làm được gì, bao nhiêu phần trăm học sinh đạt yêu cầu - đủ trình độ tiếp tục học bài sau. Anh phải có câu hỏi, bài kiểm tra ngắn để biết điều này.

5. Thế lúc tìm bài tập thì anh tìm ở đâu ạ?

. Anh chất đống các sách anh có, đọc lướt qua, bài nào hay thì gấp lại trang đó để lát nữa đọc kĩ nếu sau khi đọc hết đống sách (thường khoảng > 10 cuốn) mà vẫn chưa thấy hài lòng (không có bài như ý) anh phải google, các thư viện trên mạng, diễn đàn đặc biệt là kho đề thi trong máy của anh :D Còn không tìm được nữa thì phải vắt óc ra thôi.

6. Thế thì chắc mất nhiều thời gian lắm?

. Nếu bài nào tâm huyết thì mất mấy ngày mới hài lòng7. Câu hỏi hay bài kiểm tra ngắn để kiểm tra trình độ học sinh thường là dạng nào ạ?

. Tuỳ tình hình thực tế hoặc trắc nghiệm, hoặc tự luận thường anh dùng tự luận một câu hỏi ngắn thôi "tại sao", "khi nào", "vì sao phải....". Để có một câu hỏi tốt thì phụ thuộc trình độ giáo viên nhiều lắm.

8. Anh hay tham khảo những tài liệu chuyên môn nào ạ?

. Chuẩn kiến thức, kĩ năng, sách giáo viên, sách hướng dẫn… Chú ý là: SGK chỉ là tài liệu tham khảo.

2.1.4.3. Ngày 09/11/2010, thầy Bùi Khiết giáo viên tiếng anh:1. Trong công việc, anh có thường xuyên tra cứu không?

. Có chứ. Mình nghĩ tra cứu là công việc cần thiết không chỉ ở nghề giáo viên mà còn ở bất cứ ngành nghề nào bạn ah.

2. Thế những chủ đề nào mà anh thường hay tra cứu nhât, bạn quan tâm đến điều gì khi tra cứu?

. Thường thì mình tìm kiếm tài liệu, tra cứu một số kiến thức nâng cao, tìm kiếm câu hỏi, bài giải cho câu hỏi xem có bài giải nào hay hơn không.

3. Nhưng đôi khi mình còn phải tra cứu đề thi nữa.

. Mình quan tâm đến câu hỏi và đề nhiều hơn.4. Thế phương pháp cho việc tra cứu như thế nào ah?

. Về tài liệu và kiến thức: thường thì mình hay chọn ra những từ khóa đặc trưng để tìm kiếm, hoặc mình tra cứu theo chủ đề của nội dung mình tìm kiếm.

5. Sau đó nếu không tìm thấy thì tôi xem các vấn đề liên quan được liệt kê trong từng bài viết, để xem tiếp.

. Còn khi tra cứu đề thi, mình muốn xem độ khó của đề thi các trường khác là như thế nào.

Page 12: OCWiki - Bài tập lớn UML

Cái này để tham khảo và xác định mức độ chung thôi. Cười.6. Theo thầy, thì có nên đưa cú pháp vào tra cứu không? Ví dụ?

. Vấn đề này tôi nghĩ là rất cần thiết. Nó giảm thời gian lọc của người sử dụng.

. Ví dụ tôi muốn tìm kiếm theo từ khóa và chủ đề hoặc tìm kiếm theo dạng bài chẳng hạn.7. Vậy trong trường hợp, thầy không có từ khóa thì sao ah?

. Ah, trong trường hợp ấy thì có lẽ nên lướt qua các danh mục, xem chỗ nào nói về điều mình đang cần thôi.

8. Vâng, xin cám ơn thầy về buổi trò truyện này.

2.1.4.4. Ngày 09/11/2010, em Phan Thị Vân Anh, học sinh lớp 12A1 trường trung học Nghĩa Hưng C - Nam Định

1. Trong học tập thì bạn có gặp phải khó khăn gì không? Vấn đề nào là quan trọng nhất?

. Có, một số vấn đề về đề thi, kiến thức, bài tập và lời giải.2. Quan trọng nhất là bài tập và lời giải. Rất khó để tìm được bài tập và lời giải hay và phù hợp.

. Thế khi tra cứu một vấn đề bạn sẽ làm như thế nào?3. Mình tra cứu sách vở trước, xem qua phụ lục xem có vấn đề mình cần không? Nếu có thì mới

xem tiếp.

. Nếu không có thì mình đành google thôi. Cười.4. Thế nếu có một hệ thống tra cứu, thì những chủ đề nào mà bạn hay tra cứu nhất?

. Mình hay tra cứu theo từ khóa, chủ đề, mức độ khó của câu hỏi, 5. Khi tra cứu kiến thức thì mình hay tra theo từ khóa, chủ để hoặc tác giả,…

. Khi tìm bài giải thì mình hay tìm theo câu hỏi và lựa chọn bài giải theo đánh giá của những người khác, vi dụ như lời giải ấy đươc mấy sao chẳng hạn.

2.1.5. User stories

2.1.5.1. Tìm kiếm bài tậpMột giáo viên cần tìm bài tập cho bài giảng của mình. Anh ta truy cập trang web và tìm kiếm

bài tập dựa trên những nội dung cần truyền đạt trong bài. Khi chọn được một bài tập ưng ý anh ta đánh dấu lại và cuối cùng anh ta tải các bài tập đã chọn được về máy, có thể sửa chữa lại cho vừa ý rồi in ra giấy.

2.1.5.2. Tìm phương tiện và tài liệu tham khảoMột giáo viên đang soạn bài giảng. Anh ta muốn tham khảo các bài giảng của đồng nghiệp và

tìm các phương tiện để làm cho bài giảng thêm sinh động. Anh ta vào trang web tìm kiếm các bài giảng và phương tiện được người dùng khác đóng góp và tải về máy.

2.1.5.3. Chuẩn bị đề kiểm tra trắc nghiệmMột giáo viên soạn hoặc tìm thấy đề trắc nghiệm do thành viên khác đóng góp trên trang web.

Anh ta sử dụng chức năng của hệ thống để tạo ra các phiên bản khác nhau của đề. Đồng thời hệ thống cũng tạo ra các phiếu trả lời và phiếu đáp án cho từng phiên bản. Giáo viên tải tất cả về máy và in ra giấy, phát đề và phiếu trả lời cho học sinh và sử dụng phiếu đáp án để chấm bài.

Page 13: OCWiki - Bài tập lớn UML

2.1.5.4. Tra cứu theo từ khoáMột giáo viên hay học sinh khi có một vấn đề gì đó cần tra cứu về kiến thức thì thông thường người ta lựa chọn các từ khoá và đưa ra chủ đề của vấn đề để tra cứu. Sau đó sử dụng chế độ tìm kiếm của hệ thống.

2.1.5.5. Tra cứu theo chủ đềNgười dùng tra cứu theo các chủ đề được thể hiện trong hệ thống, di chuyển dọc theo cây chủ đề từ tổng quát đến chi tiết. Người dùng sẽ dựa theo các vấn đề liên quan mà hệ thông đã liệt kê để tìm kiếm vấn đề mình quan tâm.

2.1.6. Quy trình nghiệp vụ

2.1.6.1. Soạn bài kiểm tra, thi1. Giáo viên tạo mẫu một bài kiểm tra.2. Chọn thời gian làm bài3. Chọn số lượng câu hỏi cần thiết4. Chọn một số câu hỏi cho vào đề thi/kiểm tra5. Chọn mức điểm cho mỗi câu hỏi tuỳ vào độ khó và yêu cầu của câu hỏi6. Kiểm tra lại các câu hỏi để đảm bảo các câu hỏi đều không có lỗi chính tả và có thể giải được

bằng kiến thức của học sinh/sinh viên

2.1.6.2. Tổ chức thi1. Giới hạn kiến thức:2. Ra đề:

a. Người thực hiện: tổ chuyên môn.b. Kết quả: một đề bài hoàn chỉnh đạt yêu cầuc. Các yêu cầu:

■ Đề bài không có lỗi■ Đề bài dễ chấm■ Đề bài đảm bảo giới hạn kiến thức

d. Các bước:■ Nhóm ra đề đưa ra các đề bài■ Nhóm kiểm tra kiểm tra lại các lỗi và các tiêu chí đến khi đạt yêu cầu■ In đề nháp■ Nhóm kiểm tra kiểm tra■ Đề được in và chuyển qua bảo quản

3. Chia phòng và đánh số:a. Người thực hiện: người quản lý.b. Kết quả: các thí sinh được đánh sốc. Các yêu cầu:

■ Đánh số dễ phân biệt khối lớpd. Các bước:

■ Người quản lý phân chia thí sinh theo khối lớp và đánh số theo thứ tự4. Thi

a. Người thực hiện: thí sinhb. Kết quả: bài thi đã làmc. Các yêu cầu:

Page 14: OCWiki - Bài tập lớn UML

■ Bài làm cung cấp đủ thông tin thí sinhd. Các bước:

5. Chấm điểm:a. Người thực hiện: nhóm chấm điểmb. Kết quả: điểm bài thic. Các yêu cầu:

■ Chấm chính xác và công bằngd. Các bước:

■ Với thi trắc nghiệm:● Nhận bài từ hệ thống● Chọn bài theo xác suất được yêu cầu để kiểm tra kết quả chấm● Nếu có trục trặc yêu cầu hệ thông chấm lại toàn bộ● Nếu không thì công bố kq

■ Với thi tự luận● Nhận bài từ hệ thống● Người chấm 1 chấm bài● Người chấm 2 chấm lại● Thống nhất kết quả chấm● Công bố kết quả

6. Thông báo kết quả7. Phúc tra:

2.2. Đặc tả yêu cầu hệ thống

2.2.1. Yêu cầu phi chức năng

2.2.1.1. Chống phá hoạiTính mở của wiki khiến các hành vi phá hoại dễ thực hiện hơn các mô hình khác. Hệ thống cần

phải cung cấp các phương tiện mạnh mẽ cho bảo trì viên để giúp bảo trì viên dễ dàng khôi phục lại dữ liệu khi có hành động phá hoại xảy ra cũng như ngăn chặn các thành viên không thiện chí.

2.2.1.2. Tính dễ dùngGiao diện dễ hiểu, dễ sử dụng cho sinh viên học sinh, giảng viên và giáo viên không chuyên ngành thông tin. Cần có hướng dẫn nhanh cho người lần đầu sử dụng và tài liệu hướng dẫn đầy đủ luôn sẵn sàng để truy cập.

2.2.1.3. Tính thuận tiệnGiao diện dễ nhìn, các nút nhấn, đường dẫn, thực đơn được bố trí hợp lí.

Hệ thống cần cung cấp các phím nóng để người dùng nâng cao có thể tăng tốc độ làm việc.

2.2.1.4. Tôn trọng quyền riêng tưQuá trình học tập và các thông tin cá nhân khác của người sử dụng phải được giữ kín, không

được để lộ ra ngoài.

Page 15: OCWiki - Bài tập lớn UML

2.2.1.5. Yêu cầu độ tin cậyHệ thống phải đảm bảo hoạt động ổn định trong thời gian thi

2.2.1.6. Yêu cầu hiệu năng sử dụng và khả năng mở rộngHệ thống có khả năng xử lý nhiều người dùng cùng thao tác, đảm bảo hiệu năng không gây trễ ảnh hưởng đến quá trình thi.

2.2.2. Yêu cầu môi trường

2.2.2.1. Phần cứngYêu cầu tối thiểu:

• Chip Pentium IV

• RAM 1GB

• HDD 16GB

2.2.2.2. Phần mềm

• JRE 1.6+

• MySQL 5.1+

2.2.2.3. Application Programming InterfaceHệ thống cần cung cấp giao diện lập trình cho phép các đơn vị khác truy cập dữ liệu thư viện và

thông tin người dùng (dưới sự cho phép của người dùng). Mục đích là khuyến khích các đơn vị khác tạo ra ứng dụng mới trên nền tảng dữ liệu mà trang web tạo dựng được để tạo ra giá trị gia tăng lớn hơn cho cộng đồng.

Page 16: OCWiki - Bài tập lớn UML

2.3. Các trường hợp sử dụng (use case)

2.3.1. Người dùng

UC1 - Đăng nhập bằng FBConnect

Tóm tắt: Người dùng đăng nhập vào hệ thống bằng tài khoản trên Facebook

Mức độ ưu tiên: Bình thường

Mức độ thường xuyên: Thường xuyên

Tác nhân trực tiếp: Người dùng

Kịch bản chính:

1. Chọn chức năng đăng nhập bằng FBConnect2. Mở một cửa sổ mới chứa trang đăng nhập của Facebook3. Người dùng nhập tên, mật khẩu và nhấn cho phép trang web truy cập

thông tin cá nhân4. Cửa số đăng nhập tự đóng lại, hệ thống thông báo đăng nhập thành công

Kịch bản phụ: • Nếu quá trình đăng nhập gặp lỗi thì thông báo cho người dùng

Ghi chú và câu hỏi • Trang web không yêu cầu người dùng cho biết mật khẩu

UC2 - Đăng nhập bằng OpenID

Tóm tắt: Người dùng đăng nhập vào hệ thống bằng tài khoản OpenID

Mức độ ưu tiên: Bình thường

Mức độ thường xuyên: Thường xuyên

Tác nhân trực tiếp: Người dùng

Page 17: OCWiki - Bài tập lớn UML

Kịch bản chính:

1. Người dùng họn chức năng đăng nhập bằng OpenID2. Người dùng nhập đường dẫn đến tài khoản OpenID của mình3. Cửa sổ mới chứa trang đăng nhập của nhà cung cấp OpenID4. Người dùng nhập tên, mật khẩu và nhấn đăng nhập5. Cửa số đăng nhập tự đóng lại, hệ thống thông báo đăng nhập thành công

Kịch bản phụ: • Nếu quá trình đăng nhập gặp lỗi thì thông báo cho người dùng

Ghi chú và câu hỏi• Trang web không yêu cầu người dùng cho biết mật khẩu• Google và Yahoo cũng là nhà cung cấp OpenID và có trình tự đăng nhập

tương tự

UC3 - Đổi hình đại diện

Tóm tắt: Người dùng thay đổi hình đại diện của mình

Mức độ ưu tiên: Bình thường

Mức độ thường xuyên:

Không thường xuyên

Tác nhân trực tiếp: Người dùng

Kịch bản chính: 6. Chọn chức năng đổi hình đại diện7. Chọn phương án tải lên hình mới hoặc lấy hình từ URL8. Thực hiện trường hợp sử dụng đã chọn

Kịch bản phụ: • Nếu tên thư mục trùng với tên thư mục đã có thì yêu cầu nhập lại• Nếu thư mục rỗng (chưa chọn bài tập nào) thì không cho phép tải xuống

Ghi chú và câu hỏi•

UC4 - Tải lên hình đại diện mới

Tóm tắt: Người dùng tải lên hình ảnh mới để sử dụng làm hình đại diện cho mình

Mức độ ưu tiên: Bình thường

Mức độ thường xuyên:

Không thường xuyên

Tác nhân trực tiếp: Người dùng

Kịch bản chính: 1. Nhấn nút chọn tệp2. Hệ thống hiện bảng chọn tệp 3. Tìm đến thư mục chứa tệp4. Chọn tệp muốn tải và nhấn đồng ý5. Tệp được tải lên máy phục vụ6. Hệ thống hiển thị tệp vừa tải

Kịch bản phụ: • Nếu tệp không hợp lệ thì báo lỗi

Ghi chú và câu hỏi • Các loại tệp được coi là hợp lệ: PNG, GIF, JPEG, JPG• Kích thước tối đa của tệp: 2MB

Page 18: OCWiki - Bài tập lớn UML

UC5 - Lấy hình đại diện từ URL

Tóm tắt: Người dùng chọn một hình ảnh có sẵn trên Internet làm hình đại diện cho mình

Mức độ ưu tiên: Bình thường

Mức độ thường xuyên: Không thường xuyên

Tác nhân trực tiếp: Người dùng

Kịch bản chính:

1. Nhập vào URL2. Hệ thống hiển thị hình ảnh lấy được từ URL đó3. Nhấn đồng ý4. Hệ thống tải hình ảnh xuống và lưu trên máy phục vụ

Kịch bản phụ: • Nếu tệp không hợp lệ thì báo lỗi• Nếu không lấy được nội dung của URL thì báo lỗi

Ghi chú và câu hỏi • Yêu cầu đối với hình đại diện xem trong UC4 - Tải lên hình đại diện mới

2.3.2. Thư viện

Page 19: OCWiki - Bài tập lớn UML

UC6 - Tạo bài

Tóm tắt:Người dùng tạo mới một bài viết vào cơ sở dữ liệuMức độ ưu tiên:Quan trọngMức độ thường

xuyên:Bình thường

Tác nhân trực tiếp:Tất cả người dùng đã đăng nhập và không bị cấm

Kịch bản chính:1. Chọn chức năng thêm bài viết mới2. Hệ thống tạo ra một bài viết mới với các thông tin mặc định3. Chuyển sang giao diện sửa bài viết

Kịch bản phụ:Ghi chú và câu hỏi

UC7 - Sửa bài

Tóm tắt:Người dùng sửa một bài viết có sẵnMức độ ưu tiên:Quan trọngMức độ thường

xuyên:Bình thường

Tác nhân trực tiếp:Tất cả người dùng đã đăng nhập và không bị cấmKịch bản chính: 1. Xem bài viết có sẵn

Page 20: OCWiki - Bài tập lớn UML

2. Chọn chức năng sửa bài viết3. Kiểm tra quyền sửa bài viết của người dùng4. Ấn nút lưu bài viết sau khi sửa5. Xem lại bài viết sau khi sửa

Kịch bản phụ: • Nếu người dùng không có quyền sửa thì hiện thông báoGhi chú và câu hỏi • Hệ thống lưu trữ lại phiên bản cũ trước khi cập nhật phiên bản mới

UC8 - Xoá bài

Tóm tắt:Người dùng có thẩm quyền xoá một bài viếtMức độ ưu tiên:Quan trọngMức độ thường

xuyên:Thỉnh thoảng

Tác nhân trực tiếp:Tất cả những người có quyền xoáKịch bản chính: 1. Xem bài viết

2. Chọn chức năng xoá bài viết3. Xác nhận có muốn xoá bài viết không4. Trở lại giao diện trước đó

Kịch bản phụ: • Nếu không muốn xoá bài viết thì trở lại giao diện xem bài viếtGhi chú và câu hỏi • Hệ thống lưu trữ lại bài viết trước khi xoá đề phòng phá hoại

UC9 - Sửa đề thi

Tóm tắt:Người dùng sửa một đề thi trong hệ thốngMức độ ưu tiên:Bình thườngMức độ thường

xuyên:Thường xuyên

Tác nhân trực tiếp:Người dùng

Kịch bản chính:

1. chọn chức năng sửa đề thi2. sửa tên đề thi3. thêm/sửa/xoá các phần trong đề thi4. thêm/sửa/xoá các câu hỏi trong đề thi5. nhấn lưu6. hệ thống hiển thị nội dung mới

Kịch bản phụ: • Nếu tên không hợp lệ thì yêu cầu nhập lại• Nếu người dùng nhấn huỷ bỏ thì quay lại giao diện xem đề thi

Ghi chú và câu hỏi • Thế nào là một tên hợp lệ?

UC10 - Chọn câu hỏi

Tóm tắt:Người dùng chọn câu hỏi có trong hệ thống Mức độ ưu tiên:Bình thườngMức độ thường

xuyên:Thường xuyên

Tác nhân trực tiếp:Người dùng Kịch bản chính: 1. Người dùng nhập một số từ khoá liên quan đến câu hỏi hoặc nhập mã câu

hỏi2. Hệ thống hiển thị các câu hỏi tìm được

Page 21: OCWiki - Bài tập lớn UML

3. Chọn câu hỏi phù hợp trong danh sách

Kịch bản phụ: • Nếu số mã câu hỏi không đúng định dạng hoặc quá ít hoặc quá nhiều thì yêu cầu nhập lại

Ghi chú và câu hỏi:

UC11 - Chọn chủ đề

Tóm tắt:Người dùng chọn chủ đề có trong hệ thống Mức độ ưu tiên:Bình thườngMức độ thường

xuyên:Thường xuyên

Tác nhân trực tiếp:Người dùng Kịch bản chính: 1. Người dùng nhập một số từ khoá liên quan đến chủ đề hoặc nhập mã chủ

đề2. Hệ thống hiển thị các chủ đề tìm được3. Chọn chủ đề phù hợp trong danh sách

Kịch bản phụ: • Nếu số mã chủ đề không đúng định dạng hoặc quá ít hoặc quá nhiều thì yêu cầu nhập lại

Ghi chú và câu hỏi:

UC12 - Phục hồi phiên bản

Tóm tắt:Phục hồi một phiên bản cũ của hệ thốngMức độ ưu tiên:Bình thườngMức độ thường

xuyên:Không thường xuyên

Tác nhân trực tiếp:Người dùng

Kịch bản chính:

1. chọn chức năng phục hồi phiên bản2. hệ thống yêu cầu xác nhận3. xác nhận muốn phục hồi phiên bản4. hệ thống thay nội dung bài bằng nội dung của phiên bản cũ5. chuyển đến giao diện xem bài

Kịch bản phụ: • Nếu người dùng chọn huỷ bỏ (không xác nhận) thì quay về giao diện xem phiên bản

Ghi chú và câu hỏi:

UC13 - Phục hồi bài bị xoá

Tóm tắt:Phục hồi một bài viết đã bị xoáMức độ ưu tiên:Bình thườngMức độ thường

xuyên:Ít dùng

Tác nhân trực tiếp:Người dùng

Kịch bản chính:

1. Truy cập URL của một bài đã bị xoá2. Hệ thống hiển thị thông báo bài đã bị xoá3. Chọn chức năng phục hồi bài4. Hệ thống khôi phục bài về trạng thái trước khi bị xoá5. chuyển đến giao diện xem bài

Page 22: OCWiki - Bài tập lớn UML

Kịch bản phụ: • Nếu người dùng chọn huỷ bỏ (không xác nhận) thì quay về giao diện xem phiên bản

Ghi chú và câu hỏi:

2.3.3. Tra cứu

UC14 - Tìm kiếm theo từ khoá

Tóm tắt: Người dùng tìm kiếm các nội dung theo hệ thống các từ khoáMức độ ưu tiên: Quan trọngMức độ thường

xuyên: Thường xuyên

Tác nhân trực tiếp: Người dùng: Một người sử dụng của hệ thống

Kịch bản chính:

1. Đưa vào chuỗi các từ khoá theo cú pháp2. Hệ thống tìm kiếm các nội dung liên quan đến chuỗi các từ khoá.3. Người dùng chọn một nội dung và hiển thị4. Hiển thị các vấn đề liên quan

Kịch bản phụ: • Cú pháp không đúng yêu cầu nhập lạiGhi chú và câu hỏi • Sắp xếp kết quả theo chất lượng của nội dung với từ khoá.

UC15 - Tìm kiếm theo chủ đề

Tóm tắt: Người dung dựa vào các chủ đề trong hệ thống để tra cứu thông tinMức độ ưu tiên: Quan trọngMức độ thường

xuyên: Thường xuyên

Tác nhân trực tiếp: Người dùng: Một người sử dụng của hệ thống

Page 23: OCWiki - Bài tập lớn UML

Kịch bản chính: 1. Lựa chọn các chủ đề2. Hiển thị nội dung và các vấn đề liên quan đến chủ đề vừa chọn

Kịch bản phụ:Ghi chú và câu hỏi

2.3.4. Thi trực tuyến

UC16 - Tạo đề thi

Tóm tắt: Người ra đề thiết kế đề thi theo mẫu đề và khung kiến thức định trướcMức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Thường xuyênTác nhân trực tiếp: Giáo viên: Một người sử dụng của hệ thống

Điều kiện tiên quyết

Kịch bản chính:

1. Người ra đề đăng nhập hệ thống2. Người ra đề tạo đề mới3. Người ra đề chỉnh sửa đề theo UC-TCT-014. Người ra đề lưu đề lại để chuyển cho nhóm kiểm tra

Kịch bản phụ:Ghi chú và câu hỏi

Page 24: OCWiki - Bài tập lớn UML

UC17 - Chỉnh sửa đề

Tóm tắt:

• Đề thi sau khi tạo mới hoặc đã có nội dung được chỉnh sửa theo đúng yêu cầu mẫu đề và khung kiến thức. • Đề thi đã có nội dung được yêu cầu chỉnh sửa theo yêu cầu của nhóm kiểm tra khi phát hiện lỗi.

Mức độ ưu tiên: Quan trọngMức độ thường xuyên: Thường xuyên

Tác nhân trực tiếp: Người ra đềĐiều kiện tiên quyết Đề thi đã có trong hệ thống

Kịch bản chính:

1. Người ra đề mở đề thi2. Người ra đề thêm bớt các phần của đề theo yêu cầu3. Người ra đề thêm bớt các câu hỏi theo yêu cầu kèm theo đáp án

chuẩn4. Người ra đề lưu lại đề đã được chỉnh sửa

Kịch bản phụ:• Khi thêm câu hỏi ở bước 3:

◦ Tạo mới câu hỏi◦ Chọn câu hỏi đã có trong hệ thống

Ghi chú và câu hỏi

UC18 - Kiểm tra đề

Tóm tắt: • Đề thi được kiểm tra độ chính xác trước khi đưa vào thực hiện thiMức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Thường xuyênTác nhân trực tiếp: • Người kiểm tra

Điều kiện tiên quyết • Đề thi đã có nội dung được lưu trong hệ thống

Kịch bản chính:

1. Người kiểm tra đăng nhập hệ thống2. Người kiểm tra lựa chọn mở đề thi3. Người kiểm tra điều chỉnh trạng thái của đề thi là “được” hoặc có lỗi4. Người kiểm tra đóng đề thi

Kịch bản phụ:

• Bước 3:◦ Nếu đề thi được điều chỉnh trạng thái có lỗi thì sẽ được ghi chú

lại và thông báo tới người ra đề◦ Nếu đề thi được điều chỉnh trạng thái “được” thì sẽ được sẵn

sàng sử dụng cho việc thiGhi chú và câu hỏi • Người kiểm tra không có quyền sửa đề thi.

UC19 - Thực hiện thi

Tóm tắt: Thí sinh thực hiện thiMức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Thường xuyênTác nhân trực tiếp: Thí sinh

Điều kiện tiên quyết

Page 25: OCWiki - Bài tập lớn UML

Kịch bản chính:

1. Thí sinh đăng nhập hệ thống2. Thí sinh thực hiện bài thi trên giao diện hệ thống với thời gian cho

trước3. Thí sinh thực hiện nộp bài thi

Kịch bản phụ: • Nộp bài thi là lưu 1 phiên bản của bài làm vào hệ thốngGhi chú và câu hỏi • Bài thi tự động nộp khi thời gian hết

UC20 - Chấm thi trắc nghiệm

Tóm tắt: Kết quả bài thi được đưa ra bởi người chấmMức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Thường xuyênTác nhân trực tiếp: Người chấm

Điều kiện tiên quyết

Kịch bản chính:

1. Người chấm đăng nhập hệ thống2. Người chấm chọn ra ngẫu nhiên n bài làm3. Người chấm nhập lại kết quả chấm cho các bài đã được chọn ngẫu

nhiên dựa trên đáp án chuẩn của người ra đề4. Hệ thống đánh giá số bài chấm lỗi và yêu cầu chấm lại nếu cần

Kịch bản phụ:Ghi chú và câu hỏi Hệ thống hầu như không gặp lỗi khi chấm bài trắc nghiệm lựa chọn

UC21 - Chấm thi tự luận

Tóm tắt: Kết quả bài thi được đưa ra bởi người chấmMức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Thường xuyênTác nhân trực tiếp: Người chấm

Điều kiện tiên quyết

Kịch bản chính:

1. Người chấm đăng nhập hệ thống2. Người chấm nhận toàn bộ tập bài làm về thực hiện chấm theo đáp

án3. Người chấm đồng bộ kết quả với người chấm khác4. Người chấm lưu kết quả chấm vào hệ thống

Kịch bản phụ: Nếu kết quả chấm không khớp thì thực hiện chấm lạiGhi chú và câu hỏi

UC22 - Phúc tra

Tóm tắt: Người ra đề thiết kế đề thi theo mẫu đề và khung kiến thức định trướcMức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Thường xuyênTác nhân trực tiếp: Người phúc tra

Điều kiện tiên quyết Có yêu cầu phúc traKịch bản chính: 1. Người phúc tra đang nhập hệ thống

Page 26: OCWiki - Bài tập lớn UML

2. Người phúc tra nhập điểm đã chấm lại vào hệ thốngKịch bản phụ:

Ghi chú và câu hỏi

2.3.5. Hỗ trợ người học

UC23 - Làm câu hỏi trắc nghiệm

Tóm tắt: Người học trả lời câu hỏi trắc nghiệm trên hệ thống để đánh giá trình độ bản thân

Mức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Thường xuyên

Tác nhân trực tiếp: Người học: Một người sử dụng của hệ thống

Kịch bản chính:

1. Xem một câu hỏi trắc nghiệm 2. Trả lời câu hỏi3. Nhấn nút gửi4. Hệ thống hiển thị kết quả

Kịch bản phụ: • Sau khi có kết quả người học có thể sử dụng chức năng chia sẻ để chia sẻ với bạn bè kết quả trả lời

Page 27: OCWiki - Bài tập lớn UML

Ghi chú và câu hỏi

UC24 - Thi thử

Tóm tắt: Người học làm đề trắc nghiệm trên hệ thống để đánh giá trình độ bản thân

Mức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Thường xuyên

Tác nhân trực tiếp: Người học: Một người sử dụng của hệ thống

Kịch bản chính:

1. Xem một đề trắc nghiệm2. Chọn chức năng làm đề3. Trả lời các câu hỏi trắc nghiệm4. Đánh dấu xác nhận làm xong5. Chọn chức năng gửi bài làm6. Hệ thống hiển thị điểm và kết quả từng câu trả lời

Kịch bản phụ: • Sau khi có kết quả người học có thể sử dụng chức năng chia sẻ để chia sẻ với bạn bè kết quả trả lời

Ghi chú và câu hỏi

UC25 - Đăng lời giải

Tóm tắt: Người học đăng lời giải của một bài tập lên hệ thống

Mức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Bình thường

Tác nhân trực tiếp: Người học: Một người sử dụng của hệ thống

Kịch bản chính:

1. Xem một bài tập, câu hỏi trắc nghiệm2. Chọn chức năng giải3. Nhập nội dung bài giải4. Nhấn lưu5. Hệ thống hiển thị bài giải

Kịch bản phụ:

Ghi chú và câu hỏi

UC26 - Gợi ý bài cần làm

Tóm tắt: Người học đăng lời giải của một bài tập lên hệ thống

Mức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Bình thường

Page 28: OCWiki - Bài tập lớn UML

Tác nhân trực tiếp: Người học: Một người sử dụng của hệ thống

Kịch bản chính: 1. Trong quá trình người học sử dụng hệ thống, hệ thống thu thập dữ liệu2. Hệ thống hiển thị danh sách một số bài nên làm ở một góc giao diện

Kịch bản phụ:

Ghi chú và câu hỏi

UC27 - Đánh dấu bài cần làm

Tóm tắt: Người học đánh dấu bài để làm sau

Mức độ ưu tiên: Không quan trọng

Mức độ thường xuyên: Bình thường

Tác nhân trực tiếp: Người học: Một người sử dụng của hệ thống

Kịch bản chính:1. Xem một bài tập2. Chọn chức năng đánh dấu bài cần làm3. Hệ thống thông báo đã đánh dấu

Kịch bản phụ:

Ghi chú và câu hỏi

2.3.6. Hỗ trợ giáo viên

UC28 - Tìm bài tập

Tóm tắt: Giáo viên tìm kiếm bài tập, đánh dấu và tải về các bài tập phù hợp.

Page 29: OCWiki - Bài tập lớn UML

Mức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Thường xuyên

Tác nhân trực tiếp: Giáo viên: Một người sử dụng của hệ thống

Kịch bản chính:

5. tạo thư mục mới để chứa bài tập6. tìm kiếm bài tập theo các tiêu chí7. chọn những bài tập phù hợp xếp vào thư mục8. mở thư mục9. thấy các bài tập đã chọn10.chọn chức năng tải xuống11.một tệp chứa nội dung tất cả các bài trong thư mục được tải xuống máy

của giáo viên

Kịch bản phụ: • Nếu tên thư mục trùng với tên thư mục đã có thì yêu cầu nhập lại• Nếu thư mục rỗng (chưa chọn bài tập nào) thì không cho phép tải xuống

Ghi chú và câu hỏi•

UC29 - Trộn đề

Tóm tắt: Giáo viên chọn đề thi đã có trong hệ thống và yêu cầu trộn đề

Mức độ ưu tiên: Quan trọng

Mức độ thường xuyên: Thường xuyên

Tác nhân trực tiếp: Giáo viên: Một người sử dụng của hệ thống

Kịch bản chính:

1. xem một đề thi đã có trong hệ thống2. chọn chức năng trộn đề3. nhập số mã đề cần tạo4. chọn có tạo phiếu trả lời hay không5. chọn có tạo phiếu đáp án hay không6. yêu cầu thực hiện trộn đề7. một tập tin được tải xuống chứa tất cả các mã đề đã tráo cùng các tài liệu

kèm theo

Kịch bản phụ: • Nếu số mã đề không đúng định dạng hoặc quá ít hoặc quá nhiều thì yêu cầu nhập lại

Ghi chú và câu hỏi • Tập tin được định dạng như thế nào?

Page 30: OCWiki - Bài tập lớn UML

2.4. Biểu đồ lớp cho các trường hợp sử dụng

2.4.1. Thư viện

2.4.1.1. Tạo bài

2.4.1.2. Sửa bài

2.4.1.3. Chọn chủ đề

Page 31: OCWiki - Bài tập lớn UML

2.4.1.4. Chọn câu hỏi

2.4.1.5. Phục hồi phiên bản

2.4.1.6. Tải lên phiên bản mới của tập tin

Page 32: OCWiki - Bài tập lớn UML

2.4.2. Tra cứu

2.4.2.1. Tìm kiếm theo từ khoá

2.4.2.2. Tìm kiếm theo chủ đề

Page 33: OCWiki - Bài tập lớn UML

2.4.3. Thi trực tuyến

2.4.3.1. Chấm bài

Page 34: OCWiki - Bài tập lớn UML

2.4.3.2. Kiểm tra đề

2.4.3.3. Làm bài thi

Page 35: OCWiki - Bài tập lớn UML
Page 36: OCWiki - Bài tập lớn UML

2.4.3.4. Phúc tra

2.4.3.5. Sửa đề

Page 37: OCWiki - Bài tập lớn UML

2.4.3.6. Tạo đề

Page 38: OCWiki - Bài tập lớn UML

2.4.3.7. Làm bài thi

2.4.4. Hỗ trợ người học

2.4.4.1. Trả lời câu hỏi trắc nghiệm

2.4.4.2. Thi thử

Page 39: OCWiki - Bài tập lớn UML

2.4.4.3. Đánh dấu bài cần làm

2.4.5. Hỗ trợ giáo viên

2.4.5.1. Tạo thư mục

2.4.5.2. Tải xuống thư mục

2.4.5.3. Thêm bài vào thư mục

Page 40: OCWiki - Bài tập lớn UML

2.5. Biểu đồ trình tự

2.5.1. Thư viện

2.5.1.1. Tạo bài

Page 41: OCWiki - Bài tập lớn UML

2.5.1.2. Sửa bài

2.5.1.3. Chọn chủ đề

Page 42: OCWiki - Bài tập lớn UML

2.5.1.4. Chọn câu hỏi

2.5.1.5. Phục hồi phiên bản

Page 43: OCWiki - Bài tập lớn UML

2.5.1.6. Tải lên phiên bản mới của tập tin

2.5.2. Tra cứu

2.5.2.1. Tìm kiếm theo từ khoá

Page 44: OCWiki - Bài tập lớn UML

2.5.2.2. Tìm kiếm theo chủ đề

2.5.3. Thi trực tuyến

2.5.3.1. Chấm bài

Page 45: OCWiki - Bài tập lớn UML

2.5.3.2. Kiểm tra đề

Page 46: OCWiki - Bài tập lớn UML

2.5.3.3. Phúc tra

Page 47: OCWiki - Bài tập lớn UML

2.5.3.4. Sửa đề

Page 48: OCWiki - Bài tập lớn UML

2.5.3.5. Tạo đề

2.5.3.6. Làm bài thi

Page 49: OCWiki - Bài tập lớn UML

2.5.4. Hỗ trợ người học

2.5.4.1. Trả lời câu hỏi trắc nghiệm

2.5.4.2. Thi thử

Page 50: OCWiki - Bài tập lớn UML

2.5.4.3. Đánh dấu bài cần làm

2.5.5. Hỗ trợ giáo viên

2.5.5.1. Tạo thư mục

2.5.5.2. Tải xuống thư mục

Page 51: OCWiki - Bài tập lớn UML

2.5.5.3. Thêm bài vào thư mục

Page 52: OCWiki - Bài tập lớn UML

Chương 3: Thiết kế hệ thống

3.1. Phân chia hệ thống con

Trong mỗi phân hệ được chia thành 5 tầng:

• Cơ sở dữ liệu (MySQL): lưu trữ và quản lí dữ liệu.

• Trường cửu (Hibernate): ánh xạ mô hình quan hệ thành mô hình. hướng đối tượng, giảm sự phụ thuộc của hệ thống vào cơ sở dữ liệu cụ thể.

• Truy nhập cơ sở dữ liệu (DAOs): tạo giao diện cho các lớp khác truy vấn, cập nhật dữ liệu.

• Nghiệp vụ (Actions): các lớp thực hiện quy trình nghiệp vụ.

• Giao diện (JSPs): các trang JSP tạo ra nội dung hiển thị đến người dùng.

3.2. Đặc tả sản phầmSản phầm của dự án chia thành hai phần:

• Mã chương trình (ocwiki.war): triển khai trên máy phục vụ web

• Dữ liệu (ocwiki.sql): nhập vào cơ sở dữ liệu

Page 53: OCWiki - Bài tập lớn UML

3.3. Đặc tả mô hình cài đặt