1.1 Mục tiêu nghiên cứu Vận dụng tổng hợp các kiến thức đã học được để tiến hành xây dựng phần mềm quản lý giáo dục với quy mô vừa và nhỏ. Tìm hiểu thực trạng về việc áp dụng CNTT vào quản lý giáo dục hiện nay từ đó nêu bất được tính cấp thiết của đề tài. Tận dụng lợi thế của mạng Internet để xây dựng hệ thống quản lý giữa các chi nhánh khác nhau của hệ thống một cách mềm mại, tiện lợi và dễ dàng sử dụng nhất. 1.2 Đối tượng và phạm vi nghiên cứu Tìm hiểu thực trạng của việc áp dụng CNTT vào lĩnh vực giáo dục nhất là trong công tác quản lý của nước ta. Tìm hiểu một số công cụ, phần mềm, ngôn ngữ hỗ trợ thiết kế và xây dựng website. Tìm hiểu các chức năng của hệ thống quản lý giáo dục quy mô vừa và nhỏ. Quy trình để xây dựng một website. Một số kỹ thuật trong công tác quản lý giáo dục. 1.3 Phương pháp nghiên cứu Tiến hành thu thập và phân tích những thông tin, tài liệu liên quan đến đề tài để hình thành ý tưởng tổng quan (Mục đích cần đạt đến của phần mềm? Đối tượng hướng đến của phần mềm? Tài liệu đã có và cách sử dụng chúng?). Xác định các yêu cầu để phân tích và thiết kế hệ thống cho phù hợp. Xây dựng phần mềm theo các yêu cầu đã đề ra. Triển khai phần mềm và đánh giá kết quả đạt được. 1.4 Ý nghĩa khoa học và thực tiễn của đề tài Đề tài là một phần mềm thực tiễn nhằm thúc đẩy các nhà phát triển phần mềm tập trung nhiều hơn vào lĩnh vực giáo dục, hiện là một trong những lĩnh vực kém nhất về áp dụng CNTT vào công tác quản lý cũng như giảng dạy. Đề tài sẽ giải quyết một phần trong công tác quản lý của các trung tâm giảng dạy giáo dục với quy mô vừa và nhỏ. Thông qua website quản lý, trung tâm giáo dục có thể dễ dàng kiểm soát được học viên, giáo viên, tư vấn viên cũng như thuận tiện trong việc sắp xếp lịch giảng dạy, khai giảng các khóa học của trung tâm. Website quản lý sẽ là một sản phẩm giúp cho trung tâm tối ưu được chi phí quản lý, sẽ không còn những ghi chép thủ công tốn nhân lực nữa mà thay vào đó là sự tự động hóa, hiển thị trực quan của website. 1.5 Bố cục của đề tài Nội dung đồ án gồm các phần sau: Phần mở đầu Chương 1. Giới thiệu tổng quan về đề tài Chương 2. Giới thiệu về công nghệ sử dụng Chương 3. Phần tích và thiết kế hệ thống Chương 4. Kết quả nghiên cứu và hướng phát triển đề tài
Trang 1PHIẾU GIAO NHIỆM VỤ
CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI
1.1 Mục tiêu nghiên cứu
Vận dụng tổng hợp các kiến thức đã học được để tiến hành xây dựng phầnmềm quản lý giáo dục với quy mô vừa và nhỏ
Tìm hiểu thực trạng về việc áp dụng CNTT vào quản lý giáo dục hiện nay từ
đó nêu bất được tính cấp thiết của đề tài
Tận dụng lợi thế của mạng Internet để xây dựng hệ thống quản lý giữa cácchi nhánh khác nhau của hệ thống một cách mềm mại, tiện lợi và dễ dàng sửdụng nhất
1.2 Đối tượng và phạm vi nghiên cứu
Tìm hiểu thực trạng của việc áp dụng CNTT vào lĩnh vực giáo dục nhất làtrong công tác quản lý của nước ta
Tìm hiểu một số công cụ, phần mềm, ngôn ngữ hỗ trợ thiết kế và xây dựngwebsite
Tìm hiểu các chức năng của hệ thống quản lý giáo dục quy mô vừa và nhỏ
Quy trình để xây dựng một website
Một số kỹ thuật trong công tác quản lý giáo dục
1.1 Mục tiêu nghiên cứu của đề tài
1.2 Đối tượng và phạm vi nghiên cứu
1.3 Phương pháp nghiên cứu
1.4 Bố cục đề tài
Trang 21.3 Phương pháp nghiên cứu
Tiến hành thu thập và phân tích những thông tin, tài liệu liên quan đến đề tài
để hình thành ý tưởng tổng quan (Mục đích cần đạt đến của phần mềm? Đốitượng hướng đến của phần mềm? Tài liệu đã có và cách sử dụng chúng?)
Xác định các yêu cầu để phân tích và thiết kế hệ thống cho phù hợp
Xây dựng phần mềm theo các yêu cầu đã đề ra
Triển khai phần mềm và đánh giá kết quả đạt được
1.4 Ý nghĩa khoa học và thực tiễn của đề tài
Đề tài là một phần mềm thực tiễn nhằm thúc đẩy các nhà phát triển phầnmềm tập trung nhiều hơn vào lĩnh vực giáo dục, hiện là một trong những lĩnhvực kém nhất về áp dụng CNTT vào công tác quản lý cũng như giảng dạy
Đề tài sẽ giải quyết một phần trong công tác quản lý của các trung tâm giảngdạy giáo dục với quy mô vừa và nhỏ
Thông qua website quản lý, trung tâm giáo dục có thể dễ dàng kiểm soátđược học viên, giáo viên, tư vấn viên cũng như thuận tiện trong việc sắp xếplịch giảng dạy, khai giảng các khóa học của trung tâm
Website quản lý sẽ là một sản phẩm giúp cho trung tâm tối ưu được chi phíquản lý, sẽ không còn những ghi chép thủ công tốn nhân lực nữa mà thayvào đó là sự tự động hóa, hiển thị trực quan của website
1.5 Bố cục của đề tài
Nội dung đồ án gồm các phần sau:
Phần mở đầu
Chương 1 Giới thiệu tổng quan về đề tài
Chương 2 Giới thiệu về công nghệ sử dụng
Chương 3 Phần tích và thiết kế hệ thống
Chương 4 Kết quả nghiên cứu và hướng phát triển đề tài
Trang 3CHƯƠNG 2: GIỚI THIỆU CÔNG NGHỆ SỬ DỤNG
Trang 42.1 Ngôn ngữ lập trình frontend
Trước tiên để đi vào tìm hiểu về các ngôn ngữ lập trình frontend thì chúng ta
sẽ tìm hiểu qua về khái niệm frontend
Frontend là một phần của hệ thống phần mềm, tương tác trực tiếp với người
sử dụng Cụ thể, đó là hệ thống các giao diện người dùng (GUI)
2.1.1 HTML
HTML là chữ viết tắt của Hypertext Markup Language, là ngôn ngữ được
sử dụng rộng rãi nhất để viết các trang Web
Hypertext là cách mà các trang Web (các tài liệu HTML) được kết nối vớinhau Và như thế, đường link có trên trang Web được gọi là Hypertext
Như tên gọi đã gợi ý, HTML là ngôn ngữ đánh dấu bằng thẻ (MarkupLanguage), nghĩa là bạn sử dụng HTML để đánh dấu một tài liệu text bằngcác thẻ (tag) để nói cho trình duyệt Web cách để cấu trúc nó để hiển thị ramàn hình
Một trang web được bắt đầu bằng thẻ mở <html> và kết thúc bằng thẻ đóng
</html> Bên trong cặp thẻ mở/đóng html thường bao gồm 2 cặp thẻ chính
là <head></head> và <body></body>
Nội dung trong cặp thẻ <head></head> thường bao gồm:
• Tiêu đề trang (title)
• Phần mô tả trang (description)
• Tên tác giả (author)
• Từ khóa liên quan đến nội dung website
• Khai báo các tập tin css sử dụng trong website
Nội dung trong cặp thẻ <body></body> bao gồm tất cả các đoạn mã để hiểnthị nội dung chính của website Chúng ta cả thể kể đến một số thẻ hay dùngnhất như là <p></p>, <div></div>, <a></a>, <img>, <span></span>, </br>,
<table></table>, <h1></h1>, <h2></h2>, <h3></h3>, <form></form>….2.1.2 CSS
Trang 5 CSS (Cascading Style Sheet) Website được cấu tạo từ các thẻ HTML nhưngchỉ với các thẻ HTML thì mới chỉ thể hiện được bộ khung của website Đểcăn chỉnh, trình bày cho đẹp mắt thì ta cần sử dụng ngôn ngữ CSS Đây làngôn ngữ được sử dụng rất nhiều trong lập trình website, thường đi cùng vớingôn ngữ HTML.
Chúng ta có 3 cách để chèn CSS vào trang HTML:
• Cách 1: Chèn nội dung CSS vào cặp thẻ <style></style> trong phần
<head></head> của website
• Cách 2: Chèn trực tiếp vào bên trong thẻ HTML thông qua thuộc tínhstyle
• Cách 3: Liên kết với một file có đuôi css ở bên ngoài thông qua thẻ
JavaScript là một trong những ngôn ngữ lập trình phổ biến nhất thể giới, nó
là ngôn ngữ cho HTML, web, server, PC, laptop, tablet, smart phone
JavaScript là một ngôn ngữ kịch bản
Ngôn ngữ kịch bản là một ngôn ngữ lập trình nhỏ
JavaScript là mã lập trình có thể được chèn vào các trang HTML.
JavaScript được chèn vào các trang web có thể được chạy bởi tất cả các
trình duyệt web hiện đại
Trang 6 Với sự phổ biến của smartphone, máy tính bảng như hiện nay, responsive làmột công nghệ rất quan trọng giúp các nhà thiết kế và phát triển websitekhông phải xây dựng các phiên bản riêng cho từ thiết bị PC/Mobile mà chỉcần Xây dựng một bản duy nhất cho mọi thiết bị Việc này giúp tiết kiệm rấtnhiều chi phí cho các nhà phát triển, chính vì vậy mà bootstrap vẫn đang và
sẽ là một framework mạnh mẽ
Được viết bởi những người có óc thẩm mỹ và tài năng trên khắp thế giới Sự tương thích của trình duyệt với thiết bị đã được kiểm tra nhiều lần nên có thể tin tưởng kết quả mình làm ra và nhiều khi không cần kiểm tra lại Vì
vậy, giúp cho dự án của bạn tiết kiệm được thời gian và tiền bạc
Chỉ cần biết sơ qua HTML, CSS, Javascript, Jquery là bạn có thể sử dụng Bootstrap để tạo nên một trang web sang trọng và đầy đủ Nhưng lại không cần code quá nhiều CSS
Với giao diện mặc định là màu xám bạc sang trọng, hỗ trợ các component thông dụng mà các website hiện nay cần có Vì nó là opensource nên bạn có thể vào mã nguồn của nó để thay đổi theo ý thích của bản thân
Do có sử dụng Grid System nên Bootstrap mặc định hỗ trợ Responsive Bootstrap được viết theo xu hướng Mobile First tức là ưu tiên giao diện trên Mobile trước Nên việc sử dụng Bootstrap cho website của bạn sẽ phù hợp với tất cả kích thước màn hình Nhờ đó mà chúng ta không cần xây dựng thêm một trang web riêng biệt cho mobile
Đội ngũ phát triển Bootstrap đã bổ sung thêm tính năng Customizer Giúp cho designer có thể lựa chọn những thuộc tính, component phù hợp với project của họ Chức năng này giúp ta không cần phải tải toàn bộ mã nguồn
về máy
Trang 72.2 Ngôn ngữ lập trình backend
Trước tiên khi bắt đầu vào tìm hiểu các ngôn ngữ lập trình phía backend,cũng giống như frontend chúng ta sẽ tìm hiểu qua khái niệm backend Đây làphần quan trọng, cốt lõi nhất củng một ứng dụng website
Backend gồm có các thành phần để xử lý các thông tin từ Frontend Thôngthường ám chỉ tới việc tương tác với DBMS (hệ quản trị dữ liệu)
2.2.1 Ngôn ngữ lập trình PHP
PHP (Hypertext Preprocessor) là ngôn ngữ lập trình chủ yếu được dùng để
phát triển các ứng dụng viết cho máy chủ, dễ dàng nhúng vào trang HTML.Đấy là ngôn ngữ lập trình website phổ biến nhất thế giới do tính mở và dễtiếp cận với các lập trình viên của nó
PHP được phát triển từ một sản phẩm có tên là PHP/FI PHP/FI do Rasmus Lerdoft tạo ra năm 1995, ban đầu được xem như là một tập con đơn
giản của các mà kịch bản Perl để theo dõi tình hình truy cập đến bản sơ yếu
lý lịch của ông trên mạng Ông đã đặt tên cho bộ mã kịch bản này là
“Personal Home Page Tools” Khi cần đến các chức năng rộng hơn,
Rasmus đã viết ra một bộ thực thi bằng C lớn hơn để có thể truy vấn tới các
cơ sở dữ liệu và giúp cho người sử dụng phát triển được các ứng dụng
website đơn giản Rasmus đã quyết định công bố mã nguồn của PHP/FI cho
mọi người xem, sử dụng cũng như sửa các lỗi có trong nó đồng thời cải tiến
mã nguồn
PHP/FI viết tắt của “Personal Home Page/ Form Interpreter” bao gồm
một số chức năng cơ bản của PHP như chúng ta đã biết đến ngày nay Nó cócác biến kiểu Perl , thông dịch tự động các biển của form và cú pháp HTMLnhúng Cú pháp này giống như của Perl, mặc dù hạn chế hơn nhiều, đơn giản
và có phần thiếu nhất quán
Vào năm 1997, PHP/FI 2.0 là lần viết lại thứ hai của phiên bản C đã thu hút
được hàng ngàn người sử dụng trên thế giới với xấp xỉ 50.000 tên miền đãđược ghi nhận là có cài đặt nó, chiếm khoảng 1% số tên miền có trên mạngInternet Tuy đã có tới hàng nghìn người tham gia đóng góp vào việc tuchỉnh mã nguồn của dự án này thì vào thời đó nó vẫn chủ yếu là dự án củamột người
Trang 8 PHP/FI 2.0 được chính thức công bố vào tháng 11 năm 1997, sau một thời
gian khá dài chỉ được công bố dưới bản beta Nhưng không lâu sau đó, nó đã
được thay thế bởi các bản alpha đầu tiên của PHP 3.0.
Thẻ mở <?php và thẻ đóng ?> sẽ đánh dấu sự bắt đầu và kết thúc của phần
mã PHP, qua đó máy chủ biết để xử lý và dịch mã cho đúng Đây là mộtđiểm khá tiện lợi của PHP giúp cho việc viết mã PHP trở nên khá trực quan
và dễ dàng trong việc xây dựng phần mềm giao điện ứng dụng website.2.2.2 Hệ quản trị CSDL MySQL
Giới thiệu về MySQL
o Một Database (Cơ sở dữ liệu) là một ứng dụng riêng rẽ mà lưu trữ một tập hợp dữ liệu Mỗi cơ sở dữ liệu có một hoặc nhiều API riêng biệt để tạo, truy cập, quản lý, tìm kiếm và tái tạo dữ liệu nó đang giữ
o Một số loại kho lưu dữ liệu khác có thể được sử dụng, chẳng hạn như file trên hệ thống file hoặc các Hash Table lớn, nhưng việc lấy và ghi
dữ liệu không thể nhanh và dễ dàng với các loại kho lưu dữ liệu này của các hệ thống
o Vì thế, ngày nay, chúng ta sử dụng các Hệ thống quản lý cơ sở dữ liệuquan hệ (RDBMS) lưu giữ và quản lý khối lượng lớn dữ liệu Nó được gọi là cơ sở dữ liệu quan hệ, bởi vì tất cả dữ liệu được lưu giữ trong các bảng dữ liệu khác nhau và các mối quan hệ được thành lập bởi sử dụng các Primary Key (khóa chính) và một số khóa khác được biết đến như là Foreign Key
o MySQL là một RDBMS nhanh và dễ dàng để sử dụng MySQL đang được sử dụng cho nhiều công việc kinh doanh từ lớn tới nhỏ MySQL được phát triển, được công bố, được hỗ trợ bởi MySQL AB, là một công ty của Thụy Điển
Một số ưu điểm của MySQL
o MySQL là mã ngồn mở Vì thế, để sử dụng nó, bạn chẳng phải mất một xu nào
o MySQL là một chương trình rất mạnh mẽ
o MySQL là một chương trình rất mạnh mẽ
o MySQL làm việc trên nhiều Hệ điều hành và với nhiều ngôn ngữ như PHP, PERL, C, C++, Java, …
o MySQL làm việc nhanh và khỏe ngay cả với các tập dữ liệu lớn
o MySQL rất thân thiện với PHP, một ngôn ngữ rất đáng giá để tìm hiểu
để phát triển Web
Trang 9o MySQL hỗ trợ các cơ sở dữ liệu lớn, lên tới 50 triệu hàng hoặc nhiều hơn nữa trong một bảng Kích cỡ file mặc định được giới hạn cho mộtbảng là 4 GB, nhưng bạn có thể tăng kích cỡ này (nếu hệ điều hành của bạn có thể xử lý nó) để đạt tới giới hạn lý thuyết là 8 TB.
o MySQL là có thể điều chỉnh Giấy phép GPL mã nguồn mở cho phép lập trình viên sửa đổi phần mềm MySQL để phù hợp với môi trường
cụ thể của họ
2.3 Kiến trúc Client/Server
Mô hình client-server là một mô hình nổi tiếng trong mạng máy tính, được
áp dụng rất rộng rãi và là mô hình của mọi trang web hiện có Ý tưởng của
mô hình này là máy con (đóng vài trò là máy khách) gửi một yêu cầu
(request) để máy chủ (đóng vai trò người cung ứng dịch vụ), máy chủ sẽ xử
lý và trả kết quả về cho máy khách
Thuật ngữ server được dùng cho những chương trình thi hành như một dịch
vụ trên toàn mạng Các chương trình server này chấp nhận tất cả các yêu cầu hợp lệ đến từ mọi nơi trên mạng, sau đó nó thi hành dịch vụ và trả kết quả vềmáy yêu cầu
Một chương trình được coi là client khi nó gửi các yêu cầu tới máy có
chương trình server và chờ đợi câu trả lời từ server
Chương trình server và client nói chuyện với nhau bằng các thông điệp (messages) thông qua một cổng truyền thông liên tác IPC (Interprocess Communication)
Để một chương trình server và một chương trình client có thể giao tiếp được với nhau thì giữa chúng phải có một chuẩn để nói chuyện, chuẩn này được gọi là giao thức
2.4 Mô hình MVC
MVC là viết tắt của Model – View – Controller Là một kiến trúc phần mềm hay mô hình thiết kế được sử dụng trong kỹ thuật phần mềm Nói cho dễ hiểu, nó là mô hình phân bố source code thành 3 phần, mỗi thành phần có một nhiệm vụ riêng biệt và độc lập với các thành phần khác
Các thành phần trong MVC
Trang 10o Controller Giữ nhiệm vụ nhận điều hướng các yêu cầu từ người dùng
và gọi đúng những phương thức xử lý chúng… Chẳng hạn thành phầnnày sẽ nhận request từ url và form để thao tác trực tiếp với Model
o Model là thành phần chứa tất cả các nghiệp vụ logic, phương thức xử
lý, truy xuất database, đối tượng mô tả dữ liệu như các Class, hàm xử lý…
o View đảm nhận việc hiển thị thông tin, tương tác với người dùng, nơi chứa tất cả các đối tượng GUI như textbox, images… Hiểu một cách đơn giản, nó là tập hợp các form hoặc các file HTML
Luồng dữ liệu trong mô hình MVC được thể hiện trong hình ảnh dưới đây:
Trang 11 Ưu điểm: Thể hiện tính chuyên nghiệp trong lập trình, phân tích thiết kế Do được chia thành các thành phần độc lập nên giúp phát triển ứng dụng nhanh, đơn giản, dễ nâng cấp, bảo trì
Nhược điểm: Đối với dự án nhỏ việc áp dụng mô hình MC gây cồng kềnh, tốn thời gian trong quá trình phát triển Tốn thời gian trung chuyển dữ liệu của các thành phần
Tóm lại: Để lập trình chuyên nghiệp, làm việc trọng một nhóm nhiều người, việc áp dụng mô hình trong thiết kế là điều bắt buộc MVC là một mô hình khá đơn giản và thích hợp cho những người chưa nhiều kinh nghiệm Hy vọng qua bài giới thiệu này các bạn có những kiến thức cơ bản về mô hình thiết kế trong làm phần mềm
Trang 122.5 Framework Codeigniter
2.5.1 Tổng quan
CodeIgniter là một nền tảng ứng dụng web (web
application framework) nguồn mở được dùng để xây dựng các ứng dụng webđộng tương tác với PHP
Nó cho phép các nhà phát triển xây dựng một ứng dụng web nhanh hơn - so với việc viết mã hỗn tạp - bằng cách cung cấp 1 bộ thư viện đầy đủ cho các tác vụ thông thường, cũng như cung cấp một mô hình tương tác đơn giản và
dễ hiểu cho việc kết nối tới những bộ thư viện đó
Phiên bản chính thức đầu tiên của CodeIgniter được công bố vào 28 tháng 2 năm 2006.Phiên bản mới nhất cho tới bây giờ là 2.1.4 được công bố chính thúc vào ngày 07 tháng 08 năm 2013
o Hỗ trợ kết nối và tương tác đa nền tảng cơ sở dữ liệu
o Tương tác với cơ sở dữ liệu thông qua active records
o Session Management (quản lý Session)
o Định dạng và chuẩn hóa form và dữ liệu đầu vào
o Hỗ trợ Caching toàn trang để tăng tốc độ thực thi và giảm tải tối thiểu cho máy chủ
o Scaffolding (Bị phản đối từ cộng đồng nên đã được lược bỏ trong phiên bản 2.0 trở về sau)
o Hỗ trợ Template Engine hoặc sử dụng chính PHP tags để điều hướng trong Views
o Hỗ trợ Hooks, các lớp ngoại (Class Extensions), và các Plugins
Trang 13 Trong số các mô hình framework MVC khác, CodeIgniter có các ưu điểm sau:
o Tương thích hoàn toàn với PHP 4 Nếu sử dụng PHP 5 sẽ dùng được các tính năng hữu ích khác như khả năng gọi phương thức dây chuyền(method chaining ability)
o Mô hình code nhẹ cho hệ thống, cải thiện tốc độ thực thi
o Đơn giản trong việc cài đặt, cấu hình và cấu trúc thư mục
o Error Logging
o Mêm dẻo trong việc định tuyến URI (URI Routing)
Trang 142.5.3 Cấu trúc thư mục của framework
Cấu trúc thư mục của Codeigniter framework được giải thích rất rõ trong ảnh dưới đây:
2.5.4 Các thư viện
Framework này tích hợp thêm vào một số lớp thư viện khác mà các
framework khác chưa mặc định tích hợp:
o Bảo mật và XSS Filtering
o Gửi Email, hỗ trợ đính kèm, HTML/Text email, đa giao
thức(sendmail, SMTP, and Mail) và các thứ khác
o Thư viện chỉnh sửa ảnh (cắt ảnh, thay đổi kích thước, xoay ảnh, v.v )
Hỗ trợ GD, ImageMagick, và NetPBM
o Upload file
o FTP Class - Tương tác với máy chủ thông qua giao thức FTP
o Localization
Trang 15o Phân trang tự động
o Mã hóa dữ liệu - Data Encryption
o Đo lường tốc độ thực thi - Benchmarking
o Application Profiling
o Lịch - Calendaring Class
o User Agent Class
o Nén - Zip Encoding Class
o Trackback Class
o XML-RPC Library
o Unit Testing Class
o Search-engine Friendly URLs
o Một lượng lớn các hàm hỗ trợ (helpers)
2.6 Phần mềm hỗ trợ lập trình
Phần mềm sublime text là một code editor mạnh mẽ và được đông đảo các web developer, coder, programmer sử dụng và yêu thích Sublime Text do Jon Skinner tạo ra vào tháng 1 năm 2008, được viết dựa trên ngôn ngữ lập trình Python và C++
Phần mềm Xampp là chương trình tạo máy chủ Web (Web Server) được tích hợp sẵn Apache, PHP, MySQL, FTP Server, Mail Server và các công cụ như phpMyAdmin
Trang 16CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
3.1 Phân tích hệ thống về chức năng
3.1.1 Mô tả hệ thống về chức năng
Đây là một ứng dụng website để phục vụ công tác quản lý của trung tâm giáo dục một cách dễ dàng và hiệu quả nhất Website có những chức năng sau:
Cho phép tiếp nhận các học viên mới đăng ký tham gia
Quản lý danh sách học viên, giáo viên, tư vấn viên
Quản lý lớp học, khóa học, lịch học và dạy của giáo viên
Cho phép ghi lại giao dịch của học viên
Quản lý các cấp độ của quản trị viên
3.1 Phân tích hệ thống về chức năng
3.1.1 Mô tả hệ thống về chức năng3.1.2 Yêu cầu đặt ra cho hệ thống3.1.3 Yêu cầu chức năng
3.1.4 Yêu cầu phi chức năng3.1.5 Phân tích yêu cầu chức năng3.1.6 Mô hình hóa chức năng3.1.7 Các biểu đồ luồng dữ liệu3.2 Mô hình hóa dữ liệu
3.2.1 Biểu đồ thực thể quan hệ (ERD)3.2.2 Mô hình dữ liệu quan hệ
3.2.3 Mô tả cơ sở dữ liệu
Trang 173.1.2 Yêu cầu đặt ra cho hệ thống
Về mặt thiết bị và phần mềm
- Một máy chủ làm webserver
- Hệ điều hành Windows 2000 trở lên
- Hệ cơ sở dữ liệu sử dụng là MYSQL
- Các phầm mềm khác dùng để lập trình và thiết kế website như xampp, sublimetext3…
Về mặt Website
- Về mặt giao diện phải trực quan, dễ nhìn, dễ sử dụng Có sử dụng công nghệ responsive
- Có giao điện đăng nhập để phân chia quyền hạn cho từng nhóm quản trị
- Có đầy đủ các chức năng đã đặt ra ở phần trước
- Website có hỗ trợ các tính năng để dễ dàng nâng cấp , bảo trì và sửa chữa khi cần bổ sung , cập nhật những tính năng mới
- Đảm bảo an toàn thông tin lưu trữ trên website
3.1.3 Yêu cầu chức năng
Website hỗ trợ người dùng trong việc tìm kiếm, tra cứu theo nhiều tiêu chí
Quản lý học viên với dánh sách hiển thị trực quan, đầy đủ các chức năng thêm sửa xóa
Quản lý giáo viên với dánh sách hiển thị trực quan, đầy đủ các chức năng thêm sửa xóa
Quản lý tư vấn viên với dánh sách hiển thị trực quan, đầy đủ các chức năng thêm sửa xóa
Quản lý lớp học với dánh sách hiển thị trực quan, đầy đủ các chức năng thêmsửa xóa
Quản lý khóa học với dánh sách hiển thị trực quan, đầy đủ các chức năng thêm sửa xóa
Chức năng giao dịch để ghi lại giao dịch của học viên đã đăng ký
Chức năng chuyển lớp để chuyển học viên từ lớp này sang lớp khác theo yêucầu
Chức năng bảo lưu giúp đưa học viên vào dánh sách bảo lưu đối với môn họchiện tại khi học viên chưa đủ yêu cầu học tiếp
Chức năng quản trị theo nhiều level giúp hệ thống thêm an toàn và tường minh
3.1.4 Yêu cầu phi chức năng
Website đáp ứng được khả năng truy cập nhanh, thông tin tin cậy, chính xác
Giao diện thân thiện dễ sử dụng, tính thẩm mỹ và tính ổn định cao
Website đảm bảo tính bảo mật cao và phân quyền một cách hợp lý
Website có thể hoạt động 24/24 tất cả các ngày
Trang 18 Website có khả năng lưu trữ, xử lý khối lượng lớn thông tin nhưng lại chiếm dụng lượng nhỏ trong máy tính.
3.1.5 Phân tích yêu cầu chức năng
Chức năng tiếp nhận học viên
Quá trình xử lý
- Kiểm tra tính đúng đắn của dữ liệu nhập vào
- Kết nối đến cơ sở dữ liệu
- Thêm học viên vào cơ sở dữ liệu
Đầu ra
- Hiển thị học viên ra trang danh sách học viên
Bảng 3-1 Chức năng tiếp nhận học viên