Bối cảnh và vấn đề nghiên cứu

Đề tài "Xây dựng trang web học tiếng Anh online" được thực hiện bởi hai sinh viên Nguyễn Trọng Đạt và Nguyễn Duy Lâm dưới sự hướng dẫn của ThS. Nguyễn Trần Thi Văn tại Khoa Đào tạo Chất lượng cao, ngành Công nghệ Thông tin, chuyên ngành Công nghệ Phần mềm thuộc Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh (khóa học 2016 – 2020).

Lý do chọn đề tài xuất phát từ sự phát triển của công nghệ thông tin trong giáo dục trực tuyến, khi có hơn 600 triệu người trên thế giới lựa chọn hình thức đào tạo qua mạng. Nhóm tác giả chỉ ra các yếu tố thực tiễn thúc đẩy việc xây dựng hệ thống:

  • Giải quyết rào cản thời gian cho nhóm người học bận rộn, cho phép tận dụng các khoảng thời gian di chuyển (như đi xe buýt) để tiếp cận bài học.
  • Tối ưu hóa chi phí học tập: Dẫn chứng số liệu từ trang web học tiếng Anh trực tuyến (dẫn chứng mức phí khoảng 2 USD/tháng cho 55.000 trang tài liệu so với hình thức học trực tiếp tại trung tâm khoảng 25 USD/tháng).
  • Nâng cao tính tiện lợi: Tác giả chỉ ra trong 60 phút học trực tuyến, người học có thể tiếp cận hơn 15 từ vựng mới cùng cách phát âm, 5 cấu trúc ngữ pháp và 2 bài luyện nghe kèm hội thoại.
  • Xây dựng môi trường học tập chuyên nghiệp, lấy người học làm trung tâm, nội dung bám sát các chủ điểm thời sự, văn hóa, thể thao và giải trí, đồng thời tích hợp kênh phân phối/bán sản phẩm tài liệu trực tuyến.

Mục tiêu nghiên cứu của đề tài gồm 3 mục tiêu cụ thể:

  1. Xây dựng một môi trường học tiếng Anh cho mọi người.
  2. Gắn kết mọi người học tiếng Anh tốt hơn.
  3. Kết nối giữa ASP.NET Core và Angular 8 CLI để xây dựng một website hoàn chỉnh.

Nhiệm vụ nghiên cứu được phân định thành hai mảng:

  • Nghiên cứu lý thuyết: Tìm hiểu tổng quan về framework Angular và nền tảng ASP.NET Core.
  • Thực hành phần mềm:
    • Phân hệ Quản trị (Admin): Xây dựng các mô-đun quản lý đề thi, câu hỏi, sản phẩm, thành tích người dùng và duyệt hóa đơn mua hàng.
    • Phân hệ Người dùng (Client): Triển khai các chức năng luyện tập ngữ pháp, làm bài thi đấu trực tuyến, mua vật phẩm/tài liệu học tập và tích lũy điểm thành tích cá nhân.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng kỹ thuật: Nền tảng Back-End sử dụng ASP.NET Core; nền tảng Front-End sử dụng Angular 8 CLI, thư viện giao diện Ant-Design (Ng-Zorro) và ngôn ngữ TypeScript.
  • Phạm vi không gian: Triển khai ứng dụng web học trực tuyến trong phạm vi đồ án tốt nghiệp đại học tại Trường Đại học Sư phạm Kỹ thuật TP.HCM.
  • Phạm vi thời gian: Đề tài được thực hiện trong thời gian 15 tuần, từ ngày 24/02/2020 đến ngày 01/07/2020.

Cơ sở lý thuyết và phương pháp

Đồ án tổng hợp cơ sở lý thuyết về các công nghệ lập trình web hiện đại ở cả hai phía máy khách (Client-side) và máy chủ (Server-side):

  • Angular 8 CLI và hệ sinh thái Front-End:

    • Ivy Rendering Engine: Động cơ dựng hình thế hệ mới của Google, giúp thu nhỏ kích thước gói mã nguồn (bundle size), tăng tốc độ biên dịch (dự kiến hoàn thiện ở Angular 9), tăng cường khả năng kiểm tra kiểu (type-checking) trong bản mẫu (template), hỗ trợ gỡ lỗi trực tiếp trên template và tương thích ngược với các phiên bản trước.
    • Differential Loading: Kỹ thuật tối ưu hóa mã nguồn theo trình duyệt đích. CLI mặc định nhắm đến chuẩn es2015 trong tệp tsconfig.json và hỗ trợ các trình duyệt cũ hơn (như Internet Explorer 9) thông qua tệp browserlist.
    • Bazel: Công cụ dựng ứng dụng (build tool) hỗ trợ quá trình biên dịch gia tăng (incremental build) và song song.
    • Thay đổi trong điều hướng tải chậm (Lazy Loading): Cú pháp loadChildren dạng chuỗi đường dẫn bị khai tử (deprecated), chuyển sang sử dụng hàm import() dạng lời hứa (Promise) chuẩn ECMAScript.
    • Web Worker: Tích hợp tiến trình chạy nền độc lập ngoài luồng giao diện chính của JavaScript, cấu hình trực tiếp qua Angular CLI thông qua tệp tsconfig.worker.json.
    • Cải tiến thành phần: Chuyển đổi hoàn toàn từ @angular/http sang @angular/common/http; quy định rõ cờ static: boolean trong bộ điều phối @ViewChild và @ContentChild nhằm xác định thời điểm khởi tạo phần tử trong DOM (ngOnInit hoặc sau khi render view); hỗ trợ bản mẫu SVG tĩnh; hỗ trợ công cụ quản lý gói PNPM và bộ phân tích mã tĩnh Codelyzer 5.0.
    • Thư viện giao diện Ant-Design (Ng-Zorro): Bộ thành phần UI doanh nghiệp viết bằng TypeScript dành cho Angular, hỗ trợ chế độ OnPush, chạy được trên các trình duyệt hiện đại, IE11+, Electron và hỗ trợ render phía máy chủ (SSR).
    • Ngôn ngữ TypeScript: Phiên bản nâng cao của JavaScript, bổ sung cơ chế kiểm tra kiểu tĩnh (static typing), mô hình lập trình hướng đối tượng (OOP: đóng gói, kế thừa, giao diện, phương thức ảo, trừu tượng) và các tính năng của chuẩn ECMAScript 2015 (ES6).
  • Nền tảng ASP.NET Core Back-End:

    • Nền tảng mã nguồn mở, đa nền tảng (chạy trên Windows, macOS, Linux, Docker, Nginx, IIS).
    • Kiến trúc đường ống xử lý yêu cầu HTTP (HTTP request pipeline) dạng mô-đun, tích hợp sẵn cơ chế tiêm phụ thuộc (Dependency Injection - DI).
    • Mô hình lập trình hợp nhất giữa Web API và ASP.NET Core MVC/MVVM; kết hợp Razor Pages, Tag Helpers, cơ chế ràng buộc mô hình (Model Binding) và xác thực mô hình dữ liệu (Model Validation) ở cả hai phía máy khách lẫn máy chủ.
    • Hỗ trợ triển khai song song nhiều phiên bản (side-by-side) trên cùng một máy chủ thông qua hệ thống gói NuGet.

Phương pháp nghiên cứu được nhóm tác giả áp dụng bao gồm:

  1. Phương pháp phân tích và thiết kế hệ thống phần mềm: Khảo sát yêu cầu nghiệp vụ, định danh các tác nhân (Actor), xây dựng sơ đồ ca sử dụng tổng quát (Use Case Diagram) và bảng đặc tả kịch bản ca sử dụng chi tiết (Basic Flow, Alternative Flow, Pre-condition).
  2. Phương pháp mô hình hóa dữ liệu quan hệ: Xác định các thực thể nghiệp vụ, chuẩn hóa các trường thông tin, thiết kế khóa chính (PK), khóa ngoại và thiết lập các bảng ánh xạ quan hệ nhiều - nhiều (Mapping tables).
  3. Phương pháp kiểm thử hộp đen (Black-box Testing): Xây dựng các bộ kịch bản kiểm thử (Test Cases) có điều kiện đầu vào, thao tác thực hiện và kết quả kỳ vọng cho từng màn hình chức năng.

Nguồn dữ liệu của đề tài bao gồm hệ thống dữ liệu câu hỏi trắc nghiệm, bài học ngữ pháp tiếng Anh, thông tin danh mục đề thi, dữ liệu sản phẩm/tài liệu học tập và tài khoản người dùng được nhóm sinh viên trực tiếp thiết kế, nhập liệu vào cơ sở dữ liệu của phần mềm.


Thiết kế và triển khai

Hệ thống được thiết kế theo mô hình kiến trúc phân lớp, tách biệt hoàn toàn giữa giao diện người dùng (Front-End SPA - Single Page Application) và dịch vụ xử lý nghiệp vụ/lưu trữ dữ liệu (Back-End RESTful Web API).

1. Kiến trúc công nghệ

  • Phía máy khách (Client-side): Phát triển trên nền tảng Angular 8 CLI, ngôn ngữ lập trình TypeScript 3.4, sử dụng bộ thư viện thành phần giao diện Ng-Zorro (Ant-Design). Ứng dụng điều hướng người dùng bằng Router đa cấp có áp dụng kỹ thuật Lazy Loading module để tối ưu thời gian tải trang.
  • Phía máy chủ (Server-side): Xây dựng bằng ASP.NET Core, viết bằng ngôn ngữ C#, cung cấp hệ thống API phục vụ các thao tác CRUD dữ liệu. Hệ thống tích hợp cơ chế xác thực tài khoản và phân quyền truy cập giữa người dùng (User) và quản trị viên (Admin).

2. Thiết kế cơ sở dữ liệu

Cơ sở dữ liệu của ứng dụng bao gồm 18 bảng dữ liệu quan hệ được nhóm tác giả thiết kế chi tiết:

STT Tên bảng CSDL Mục đích lưu trữ dữ liệu
1 Users Lưu trữ thông tin tài khoản người dùng và quản trị viên
2 Products Danh mục tài liệu, vật phẩm học tập trong cửa hàng
3 Bills Thông tin đơn hàng và hóa đơn mua sắm
4 Tournament Dữ liệu các giải đấu, cuộc thi trắc nghiệm tiếng Anh
5 UserTournametsMapping Ánh xạ người dùng tham gia vào các giải đấu
6 userproductId Ánh xạ quan hệ sở hữu sản phẩm của từng người dùng
7 Metadatatype Danh mục định nghĩa các loại siêu dữ liệu (metadata)
8 Metadatavalue Giá trị chi tiết tương ứng với từng loại siêu dữ liệu
9 AttachmentsFiles Lưu trữ thông tin các tệp đính kèm (âm thanh, hình ảnh)
10 Gramars Nội dung các chuyên đề, bài học lý thuyết ngữ pháp
11 UserGramarsmapping Theo dõi tiến độ và lịch sử học ngữ pháp của người dùng
12 Exams Danh mục đề thi và bài kiểm tra
13 UserExamsMapping Kết quả làm bài và lịch sử thi cử của người dùng
14 Achivements Danh mục các danh hiệu, mốc thành tích thưởng
15 UserChivementsMapping Ghi nhận thành tích mà từng người dùng đạt được
16 Question Ngân hàng câu hỏi trắc nghiệm tiếng Anh
17 UserQuestionMapping Ghi nhận câu trả lời và tương tác của người dùng với câu hỏi
18 Options Danh sách các phương án trả lời của từng câu hỏi

3. Kiểm thử hệ thống

Nhóm nghiên cứu triển khai quy trình kiểm thử phần mềm thông qua các bảng kịch bản kiểm thử (Test case) độc lập tại Chương 5:

  • Bảng 5.1 - Test case màn hình login: Kiểm tra các kịch bản để trống trường dữ liệu, sai mật khẩu, tài khoản không tồn tại và đăng nhập thành công.
  • Bảng 5.2 - Test case màn hình thêm sản phẩm: Kiểm tra tính toàn vẹn dữ liệu khi tạo mới sản phẩm trên giao diện quản trị.
  • Bảng 5.3 - Test case màn hình giỏ hàng: Kiểm tra xử lý cập nhật số lượng, tính tổng tiền và chuyển tiếp đến luồng thanh toán.
  • Bảng 5.4 - Test case màn hình luyện tập: Kiểm tra việc hiển thị nội dung câu hỏi, ghi nhận lựa chọn đáp án và nộp bài.
  • Bảng 5.5 - Test case màn hình thêm đề thi: Kiểm tra việc khởi tạo bộ đề, gán danh sách câu hỏi và lưu trữ cấu hình đề thi.

Nội dung chính theo từng chương

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT

Chương 1 cung cấp tổng quan về các công nghệ chính được ứng dụng trong đồ án:

  • Phân tích chi tiết các tính năng mới trên Angular 8 CLI: cơ chế biên dịch Ivy Rendering Engine giúp giảm dung lượng tệp gói, công cụ build Bazel, kỹ thuật Differential Loading theo chuẩn ECMAScript, sự đổi mới trong cấu hình tải chậm định tuyến (Lazy Loading), quản lý Web Worker, hệ thống theo dõi thu thập ng analytics, việc gỡ bỏ hoàn toàn thư viện cũ @angular/http, thay đổi tham số cấu hình tĩnh của ViewChild/ContentChild, hỗ trợ tệp SVG làm bản mẫu giao diện và tương thích công cụ kiểm tra chuẩn mã nguồn Codelyzer 5.0.
  • Giới thiệu thư viện Ant-Design (Ng-Zorro), các tính năng thiết kế giao diện doanh nghiệp, cấu hình cài đặt thông qua lệnh @angular/cli hoặc trình quản lý gói npm/yarn.
  • Trình bày ngôn ngữ TypeScript: cú pháp hướng đối tượng chặt chẽ, khả năng quản lý mã nguồn lớn theo module, cách cài đặt qua Node.js và câu lệnh npm install -g typescript.
  • Phân tích nền tảng ASP.NET Core: các đặc tính đa nền tảng, cơ chế tiêm phụ thuộc (Dependency Injection), kiến trúc pipeline xử lý HTTP, mô hình MVVM, công cụ hỗ trợ Tag Helper trong tệp Razor và các ưu nhược điểm so với nền tảng .NET Framework truyền thống.

CHƯƠNG 2: XÁC ĐỊNH MÔ HÌNH VÀ HÓA YÊU CẦU

Chương 2 tập trung vào việc mô hình hóa yêu cầu phần mềm bằng UML:

  • Xác định 2 tác nhân chính tham gia hệ thống: User (người học) và Admin (người quản trị).
  • Phân rã chức năng:
    • Tác nhân User: Thực hiện đăng ký, đăng nhập, quên mật khẩu, học ngữ pháp, luyện tập (luyện tập tổng hợp, luyện tập từ vựng), tham gia thi đấu giải đấu (tournament), mua sản phẩm/vật phẩm, thanh toán (bằng COD hoặc thẻ tín dụng) và theo dõi bảng thành tích cá nhân.
    • Tác nhân Admin: Quản lý tài nguyên hệ thống thông qua các thao tác xem, thêm, sửa, xóa (CRUD) đối với đề thi, câu hỏi, tài khoản người dùng, sản phẩm, quản lý hóa đơn và thành tích.
  • Thiết lập hệ thống 33 bảng phân tích ca sử dụng (từ Bảng 2.1 đến Bảng 2.33), bao gồm sơ đồ Use Case tổng quát, mô tả danh sách actor và đặc tả chi tiết từng luồng hoạt động (Basic Flow, Alternative Flow, Trigger, Điều kiện tiên quyết) cho từng tác vụ trên hệ thống.

CHƯƠNG 3: THIẾT KẾ CƠ SỞ DỮ LIỆU

Chương 3 trình bày toàn bộ kiến trúc cơ sở dữ liệu quan hệ của hệ thống:

  • Xây dựng sơ đồ thực thể mối quan hệ thể hiện cấu trúc liên kết giữa các bảng nghiệp vụ.
  • Đặc tả chi tiết cấu trúc 18 bảng dữ liệu quan hệ (từ Bảng 3.1 đến Bảng 3.18): xác định tên cột, kiểu dữ liệu, ràng buộc khóa chính (PK), khóa ngoại và mối liên kết bảng giữa người dùng, bài học, câu hỏi, đề thi, giải đấu và hóa đơn mua sắm.

CHƯƠNG 4: THIẾT KẾ GIAO DIỆN VÀ XỬ LÝ

Chương 4 mô tả chi tiết giao diện người dùng và thuật toán xử lý sự kiện tương ứng cho 21 màn hình chức năng:

  • Nhóm màn hình Quản trị (Admin): Màn hình quản lý đề thi (4.1), Màn hình quản lý câu hỏi (4.2), Màn hình quản lý loại MetaDataType (4.3), Màn hình quản lý MetaDataValue (4.4), Màn hình quản lý sản phẩm (4.5), Màn hình quản lý tạo đề thi (4.6), Màn hình quản lý thành tích (4.7), Màn hình quản lý hóa đơn (4.13).
  • Nhóm màn hình Người dùng (Client): Màn hình trang chủ (4.8), Màn hình cửa hàng (4.9), Màn hình quy trình đặt hàng bước 1 (4.10), Màn hình quy trình đặt hàng bước 2 (4.11), Màn hình thông báo giao hàng thành công (4.12), Màn hình làm bài thi (4.14), Màn hình luyện tập (4.15), Màn hình xem lại bài thi (4.16), Màn hình ngữ pháp (4.17), Màn hình ngữ pháp lý thuyết (4.18), Màn hình ngữ pháp luyện tập (4.19), Màn hình ngữ pháp kiểm tra (4.20), Màn hình cập nhật mật khẩu (4.21).
  • Mỗi màn hình đều được mô tả qua 2 bảng tài liệu kỹ thuật: Bảng thông tin các đối tượng điều khiển (Button, Input, Form, Grid) và Bảng xử lý logic sự kiện (từ Bảng 4.1 đến Bảng 4.38).

CHƯƠNG 5: CÀI ĐẶT VÀ KIỂM THỬ

Chương 5 ghi nhận kết quả triển khai thực tế và đánh giá phần mềm:

  • Cài đặt cấu hình môi trường lập trình cho Front-End (Node.js, Angular CLI, Ng-Zorro) và Back-End (ASP.NET Core SDK, hệ quản trị CSDL).
  • Tiến hành thực thi các ca kiểm thử chức năng (Bảng 5.1 đến Bảng 5.5) đối với các màn hình quan trọng: đăng nhập, thêm sản phẩm, giỏ hàng, luyện tập và thêm đề thi.
  • Tổng kết các kết quả đạt được, đánh giá các mặt hạn chế còn tồn tại và xác định định hướng hoàn thiện hệ thống trong giai đoạn tiếp theo.

Kết quả và đóng góp

Về kết quả đạt được, đồ án hoàn thành các nội dung kỹ thuật theo đúng mục tiêu đặt ra:

  • Nắm vững và áp dụng thành công các công nghệ mới gồm nền tảng ASP.NET Core phía Back-End và hệ thống Angular 8 CLI, TypeScript, Ng-Zorro phía Front-End.
  • Xây dựng hoàn chỉnh website học tiếng Anh online với đầy đủ các phân hệ chức năng:
    • Phân hệ Admin: Thực hiện trọn vẹn các thao tác CRUD quản lý ngân hàng câu hỏi, đề thi, sản phẩm/vật phẩm, tài khoản người dùng, duyệt hóa đơn bán hàng và quản lý danh mục thành tích.
    • Phân hệ Client: Cung cấp môi trường trực tuyến cho phép người dùng học lý thuyết ngữ pháp, làm bài tập trắc nghiệm, tham gia các kỳ thi đấu (tournament), mua sắm vật phẩm/sách học và tích lũy điểm kinh nghiệm/thành tích cá nhân.
  • Hoàn thiện tài liệu thiết kế hệ thống chi tiết bao gồm 18 bảng CSDL quan hệ, 21 giao diện màn hình chức năng kèm bảng mô tả đối tượng xử lý và 5 bộ kịch bản kiểm thử giao diện.

Về đóng góp học thuật và ứng dụng, đồ án là mô hình mẫu về việc tích hợp giữa nền tảng ASP.NET Core Web API với Single Page Application (Angular 8). Hệ thống kết hợp giữa phương pháp học tập ngôn ngữ có tính tương tác (luyện tập, thi đấu xếp hạng, tích lũy huy hiệu) và tính năng thương mại điện tử (giỏ hàng, thanh toán qua COD/thẻ tín dụng) nhằm duy trì động lực cho người học trực tuyến.


Hạn chế và hướng nghiên cứu tiếp

Dựa trên các hạn chế và nhược điểm được nhóm tác giả nêu trong văn bản:

  • Hạn chế:

    • Do thời gian thực hiện đề tài bị giới hạn trong 15 tuần và năng lực nhóm sinh viên còn ở mức khởi đầu, ứng dụng vẫn còn những thiếu sót trong quá trình vận hành thực tế.
    • Phạm vi kiểm thử mới chỉ tập trung vào kiểm thử hộp đen cho 5 màn hình chức năng chính, chưa triển khai các hình thức kiểm thử tự động, kiểm thử tải hoặc kiểm thử hiệu năng diện rộng.
    • Các công cụ mới như Bazel trong Angular 8 tại thời điểm làm đồ án chưa đạt trạng thái ổn định chính thức mà chỉ ở mức xem trước (preview).
  • Hướng nghiên cứu tiếp:

    • Khắc phục các nhược điểm còn tồn đọng trong quá trình vận hành hệ thống phần mềm.
    • Mở rộng thêm các tính năng nâng cao trong phân hệ luyện tập và thi đấu trực tuyến.
    • Tối ưu hóa hiệu năng hệ thống khi Angular cập nhật lên các phiên bản kế tiếp (như kích hoạt toàn diện động cơ biên dịch Ivy và áp dụng chính thức công cụ Bazel).

Giá trị tham khảo

Đồ án là tài liệu tham khảo hữu ích cho các đối tượng và mục đích sau:

  • Sinh viên chuyên ngành Công nghệ thông tin và Kỹ thuật phần mềm đang chuẩn bị thực hiện đồ án môn học hoặc khóa luận tốt nghiệp theo định hướng phát triển ứng dụng web phân tách rõ Front-End và Back-End.
  • Các nhà phát triển muốn nghiên cứu phương pháp cấu hình và liên kết giữa ASP.NET Core Web API với Angular 8 CLI và thư viện giao diện Ant-Design (Ng-Zorro).
  • Tài liệu mẫu về phương pháp lập hồ sơ thiết kế phần mềm chuẩn mực: từ việc phân tích tác nhân, xây dựng biểu đồ Use Case, lập bảng đặc tả ca sử dụng chi tiết (Basic/Alternative flows), chuẩn hóa 18 bảng cơ sở dữ liệu quan hệ cho đến thiết kế bảng xử lý đối tượng giao diện và lập kịch bản kiểm thử chức năng (Test cases).

Câu hỏi thường gặp

1. Đồ án sử dụng công nghệ nào cho phần giao diện máy khách (Front-End) và máy chủ (Back-End)?
Hệ thống sử dụng Angular 8 CLI kết hợp với thư viện Ant-Design (Ng-Zorro) và ngôn ngữ TypeScript cho phần Front-End; phía Back-End sử dụng nền tảng ASP.NET Core phát triển bằng ngôn ngữ C# để cung cấp các dịch vụ Web API.

2. Điểm mới quan trọng nhất của Angular 8 được tác giả trình bày trong cơ sở lý thuyết là gì?
Điểm mới quan trọng và được mong đợi nhất là động cơ kết xuất Ivy Rendering Engine, giúp giảm đáng kể kích thước gói mã nguồn (bundle size), tăng tốc độ biên dịch mã, hỗ trợ kiểm tra kiểu lỗi trực tiếp trong bản mẫu và hỗ trợ gỡ lỗi giao diện.

3. Cơ sở dữ liệu của trang web gồm bao nhiêu bảng và có những bảng nào phục vụ chức năng thi đấu và học tập?
Cơ sở dữ liệu của đề tài bao gồm 18 bảng. Trong đó, các bảng phục vụ chức năng thi đấu và học tập gồm: Tournament, UserTournametsMapping, Gramars, UserGramarsmapping, Exams, UserExamsMapping, Achivements, UserChivementsMapping, Question, UserQuestionMapping và Options.

4. Phân hệ người dùng (Client) trên website cung cấp những nhóm chức năng chính nào?
Phân hệ Client cho phép người dùng đăng ký, đăng nhập, học lý thuyết ngữ pháp, làm bài tập luyện tập (tổng hợp và từ vựng), tham gia giải đấu (tournament), mua sắm sản phẩm/vật phẩm học tập trong cửa hàng, thanh toán trực tuyến hoặc COD, và theo dõi thành tích cá nhân.

5. Nhóm tác giả đã thực hiện kiểm thử chức năng cho những màn hình nào trong Chương 5?
Trong Chương 5, nhóm tác giả xây dựng 5 bảng kịch bản kiểm thử (Test cases) lần lượt cho: Màn hình đăng nhập (Bảng 5.1), Màn hình thêm sản phẩm (Bảng 5.2), Màn hình giỏ hàng (Bảng 5.3), Màn hình luyện tập (Bảng 5.4) và Màn hình thêm đề thi (Bảng 5.5).


Kết luận

Đồ án tốt nghiệp "Xây dựng trang web học tiếng Anh online" của sinh viên Nguyễn Trọng Đạt và Nguyễn Duy Lâm đã giải quyết thành công bài toán xây dựng ứng dụng web học tập tương tác kết hợp thương mại điện tử trên cơ sở tích hợp ASP.NET Core và Angular 8 CLI. Công trình thể hiện tính học thuật và kỹ thuật hoàn chỉnh thông qua việc phân tích tỉ mỉ 33 ca sử dụng, xây dựng hệ thống cơ sở dữ liệu quan hệ 18 bảng, thiết kế 21 giao diện màn hình và hoàn thành các bộ kiểm thử chức năng thực tế trong khung thời gian 15 tuần. Đây là tài liệu tham khảo có giá trị ứng dụng cao cho sinh viên ngành Công nghệ phần mềm trong việc tìm hiểu quy trình phát triển ứng dụng web hiện đại.