Hướng dẫn làm website học trực tuyến
ĐẠI HỌC BÁCH KHOA HÀ NỘI Viện Công Nghệ Thông Tin và Truyền Thông BÁO CÁO BÀI TẬP LỚN PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Đề tài: Xây dựng website học trực tuyến Nhóm sinh viên thực hiện : Đinh Quang Huy – 20081124 Nguyễn Hữu Hạnh – 20080903 Nguyễn Đức Yên – 20083244 Doãn Đình Việt – 20083124 Giáo viên hướng dẫn : TS. Nguyễn Hữu Đức Hà Nội, Tháng 5 năm 2012 MỤC LỤC PHẦN I: KHẢO SÁT NGHIỆP VỤ 7 1. Mô tả chung về hệ thống nghiệp vụ 7 2. Đặc tả các quy trình nghiệp vụ 9 2.1. Chọn khóa học 9 2.2. Làm bài test 9 2.3. Thêm khóa học mới 10 2.4. Thêm bài học mới 11 2.5. Thêm bài test mới 12 3. Mô hình hóa các lớp nghiệp vụ 13 3.1. Xác định các lớp nghiệp vụ 13 3.1.1. Lớp User 14 3.1.2. Lớp Khóa học 14 3.1.3. Lớp bài học 15 3.1.4. Lớp bài test 15 3.1.5. Lớp roles 15 3.2. Sơ đồ các lớp nghiệp vụ của hệ thống 17 PHẦN II: PHÂN TÍCH HỆ THỐNG 18 1. Các tác nhân của hệ thống 18 1.1. Học sinh 18 1.2. Giáo viên 18 1.3. Quản trị hệ thống 18 2. Phân tích các chức năng của hệ thống 19 2.1. Các chức năng đối với tác nhân là học sinh 19 2.1.1. Đăng nhập 19 2.1.2. Xem khóa học 20 2.1.3. Xem bài học 21 2.1.4. Xem bài test 21 2.1.5. Cập nhật thông tin tài khoản 22 2.1.6. Xem kết quả học tập 23 2.2. Các chức năng đối với tác nhân là giáo viên 24 2.2.1. Quản lý khóa học 24 2.2.2. Thêm khóa học 25 2.2.3. Xóa khóa học 26 2.2.4. Sửa thông tin khóa học 27 2.2.5. Xem khóa học 27 2.2.6. Thêm bài học 28 2.2.7. Xóa bài học 29 2.2.8. Sửa nội dung bài học 29 2.3. Các chức năng đối với tác nhân là Admin 31 2.3.1. Quản lý giáo viên 31 2.3.2. Thêm giáo viên 32 2.3.3. Xóa giáo viên 33 2.3.4. Sửa thông tin giáo viên 34 2.3.5. Quản lý học sinh 34 2.3.6. Thêm học sinh 35 2.3.7. Xóa học sinh 36 2.3.8. Cập nhật thông tin học sinh 36 3. Phân tích hoạt động và sự tương tác 37 3.1. Mô tả hoạt động trong Use Case đăng nhập 37 3.2. Mô tả hoạt động trong Use Case xem khóa học 38 3.3. Mô tả hoạt động trong Use Case xem bài học 38 3.4. Mô tả hoạt động trong Use Case làm bài test 39 3.5. Mô tả hoạt động trong Use Case thay đổi thông tin cá nhân 39 3.6. Mô tả hoạt động trong Use Case xem Logout 40 3.7. Mô tả hoạt động trong Use Case thêm khóa học 40 3.8. Mô tả hoạt động trong Use Case xóa khóa học 41 3.9. Mô tả hoạt động trong Use Case sửa khóa học 41 4. Phân tích hệ thống về mặt cấu trúc 42 4.1. Sơ đồ lớp cho Use Case Đăng nhập 42 4.2. Sơ đồ lớp cho Use Case Xem khóa học 43 4.3. Sơ đồ lớp cho Use Case Cập nhật hồ sơ cá nhân 43 4.4. Sơ đồ lớp cho Use Case Quản lý khóa học 44 4.5. Sơ đồ lớp cho Use Case Thêm bài học 45 4.6. Sơ đồ lớp cho Use Case Thêm bài test 45 5. Thiết kế CSDL 46 5.1. Bảng User 46 5.2. Bảng Khóa học 47 5.3. Bảng Bài học 47 5.4. Bảng Test 47 5.5. Bảng Role 48 6. Thiết kế giao diện cho các Use Case 48 6.1. Thiết kế giao diện cho Use Case Đăng nhập 48 6.2. Thiết kế giao diện cho Use Case Chọn khóa học 49 6.3. Thiết kế giao diện cho Use Case Xem bài học 50 6.4. Thiết kế giao diện cho Use Case Làm bài test 51 6.5. Thiết kế giao diện cho Use Case Thay đổi thông tin cá nhân 52 6.6. Thiết kế giao diện cho Use Case Logout 52 6.7. Thiết kế giao diện cho Use Case Thêm khóa học 53 6.8. Thiết kế giao diện cho Use Case Quản lý khóa học 54 6.9. Thiết kế giao diện cho Use Case Sửa khóa học 54 PHẦN III: THIẾT KẾ TỔNG THỂ 55 1. Sơ đồ gói chức năng 55 2. Mô hình phân tầng theo công nghệ sử dụng 56 2.1. Giới thiệu Yii Framework 2.2. Các thành phân trong Project dùng Yii Framework 59 2.3. Luồng hoạt trộng trong Yii Project 61 LỜI MỞ ĐẦU Giáo dục là vấn đề quan trọng đối với mỗi người,mỗi gia đình,mỗi xã hội trong bất cứ thời đại nào giai đoạn lịch sử nào đặc biệt là trong thời đại tri thức như ngày nay.Việc dạy và học thì thời nào cũng vậy là quá trình chia sẻ tri thức từ thầy cô giáo đến học sinh.Ngày nay,công nghệ phát triển,tri thức nhân loại bùng nổ ,cách dạy và học cũng cần phải được cải tiến để tạp thuận lợi cho quá trình chia sẻ tri thức của các thầy cô và quá trình tiếp nhận tri thức của học sinh.Website hỗ trợ học tập trong trường học là một ý tưởng không mới và cũng không khó để thực hiện nhưng hiện nay vẫn còn chưa được nhân rộng trong các trường học ở nước ta.Với mong muốn về một hệ thống thông tin hỗ trợ việc dạy và học trong nhà trường,chúng em đã cùng nhau thực hiện đề tài phân tích thiết kế website hỗ trợ học tập trong trường học để làm bài tập lớn cho môn học phân tích thiết kế hướng đối tượng.Chúng em tin rằng đây là một đề tài rất gần gũi và có thể đưa vào áp dụng rộng rãi trong thực tế và sẽ có lợi ích đáng kể cho việc dạy và học ở các nhà trường. Trong quá trình thực hiện đề tài,chúng em đã nhận được rất nhiều sự chỉ bảo,giúp đỡ và những lời khuyên,góp ý xác đáng của Nguyễn Hữu Đức.Thầy đã giúp chúng em rất nhiều trong quá trình hoàn thành đề tài của mình.Chúng em xin chân thành cảm ơn thầy,chúng em xin chúc thầy và gia đình luôn luôn luôn mạnh khỏe,hạnh phúc,chúc thầy sẽ gặt hái thật nhiều thành quả trong công tác giảng dạy và nghiên cứu khoa học PHẦN I: KHẢO SÁT NGHIỆP VỤ 1. Mô tả chung về hệ thống nghiệp vụ Aiti-Aptech là một trường đào tạo lập trình viên quốc tế có trụ sở đặt tại số 356 Giải Phóng, Hà Nội thuộc hệ thống đào tạo quốc tế của Aptech-Ấn Độ. Mục tiêu của trường ngay từ khi thành lập là tạo ra một môi trường học tập tốt cho các sinh viên Việt Nam yêu thích lập trình, đam mê công nghệ. Hiện tại trường có các khóa học ở nhiều lĩnh vực đáp ứng yêu cầu cho đông đảo các đối tượng sinh viên khác nhau như ACCP (Khóa học lập trình viên quốc tế), DOST(Khóa học lập trình viên mã nguồn mở quốc tế), MTECH(Khóa học lập trình trên các thiết bị di động). Nhận thấy quá trình học trên lớp vẫn là chưa đủ ,để tạo điều kiện cho sinh viên nhà trường có điều kiện ôn tập bài trên lớp và củng cố kiến thức thông qua các bài test ngay sau buổi học đồng thời cũng giúp giảm sự vất vả cho các thầy, cô giáo, ban lãnh đạo trường mong muốn xây dựng một website học trực tuyến để aitiElearning để phục vụ cho việc dạy và học của giáo viên và sinh viên của trường. Website sẽ là hệ thống phục vụ quá trình học tập của sinh viên trường lập trình viên quốc tế Aiti Aptech. Mỗi sinh viên của trường sẽ được cấp 1 tài khoản để truy cập vào hệ thống. Sau khi đăng nhập vào hệ thống,sinh viên có thể thấy danh sách các khóa học. Sinh viên chọn khóa học mình muốn tham gia. Trên màn hình hiện ra danh sách các bài học thuộc khóa học. Sinh viên chọn bài học mình quan tâm. Trên màn hình hiện ra nội dung bài học gồm phần lý thuyết, bài tập, hướng dẫn giải bài tập. Nội dung bài học có thể chứa các video và các file đính kèm. Mỗi giáo viên của trường cũng được cấp một tài khoản riêng. Giáo viên có thể đăng nhập vào hệ thống, tạo khóa học mới, thêm các bài học, bài test mới cho các khóa học. Giáo viên có quyền quản lý các khóa học do mình tạo ra: xem nội dung khóa học, sửa nội dung khóa học, xóa khóa học. Người quản trị website được cấp các quyền quản lý người dùng, quản lý các khóa học, quản lý các bài học, quản lý bài test. 2. Đặc tả các quy trình nghiệp vụ 2.1. Xem bài học - Sinh viên chọn khóa học mong muốn. - Hệ thống hiển thị chi tiết khóa học. - Sinh viên chọn bài học . - Hệ thống hiển thị nội dung bài học. H1: Quy trình nghiệp vụ chọn khóa học 2.2. Làm bài test - Sinh viên chọn khóa học. - Hệ thống hiển thị chi tiết khóa học. - Sinh viên làm bài test. - Sinh viên nộp bài. - Hệ thống chấm điểm sinh viên. - Hệ thống thông báo kết quả test. H2: Quy trình nghiệp vụ làm bài test 2.3. Thêm khóa học mới - Giáo viên chọn thêm khóa học mới. - Hệ thống hiển thị form thêm khóa học. - Giáo viên nhập thông tin khóa học mới. Sau khi nhập thông tin khóa học mới, sinh viên chọn nút đăng khóa học mới. - Hệ thống kiểm tra tính hợp lệ của các thông tin về khóa học. - Hệ thống kết quả thêm khóa học. [...]... 2.1.2 Xem khóa học Tên UC Xem khóa học Tác nhân Học Sinh Mô tả Học sinh xem thông tin chi tiết về khóa học và danh sách các bài học Sự kiện kích hoạt Học sinh nhấn vào đường dẫn đến trang xem khóa học Điều kiện tiên quyết Học sinh đăng nhập hợp lệ vào hệ thống Phương thức cơ bản 1 Học sinh chọn đường dẫn đến khóa học muốn xem 2 Hệ thống trả về thông tin chi tiết khóa học và danh sách các bài học Phương... kết quả học tập Tên UC Xem Kết quả học tập Tác nhân Học sinh Mô tả Học sinh xem kết quả học tập Sự kiện kích hoạt Học sinh chọn chức năng xem kết quả học tập Điều kiện tiên quyết Học sinh đăng nhập thành công vào hệ thống Phương thức cơ bản 1 Học sinh chọn chức năng xem kết quả học tập 2 Hệ thống hiển thị kết quả học tập của học sinh Phương thức thay thế Kết quả Học sinh có thể xem kết quả học tập... quả Học sinh xem có thể xem chi tiết về khóa học mà mình lựa chọn Ngoại lệ Tần suât sử dụng Thường xuyên 2.1.3 Xem bài học Tên UC Xem bài học Tác nhân Học Sinh Mô tả Học sinh xem nội dung bài học Sự kiện kích hoạt Học sinh kích chuột vào đường link dẫn đến trang xem bài học muốn xem Điều kiện tiên quyết Học sinh được xác nhận là hợp lệ Phương thức cơ bản 1 Người dùng chọn đường dẫn đến trang xem bài học. .. dùng trong hệ thống 3.1.2 Lớp Khóa học -Lớp khóa học mô tả đối tượng các khóa học của hệ thống -Các thuộc tính của lớp khóa học được thể hiện ở bảng dưới đây: Tên thuộc tính Makh Tenkh Mota Mô tả Mã khóa học Tên khóa học Mô tả ,giới thiệu về khóa học MaGV Mã giáo viên dạy khóa học 3.1.3 Lớp bài học -Lớp bài học thể hiện các đối tượng bài học -Các thuộc tính của lớp bài học được thể hiện ở bảng dưới đây... khóa học mới 2.4 Thêm bài học mới - Giáo viên chọn khóa học mong muốn Hệ thống hiển thị danh mục các bài học của khóa học Giáo viên chọn thêm bài học mới Hệ thống hiển thị form thêm bài học mới Hệ thống nhập nội dung bài học mới Các quy trình nghiệp vụ của hệ thống H4: Quy trình nghiệp vụ thêm bài học mới 2.5 Thêm bài test mới - Giáo viên chọn khóa học mong muốn Hệ thống hiển thị chi tiết khoa học Giáo... tiết của bài học Phương thức thay thế Kết quả Học sinh xem được nội dung chi tiết của bài học Ngoại lệ Tần suất sử dụng Thường xuyên 2.1.4 Xem bài test Tên UC Xem bài test Tác nhân Học sinh Mô tả Học sinh xem nội dung bài test Sự kiện kích hoạt Học sinh kích chuột vào đường dẫn đến trang xem bài test Điều kiện tiên quyết Học sinh đăng nhập hợp lệ Phương thức cơ bản 1 Học sinh chọn đường dẫn đến chức... kịch bản sử dụng như xem khóa học, thêm khóa học, xóa khóa học, sửa thông tin khóa học Phương thức thay thế Kết quả Giáo viên có thể quản lý các khóa học do mình tạo ra Ngoại lệ Tần suất sử dụng Thường xuyên 2.2.2 Thêm khóa học Tên UC Thêm khóa học Tác nhân Giáo viên Mô tả Giáo viên thêm khóa học mới Sự kiện kích hoạt Giáo viên chọn button chứa đường dẫn đến trang thêm khóa học mới Điều kiện tiên quyết... Xóa khóa học Tên UC Xóa khóa học Tác nhân Giáo viên Mô tả Giáo viên xóa khóa học do mình tạo ra Sự kiện kích hoạt Giáo viên chọn button xóa khóa học bên cạnh khóa học trong trang quản lý khóa học Điều kiện tiên quyết Giáo viên đăng nhập thành công vào hệ thống Khóa học cần xóa tồn tại Phương thức cơ bản 1 Trên trang quản lý các khóa học, giáo viên chọn button xóa khóa học tương ứng với khóa học mình... thêm bài học 2 Hệ thống hiển thị form thêm bài học 3 Giáo viên nhập nội dung bài học mới vào form rồi nhấn submit thêm bài học mới 4 Hệ thống thêm bài học mới vào db rồi hiển thị thông báo kết quả thêm khóa học Phương thức thay thế Kết quả Giáo viên có thể thêm bài học mới Ngoại Lệ Tần suất sử dụng Thường xuyên 2.2.7 Xóa bài học Tên UC Tác nhân Xóa bài học Giáo viên Mô tả Giáo viên xóa bài học khỏi... thống hiển thị nội dung chi tiết khóa học Phương thức thay thế Kết quả Giáo viên có thể cập nhật khóa học mình mong muốn Ngoại Lệ Tần suất sử dụng Không thường xuyên 2.2.6 Thêm bài học Tên UC Thêm Bài Học, Tác Nhân Giáo viên, Mô tả Giáo viên thêm bài học vào khóa học đã chọn Sự kiện kích hoạt Trên trang xem bài học ở phần xem khóa học, giáo viên chọn button thêm bài học Điều kiện tiên quyết Giáo viên đăng . khóa học Tên UC Xem khóa học Tác nhân Học Sinh Mô tả Học sinh xem thông tin chi tiết về khóa học và danh sách các bài học. Sự kiện kích hoạt Học. và học trong nhà trường,chúng em đã cùng nhau thực hiện đề tài phân tích thiết kế website hỗ trợ học tập trong trường học để làm bài tập lớn cho môn học