TỔNG QUAN VỀ HỆ THỐNG
GIỚI THIỆU CHUNG
Hệ thống quản lý giáo dục và đào tạo trên mạng là một hệ thống phục vụ cho mục đích đào tạo và học tập trực tuyến Tham gia vào hệ thống, người dùng có thể theo đuổi các khóa học với những chủ đề bất kỳ mà họ muốn Hệ thống cũng cung cấp các tính năng quản lý học viên, việc học tập và thực hiện các kỳ thi, các bài kiểm tra trên mạng. Đào tạo trực tuyến cho phép cung cấp nội dung các chương trình đào tạo, thi và kiểm tra, theo dõi tình hình học tập của học viên thông qua việc kết nối mạng, quá trình quản lý và kiểm tra trực tuyến cũng được thực hiện trên mạng máy tính.
Học tập trực tuyến là quá trình học tập, tham khảo và đọc tài liệu, giáo trình, thông qua mạng internet Người sử dụng có thể giao tiếp với nhau thông qua mạng máy tính để trao đổi thông tin, trao đổi kinh nghiệm, hỏi đáp thắc mắc với những người khác, thực hiện các bài kiểm tra về các khoá học của mình ngay trên máy tính( test online).
Học tập trực tuyến mang lại hiệu quả cao hơn, giảm các chi phí và tăng khả năng tiếp thu kiến thức Học tập trực tuyến còn giúp mọi người tiếp cận với các nguồn tri thức phong phú, mới và tiếp cận với các công nghệ hiện đại.
Ngày nay, với sự phát triển mạnh mẽ của các ứng dụng máy tính cũng như mạng truyền thông, nhu cầu học tập trực tuyến ngày càng không thể thiếu được đối với tất cả mọi người.
Trong tương lai, việc học tập trực tuyến sẽ trở nên rất phổ biến, vượt qua mọi rào cản về không gian và thời gian cũng như tình trạng kinh tế, xã hội để phổ biến kiến thức cho mọi người.
Trong thời gian làm đồ án tốt nghiệp, em đã xây dựng một hệ thống website phục vụ nhu cầu học tập, tra cứu, trao đổi kiến thức trên mạng với thành phần chính là hệ thống thi trắc nghiệm trực tuyến phục vụ cho nhu cầu học tập,trao đổi, đánh giá của các bạn học sinh và sinh viên.
GIỚI THIỆU E-LEARNING
E-learning đang là một thuật ngữ xuất hiện ngày càng nhiều trong lĩnh vực giáo dục và đào tạo dựa trên công nghệ mạng Internet/Intranet.
E-learning là một hình thức giáo dục và đào tạo dựa trên mạng máy tính trong đó bao gồm: Nội dung sẽ được truyền tải dưới nhiều dạng khác nhau, quản lý nội dung đào tạo, cộng đồng các học viên, những người tham gia xây dựng và phát triển.
E-learning là hình thức truyền tải nội dung bằng phương tiện điện tử qua trình duyệt web, ví dụ như Netscape Navigator, hay Internet Explorer thông qua mạng Internet hay Intranet, hoặc thông qua các phương tiện khác như CD-ROM , DVD, CD, VCD.Việc truyển khai sẽ trở nên dễ dàng và thuận tiện hơn khi chất lượng đường truyền ngày càng tăng, cùng với môi trường trực quan và tương tác tự nhiên trên Web.
Lý do và sự xuất hiện của E-learning?
Khi các công ty trên thế giới phát triển trên quy mô toàn cầu thì các ràng buộc về mặt thời gian và vị trí làm cho việc sử dụng các hình thức đào tạo truyền thống đem lại rất ít hiệu quả Do vậy hiện nay nhiều công ty đã lựa chọn các chương trình đào tạo E-learning để đào tạo nhân viên cho mình.
Với sự phát triển của công nghệ nói chung và Internet nói riêng, những người sử dụng Internet trên khắp thế giới đang nhận ra khả năng của Internet có thể đem lại cho họ tri thức và các kỹ năng cần thiết cho những cơ hội trong thế kỷ 21 E-learning không phải là hình thức đào tạo truyền thống, mà nó đem lại cho mọi người cơ hội học tập nhiều hơn, với chi phí thấp hơn cũng như sự tiện lợi hơn so với những gì mà chúng ta có các đây vài năm.
1.2.2 Những ưu điểm của học tập trực tuyến
Tính mềm dẻo, tính truy cập, tính tiện lợi: Người sử dụng có thể học tập, tham khảo bất kỳ tài liệu nào, thuộc bất cứ lĩnh vực vào các thời điểm bất kỳ, không giới hạn thời gian.
Không phụ thuộc vào hệ điều hành (cross platform): E-learning có thể được truy cập bằng các phần mềm duyệt Web trên bất kỳ nền tảng nào:Windows, Mac, Unix, OS/2, Amiga, etc Bạn có thể truyền tải chương trình đào tạo của mình tới bất cứ máy tính nào trên Internet hay Intranet mà không phải xây dựng các chương trình khác nhau cho từng hệ điều hành.
Phần mềm duyệt Web và các kết nối Internet được sử dụng rộng rãi: Máy tính hầu hết đều có một trình duyệt, như Nestcape Navigator và kết nối vào mạng Intranet của trường, hoặc truy cập trực tiếp vào Internet.
Sự phân tán rộng rãi với chi phí thấp: Không cần phải có một cơ chế phân tán nào, E-Learning có thể được truy cập từ bất cứ một máy tính nào ở bất cứ đâu trên thế giới, với chi phí rất thấp.
Dễ dàng cập nhật: Nếu có những thay đổi đối với những chương trình đào tạo, học tập sau khi đã cài đặt ban đầu, thì những thay đổi sẽ được thực hiện trên máy chủ có chứa các chương trình đào tạo được cập nhật rất mới mẻ Các khóa học, giáo trình, tài liệu liên quan luôn được cập nhật, nâng cấp và bổ sung, sửa đổi.
Giảm giá thành và tiết kiệm thời gian: Không cần phải có bất cứ chi phí đi xách tay cũng như máy tính để bàn, và tiết kiệm được chi phí mua sách, tài liệu tham khảo
1.2.3 Nhược điểm của học tập trực tuyến
Hạn chế băng thông: Những hạn chế của băng thông làm chậm tốc độ tải âm thanh, video, và các dạng dữ liệu đồ họa (nhất là các giáo trình điện tử được thiết kế theo dạng multimedia) làm cho người sử dụng mất nhiều thời gian cho việc chờ đợi để tải về máy của mình Vấn đề này càng phức tạp hơn đối với mạng công cộng internet nói chung và điều kiện truy cập internet ở Việt Nam nói riêng, nơi mà hiện tượng tắc nghẽn thường xuyên xảy ra Tuy nhiên, với sự phát triển mạng mẽ của công nghệ, trong tương lai, những vấn đề này sẽ được giải quyết.
Các chương trình học tập trực tuyến ngày nay chưa sinh động, quá tĩnh: Khi công nghệ ngày càng phát triển thì mức độ tương tác của e-learning lại bị giới hạn rất nhiều Trở ngại này ảnh hưởng khá nhiều đến hiệu suất đào tạo.
Không phải tất cả những kiến thức của mọi lĩnh vực đều được truyền đạt hết thông qua máy tính, nhất là trong những vấn đề cần phải có sự tương tác tiếp xúc của con người, học tập trực tuyến chỉ là hình thức hỗ trợ cho việc trao đổi, học tập chứ không thay thế được hoàn toàn những hình thức đã thực sự tốt.
Các chương trình sử dụng cho học tập trực tuyến phải luôn luôn cập nhật thường xuyên, phải có một đội ngũ những người duy trì và phát triển hệ thống trong một thời gian dài.
TÌM HIỂU VỀ GIÁO TRÌNH ĐIỆN TỬ
Giáo trình điện tử là những tài liệu chỉ dẫn, giảng dạy, tài liệu tham khảo được xây dựng và phát triển dựa trên những tiện ích và công nghệ máy tính, giáo trình điện tử không lưu trữ trong các trang sách, hay tài liệu bằng giấy mà nó sẽ tương tác với người dùng thông qua máy tính Giáo trình điện tử có thể được lưu trữ trong CDROM, trong máy tính hay trên mạng Internet
Với sự phát triển mạnh mẽ của công nghệ máy tính, việc xây dựng và phát triển các giáo trình điện tử ngày càng đuợc quan tâm vị lợi ích to lớn mà giáo trình điện tử mang lại cho người sử dụng.
1.3.1 Một số ưu điểm của giáo trình điện tử
Khả năng miêu tả bài học trực quan, sinh động, ứng dụng các công nghệ multimedia vào các giáo trình giúp cho sự tiếp thu bài học tốt hơn, ví dụ như các đoạn phim minh hoạ bài giảng, hướng dẫn học tập bằng tiếng nói.
Thuận tiện, vị giáo trình điện tử lưu trữ trên các thiết bị như CDROM, ổ cứng, mạng ineternet nên rất thuận tiện cho việc học tập, nghiên cứu ở mọi không gian, thời gian, chỉ cần người sử dụng có máy tính chứa các chức năng cần thiết để sử dụng giáo trình điện tử.
Thời gian tồn tại của một giáo trình lâu hơn so với việc lưu trữ các giáo trình, tài liệu bằng giấy, hoặc các trang sách.
1.3.2 Nhược điểm Đối với những giáo trình điện tử ứng dụng multimedia thì thường có dung lượng lớn, so với điều kiện đường truyền hiện nay ở nứơc ta thì tốc độ tải các giáo trình điện tử còn chậm.
Nhiều giáo trình điện tử có giá thành cao Ví dụ như các giáo trình English Study, bộ giáo trình của SCC/IBT.
Những vùng công nghệ thông tin chưa phát triển thì các giáo trình điện tử sẽ không phát huy được tác dụng.
Những giáo trình điện tử phải được cập nhật, bổ sung tri thức liên tục,
1.3.3 Một số công cụ trợ giúp xây dựng giáo trình điện tử:
Giáo trình điện tử hiện nay được tạo ra từ rất nhiều tiện ích khác nhau có trong máy tính, phổ biến trong các công cụ dùng để truyền đạt tri thức trên mạng này là PowerPoint, Adobe Flash, Adobe Acrobat Ngoài ra còn sử dụng các công cụ hỗ trợ khác như các tiện ích thu phát âm thanh, thu phát các đoạn phim
NỀN TẢNG VÀ CÔNG CỤ XÂY DỰNG HỆ THỐNG
GIỚI THIỆU MÃ NGUỒN MỞ VÀ PHẦN MỀM TỰ DO
Thuật ngữ “mã nguồn mở” được dùng để chỉ một phần mềm được phát hành kèm theo mã nguồn tạo ra nó Người dùng có thể tự do sử dụng, sửa đổi và hoàn thiện nó mà không phải lo lắng về các vấn đề pháp lý Phần mềm nguồn mở cho phép người dùng phân phối lại, tái tạo, sửa đổi nội dung để phù hợp với yêu cầu công việc đồng thời cải tiến phần mềm.
Tư tưởng phân phối mã nguồn kèm theo chương trình là nhằm khuyến khích sự hợp tác làm việc và những đóng góp tình nguyện trong việc sửa đổi, cải tiến phần mềm, phát triển thêm những tính năng mới và chia sẻ thông tin với mọi người.
Nhờ có sự hợp tác làm việc của các lập trình viên, cũng như sự đóng góp của những người tình nguyện, phần mềm đến với người dùng ngày càng hoàn thiện thêm về mặt chất lượng và trở nên tốt hơn các phần mềm nguồn đóng tương ứng Người dùng được khuyến khích tùy biến chương trình theo nhu cầu của bản thân, đây thực sự là một tư tưởng tốt đẹp.
Các dự án mã nguồn mở đã huy động được tài năng của rất nhiều người, với rất nhiều kỹ năng khác nhau, ngoài kỹ năng lập trình Rất nhiều dự án mã nguồn mở đã được xây dựng nhờ các họa sỹ, nhạc sỹ, nhà thiết kế và những người biên soạn tài liệu nhờ đó đã tạo ra những sản phẩm hoàn chỉnh.
Trong những năm 1960 các phần mềm thường được phân phối tự do bởi các công ty như IBM hoặc được chia sẻ giữa những người sử sụng phần mềm với nhau Phần mềm này được cung cấp kèm theo mã nguồn để có thể sửa đổi và cải tiến; đây chính là hạt giống đầu tiên cho phần mềm nguồn mở Tuy nhiên, theo thời gian các thiết bị phần cứng trở nên rẻ hơn và lợi nhuận của các công ty giảm xuống trong những năm 1970 khiến các nhà sản xuất coi phần mềm là sản phẩm kinh doanh.
Vào thang 9, năm 1983 Richard Matthew Stallman, lập trình viên của phòng thí nghiệm MIT Artiffical Intelligence đã sáng lập ra dự án GNU để tạo ra một hệ điều hành miễn phí giống như UNIX Stallman quan tâm đến sự phát triển nhanh chóng của các phần mềm sở hữu và việc người dùng không có khả năng xem và sửa đổi các phần mềm nằm trên máy họ Những nhà phát triển cũng bị hạn chế và điều này trái ngược với sự tự do về mã nguồn có trước đó. Bằng việc sáng lập ra dự án GNU, Stallman đã phát động phong trào phần mềm tự do và đến tháng 10 năm 1985 ông sáng lập ra Tổ chức phần mềm tự do.
Stallman đã đặt nền móng cho những định nghĩa và tính chất cho phần mềm nguồn mở, cũng như những khái niệm về “copyleft” Ông là tác giả chính cho một số giấy phép “copyleft”, bao gồm GNU/GPL (General Public License), giấy phép phần mềm tự do được sử dụng rộng rãi nhất hiện nay.
Hệ thống EZ-TEST là một phần mềm mã nguồn mở, tuân thủ theo giấy phépGNU/GPL.
GIỚI THIỆU HỆ ĐIỀU HÀNH UBUNTU (LINUX)
Ubuntu là một hệ điều hành hoàn toàn mở, được xây dựng dưạ trên nhân(kernel) Linux Cộng đồng người dùng Ubuntu được hình thành bởi những tư tưởng đã gắn kèm theo triết lý Ubuntu (Ubuntu Philosophy) là : người dùng được sử dụng phần mềm miễn phí, mỗi một phần mềm đều có thể sử dụng dưới giao diện ngôn ngữ bản địa của người dùng và quan trọng nhất là người dùng hoàn toàn tự do chỉnh sửa và thay đổi phần mềm để phù hợp với nhu cầu sử dụng của ḿnh Vì những lý do đã nêu trên đây :
Ubuntu sẽ được luôn luôn phân phối miễn phí và cũng chẳng thêm phí nào cho phiên bản dành cho các công ty, Enterprise edition.
Ubuntu sẽ luôn luôn bao gồm các bản phiên dịch tốt nhất và sẽ luôn luôn tạo ra một cơ cấu truy cập (accessibility infrastructure) tốt nhất theo khả năng cung cấp của cộng đồng lập trình phần mềm tự do, nhằm mục đích cho phép càng nhiều người càng có thể sử dụng Ubuntu.
Các phiên bản Ubuntu được công bố đều đặn, với tần xuất định trước; mỗi 6 tháng sẽ ra một phiên bản mới Bạn có thể dùng phiên bản Ubuntu ổn định hoặc dùng phiên bản đang phát triển, tùy ý của bạn Mỗi phiên bản sẽ được hỗ trợ tối thiểu trong vòng 18 tháng.
Ubuntu hoàn toàn tuân theo những nguyên tắc phát triển phần mềm mă nguồn mở và khuyến khích mọi người dùng phần mềm mă nguồn mở, cải thiện chúng và phân phối lại cho những người khác.
Cộng đồng Ubuntu bao gồm người phát triển, lập trình viên, người thử nghiệm, người soạn tài liệu kỹ thuật, người dùng thử các tài liệu kỹ thuật, người dịch và, quan trọng nhất, những người dùng Ubuntu hằng ngày.
APACHE, PHP & MYSQL
2.3.1 Apache Web Server a Giới thiệu về Apache Web Server:
Apache là một phần mềm Web server được cung cấp bởi tập đoàn Apache Group Đây là một Web server được hỗ trợ để chạy chủ yếu trên UNIX va LINUX và rất được phổ biến bởi tính chặt chẽ, uyển chuyển và linh hoạt Hiện nay Apache là một Web server đang quản lý hơn 50% số Web site đang có trên thế giới. b Tổ chức Web site:
Trước khi bắt đầu xây dựng một Web site, người sử dụng có thể muốn tìm hiểu tổ chức của nó Khi có nhiều hơn các khả năng suy nghĩ về các cách tổ chức cấu trúc một Web site, người sử dụng có thể suy nghĩ về nó như một viễn cảnh đi lại Trong những suy nghĩ thêm của nó về khía cạnh này, sẽ nảy sinh ra những câu hỏi: Người sử dụng có thể làm gì để dễ dàng giữ gìn Web site của mình? Các quy ước nào sẽ làm đơn giản Web site của họ? c Cài đặt Apache. Để cài đặt Apache trên Ubuntu, từ giao diện Terminal gõ:
$sudo apt-get install apache2
Hệ thống sẽ tự động kết nối đến kho phần mềm, download về và cài đặt. Sau khi cài đặt thông thường Apache sẽ được cấu hình tự động kết nối qua cổng
80 và tiến hành chạy như một dịch vụ mặc định của hệ điều hành.
Trường hợp Apache chưa được khởi động, bạn có thể khởi động Apache bằng lệnh sau trong giao diện Terminal:
$ sudo /etc/init.d/apache2 start Để kiểm tra xem Apache đã hoạt động hay chưa, bạn mở trình duyệt lên và gõ vào địa chỉ URL: http://localhost
Nếu thành công, bạn sẽ nhận được lời chào từ Apache như sau:
Nếu không người sử dụng sẽ nhận được một thông báo lỗi, có thể xem lại file error.log trong thư mục log Một khi các cài đặt cơ sở đang làm việc, người sử dụng phải cấu hình các thuộc tính của nó bằng cách sửa đổi nội dung các file trong thư mục conf. d Virtual Host:
Vitual Host là một sức mạnh thật sự của Apache Virtual Host cho phép Apache Web Server chạy cùng lúc nhiều Web site Apache là một HHTP server đầu tiên cung cấp các hỗ trợ cho việc xây dựng một virtual site Trong khi các server của NCSA và các server khác cũng cung cấp sự hỗ trợ virtual site nhưng Apache cung cấp một khả năng thi hành tốt hơn và có nhiều điểm đặc trưng hơn các server khác.
Chỉ mới nhìn qua, dường như sự thuận lợi chính của virtual site là chỉ để tô điểm, nó cho phép nhiều Web site được đánh địa chỉ tên miền của nó trên các máy đơn đã được chia sẻ Tuy nhiên sự thuận lợi của nó nhiều kết quả rõ ràng nằm trong cách quản trị Web site và cách những máy khác sử dụng nó Một
Khách hàng có thể dễ dàng truy cập các Web site của mình trên các server cho thuê Từ khi người thuê server có thể sử dụng tên miền của chính mình, các địa chỉ có khuynh hướng ngắn đi Điều này đã giúp đỡ việc đưa ra tính chuyên nghiệp đồng nhất trên thế giới Những người sử dụng thích nhớ những địa chỉ ngắn hơn từ khi tên miền có một vài sự thích hợp với tên của các tập đoàn công ty.
Rút gọn tối đa các máy tính và phần cứng mạng, nhiều site tốc độ chậm có thể nằm ở tại một máy đơn, điều này làm giảm bớt giá thành của việc đưa một site lên mạng.
Giảm bớt giá thành về con người kết hợp với các hệ thống quản trị Thay cho việc quản lý và cấu hình một server chuyên dụng cho các tên miền Một Web server chỉ cần duy trị vài file cấu hình và một số các box Điều này sẽ dẫn đến việc giảm một số hệ thống cần để duy tu nó, như vậy việc duy trị một mảng sẽ đơn giản hơn và ít tốn kém hơn.
Bởi vì hầu hết các Web site khi tạo ra đều không đủ đường truyền lưu thông để sử dụng hết các tài nguyên trên một máy đơn, điều đó là sự khát khao từ một người quản trị cá nhân cho phép một server đơn giản trên mạng và chạy như nhiều máy khác nhau thay vì dành cho phần cứng và tiền bạc để mỗi site được đưa lên, một vài server cấu hình các lệnh để đưa ra các kết quả như nhau: một virtual site Bởi vì phí tổn để cài đặt một server có thể chia xẻ cho nhiều site, thời gian để cấu hình và quản lý Web site được giảm đi rất nhiều.
Virtual host đã đem lại một khía cạnh chắc chắn của việc tạo ra một trangWeb di động Khi một site là ảo, nó dễ dàng di chuyển đến một Web server khác trong cùng một mạng hoặc ở một nơi nào khác Đây chính là vấn đề của việc chuyển chỗ các trang HTML của các site đến một máy mới và điều chỉnh các thông tin DNS (Domain Name Server) của site đưa lên một server mới Để việc thích nghi với DNS được cập nhật, đơn giản chỉ cần tạo ra sự đổi hướng trên server cu? Điều này cho phép sự lưu thông được trôi chảy mà không có sự sai sót, đó là một vấn đề quan trọng với các site đang lớn mạnh đang được lưu thông để tạo ra kinh doanh.
Về mặt lịch sử, khi người sử dụng muốn một site đang host sử dụng tên miền của họ, sự lựa chọn có thể được là mua hoặc thuê một máy tính và dùng nó để cấu hình như một Web server Phải chịu các phí tổn để tiêu tốn cho việc quản lý server này Các phí tổn này dễ thường là rất lớn, việc này đã thúc đẩy các nhà cung cấp dịch vụ Internet (ISP) thêm vào các cách để hỗ trợ nhiều Web site trên một host, điều này dẫn đến một vài giải pháp gần đây, chẳng hạn như Home Page Approach.
Home Page Approach tạo ra một địa chỉ giống như: http://www.isp.dom/~name.
Home Page Approach là một cách thích hợp để phục vụ các trang người dùng cục bộ Nhưng khi dùng nó để phục vụ cung cấp thông tin lớn và đang được truy cập thường xuyên bởi một số lớn người sử dụng thì việc này sẽ tạo ra một địa chỉ tồi mà rất khó nhớ, tên nhập vào dài, dễ xảy ra sai sót phía người sử dụng và trông không được chuyên nghiệp lắm.
Xây dựng một virtual host:
Các phạm vi liên quan của virtual host, virtual site và multihomed server thông thường được sử dụng thay thế cho nhau Để dễ hie?u hơn, chỉ cần suy nghĩ chúng như sau: Để tạo một virtual site, thì cần phải cấu hình một virtual host, để virtual host làm việc cần phải tạo một mutihomed server, như vậy rõ ràng là có sự khác nhau giữa chúng
Một máy tính multihomed là môt máy tính có thể trả lời cùng một lúc đến nhiều địa chỉ IP Một máy tính mày có thể được truy cập bởi nhiều tên (chẳng hạn như www.mailhost.foo.com và www.foo.com) mà nó thi hành cho các địa chỉ IP như nhau không thể là một máy tính Multihomed.
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
GIỚI THIỆU ĐỀ TÀI
Qua khảo sát trên Internet, ở Việt Nam hiện nay còn rất ít Website thi trực truyến Có một số Website có thêm chức năng thi trắc nghiệm trực tuyến xong còn rất nhiều hạn chế, có thể là chưa hỗ trợ tính điểm tích lũy, hoặc không chuyên sau vào vấn đề thi trắc nghiệm mà chỉ coi đây là một module nhỏ trong hệ thống với những chức năng hết sức sơ sài.
Theo em, yêu cầu chung của một Website thi trắc nghiệm phải bao gồm những chức năng sau:
Cung cấp một tài khoản cá nhân cho người dùng.
Cung cấp bộ câu hỏi, bộ đề cho người dùng.
Thống kê và tổng hợp điểm tích lũy của thành viên.
Tư vấn, hỗ trợ học tập theo phương thức thi trắc nghiệm.
3.1.2 Mục tiêu và yêu cầu của hệ thống
Mục tiêu của hệ thống
Website EZ-TEST ra đời sẽ góp phần không nhỏ hỗ trợ các học sinh, sinh viên ôn luyện tốt trong các kì thi tốt nghiệp, kì thi Đại học - Cao đẳng; hỗ trợ các ứng viên, công chức trong các kì tuyển dụng, các đợt thi công chức… Đồng thời, hệ thống cũng hỗ trợ các nhà tuyển dụng tham khảo, thành lập và quản lý các bộ đề thi để áp dụng trong các đợt thi tuyển.
Website sẽ tập trung chủ yếu vào khía cạnh ôn và thi trắc nghiệm nhằm giúp cho người dùng làm quen và dần thành thạo với hình thức thi không còn mới mẻ nhưng cũng không mấy phổ dụng này.
Yêu cầu của hệ thống.
Hệ thống khi hoạt động cần đạt được những yêu cầu sau:
Mỗi người dùng sẽ được cung cấp một tài khoản với username và password riêng để đăng nhập vào hệ thống.
Mỗi tài khoản sẽ được phân định rõ là tài khoản người dùng bình thường (member), người dùng quản lý (manager) hay quản trị viên (admin).
Cung cấp giao diện xây dựng và quản lý bộ đề cho người quản lý.
Cung cấp giao diện thi và hệ thống tính điểm thi đối với người dùng là thành viên.
Cung cấp giao diện quản trị cho quản trị viên.
Cung cấp tài liệu học tập, ôn luyện cũng như bộ đề (VIP member) dành cho các thành viên.
Cung cấp tài liệu hướng dẫn sử dụng đối với tất cả các thành viên: member,manager, VIP, admin…
PHÂN TÍCH HỆ THỐNG
3.2.1 Hoạt động của người sử dụng
Hoạt động của thành viên.
Thành viên sau khi đăng nhập vào hệ thống sẽ có giao diện quản lý riêng của mình Trong giao diện này, thành viên có thể thực hiện các chức năng sau:
Quản lý thông tin cá nhân.
Quản lý tình trạng tích lũy của bản thân:
Số câu hỏi đã trả lời
Số câu trả lời đúng
Số điểm tích lũy hiện có.
Khởi tạo ngẫu nhiên bộ đề mới để tiến hành thi.
Hoạt động của người quản lý.
Với tài khoản của người quản lý, người dùng có thể thực hiện các chức năng sau đây:
Quản lý thông tin cá nhân.
Quản lý tình trạng tích lũy bản thân:
Số câu hỏi đã trả lời.
Số câu trả ời đúng.
Số điểm tích lũy hiện có
Số câu hỏi đã đóng góp.
Số bộ đề thi đã khởi tạo và tình trạng hoạt động của bộ đề này.
Xây dựng ngân hàng câu hỏi.
Quản lý ngân hàng câu hỏi theo các chủ đề.
Khởi tạo và đóng gói bộ đề thi.
Gán quyền truy xuất bộ đề thi đối với các thành viên.
3.2.2 Hoạt động của người quản trị
Với tài khoản của người quản trị, quản trị viên có thể thực hiện các quyền sau đây:
Quản lý thông tin cá nhân.
Quản lý thông tin của các thành viên, cấp và hủy quyền của các manager.
Quản lý bộ câu hỏi.
Quản lý cấu hình website cùng các thiết lập hệ thống khác.
3.2.3 Biểu đồ phân cấp chức năng
Biểu đồ phân cấp chức năng là một loại biểu đồ diễn tả sự phân rã dần dần các chức năng từ đại thể đến chi tiết Mỗi nút trong biểu đồ là một chức năng, và quan hệ duy nhất giữa các chức năng, diễn tả bởi các cung nối liền các nút, là quan hệ bao hàm như vậy biểu đồ phân cấp chức năng tạo thành một cấu trúc cây.
Sau khi phân tích kĩ lưỡng các chức năng của website, em đưa ra biểu đồ phân cấp chức năng website trắc nghiệm EZ-TEST như sau:
Hình 1: Biểu đồ phân cấp chức năng.
3 Dành cho người quản lý
4 Dành cho người quản trị
2.2 Thống kê điểm tích lũy
3.2 Thống kê điểm tích lũy
3.2.4 Biểu đồ luồng dữ liệu
Biểu đồ luồng dữ liệu là một loại biểu đồ nhằm mục đích diễn tả một quá trình xử lý thông tin với các yêu cầu sau:
- Sự diễn tả ở mức logic, nghĩa là nhằm trả lời câu hỏi Làm gì, mà bỏ qua câu hỏi làm như thế nào ?.
- Chỉ rõ các chức năng (con) phải thực hiện để hoàn tất quá trình xử lý cần mô tả
- Chỉ rõ các thông tin được chuyển giao giữa các chức năng đó, và qua đó phần nào thấy được trình tự thực hiện của chún
Biểu đồ mức bối cảnh (Mức 0)
Hệ thống trắc nghiệm Online EZ-TEST Người quản lý
Hình 2: Biểu đồ mức bối cảnh
Biểu đồ mức đỉnh (Mức 1)
Trong biểu đồ xuất hiện các tác nhân: người quản trị, thành viên và người quản lý Toàn bộ thông tin của đề thi được lưu trong cơ sở dữ liệu ‘Ngân hàng đề thi’. Toàn bộ thông tin của thành viên được lưu trong cơ sở dữ liệu ‘Thành viên’. Thông qua những cơ sở dữ liệu này mà hệ thống sẽ đưa ra bộ đề thi hay những thông tin phản hồi cho từng tác nhân cụ thể.
3 Dành cho người quản lý
4 Dành cho người quản trị
CSDL Thành viên Đăng ký tài khoản
Hình 3: Biểu đồ mức đỉnh.
Biểu đồ mức dưới đỉnh (Mức 2)
Biểu đồ luồng dữ liệu giải thích chức năng 1: Cung cấp thông tin.
Hình 4: Biểu đồ luồng dữ liệu giải thích chức năng 1: Cung cấp thông tin
Biểu đồ luồng dữ liệu giải thích chức năng 2: Dành cho thành viên.
Chức năng này cho phép thành viên đăng kí tài khoản, cập nhật thông tin tài khoản của mình Khi tạo bộ đề thi hệ thống sẽ trả lại bộ đề cho chức năng thi sau đó yêu cầu thành viên tiến hành thi, sau khi kết thúc bài thi sẽ tự động tính điểm và cập nhật vào CSDL.
Ngân hàng đề thi Thành viên
Hình 5: Biểu đồ luồng dữ liệu giải thích chức năng 2: Dành cho thành viên
Biểu đồ luồng dữ liệu giải thích chức năng 3: Dành cho người quản lý
Chức năng này cho phép người quản lý tạo mới các câu hỏi, sau đó cập nhật trực tiếp vào CSDL Thông qua chức năng quản lý có thể tạo mới hoặc chỉnh sửa lại câu hỏi đã tồn tại Sau khi đã có bộ câu hỏi, người quản lý có thể lập bộ đề sau đó gán quyền cho các thành viên truy xuất vào bộ đề này.
Ngân hàng đề thi Người quản lý
Hình 6: Biểu đồ luồng dữ liệu giải thích chức năng 3: Dành cho người quản lý.
Biểu đồ luồng dữ liệu giải thích chức năng 4: Dành cho người quản trị
Ngân hàng đề thi Người quản trị
Hình 7: Biểu đồ luồng dữ liệu giải thích chức năng 4: Dành cho người quản trị.
CƠ SỞ DỮ LIỆU
3.3.1 Các bảng cơ sở dữ liệu
Bảng user (Quản lý thông tin của các thành viên trong hệ thống):
Name Type Describe user_id int ID của thành viên (Khóa chính) username varchar(30) Tên đăng nhập password varchar(30) Mật khẩu email varchar(50) Địa chỉ email real_nam e varchar(50) Tên thật birth_day date Ngày sinh location varchar(250) Địa chỉ phone varchar(15) Số điện thoại ask int Tổng số câu hỏi đã làm answer int Tổng số câu trả lời đúng test_time time Tổng thời gian thực hiện các bài kiểm tra
Bảng cat (Quản lý thông tin về các chủ đề (môn học)):
Name Type Describe cat_id int ID của chủ đề (Khóa chính) cat_name varchar(30) Tên chủ đề cat_paren t int ID của chủ đề cha (cấp trên) cat_order int Thứ tự của chủ đề
Bảng ask (Quản lý các câu hỏi):
Name Type Describe ask_id int ID của câu hỏi (Khóa chính) cat_id int ID của chủ đề (Khóa ngoại) content text Nội dung câu hỏi
Bảng answer (Quản lý câu trả lời):
Name Type Describe answer_id int ID của câu trả lời (Khóa chính) ask_id int ID của câu hỏi (Khóa ngoại) correct int (0/1) Thể hiện câu trả lời là đúng hoặc sai content text Nội dung câu trả lời
3.3.2 Sơ đồ thực thể (Sơ đồ liên kết dữ liệu)
Hình 8: Sơ đồ liên kết dữ liệu cat cat_id c at_namecat _parentcat_ order ask ask_idc at_idconten t answer an swer_idask
72 - MỘT SỐ GIAO DIỆN CHÍNH
TRANG CHỦ
Giao diện Website sẽ có bố cục gồm 4 phần chính:
Menu (ngang): Hiển thị Menu tương tác với những chức năng chính của Website: đăng kí thành viên, xem các thông báo, xem danh sách chủ đề môn học, xem thông tin liên hệ…
Cột bên (phải): Thể hiện Form đăng nhập (Khi (khách) thành viên chưa đăng nhập) và thể hiện thông tin cá nhân của thành viên (Khi đã đăng nhập vào hệ thống).
Cột nội dung (trái): Thể hiện thông tin chính cho các Menu tương tác như: Hiển thị danh sách các chủ đề môn học, hiển thị nội dung các thông báo, hiển thị thông tin chi tiết về tài khoản của thành viên…
Khung Thống kê (dưới): Hiển thị thông tin thống kê về hệ thống: Số lượng thành viên, số lượng câu hỏi, câu trả lời…
Phía dưới cùng là phần hiển thị các thông tin về bản quyền, thông tin về tác giả…
Hình 9: Giao diện trang chủ.
4.1.2 Giới thiệu các biểu mẫu a Đăng kí thành viên
Hình 10: Form đăng kí thành viên b.Thông báo từ Ban quản trị.
Hình 11: Hiển thị thông báo, tin tức từ Ban quản trị. c View danh sách chủ đề môn học.
Hình 12: Hiển thị danh sách môn thi. d Tạo bộ đề, tiến hành thi
Hình 13: Form tạo bộ đề thi. e Thực hiện bài thi
Hình 14: Form thực hiện bài thi f Chấm điểm
Hình 15: Chấm điểm bài thi. g Liên hệ
Hình 16: Hiển thị thông tin liên hệ.
GIAO DIỆN PHẦN QUẢN TRỊ
4.2.1 Bố cục phần quản trị
Phần quản trị có bố cục 3 phần như sau:
Menu chính (ngang): Hiển thị những chức năng chính của phần quản trị: Quản lý thành viên, quản lý chủ đề, quản lý câu hỏi, cấu hình hệ thống…
Menu nhỏ (trái): Hiển thị những chức năng nhỏ của Menu chính: Thêm mới thành viên, quản lý thành viên, Sửa thành viên, …
Phần nội dung (Phải): Hiển thị phần nội dung tương tác ứng với mỗi chức năng.
4.2.2 Một số giao diện chính a Giao diện tổng quan của phần quản trị: b Form Đăng kí thành viên
Hình 18: Form đăng kí mới thành viên. c Form Tạo chủ đề (Môn thi).
Hình 19: Form tạo chủ đề mới. d Giao diện quản lý chủ đề.
Hình 20: Giao diện quản lý chủ đề. e Form tạo câu hỏi
Hình 21: Form tạo bộ câu hỏi (Bộ đề thi).