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

63 3.6K 45
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

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

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

ĐẠI HỌC BÁCH KHOA HÀ NỘI Viện Công Nghệ Thông Tin 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 : Đinh Quang Huy – 20081124 Nguyễn Hữu Hạnh – 20080903 Nguyễn Đức n – 20083244 Dỗn Đình Việt – 20083124 Giáo viên hướng dẫn : TS Nguyễn Hữu Đức Hà Nội, Tháng năm 2012 MỤC LỤC PHẦN I: KHẢO SÁT NGHIỆP VỤ Mô tả chung hệ thống nghiệp vụ Đặc tả quy trình nghiệp vụ 2.1 2.2 Làm test .9 2.3 Thêm khóa học .10 2.4 Thêm học 11 2.5 Chọn khóa học .9 Thêm test 12 Mơ hình hóa lớp nghiệp vụ 13 Xác định lớp nghiệp vụ 13 3.1 3.1.1 Lớp User 14 3.1.2 Lớp Khóa học 14 3.1.3 Lớp học .15 3.1.4 Lớp test .15 3.1.5 Lớp roles 15 3.2 Sơ đồ lớp nghiệp vụ hệ thống 17 PHẦN II: PHÂN TÍCH HỆ THỐNG 18 Các tác nhân hệ thống 18 1.1 1.2 Giáo viên .18 1.3 Học sinh 18 Quản trị hệ thống 18 Phân tích chức hệ thống 19 2.1 Các chức tác nhân học sinh 19 2.1.1 Đăng nhập .19 2.1.2 Xem khóa học 20 2.1.3 Xem học 21 2.1.4 Xem test 21 2.1.5 Cập nhật thông tin tài khoản 22 2.1.6 Xem kết học tập .23 2.2 Các chức tác nhân 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 học 28 2.2.7 Xóa học .29 2.2.8 Sửa nội dung học 29 2.3 Các chức tác nhân Admin 31 2.3.1 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 Quản lý giáo viên 31 Cập nhật thông tin học sinh 36 Phân tích hoạt động tương tác 37 3.1 Mô tả hoạt động Use Case đăng nhập 37 3.2 Mô tả hoạt động Use Case xem khóa học 38 3.3 Mô tả hoạt động Use Case xem học 38 3.4 Mô tả hoạt động Use Case làm test 39 3.5 Mô tả hoạt động Use Case thay đổi thông tin cá nhân .39 3.6 3.7 Mơ tả hoạt động Use Case thêm khóa học 40 3.8 Mô tả hoạt động Use Case xóa khóa học 41 3.9 Mô tả hoạt động Use Case xem Logout 40 Mô tả hoạt động Use Case sửa khóa học 41 Phân tích hệ thống mặt cấu trúc 42 4.1 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 học 45 4.6 Sơ đồ lớp cho Use Case Đăng nhập .42 Sơ đồ lớp cho Use Case Thêm test 45 Thiết kế CSDL .46 5.1 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 User 46 Bảng Role 48 Thiết kế giao diện cho 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 học 50 6.4 Thiết kế giao diện cho Use Case Làm 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 Sơ đồ gói chức 55 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 Project dùng Yii Framework 59 2.3 Luồng hoạt trộng Yii Project .61 LỜI MỞ ĐẦU Giáo dục vấn đề quan trọng người,mỗi gia đình,mỗi xã hội thời đại giai đoạn lịch sử đặc biệt thời đại tri thức ngày nay.Việc dạy học thời 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 học cần phải cải tiến để tạp thuận lợi cho q trình chia sẻ tri thức thầy trình tiếp nhận tri thức học sinh.Website hỗ trợ học tập trường học ý tưởng khơng khơng khó để thực chưa nhân rộng trường học nước ta.Với mong muốn hệ thống thông tin hỗ trợ việc dạy học nhà trường,chúng em thực đề tài phân tích thiết kế website hỗ trợ học tập trường học để làm 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 đề tài gần gũi đưa vào áp dụng rộng rãi thực tế có lợi ích đáng kể cho việc dạy học nhà trường Trong trình thực đề tài,chúng em nhận nhiều bảo,giúp đỡ lời khuyên,góp ý xác đáng Nguyễn Hữu Đức.Thầy giúp chúng em nhiều q trình hồn thành đề tài mình.Chúng em xin chân thành cảm ơn thầy,chúng em xin chúc thầy gia đình ln ln ln mạnh khỏe,hạnh phúc,chúc thầy gặt hái thật nhiều thành công tác giảng dạy nghiên cứu khoa học PHẦN I: KHẢO SÁT NGHIỆP VỤ Mô tả chung hệ thống nghiệp vụ Aiti-Aptech trường đào tạo lập trình viên quốc tế có trụ sở đặt số 356 Giải Phóng, Hà Nội thuộc hệ thống đào tạo quốc tế Aptech-Ấn Độ Mục tiêu trường từ thành lập tạo môi trường học tập tốt cho sinh viên Việt Nam yêu thích lập trình, đam mê cơng nghệ Hiện trường có khóa học nhiều lĩnh vực đáp ứng yêu cầu cho đông đảo đối tượng sinh viên khác 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 thiết bị di động) Nhận thấy trình học lớp chưa đủ ,để tạo điều kiện cho sinh viên nhà trường có điều kiện ơn tập lớp củng cố kiến thức thông qua test sau buổi học đồng thời giúp giảm vất vả cho thầy, cô giáo, ban lãnh đạo trường mong muốn xây dựng website học trực tuyến để aitiElearning để phục vụ cho việc dạy học giáo viên sinh viên trường Website hệ thống phục vụ trình học tập sinh viên trường lập trình viên quốc tế Aiti Aptech Mỗi sinh viên trường cấp tài khoản để truy cập vào hệ thống Sau đăng nhập vào hệ thống,sinh viên thấy danh sách khóa học Sinh viên chọn khóa học muốn tham gia Trên hình danh sách học thuộc khóa học Sinh viên chọn học quan tâm Trên hình nội dung học gồm phần lý thuyết, tập, hướng dẫn giải tập Nội dung học chứa video file đính kèm Mỗi giáo viên trường cấp tài khoản riêng Giáo viên đăng nhập vào hệ thống, tạo khóa học mới, thêm học, test cho khóa học Giáo viên có quyền quản lý khóa học 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ấp quyền quản lý người dùng, quản lý khóa học, quản lý học, quản lý test Đặc tả quy trình nghiệp vụ 2.1 Xem 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 học Hệ thống hiển thị nội dung học H1: Quy trình nghiệp vụ chọn khóa học 2.2 Làm 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 test Sinh viên nộp Hệ thống chấm điểm sinh viên Hệ thống thơng báo kết test H2: Quy trình nghiệp vụ làm test 2.3 Thêm khóa học - Giáo viên chọn thêm khóa học - 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 Sau nhập thơng tin khóa học mới, sinh viên chọn nút đăng khóa học - Hệ thống kiểm tra tính hợp lệ thơng tin khóa học - Hệ thống kết thêm khóa học 6.2 Thiết kế giao diện cho trang Chọn khóa học H28:Giao diện trang chọn khóa học 6.3 Thiết kế giao diện trang Use Case Xem Khóa Học 6.3 Thiết kế giao diện cho Use Case Xem học Hình 29: Giao Diện cho Use Case Xem Bài Học 6.4 Thiết kế giao diện cho Use Case Làm test Hình 30: Giao diện cho ca sử dụng làm test 6.5 Thiết kế giao diện cho Use Case Thay đổi thông tin cá nhân Hình 31: Giao diện cho ca sử dụng thay đổi thông tin cá nhân 6.6 Thiết kế giao diện cho Use Case Logout Hình 32: Giao diện cho ca sử dụng logout 6.7 Thiết kế giao diện cho Use Case Thêm khóa học Hình 33: Giao diện cho ca sử dụng tạo khóa học 6.8 Thiết kế giao diện cho Use Case Quản lý khóa học Hình 34: Giao diện cho ca sử dụng quản lý khóa học 6.9 Thiết kế giao diện cho Use Case Sửa khóa học Hình 35: Giao diện cho ca sử dụng cập nhật khóa học PHẦN III: THIẾT KẾ TỔNG THỂ Sơ đồ gói chức -Hệ thống chia thành gói chức nhỏ: + Học Test: Gói “Học Test” chủ yếu phục vụ cho học sinh.Học sinh xem nội dung khóa học,chọn học,bài test mong muốn.Học sinh xem học làm test,xem kết học tập +Quản lý khóa học Gói “Quản lý khóa học” cung cấp cho giáo viên chức để quản lý khóa học.Giáo viên xem danh sách khóa học tạo ra,xem chi tiết nội dung khóa học,các học ,bài test.Giáo viên tạo khóa học mới,thêm học ,bài test vào khóa học mình,sửa,xóa khóa học,bài học,bài test +Quản lý người dùng Gói “Quản lý người dùng” cung cấp cho admin chức để quản lý người dùng hệ thống.Admin thêm người dùng,xác định role cho người dùng,cập nhật thơng tin người dùng,xóa người dùng Hình 36: Biểu đồ gói chức Mơ hình phân tầng theo cơng nghệ sử dụng 2.1.Giới thiệu Yii Framework Yii Framework framework sử dụng ngôn ngữ PHP thiết kế theo mơ hình MVC Yii đời lần năm 2008 tác giả Quiang Xue viết Quiang Xeng người đứng đầu nhóm xây dựng Prado framework khác PHP Trong trình phát triển Prado, nhận thấy nhiều nhược điểm Prado đặc biệt hiệu năng, Quiang nhóm phát triển Prado định xây dựng lại framework kế thừa ưu điểm Prado mang nhiều cải tiến mẻ, độc đáo khiến cho Yii Framework trở thành framework có hiệu cao thích hợp cho việc xây dựng ứng dụng web đa dạng nhiều loại hình, quy mơ với tiết kiệm nhiều thời gian công sức cho người phát triển Yii có nhiều ưu điểm bật so với framework đời trước Sau số ưu điểm bật Yii: Yii thiết kế theo mơ hình Framework, mơ hình phổ biến áp dụng cho phần lớn framework PHP giúp thuận tiện cho người phát triển trình phát triển, sửa lỗi, bảo dưỡng Yii sử dụng ActiveRecord Design Pattern để biểu diễn thao tác với liệu cách sáng chặt chẽ Đồng thời,Yii cung cấp cách để làm việc với CSDL DAO (Data Access Object) Query Builder Mỗi cách lại có ưu, nhược điểm riêng, người phát triển chọn lựa cách thức phù hợp trường hợp - Yii sử dụng Jquery thư viện Javascript mặc định, hỗ trợ tốt cho Ajax Yii có widget giúp cho người phát triển dễ dàng xây dựng giao diện người dùng Yii cho phép dễ dàng tích hợp thư viện thứ giúp người phát triển dễ dàng tích hợp thư viện đa dạng cho ứng dụng 2.2.Biểu đồ mơ hình phân tầng cơng nghệ sử dụng Hình 37: Biểu đồ phân tầng theo công nghệ sử dụng 2.3.Các thành phân Project dùng Yii Framework H38: Cấu trúc tĩnh ứng dụng Yii Một website sử dụng Framework Yii có cấu trúc tĩnh sau: - Application: Đối tượng đối tượng gom nhóm ngữ cảnh thực thi mà sử dụng yêu cầu người dùng, quản lý controller component hệ thống - Các component ứng dụng: Yii có kiến trúc component Có thể thêm component cho Yii để thực chức cụ thể cách dễ dàng Để sử dụng component Yii, ta cần thêm thơng tin cấu hình file config - Controller: Là thể lớp Ccontroller Nó tạo đối tượng application có yêu cầu từ người dùng gửi đến Khi yêu cầu thực hiện, controller thực thi action yêu cầu.action Yii đơn giản phương thức mở đầu từ khóa “action” Controller đọc liệu từ model, xử lý trả kết cho view tương ứng - Model: Là thể lớp CModel được dùng để biểu diễn liệu, quy tắc biểu diễn liệu mối quan hệ chúng Mỗi model biểu diễn đối tượng liệu đơn Nó hàng bảng trường HTML form Mỗi trường liệu tương ứng với thuộc tính model Trong Yii có loại Model: Cform CactiveRecord Cả hai lớp Cmodel o Cform: sử dụng để biểu diễn liệu thu thập từ người dùng thông qua form o Cactive Record: sử dụng Active Record design pattern (Đối tượng truy cập liệu trừu tượng) để biểu diễn liệu bảng CSDL - View: Là file PHP chủ yếu chứa thành phần giao diện người dùng Form, HTML,…View render action hiển thị kết đến người dùng với liệu truyền từ Controller Trong View chứa vòng lặp,cấu trúc rẽ nhanh thường đơn giản Trong View trực tiếp đọc liệu từ Model điều khuyến cáo nên hạn chế theo tinh thần phân chia logic mơ hình MVC - Layout: Là view đặc biệt Yii Nó quy định giao diện, bố cục chung cho trang Trong Layout , view action thực truyền vào qua biến $content - Widget: thể lớp Cwidget lớp Cwidget Widget chủ yếu dùng để tạo giao diện Widget thường dùng để tạo đối tượng giao diện tương đối phức tạp ClistView, CdetailedView, CgridView, Calendar, … Widget tạo tiện dụng cho người phát triển, giúp việc sử dụng lại code thực dễ dàng hiệu nhiều 2.3.Luồng hoạt trộng Yii Project H39: Luồng hoạt động ứng dụng Yii - Khi có request từ người dùng, file bootrap index.php thực thi tạo đối tượng Cwebapplication Đối tượng làm nhiệm vụ quản lý controller component - Đối tượng Webapp xác định thông tin chi tiết yêu cầu người dùng thông qua component request - Đối tượng Webapp xác định controller action gọi đến thông qua component URL Manager - Sau xác định controller action , Webapp gọi đến controller action Một thể Controller tạo Trước action thực thi, controller tạo thực thi lọc tương ứng với action Nếu thỏa mãn điều kiện lọc action thực thi Ngược lại, khơng thỏa mãn u cầu có thơng báo lỗi - Khi thực action, action đọc liệu từ model render đến view truyền liệu đến view View đọc liệu từ model - View thực thi widget - View render nhúng vào layout TÀI LIỆU THAM KHẢO Bài giảng mơn Phân tích thiết kế hướng đối tượng thầy Nguyễn Hữu Đức Sách “Phát triển hệ thống hướng đối tượng với UML 2.0 C++” thầy Nguyễn Văn Ba Sách “Phân tích thiết kế Hướng đối tượng sử dụng UML “ thầy Đoàn Văn Ban ... học nhà trường,chúng em thực đề tài phân tích thiết kế website hỗ trợ học tập trường học để làm 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 đề tài gần gũi đưa vào áp dụng... Thường xuyên 2.1.6 Xem kết học tập Tên UC Xem Kết học tập Tác nhân Học sinh Mô tả Học sinh xem kết học tập Sự kiện kích hoạt Học sinh chọn chức xem kết học tập Điều kiện tiên Học sinh đăng nhập thành... khóa học 3.1.3 Lớp học -Lớp học thể đối tượng học -Các thuộc tính lớp học thể bảng : Tên thuộc tính Mabh Tenbh Lythuyet Baitap Huongdangiaibt Mơ tả Mã học Tên học Phần lý thuyết học Phần tập Hướng

Ngày đăng: 13/03/2014, 19:06

Từ khóa liên quan

Mục lục

  • LỜI MỞ ĐẦU

  • PHẦN I: KHẢO SÁT NGHIỆP VỤ

    • 1. Mô tả chung về hệ thống nghiệp vụ

    • 2. Đặc tả các quy trình nghiệp vụ

      • 2.1. Xem bài học

      • 2.2. Làm bài test

      • 2.3. Thêm khóa học mới

      • 2.4. Thêm bài học mới

      • 2.5. Thêm bài test mới

      • 3. Mô hình hóa các lớp nghiệp vụ

        • 3.1. Xác định các lớp nghiệp vụ

          • 3.1.1. Lớp User

          • 3.1.2. Lớp Khóa học

          • 3.1.3. Lớp bài học

          • 3.1.4. Lớp bài test

          • 3.1.5. Lớp roles

          • 3.1.6. Lớp Điểm

          • 3.1.7.

          • 3.2. Sơ đồ các lớp nghiệp vụ của hệ thống

          • PHẦN II: PHÂN TÍCH HỆ THỐNG

            • 1. Các tác nhân của hệ thống

              • 1.1. Học sinh

              • 1.2. Giáo viên

              • 1.3. Quản trị hệ thống

              • 2. Phân tích các chức năng của hệ thống

                • 2.1. Các chức năng đối với tác nhân là học sinh

                  • 2.1.1. Đăng nhập

                  • 2.1.2. Xem khóa học

Tài liệu cùng người dùng

Tài liệu liên quan