Đồ án cơ sở website học tập điện tử ĐẠI HỌC CÔNG NGHỆ HUTECH Đồ án cơ sở website học tập điện tử ĐẠI HỌC CÔNG NGHỆ HUTECH Đồ án cơ sở website học tập điện tử ĐẠI HỌC CÔNG NGHỆ HUTECH Đồ án cơ sở website học tập điện tử ĐẠI HỌC CÔNG NGHỆ HUTECH Đồ án cơ sở website học tập điện tử ĐẠI HỌC CÔNG NGHỆ HUTECH
CƠ SỞ LÝ THUYẾT
Những ưu, nhược điểm của công nghệ ASP.NET MVC5
Mô hình MVC trong ASP.Net MVC giúp tách biệt các tầng trong lập trình web, từ đó tối ưu hóa ứng dụng và đơn giản hóa quá trình viết code cũng như thiết kế giao diện.
Giao diện trong ASP.Net MVC được xây dựng dựa trên công nghệ thiết kế web như HTML và CSS, giúp quá trình thiết kế trở nên đơn giản hơn Điều này mang lại sự linh hoạt cho các nhà thiết kế trong việc tạo ra giao diện hấp dẫn và hiệu quả.
+ ASP.Net MVC không sử dụng view state vì vậy trang web không bị tăng kích thước do đó hiệu năng hoạt động không bị bị giảm
+ ASP.Net MVC đã khắc phục được các nhược điểm của web forms vì vậy web forms hiện nay không còn được dùng phổ biến nữa.
Web Forms không phân chia rõ ràng ba tầng trong mô hình lập trình web, điều này có thể gây khó khăn trong việc quản lý mã nguồn Hơn nữa, việc sử dụng đối tượng View State trong Web Forms làm tăng kích thước trang web, dẫn đến giảm hiệu suất của ứng dụng.
Giao diện của Web Forms được xây dựng dựa trên các toolbox có sẵn, tuy nhiên, hiện nay hầu hết các designer ưu tiên sử dụng HTML và CSS để thiết kế website Điều này dẫn đến khó khăn trong quá trình thiết kế, làm giảm tính linh hoạt của các sản phẩm cuối cùng.
- Với những khó khăn như vậy thì Microsoft đã cho ra đời ASP.Net MVC.
Lịch sử ra đời của MVC
Vào những năm 70 của thế kỷ 20, tại phòng thí nghiệm Xerox PARC ở Palo Alto, giao diện đồ họa (GUI) và lập trình hướng đối tượng (Object Oriented Programming) đã được phát triển, cho phép lập trình viên tương tác với các thành phần đồ họa như những đối tượng có thuộc tính và phương thức riêng Đặc biệt, các nhà nghiên cứu tại Xerox PARC đã tiên phong giới thiệu kiến trúc MVC (Model – View - Controller), mở ra hướng đi mới cho phát triển phần mềm.
MVC, hay Mô hình - View - Bộ điều khiển, được phát minh bởi Trygve Reenskang tại Xerox Parc vào những năm 70 Lần đầu tiên MVC được giới thiệu công khai trong Smalltalk-80 Các tài liệu quan trọng đầu tiên về MVC được công bố trong bài viết “A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk-80” của Glenn Krasner và Stephen Pope, xuất bản vào tháng 8/9 năm 1988.
- Thế hệ tiếp theo của MVC xuất hiện cùng với hệ điều hành NeXT và các phần mềm của nó.
Kiến trúc phần mềm đang ngày càng được cải tiến và phát triển để đáp ứng các thách thức mới và cung cấp giải pháp hiệu quả cho quy trình phát triển phần mềm.
- Vì vậy sau đó, lần lượt các MVC framework ra đời dựa trên mô hình MVC như: CodeIgniter, Zend, ASP.NET MVC
Thời gian phát hành Version
Bảng 1 Giai đoạn phát triển của ASP.NET
Sự khác nhau giữa MVC và web form
Thành phần ASP.NET được chia ra làm 3 phần :
Trong mô hình MVC, mọi tương tác của người dùng với Views diễn ra thông qua các action trong Controllers, loại bỏ hoàn toàn việc sử dụng postback, lifecycle và events.
ASP.NET Web Forms utilize ViewState to manage the lifecycle of ASP.NET pages, enabling postbacks and the use of web controls and events to perform actions on the user interface However, due to user interactions, ASP.NET Web Forms often exhibit slower performance In contrast, MVC allows for easier testing and debugging through the use of unit tests, which can effectively assess the functionality of controllers.
Trong ASP.NET Webform, mọi tiến trình của ASP.NET đều phải được thực thi, và việc thay đổi ID của bất kỳ Controller nào sẽ tác động đến toàn bộ ứng dụng.
Bảng 2 Sự khác nhau giữa MVC và Web Form
Tổng quan mô hình MVC
Hình 2 Tổng quan mô hình MVC
- Chúng ta chia ra 3 tầng như sau:
+ Presentation Layer (tầng 3): tầng này giúp hiển thị giao diện
+ Business Logic Layer (tầng 2): tầng này chứa các hàm thực thi, giúp xử lý sự kiện xảy ra trên tầng Presentation Layer.
+ Data Access Layer (tầng 1): tầng này chứa hàm kết nối với các hệ quản trị cở sở dữ liệu như SQL Server, Mysql, Oracle …
Cấu trúc cổ điển One-Tier, như hình mô tả, bao gồm ba tầng được trộn lẫn vào nhau Việc làm việc với cấu trúc này thường gặp khó khăn trong việc chỉnh sửa mã nguồn và giao diện do sự kết hợp chặt chẽ giữa các tầng.
Cấu trúc Two-Tier ra đời nhằm cải thiện vấn đề của cấu trúc One-Tier, nhưng vẫn chưa khắc phục được khó khăn trong việc chỉnh sửa code và giao diện do sự phân chia tầng.
2 và tầng 3 vẫn chưa tách biệt khỏi nhau.
Cấu trúc Three-Tier ra đời nhằm khắc phục những vấn đề mà One-Tier và Two-Tier gặp phải Việc phân tách ba tầng giúp cho việc chỉnh sửa mã nguồn và giao diện trở nên dễ dàng hơn, từ đó tối ưu hóa hiệu suất của ứng dụng.
Mô hình minh họa MVC :
Hình 3 Mô hình minh họa MVC
- Model :Model chứa và thể hiện các đặc tính và logic ứng dụng Theo một cách hiểu khác
Mô hình đại diện cho dữ liệu và logic cốt lõi, bao gồm các lớp (class) chứa thông tin về các đối tượng cần thao tác Chẳng hạn, lớp "Sách" lưu trữ các thông tin như "Tên", "Ngày phát hành", "Giá" và "Nhà sản xuất".
View là thành phần chịu trách nhiệm hiển thị một hoặc nhiều Model một cách trực quan Nó nhận thông tin từ Model và trình bày chúng trên trang web.
- Controller :Controller nằm giữa tầng View và Model, làm nhiệm vụ tìm kiếm, xử lý một hoặcnhiều Model, sau đó gửi Model tới View để View hiển thị.
Đặc điểm của ASP.NET MVC Framework
- Tiếp tục hỗ trợ các tính năng trong ASP.NET
The article discusses the support for using file types such as ASPX, ASCX, and Master as View components in ASP.NET applications It emphasizes the comprehensive security features of ASP.NET, including Form and Windows authentication, URL authorization, membership and roles management, as well as output and data caching Additionally, it highlights the clear separation of concerns, which facilitates Test Driven Development (TDD) practices, enhancing the overall development process.
Có thể thực hiện kiểm thử đơn vị trong ứng dụng mà không cần chạy Controllers cùng với tiến trình của ASP.NET, và sử dụng bất kỳ framework kiểm thử đơn vị nào như NUnit, MBUnit, hay MS Test MVC được thiết kế để dễ dàng mở rộng, thay thế và tùy biến Hệ thống ánh xạ URL mạnh mẽ cho phép xây dựng ứng dụng với các URL sạch Thay vì sử dụng mô hình post-back từ giao diện gửi đến server, ứng dụng chủ động chuyển các post-back từ View trực tiếp đến lớp Controller.
- Hỗ trợ nhiều công cụ tạo View (Support for Multiple View Engines)
- Cho phép chọn công cụ tạo view Hộp thoại New Project cho phép xác định view engine mặc định cho một project.
+ Hay một view engine nguồn mở như Spark, NHaml, NDjango.
- ASPNETMVC Framework có một bộ máy ánh xạ URL thật sự mạnh mẽ.
- Bộ máy này cung cấp phương pháp rất linh hoạt trong việc ánh xạ URLs sang các Controller Classes.
Bạn có thể dễ dàng thiết lập các quy tắc và cấu hình đường dẫn trong ASP.NET, từ đó giúp xác định Controller và hành động (action) cần thực hiện dựa trên những quy tắc đó.
- ASP.NET còn có khả năng phân tích URL, chuyển các thông số trong URL thành các tham số trong lời gọi hàm của Controller.
- Model Binding là tính năng thế mạnh của ASP.NET MVC (và bây giờ nó cũng được áp dụng cho cả Web Forms trong phiên bản ASP.NET 4.5).
- Hỗ trợ bạn viết phương thức nhận một đối tượng tùy biến như là một tham số
Với sự hỗ trợ của Model Binding, bạn có thể tập trung vào việc cài đặt các nghiệp vụ logic mà không cần lo lắng về việc ánh xạ dữ liệu từ người dùng sang các đối tượng NET.
Tính năng kiểm tra hợp lệ trong ASP.NET MVC là một công cụ mạnh mẽ, giúp đảm bảo dữ liệu đầu vào chính xác trước khi gọi phương thức action hoặc sau khi phương thức action được thực thi.
Từ ASP.NET MVC 5 đi kèm với một công cụ View mới có tên là Razor với những lợi ích sau:
- Củ pháp Razor là sạch sẽ và xúc tích, đòi hỏi một số lượng tối thiểu các tổ hợp phím.
- Việc tìm hiểu Razor tương đối dễ dàng vì nó dựa trên ngôn ngữ C# và Visual Basic.
- Visual Studio bao gồm IntelliSense và mã cú pháp Razor được màu hóa.
- Với Razor views có thể kiểm tra từng đơn vị mà không đòi hỏi bạn phải chạy các ứng dụng hoặc phải chạy website.
3.5 Các cải tiến của mô hình MVC 5
- Với MVC5 thì cải tiến hơn so với ASP.NET MVC4,Bootstrap được thay thế mẫu MVC mặc định.
- Chứng thực người dùng Authentication Filter được tuỳchỉnh hoặc chứng thực từ hãng thứ 3 cung cấp.
- Với Filter overrides, chúng ta có thể Filter override trênMethod hoặc Controller.
- Thuộc tính Routing được tích hợp vào MVC5.
Bootstrap
Bootstrap là một framework CSS do Twitter phát triển, cung cấp bộ chọn, thuộc tính và giá trị để giúp web designer tránh lặp lại khi tạo class CSS và mã HTML trong dự án Ngoài CSS, Bootstrap còn hỗ trợ các chức năng tiện ích được viết bằng jQuery như Carousel, Tooltip và Popovers.
4.1 Những lý do để sử dụng Bootstrap:
Bài viết này được sáng tác bởi những người có gu thẩm mỹ và tài năng từ khắp nơi trên thế giới Trình duyệt đã được kiểm tra kỹ lưỡng về tính tương thích với thiết bị, mang lại sự tin cậy cho kết quả mà bạn tạo ra, đôi khi không cần kiểm tra lại Điều này giúp dự án của bạn tiết kiệm thời gian và chi phí.
Chỉ cần có kiến thức cơ bản về HTML, CSS, Javascript và Jquery, bạn có thể sử dụng Bootstrap để thiết kế một trang web sang trọng và hoàn chỉnh mà không cần viết quá nhiều mã CSS.
Giao diện mặc định của nó mang màu xám bạc sang trọng và hỗ trợ nhiều component phổ biến cho các website hiện nay Là một mã nguồn mở, bạn có thể truy cập vào mã nguồn để tùy chỉnh theo sở thích cá nhân.
Bootstrap hỗ trợ Responsive nhờ vào việc sử dụng Grid System, với thiết kế theo xu hướng Mobile First, ưu tiên giao diện trên thiết bị di động Điều này giúp website của bạn tương thích với mọi kích thước màn hình mà không cần tạo thêm trang web riêng cho di động.
Đội ngũ phát triển Bootstrap đã giới thiệu tính năng Customizer, cho phép designer lựa chọn các thuộc tính và component phù hợp với dự án của họ Tính năng này giúp người dùng tiết kiệm thời gian và không cần tải toàn bộ mã nguồn về máy.
Một trong những vấn đề bảo mật quan trọng nhất là đảm bảo chỉ những người dùng hợp lệ được phép truy cập vào hệ thống Trong ASP.NET, hai khái niệm chính liên quan đến vấn đề này là Authentication (xác thực) và Authorization (phân quyền).
- Authentication là xác thực người dùng , trong MVC 5 Authentication Filter được tùy chỉnh hoặc chứng thực từ hãng thứ 3 cung cấp.
- Khi tạo 1 project MVC 5, người dùng được lựa chọn 4 loại security.
No Authentication Ứng dụng không hỗ trợ security
Accounts Ứng dụng sử dụng tài khoản được quản lý bởi SQL Server hoặc từ Gmail, Facebook,
Accounts Ứng dụng sử dụng tài khoản được quản lý bởi Active
Directory hoặc Windows Azure Directory.
Authentication Ứng dụng chạy trên Intranet tức sử dụng tài khoản windows để đăng nhập
Bảng 3 Các loại Authentication Filter
Mỗi loại bảo mật phù hợp với các ứng dụng khác nhau Khi chọn Tài Khoản Người Dùng Cá Nhân, ứng dụng chạy trên Internet sử dụng SQL Server để lưu trữ thông tin thành viên hoặc cho phép đăng nhập từ các hệ thống bên ngoài như Google và Facebook Người dùng có khả năng đăng ký, đăng nhập, thay đổi mật khẩu và đăng xuất bằng tài khoản cục bộ hoặc từ các nền tảng bên ngoài như Google và Facebook.
- Code của AccountController có 2 sự khác biệt:
+ Annotation [Authorize] được sử dụng để làm cho mọi action trong controllerkhông thẻ truy xuất khi chưa đăng nhập ngoại trừ action đó được đánh dấu vớiannotion [AllowAnontmous].
Thuộc tính UserManager được khởi tạo trong constructor nhằm quản lý các thành viên, cho phép thực hiện các chức năng bảo mật như đăng ký, đăng nhập và đổi mật khẩu.
5.Mô hình nghiệp vụ của hệ thống :
5.1 Chức năng của từng bộ phận :
Quản trị viên (Admin) là người quản lý trực tiếp trang web, đảm nhiệm việc vận hành và bảo trì hệ thống Họ có trách nhiệm quản lý thông tin các khóa học và đảm bảo an toàn cho dữ liệu trên website.
- Học sinh (Viewer) : có chức năng xem những kiến thức về CSS, HTML, Javascript, thực hành HTML.
5.2 Yêu cầu chức năng nghiệp vụ của hệ thống :
Quản trị viên (Admin) - Đăng nhập, đăng xuất
- Quản lý danh sách khóa học
- Quản lý danh sách bài giảng
- Quản lý danh sách câu hỏi
- Quản lý danh sách tài khoản Học sinh ( Viewer) - Đăng ký
- Hệ thống chạy đúng và ổn định
- Giao diện thân thiện, dễ sử dụng
- Đáp ứng được yêu cầu của người dùng
PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Xác định các loại thực thể
- tblTaiKhoan ( TaiKhoan, MatKhau, IdChucNang, Ho, Ten)
- tblBaiGiang (IdBaiGiang, IdKhoaHoc,TenBai,NoiDung,NgayTao, ThoiGianHien, TrangThai )
- tblCauHoi ( IdCauHoi, IdBaiGiang, TieuDe, NoiDung, DapAn, TrangThai)
- tblKhoaHoc (IdKH, TenKhoa, Mota, ThoiGianTao)
Sơ đồ phân rã chức năng
Hình 5 Sơ đồ phân rã chức năng của trang web
Mô hình Use Case
- Đồ án có các Actor như sau : Quản trị viên ( Admin ) và học sinh ( Viewer )
3.2 Xác định các Use Case
(Admin) Đăng nhập, quản lý danh sách khóa học, quản lý danh sách bài giảng, quản lý danh sách câu hỏi, quản lý danh sách tài khoản
(Viewer) Đăng ký tài khoản, xem khóa học, làm bài tập, thực hành HTML
Bảng 5 Xác định Use Case
3.3 Xây dựng biểu đồ Use Case tổng quát:
3.3.1 Biểu đồ Use Case tổng quát:
Hình 6 Use Case tổng quát
3.3.2 Biểu đồ Use Case cho Viewer
Hình 7 Use Case cho Viewer
3.3.3 Biểu đồ Use Case cho Admin
Hình 8 Use Case cho Admin
Đặc tả Use Case
Description Cho phép actor đăng nhập vào hệ thống
Pre-condition Actor đã có tài khoản tạo sẵn
Post-condition Nếu đăng nhập thành công – truy cập vào Website
Trigger Actor nhấn [Đăng nhập]
2 Hiển thị màn hình đăng nhập
3 Actor nhập tên đăng nhập và mật khẩu
4 Nhấn nút [Đăng nhập] hoặc nhấn Enter.
Exception flow Nếu thất bại – thông báo lỗi
Bảng 6 Use Case đăng nhập
Description Cho phép actor đăng xuất khỏi tài khoản hệ thống
Pre-condition Đăng nhập vào thành công vào hệ thống
Post-condition Đăng xuất tài khoản – quay lại trang Đăng nhập
Trigger Actor nhấn [Đăng xuất]
Basic flow Nhấn [Đăng xuất]
Bảng 7 Use Case đăng xuất
Description Cho phép actor tạo tài khoản thành viên
Pre-condition Actor phải điền đầy đủ thông tin
Post-condition Tài khoản thành viên mới được tạo
Trigger Actor nhấn [Đăng ký]
Basic flow 1 Nhập thông tin tài khoản
Exception Nhập thông tin tài khoản trùng – thông báo lỗi
Xác nhận Password không đúng – thông báo lỗi
Bảng 8 Use Case đăng kí
4.4 Use Case 4 – Xem khóa học
Description Cho phép actor xem khóa học
Pre-condition Actor truy cập vào Website
Post-condition Hiển thị thông tin khóa học
Trigger Actor nhấn vào một thẻ bất kỳ
Basic flow Actor nhấn vào một thẻ bất kỳ
Bảng 9 Use Case xem khóa học
4.5 Use Case 5 – Làm bài tập
Description Cho phép actor làm bài tập và nhận kết quả ngay lập tức
Pre-condition Đăng nhập. Đăng nhập để làm bài tập
Post-condition Đăng nhập thành công và thực hiện bài bài
2 Nếu đúng => hiển thị trả lời đúng Sai => hiển thị trả lời sai
Bảng 10 Use Case làm bài tập
4.6 Use Case 6 – Thực hành HTML
Description Cho phép học sinh thực hành trực tiếp trên trang web
Tiến hành code HTML trên trang web
Post-condition Code sẽ được nhận trên trang web
2 Code sẽ được thực thi ngay bên phải của trang web
Bảng 11 Use Case thực hành HTML
Cơ sở dữ liệu
Hình 9 Cơ sở dữ liệu
- Mô tả cơ sở dữ liệu :
STT Thuộc tính Kiểu dữ liệu Ràng buộc
1 TaiKhoan Nvachar(50) Not null Tài khoản
2 MatKhau Nvachar(50) Not null Mật khẩu
3 IdChucNang Int Not null Mã chức năng
4 Ho Nvachar(50) Not null Họ
5 Ten Nvachar(50) Not null Tên
Bảng 12 Mô tả cơ sở dữ liệu của Tài Khoản
STT Thuộc tính Kiểu dữ liệu Ràng buộc
1 IdBaiGiang int Not null Mã bài giảng
2 IdKhoaHoc int Not null Mã khóa học
3 TenBai Int Not null Tên bài giảng
4 NoiDung Nvachar(MAX) Not null Nội dung bài giảng
5 NgayTao datetime Not null Ngày tạo
6 ThoiGianHien datetime Not null Thời gian hiển thị
7 TrangThai bit Not null Trạng thái
Bảng 13 Mô tả cơ sở dữ liệu của Bài Giảng
STT Thuộc tính Kiểu dữ liệu Ràng buộc
1 IdCauHoi int Not null Mã câu hỏi
2 IdBaiGiang int Not null Mã bài giảng
3 TieuDe Nvachar(500) Not null Tiêu đề
4 NoiDung Nvachar(MAX) Not null Nội dung bài giảng
5 DapAn Nvchar(100) Not null Đáp án
6 TrangThai Bit Not null Trạng thái
Bảng 14 Mô tả cơ sở dữ liệu của Câu Hỏi
STT Thuộc tính Kiểu dữ liệu Ràng buộc
1 Id Int Not null Mã chức năng
2 TenChucNang Nvachar(50) Not null Tên chức năng
Bảng 15 Mô tả cơ sở dữ liệu của Chức Năng
STT Thuộc tính Kiểu dữ liệu Ràng buộc
1 IdKH Int Not null Mã khóa học
2 TenKhoa Nvachar(100) Not null Tên khóa học
3 Anh Nvachar (50) Not null Ảnh
4 MoTa Nvachar(200) Not null Mô tả
5 ThoiGianTao Datetime Not null Thời gian tạo
Bảng 16 Mô tả cơ sở dữ liệu của Khóa Học
STT Thuộc tính Kiểu dữ liệu Ràng buộc
3 ThoiGian Int Not null Thời gian
Bảng 17 Mô tả cơ sở dữ liệu của Quá Trình
KẾT QUẢ THỰC NGHIỆM
Giao diện trang chủ
Hình 10 Giao diện trang chủ
- Mô tả : Giao diện trang chủ tương tác với học sinh
- Hoạt động : đăng nhập, xem khóa học, làm bài tập, thực hành HTML
Giao diện khóa học HTML
Hình 11 Giao diện khóa học HTML
- Mô tả : giao diện khóa học hiển thị nội dung
- Hoạt động : hiển thị nội dung khóa học HTML cho học sin
Giao diện khóa học CSS
Hình 12 Giao diện khóa học CSS
- Mô tả : giao diện khóa học hiển thị nội dung
- Hoạt động : hiển thị nội dung khóa học CSS cho học sinh
Giao diện khóa học Javascript
Hình 13 Giao diện khóa học Javascript
- Mô tả : giao diện khóa học hiển thị nội dung
- Hoạt động : hiển thị nội dung khóa học Javascript cho học sinh
Giao diện bài tập CSS, HTML Javascript
Hình 14 Giao diện bài tập HTML, CSS, Javascript
- Mô tả : giao diện làm bài tập, học sinh thao tác trả lời câu hỏi trên trang
- Hoạt động : điền đáp án và kiểm tra câu trả lời là đúng hay sai
Giao diện thực hành HTML
Hình 15 Giao diện thực hành HTML
- Hoạt động : hiển thị kết quả bên màn hình bên phải
Giao diện đăng nhập
Hình 16 Giao diện đăng nhập
- Mô tả : giao diện đăng nhập
- Hoạt động : cho phép người dùng đăng nhập vào hệ thống
Giao diện đăng ký
Hình 17 Giao diện đăng ký
- Mô tả : giao diện đăng ký
- Hoạt động : cho phép người dùng đăng ký tài khoản
Giao diện trang chủ trang Admin
Hình 18 Giao diện trang chủ Admin
- Mô tả : giao diện trang chủ trang Admin
- Hoạt động : cho phép Admin thao tác các quản lý trên trang
Giao diện danh sách khóa học
Hình 19 Giao diện danh sách khóa học
- Mô tả : giao diện danh sách khóa học
- Hoạt động : cho phép admin thêm, xóa, sửa khóa học
Giao diện danh sách bài giảng
Hình 20 Giao diện danh sách bài giảng
- Mô tả : giao diện danh sách bài giảng
- Hoạt động : cho phép admin thêm, xóa, sửa bài giảng
Giao diện danh sách câu hỏi
Hình 21 Giao diện danh sách câu hỏi
- Mô tả : giao diện danh sách câu hỏi
- Hoạt động : cho phép admin thêm, xóa, sửa câu hỏi
Giao diện danh sách tài khoản
Hình 22 Giao diện danh sách tài khoản
- Mô tả : giao diện danh sách tài khoản
- Hoạt động : cho phép admin thêm, xóa,sửa, phân quyền tài khoản
TỔNG KẾT VÀ HƯỚNG PHÁT TRIỂN CHO WEBSITE
Tổng kết
Hệ thống Website học tập được thiết kế để hỗ trợ sinh viên tự học lập trình Web miễn phí, tạo ra một nguồn tài nguyên bổ sung kiến thức hữu ích cho học sinh.
Trong quá trình phát triển dự án Website học tập điện tử, nhóm đã tập trung vào việc hoàn thiện các chức năng cơ bản như đẩy dữ liệu từ cơ sở dữ liệu, cũng như thực hiện các thao tác thêm, xóa và sửa đổi bảng Đồng thời, nhóm cũng đã chú trọng vào việc thực hành HTML trên trang web.
- Thông qua đồ án, nhóm chúng em đạt được nhiều mục tiêu đặt ra và bổ sung rất nhiều kiến thức mới.
Kết quả đạt được
- Phân tích và thiết kế Database
- Nắm được một ngôn ngữ lập trình
- Xây dựng được cơ sở dữ liệu và giao diện cho chương trình bằng hệ quản trị cơ sở dữ liệu Microsoft SQL Server và Visual Studio 2019
- Quản lý được những dữ liệu cần thiết.
Hạn chế
- Chương trình không hoạt động được trong trình trạng không có Internet.
- Thiếu kinh nghiệm trong việc phát triển dự án nên gặp nhiều vấn đề về cách tổ chức dự án và thời gian thực hiện.
Hướng phát triển
- Chỉnh sửa giao diện đẹp mắt, trực quan, tối ưu hóa hiển thị và độ mượt mà của các trang người dùng.
- Nâng cấp thêm chức năng tính điểm cho học sinh ngay trên web, và sửa lỗi của câu sai, hiển thị đáp án đúng
- Xây dựng và hoàn thiện chức năng trao đổi trực tiếp với học sinh bằng chatbox.