Đề tài Phân tích thiết kế hệ thống phần mềm dạy học ngôn ngữ lập trình C#

Tài liệu Đề tài Phân tích thiết kế hệ thống phần mềm dạy học ngôn ngữ lập trình C#: ĐỂ TÀI: PHÂN TÍCH THIẾT KẾ HỆ THỐNG PHẦN MỀM DẠY HỌC NGÔN NGỮ LẬP TRÌNH C# [Year] TAM-THU-YEN SPKTHY [Pick the date] LỜI MỞ ĐẦU Cuộc sống ngày càng hiện đại cùng với sự phát triển của KHKT, mọi thứ diễn ra với tốc độ chóng mặt, đặt ra yêu cầu bức thiết về công nghệ và chất lượng sản phẩm cho mọi ngành, mọi nghề, mọi lĩnh vực. Trong tiến trình phát triển của xã hội, CNTT là một trong những ngành đi đầu trong việc đổi mới công nghệ, là ngành đón đầu trên con đường bước vào kỷ nguyên mới _ kỷ nguyên phát triển của thế giới CNTT. Hiện nay CNTT được đem vào sử dụng cho tất cả các bộ, ngành và đem lại hiệu quả rất cao. Đặc biệt nó là nhu cầu không thể lại thiếu được trong sự phát triển kinh tế, các dịch vụ thương mại điện tử, bưu chính viễn thông, các hình thức trao đổi thông tin, dịch vụ thị trường ảo, xí nghiệp ảo trên mạng Internet…Vấn đề đặt ra là phải vận dụng và khai thác CNTT vào từng lĩmh vực như thế nào để đem lại hiệu quả cao nhất và giá cả p...

pdf46 trang | Chia sẻ: haohao | Lượt xem: 1073 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Đề tài Phân tích thiết kế hệ thống phần mềm dạy học ngôn ngữ lập trình C#, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
ĐỂ TÀI: PHÂN TÍCH THIẾT KẾ HỆ THỐNG PHẦN MỀM DẠY HỌC NGÔN NGỮ LẬP TRÌNH C# [Year] TAM-THU-YEN SPKTHY [Pick the date] LỜI MỞ ĐẦU Cuộc sống ngày càng hiện đại cùng với sự phát triển của KHKT, mọi thứ diễn ra với tốc độ chóng mặt, đặt ra yêu cầu bức thiết về công nghệ và chất lượng sản phẩm cho mọi ngành, mọi nghề, mọi lĩnh vực. Trong tiến trình phát triển của xã hội, CNTT là một trong những ngành đi đầu trong việc đổi mới công nghệ, là ngành đón đầu trên con đường bước vào kỷ nguyên mới _ kỷ nguyên phát triển của thế giới CNTT. Hiện nay CNTT được đem vào sử dụng cho tất cả các bộ, ngành và đem lại hiệu quả rất cao. Đặc biệt nó là nhu cầu không thể lại thiếu được trong sự phát triển kinh tế, các dịch vụ thương mại điện tử, bưu chính viễn thông, các hình thức trao đổi thông tin, dịch vụ thị trường ảo, xí nghiệp ảo trên mạng Internet…Vấn đề đặt ra là phải vận dụng và khai thác CNTT vào từng lĩmh vực như thế nào để đem lại hiệu quả cao nhất và giá cả phù hợp nhất. Trước tầm quan trọng của CNTT như vậy, chúng tôi những sinh viên năm thứ hai khoa Công Nghệ Thông Tin, muốn thử sức mình với tạo ra một phần mềm dạy học trên máy vi tính góp phần vào việc nâng cao chất lượng dạy và học trong nền giáo dục _ một đề tài có tính thực tế cao. Đề tài của chúng tôi là dạy và học ngôn ngữ lập trình C# trên máy tính cá nhân. Đề tài được phát triển trên ngôn ngữ lập trình C# và CSDL Microsoft SQL Server 2000. Chúng tôi xin chân thành cảm ơn sự hướng dẫn của thầy Nguyễn Minh Quý và các thầy cô giáo trong khoa đã giúp đỡ chúng em hoàn thành đề tài này. Ngoài ra chúng tôi xin chân thành cảm ơn các chị lớp ĐH HCKT TINK3 đã giúp đỡ, cung cấp cho chúng tôi nhiều thông tin để chương trình của chúng tôi được gần gũi với thực tế hơn. Do lần đầu tiên làm một chương trình mang tính ứng dụng thực tế nên còn nhiều sai xót, mong được sự thông cảm và đóng góp ý kiến của các bạn. MỤC LỤC: NỘI DUNG Trang Lời mở đầu………………………………………………………… 3 PHẦN I: KHẢO SÁT HIỆN TRẠNG VÀ PHÂN TÍCH 4 I. Tình hình, nhu cầu và xu hướng phát triển của nền giáo dục: II. Yêu cầu và mục tiêu của phần mềm III. Nguồn và phương pháp điều tra IV. Phạm vi và hạn chế của phần mềm V. Phê phán hiện trạng PHẦN II: PHÂN TÍCH CHỨC NĂNG CỦA HỆ THỐNG 8 I. Biểu đồ phân cấp chức năng của hệ thống I.1.Phân tích biểu đồ phân cấp chức năng I.2. Biểu đồ phân cấp chức năng II. Biểu đồ luồng dữ liệu II.1.Biểu đồ luồng dữ liệu II.2. Phân tích biểu đồ luồng dữ liệu PHẦN III: 17 VẼ BIỂU ĐỒ ERD VÀ LƯỢC ĐỒ QUAN HỆ III.1 Biểu đồ ERD III.2 Lược đồ quan hệ PHẦN IV: THIẾT KẾ GIAO DIỆN 21 KÊTLUẬN 31 PHẦN I: KHẢO SÁT HIỆN TRẠNG VÀ PHÂN TÍCH YÊU CẦU NGƯỜI DÙNG I. Tình hình, nhu cầu và xu hướng phát triển của nền giáo dục: Hiện nay, nền giáo dục đang là mối quan tâm hàng đầu của xã hội. Chất lượng dạy và học hiện nay đang đi đến đâu? Dạy và học như thế nào cho hiệu quả? Là câu hỏi đặt ra không chỉ cho từng gia đình, từng cấp, từng trường, cho ngành giáo dục mà cho toàn xã hội. Dạy học là một hoạt động giao tiếp giữa thầy và trò. Người thầy truyền thụ (dạy) và học trò tiếp nhận (học) tri thức. Mục tiêu là chuyển được tri thức cho học trò có thể phát triển thêm khả năng của mình. Dạy học cũng là hoạt động được tiếp cận trên nhiều phương diện nhằm đáp ứng các vấn đề sau: Dạy cái gì? Nội dung của tri thức được truyền tải bởi chuyên gia của môn học Dạy cho ai? Cách thức dạy được xác định cho từng loại đối tượng học trò dựa trên cơ sở về tâm lý nhận thức, đó chính là mô hình học trò. Dạy như thế nào? Áp dụng như thế nào các phương pháp sư phạm phù hợp với tâm lý nhận thức? Để đưa ra một chiến lược sư phạm tốt áp dụng lên một học sinh cụ thể là một điều khó khăn mà phải có kinh nghiệm nghề nghiệp tốt. Dạy bằng gì? Dạy dưới sự trợ giúp của các phương tiện âm thanh, hình ảnh trực quan đảm bảo cho việc dạy và học của thầy và trò. Để sự trợ giúp này có hiệu quả ta phải có một mô hình giao diện. Dạy ở đâu? Nói đến hình thể văn hóa xã hội, nơi ta tiến hành hoạt động dạy học, “vị trí” là một nhân tố của sự phát triển khi ta đề cập một sự nhận thức bởi sự tương tác giữa chủ thể và môi trường học để đảm bảo tính thoải mái mà học có hiệu quả. Tại sao dạy? Mục đích cần đạt tới, từ đó ta có một mô hình kiểm tra, đánh giá về khả năng và chất lượng nhận thức của học sinh. Việc thay đổi phương thức dạy và học cho phù hợp với xu hướng phát triển của xã hội là rất cần thiết. CNTT hiện nay đang là ngành mũi nhọn của xã hội, vì vậy nó đã và đang được đưa vào phổ cập giáo dục, dần dần trở thành môn học chính, và đang được nâng cao chất lượng đào tạo trong các trường đào tạo chuyên nghiệp. Tin học trong dạy học có thể được tiếp cận trên nhiều phương diện: là công cụ trong môn học (tính toán, tài liệu…), là môn học (học lập trình, học sử dụng máy…), là công cụ trong dạy học (để học, phát hiện, xử lý…). Xét về phương diện nào thì Tin học cũng có khả năng tác động đến học trò, đến giáo viên và đến việc quản lý. Vấn đề mà chúng ta quan tâm ở đây chính là công cụ trợ giúp dạy và học. Trước những nhu cầu cấp thiết của nền giáo dục, đã có rất nhiều phần mềm ứng dụng phục vụ cho việc dạy và học ra đời và đem lại cho nền giáo dục một phương thức dạy và học hoàn toàn mới và tiến bộ. Ứng dụng công nghệ vào dạy và học ngày càng được áp dụng rộng rãi. Trong đó những phần mềm dạy học từ xa, dạy học trực tuyến… là những phần mềm thông dụng và được sử dụng rộng rãi bởi khả năng đáp ứng nhu cầu bạn đọc và phù hợp với xu thế chung của thời đại. Nhằm góp phần đáp ứng nhu cầu học từ xa cho bạn đọc, chúng tôi quyết định xây dựng phần mềm dạy học với sự trợ giúp của máy tính cá nhân sẽ cung cấp cho người học những kiến thức cần thiết của việc học ngôn ngữ lập trình. II. Yêu cầu và mục tiêu của phần mềm II.1. Yêu cầu: Việc lựa chọn hệ quản trị CSDL phải cho phép xây dựng ngân hàng dữ liệu thích ứng với mô hình thông tin đa dạng và phong phú, đáp ứng nhu cầu và ứng dụng thực tế. Dữ liệu bài học phải đầy đủ kiến thức, sắp xếp theo trình tự từ phần, chương, bài, mục…dễ hiểu, chi tiết…để người học có thể tiếp thu bài học một cách nhanh và có hiệu quả nhất. Song song với việc chọn hệ quản trị CSDL, xây dựng nội dung bài học thì việc lựa chọn ngôn ngữ lập trình tương thích với nó là rất quan trọng. Nó đòi hỏi phải đảm bảo tính chặt chẽ, hiệu quả mà yêu cầu hệ thống đặt ra. Vì vậy chúng tôi đã chọn ngôn ngữ lập trình C# để phục vụ cho việc lập trình của hệ thống. Đây là ngôn ngữ mới, có tính năng tự động cao, giao diện đẹp, khả năng kết nối, truy cập các tệp CSDL đơn giản và dễ làm. II.2. Mục tiêu: - Đáp ứng nhu cầu học từ xa của bạn đọc - Tiện tra cứu và dễ sử dụng - Tiết kiệm thời gian cho người học - Có thể học tại nhà - Dễ học, trực quan với giao diện đẹp… III. Nguồn và phương pháp điều tra III.1.Nguồn điều tra - Từ nhu cầu xã hội được tìm hiểu từ thực tế và qua mạng Internet. - Từ bạn đọc và từ bản thân là các sinh viên _ người có nhu cầu học. - Từ các phần mềm dạy học đã được xây dựng và đưa vào ứng dụng. Đó là các chương trình dạy học từ xa và dạy học trực tuyến trên Internet, các đĩa mềm học FPT và các phần mềm học được cài trên máy tính khác. - Từ kinh nghiệm của người đã xây dựng phần mềm (Các chị lớp TK3ĐHHCKT với đề tài nghiên cứu khoa học: thiết kế phần mềm dạy học dùng ASP)… III.2. Phương pháp điều tra - Nghiên cứu tài liệu thu thập được (quy cách và các bước xây dựng phần mềm) - Quan sát, phân tích hệ thống thông tin đã thu thập được - Khai thác thông tin từ bạn đọc về nhu cầu từ đó xây dựng chức năng cho hệ thống. - Quan sát giao diện giữa hệ thống phần mềm với người dùng, từ đó định hình để tìm ra cách tốt nhất tạo ra các giao diện thân thiện dễ chịu cho người sử dụng. IV. Phạm vi và hạn chế của phần mềm Do khả năng và thời gian có hạn nên trong phần mềm mà chúng tôi phân tích thiết kế chỉ sử dụng cho máy tính cá nhân. Do đó phần mềm của chúng tôi đáp ứng được cho bạn đọc: 1. Kiến thức của bài học 2. Quản lý, đăng nhập vào hệ thống phần mềm để học 3. Hiển thị cho bạn đọc nội dung bài học 4. Cho phép người đọc tìm kiếm nhanh nội dung học cần tra cứu 5. Kiểm tra lại bài học thông qua các bài trắc nghiệm 6. Đánh dấu lại bài hôm nay học để hôm sau học tiếp từ phần đó Trong phần mềm dạy học này, chúng tôi sẽ trình bày về một ngôn ngữ lập trình. Hiện nay có rất nhiều ngôn ngữ lập trình mạnh dành cho các nhà lập trình. Xong, để trở thành một lập trình viên giỏi không nhất thiết phải biết nhiều ngôn ngữ mà ta chỉ cần nắm chắc một ngôn ngữ và cơ sở kỹ thuật lập trình, nắm chắc thuật toán, đảm bảo bạn đã có thể trở thành một lập trình viên. Vậy vấn đề chọn ngôn ngữ nào cho mình để chuyên sâu về nó? Qua tìm hiểu, đứng trên phương diện là những người thiết kế và là những sinh viên, chúng tôi thống nhất dạy ngôn ngữ lập trình C#. Đây là một trong những ngôn ngữ mạnh nhất được sử dụng hiện nay: Chỉ khoảng hơn 80 từ khoá và gần 20 kiểu dữ liệu được xây dựng sẵn, C# bao gồm tất cả những hỗ trợ cho cấu trúc, thành phần component, lập trình hướng đối tượng… được xây dựng trên nền tảng của hai ngôn ngữ mạnh là C++ và Java. V. Phê phán hiện trạng - Tại một thời điểm chỉ có thể học được một ngôn ngữ lập trình. - Nếu có thắc mắc trong khi học thì học sinh phải tự xem lại kiến thức bài và tự trả lời vì hệ thống không có phần trả lời trực tuyến cho bạn đọc. - Người học không có quyền thay đổi dữ liệu bài học do hệ thống đã soạn thảo sẵn. PHẦN II: PHÂN TÍCH CHỨC NĂNG CỦA HỆ THỐNG I.Biểu đồ phân cấp chức năng của hệ thống I.1. Phân tích: Chúng tôi xây dựng phần mềm nhằm phục vụ cho hai đối tượng giáo viên và sinh viên (tức người dạy và người học). a.Đối tượng giáo viên: Phần mềm có tính năng mở, giáo viên là người quản trị có quyền cập nhật dữ liệu, thay đổi nội dung bài học. b. Đối tượng học sinh: Phần mềm cung cấp cho sinh viên và học sinh các bài học lý thuyết và bài tập thực hành sau mỗi bài học. Ngoài ra người học có thể được xem lại phần tóm lược nội dung bài học sau mỗi chương và được thử sức mình qua những bài Test trắc nghiệm với giao diện trực quan, dễ sử dụng qua mỗi bài học. Đáp ứng yêu cầu của hai đối tượng trên, chúng tôi phân hệ thống ra làm 6 chức năng chính sau:  Soạn: Phần này cho phép người quản trị (giáo viên) tổ chức hệ thống bài học. Chức năng này bao gồm các modul sau: - Soạn nội dung bài học: Người giáo viên sẽ soạn nội dung bài học theo trình tự từ phần -> chương -> bài -> nội dung chi tiết cho bài giảng, ví dụ minh hoạ và bài tập (có đáp án). - Soạn bộ Test: Giáo viên sẽ soạn bộ câu hỏi trắc nghiệm và đáp án cho mỗi bài học. Điều đó giúp cho người học có thể kiểm tra lại kiến thức của mình tiếp thu sau mỗi bài học. - Cập nhật: Ngoài ra giáo viên có thể bổ sung, sửa đổi, hoặc xoá nội dung không cần thiết trong phần soạn của mình. Chức năng này được thực hiện ở trong cơ sở dữ liệu trong hệ quản trị. Chức năng này không được hiển thì ra ngoài.  Quản lý: Trong hệ quản trị cơ sở dữ liệu hệ thống đã phân quyền cho giáo viên và cho người học. Gồm có quản lý người dùng (giáo viên và người học) và cho họ được đăng nhập vào hệ thống. - Quản lý người dùng: Giáo viên: có quyền truy cập tới mọi chức năng của hệ thống, đặc biệt có quyền truy cập tới chức năng Soạn để thay đổi nội dung bài học và soạn bộ Test mới. Người học chỉ có quyền truy cập chức năng hiển thị nội dung bài học để học, chức năng tìm kiếm nhanh theo cụm từ khoá để lấy ra nội dung cần tra cứu và tham gia vào bài test trắc nghiệm để kiểm tra lại kiến thức và chức năng đánh dấu bài học mà không có quyền truy nhập vào chức năng soạn bài học hay truy nhập vào cơ sở dữ liệu.  Hiển thị: Sau khi người dùng đăng nhập được vào hệ thống để học thì hệ thống có chức năng hiển thị cho người học: - Hiển thị đề mục: Các đề mục của toàn bộ môn học sẽ được hiển thị ở phần bên trái của màn hình được tổ chức theo dạng hình cây để khi người học muốn học phần nào thì chỉ cần kích hoạt vào đề mục đó. - Hiển thị nội dung: Sau khi người học kích hoạt vào đề mục muốn học thì nội dung bài học của phần đó sẽ được hiển thị chi tiết ra màn hình.  Tìm kiếm nhanh: Để hỗ trợ người học truy cập nhanh đến nội dung học cần tra cứu theo ý muốn, phần này cung cấp chức năng tìm kiếm nhanh bằng các cụm từ khoá có trong nội dung cần tra cứu. Có thể trong khi đang học người học muốn tìm đến một phần nào đó để xem thêm thì cũng có thể dùng đến chức năng này để tìm kiếm.  Trắc nghiệm: Sau khi người học học xong nội dung của một bài học thì có thể kiểm tra lại kiến thức của mình bắng cách thử sức mình với các câu hỏi trắc nghiệm của hệ thống đã được soạn thảo sẵn. Sau khi người học kích hoạt vào phần trắc nghiệm thì hệ thống sẽ: - Hiển thị câu hỏi: Một chuỗi các câu hỏi của bài học dưới hình thức tích vào đáp án ĐÚNG – SAI hoặc chọn một đáp án đúng nhất trong các đáp án mà chương trình đưa ra. - Hiển thị thời gian: Hệ thống sẽ quy định một lượng thời gian phù hợp cho người học làm bài. Hệ thống chỉ hiển thị nội dung câu hỏi trong thời gian này. - Hiển thị điểm: Sau khi người học thực hiện xong bài trắc nghiệm của mình rồi thì hệ thống sẽ đưa ra điểm mà người học đạt được và đáp án đúng của các câu hỏi.  Đánh dấu: Khi đang học dở mà không muốn học nữa thì chức năng này có tác dụng đánh dấu lại phần bài học mà người học đang học của bài hôm đó (nếu người học muốn đánh dấu) để hôm sau học sẽ biết mình đang học đến đâu và vào học tiếp nội dung đang học dở. I.2. Biểu đồ phân cấp chức năng: Soạn DẠY - HỌC Quản lý Hiển thị Tìm kiếm Đánh dấu Soạn nội dung Soạn bài test Cập nhật QL người dùng Đăng nhập HT đề mục HT nội dung HT câu hỏi QL thời gian HT điểm Trắc nghiệm II.Biểu đồ luồng dữ liệu II.1. Mức ngữ cảnh: II.2. Mức đỉnh: GIÁO VIÊN NGƯỜI HỌC Y/C đánh dấu bài học Thông tin đăng nhập Y/C trắc nghiệm Y/C tìm kiếm Y/C bài học Kết quả đăng nhập Kết quả phản hồi Nội dung bài test Thông tin đăng nhập DẠY - HỌC Nội dung bộ Test Nội dung các bài học Thông tin cập nhập Kết quả trả ra Kết quả đăng nhập NGƯỜI HỌC GIÁO VIÊN NGƯỜI HỌC GIÁO VIÊN NGƯỜI HỌC SOẠN DL Bộ Test DL bài học HIỂN THỊ Yêu cầu bài học KQ thành công hay thất bại Thông tin cập nhật Nội dung bộ test Nội dung các bài học Kết quả báo ra Thông tin người dùng mới Kết quả đăng nhập Thông tin đăng nhập (U, P) Nội dung bài học Yêu cầu bài học Nội dung bài học DS người học QUẢN LÝ Nội dung trắc nghiệm Yêu cầu tìm kiếm Kết quả tìm kiếm Yêu cầu đánh dấu Kết quả đánh dấu Nội dung bài trắc nghiệm Kết quả tìm kiếm Yêu cầu trắc nghiệm Yêu cầu tìm kiếm Kết quả đăng nhập Thông tin đăng nhập user DS giáo viên TÌM KIẾM TRẮC NGHIỆM ĐÁNH DẤU Y/C trắc nghiệm Yêu cầu đánh dấu Kho lưu đánh dấu Dữ liệu bộ test Dữ liệu bài học Kết quả đánh dấu GIÁO VIÊN SOẠN NỘI DUNG CẬP NHẬT SOẠN BỘ TEST Kết quả soạn Nội dung chi tiết bài học Kết quả cập nhật Thông tin cập nhật Dữ liệu bài học Dữ liệu bộ test Kết quả trả ra Nội dung các bài test II.3.1. Phân dã chức năng soạn: II.3. Mức dưới đỉnh: II.3.2. Phân dã chức năng quản lý: QUẢN LÝ NGƯỜI DÙNG ĐĂNG NHẬP NGƯỜI HỌC GIÁO VIÊN Kết quả đăng nhập Kết quả đăng nhập Thông tin đăng nhập User DS giáo viên Danh sách người học Kết quả trả ra Thông tin đăng nhập Cập nhật người học HIỂN THỊ ĐỀ MỤC H.THỊ NỘI DUNG NGƯỜI HỌC GIÁO VIÊN Yêu cầu bài học Yêu cầu bài học Nội dung bài học Dữ liệu bài học Nội dung bài học HIỂN THỊ CÂU HỎI QL THỜI GIAN HIỂN THỊ ĐIỂM NGƯỜI HỌC GIÁO VIÊN Thời gian làm bài Điểm và đáp án Y/C hiển thị điểm Nội dung câu hỏi Yêu cầu trắc nghiệm Dữ liệu bộ test Yêu cầu trắc nghiệm Nội dung câu hỏi Y/C hiển thị điểm Điểm và đáp án Thông tin về thời gian III.3.4. Phân dã chức năng trắc nghiệm: II.3.3. Phân dã chức năng hiển thị: III.5. Phân tích biểu đồ luồng dữ liệu Mức ngữ cảnh: Chức năng của hệ thống là DẠY - HỌC. Đối tác của hệ thống gồm có giáo viên (tức người dạy) và người học. Người học và giáo viên đưa ra các yêu cầu của mình đối với hệ thống như: Yêu cầu đăng nhập vào hệ thống , yêu cầu bài học, yêu cầu tìm kiếm hay trắc nghiệm…Sau khi nhận được yêu cầu từ phía người dùng hệ thống sẽ trả ra kết quả đăng nhập (thành công hay không thành công), trả ra nội dung bài học… mà người dùng yêu cầu. Mức đỉnh: Mức ngữ cảnh của hệ thống có thể phân rã ra thành các chức năng con như: Soạn, quản lý, hiển thị, đánh dấu, trắc nghiệm và tìm kiếm. Giáo viên đưa vào hệ thống phần mềm những bài giảng chi tiết, nội dung các bài trắc nghiệm để làm dữ liệu bài học. Người học không thể vào chức năng này của hệ thống. Khi người dùng muốn sử dụng phần mềm để học thì họ phải đăng nhập vào hệ thống. Họ có thể vào các chức năng của hệ thống như: hiển thị ngay nội dung bài học mà họ muốn học. Hoặc họ có thể vào ngay các chức năng khác hoặc đang học có thể yêu cầu các chức năng này như: Yêu cầu tìm kiếm để tìm nội dung mình cần tra cứu, yêu cầu trắc nghiệm để kiểm tra lại kiến thức hay yêu cầu đánh dấu bài học của ngày hôm đó lại… Sau đó hệ thống sẽ tự động vào các kho dữ liệu để lấy dữ liệu trả ra kết quả mà người dùng yêu cầu. Mức dưới đỉnh: Chức năng Soạn được phân rã ra thành các chức năng: Soạn nội dung, soạn bộ test và cập nhật. Sau khi người giáo viên soạn nội dung bài giảng thì hệ thống sẽ đưa nó vào kho dữ liệu bài học. Những thay đồi, cập nhật, bổ sung những thiếu xót của bài học sẽ được giáo viên sửa đổi và được hệ thống cập nhật ngay vào kho dữ liệu này. Nội dung các bài test trắc nghiệm (bao gồm câu hỏi và đáp án cho mỗi câu) sẽ được cho vào dữ liệu bộ test. Chức năng quản lý được phân dã thành chức năng quản lý người dùng và chức năng đăng nhập. Chức năng quản lý người dùng chỉ cho phép người dùng truy nhập vào hệ thống để học mà không thể thay đồi ở chức năng soạn được. Sau khi người dùng đăng nhập tên và password của mình vào hệ thống thì hệ thống sẽ vào kho danh sách người dùng tìm xem trong kho dữ liệu đã có người này chưa nếu chưa có thì sẽ cập nhật, bổ sung người này vào kho danh sách người dùng, nếu có rồi thì cho phép người đó vào học. Chức năng hiển thị được phân dã thành chức năng hiển thị đề mục và chức năng hiển thị nội dung bài học. Các đề mục của môn học sẽ được hiển thị trên giao diện. Người học chỉ cần kích vào phần mình muốn học sau đó hệ thống sẽ hiển thị toàn bộ nội dung đó ra theo yêu cầu của người dùng Chức năng trắc nghiệm: Sau khi người học có yêu cầu trắc nghiệm thì hệ thống sẽ hiển thị câu hỏi của bài học đó ra với một lượng thời gian đã được định sẵn để làm bài. Học sinh chỉ được làm bài đó với lượng thời gian đã được quy định đó để làm bài học đó. Hết thời gian đó thì hệ thống sẽ hiển thị điểm cho người học. Người học cũng có thể yêu cầu hệ thống hiển thì đáp án nếu cần. PHẦN III.BIỂU ĐỒ ERD VÀ CÁC LƯỢC ĐỒ QUAN HỆ 1.BIỂU ĐỒ ERD: 2.VẼ CÁC BẢNG QUAN HỆ: Căn cứ vào các thuộc tính ,các thông tin ,các tài liệu cần cho hệ thống dạy học ta sẽ cần có 7 bảng quan hệ sau đây: 1)BẢNG GIÁOVIÊN: TblGiaoviên STT FIELDS TYPE WIDTH DESCRIPTION 1 USER VARCHAR 50 TÊN NGƯỜI DÙNG 2 PASSWORD VARCHAR 50 MẬT KHẨU 2)BẢNG SNHVIÊN: TblSinhviên STT Fields Type Width Description 1 User varchar 50 Tên ngươi dùng 2 Password varchar 50 mật khẩu 3)Bảng BàiGiảng: TblBàigiảng STT Fields Type Width Description 1 Mãbài char 10 Mã của bài học 2 Tênbài nvarchar 50 Tên bài 3 User varchar 50 Mã giáo viên soạn 4)Bảng ĐềMục: TblĐềMục STT Fields Type Width Desciption 1 Mã bài Char 10 Mã bài học 2 Tên bài nvarchar 50 Tên bài học 5)Bảng Bộtest: TblBộtest S T T Fields Type Width Description 1 Mãbài Char 10 Mã bài học 2 SốCH Int 4 Số câu hỏi 3 NDCh nvarchar 500 Nội dung câu hỏi 4 Đán Nvarchar 500 Đáp án 5 User varchar 50 Tên giáo viên soạn 6)Bảng Kholưuđánhdấu: TblKholưuđánhdấu STT Fields Type Width Description 1 User Varchar 50 Tên người dùng 2 Password Varchar 50 Mật khẩu 3 TênĐMDD Nvarchar 50 Tên đề mục đánh dấu 7)Bảng Quyềnhạn: TblQuyềnhạn STT Fields Type Width Description 1 User Varchar 50 Tên người dùng 2 Password Varchar 50 Mật khẩu 3 Quyềnhạn Nvarchar 50 Quyền hạn 3.RELATIONSHIPS Dưới đây là mô hình quan hệ giữa các bảng: PHẦN IV:THIẾT KẾ GIAO DIỆN TỔNG QUAN VỀ THIẾT KẾ GIAO DIỆN CHO PHẦN MỀM Phần thiết kế giao diện là phần rất quan trọng cho phần mềm dạy học của chúng tôi. Giao diện phải đáp ứng được yêu cầu tạo cảm giác thân thiện, khoa học, dễ sử dụng và trực quan đối với người dùng. Trước những yêu cầu đó chúng tôi đã thiết kế một số Form chính cho phần mềm như sau: Đầu tiên là Form Đăng nhập yêu cầu người dùng nhập thông tin Username và Passwork để đăng nhập vào hệ thống. Form1: đăng nhập Sau khi thông tin được người dùng nhập vào và click vào nút OK, Form sẽ có chức năng ánh xạ thông tin đã nhập với danh sách người dùng và bảng phân quyền trong CSDL và trao quyền đã được cấp do admin cho người dùng. Đối với những người dùng mới đăng nhập vào hệ thống, hệ thống sẽ tự động ghi lại username và passwork vào danh sách người dùng đồng thời cấp quyền với phạm vi của người học. Khi nhấn OK một giao diện người học sẽ hiện ra ( Form2). Nút Cancel để người dùng nhập lại thông tin đăng nhập truy cập vào hệ thống. Form2: giao diện người dùng Form2 này có chức năng tạo giao diện thân thiện giữa người dùng với các chức năng của hệ thống:  Hiển thị nội dung bài học:Form có hai listbox, listbox1 chứa các đề mục và listbox2 chứa nội dung của bài học. Khi người dùng click vào tên một bài học bên listbox chứa đề mục thì hệ thống sẽ ánh xạ đến bảng bài giảng và listbox 2 sẽ hiển thị nội dung bài học đã được chọn. chứcnăng này đáp ứng tính trực quan,dễ sử dụng và khoa học,tạo cảm giác thân thiện với người dùng phần mềm. Dưới đây là giao diện Form2: . Khi click vào nút file một menu sẽ được hiện ra như hình dưới đây: Chức năng chứa trong các menu trên dành cho người sử dụng có quyền admin gồm tạo mới new để soạn thảo, mở file dữ liệu, save và save as, exit để thoát khỏi chức năng soạn, cập nhật của hệ thống Với người dùng có quyền admin thì nút file mới được kích hoạt và hiện rõ trên form. Còn nếu không có quyền admin thì file này sẽ không được kích hoạt. Khi nút edit được click , một menu như sau sẽ được hiển thị: Nút edit dành cho cả admin và người học. Đối với admin thì tất cả các chức năng đều được kíck hoạt còn nếu là người học thì chỉ có chức năng Undo, Redo, copy. Undo : bỏ thao tác vừa thực hiện Redo : làm lại thao tác vừa thực hiện Copy : sao chép nội dung đã được bôi đen Paste : dán nội dung đã copy hoặc cut Cut : cắt nội dung đã được bôi đen Select all : chọn tất cả Nút này hỗ trợ cho người học một số thao tác như đã nói trên nhằm làm cho quá trình sử dụng phần mềm thêm hiệu quả và tiện dụng. Còn đối với admin thì ngoài những quyền giống như của người học thì nó còn hỗ trợ trong quá trình soạn thảo. Nút thứ ba là nút đánh dấu, khi nút này được kíck hoạt thì một menu hiện ra như hình dưới. Menu chứa thông báo “bạn muốn đánh dấu bài?” Dưới đây là hình ảnh cụ thể: Nếu click vào dòng thông báo trên thì một Form3 hiện ra như sau: Form này có chức năng cho người dùng đánh dấu vào bài học mà họ chọn. Khi thông tin bài được đánh dấu đã nhập xong tại listbox. Nếu nhấn nút Lưu lại thì hệ thống sẽ tự động truy xuất đến kho lưu đánh dấu để lưu lại bài đã đánh dấu trong CSDL. Nếu nhấn nút Bỏ qua thì thao tác trước đó sẽ được huỷ bỏ. Và thoát khỏi Form Đánh dấu này. Nút tiếp theo của Form2 là nút Tìm kiếm. Khi click vào nút tìm kiếm thì hiện ra một thông báo như hình dưới đây: Khi click vào dòng thông báo trên thì Form 4: Tìm kiếm sẽ được hiển thị: Nhập thông tin tìm kiếm vào trong hộp thoại và nhấn OK thì hệ thống sẽ thực hiện tìm kiếm trong CSDL và trả ra kết quả tại Form2, nếu nhấn cancel để thoát khỏi Form tìm kiếm. Nút kế tiếp của Form2 là Trắc nghiệm. Khi click vào nút này một thông báo sẽ được hiển thị như hình dưới : Begin TiÕp tôc? End. Chän tiªu chÝ t×m kiÕm NhËpND t×m HiÓn thÞ kÕt T×m thÊy? Yes No No Yes Néu click vào thông báo trên thì Form5: trắc nghiịem sẽ được hiển thị như sau: Form này thực hiện chức năng cho người học trắc nghiệm . Form có hai listbox như trên, listbox một chứa tên các bài trắc nghiệm. Khi click vào một trong số các bài đó và nhấn nút Bắt đầu thì nội dung bài test sẽ hiện ở listbox2 và bắt đầu tính thời gian làm bài. Trong bài test có các checkbox để cho người học chọn lựa đáp án Trong quá trình làm bài , nếu click vào nút quay lại thì sẽ chọn lại đáp án. Nếu click vào nút câu tiếp thì sẽ chuyển sang câu tiếp theo.Và khi click nút thoát thì sẽ thoat khỏi bài test .Nếu hét thời gian thì tại hộp Điẻm sẽ thông báo điểm số của bạn. Nút cuối cùng là nút trợ giúp. Nếu click vào nút này một menu sẽ hiện ra như sau: Menu gồm có:chức năng tìm kiếm, chỉ mục, và giới thiệu ttổng quan về phầm mềm. Nếu click vào tìm kiếm thì Form tìmkiếm sẽ được hiển thị như phần trên đã nói và thưc hiên chúc năng tìm kiếm. Nếu click vào chỉ mục thì sẽ hiển thị chỉ mục để cho bạn chọn bài học. Và click vao Giới thiệu phần mềm sẽ đưa ra một số thông tin về cách sử dụng phần mềm. KẾT LUẬN CHUNG: Trên đây là toàn bộ nội dung của đề tài “ Xây dựng phần mềm dạy học C#” của chúng tôi. Qua quá trình tìm hiểu, khảo sát hiện trạng dạy học trên giảng đường và các phần mềm dạy học đã được xây dựng để rút ra những mục tiêu, yêu cầu cho hệ thống cần xây dựng và những mặt hạn chế vẫn còn tồn tại của các phần mền. Trong quá trình phân tích và vẽ các biểu đồ phân cấp chức năng, biểu đồ luồng dữ liệu,biểu đồ thực thể liên kết, lược đồ quan hệ chúng tôi đã nảy sinh rất nhiều ý tưởng mới cho phần mềm so với những dự kiến ban đầu xong do lượng kiến thức thực tế còn rất hạn chế nên mặc dù đã hết sức cố gắng nhưng chúng tôi chắc chắn là không chánh khỏi có những sai sót trong quá trình thiết kế. Bên cạnh đó, do ngôn ngữ lập trình chưa đủ mạnh và chưa có kinh nghiệm trong quản lý CSDL lên chúng tôi chưa thể viết code cho phần mềm.Mọi thứ mới chỉ là những tài liệu phân tích và thiết kế cho các nhà lập trình chưa có phần mềm chạy thực sự. Đây cũng chính là điểm khiến nhóm chúng tôi cảm thấy không hài lòng nhất của đề tài. Tuy nhiên, do chúng tôi vừa mới làm quen lên mọi thứ còn nhiều ngỡ ngàng, hạn chế là không chánh khỏi. Mong được sự đóng góp ý kiến xây dựng phần mềm ngày càng hoàn thiện và tối ưu hơn của thầy cô và các bạn! Chúng tôi xin chân thành cảm ơn! Nhóm thực hiện **************** HẾT****************

Các file đính kèm theo tài liệu này:

  • pdfĐồ án tốt nghiệp - Phân tích thiết kế hệ thống - PHẦN MỀM DẠY HỌC NGÔN NGỮ LẬP TRÌNH C#.pdf
Tài liệu liên quan