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

Đồ án tốt nghiệp "Xây dựng website tìm kiếm phòng trọ tại thành phố Đà Nẵng" do sinh viên Lương Văn Chương (lớp 19T2, ngành Công nghệ Thông tin, Khoa Công nghệ Số, Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng) thực hiện dưới sự hướng dẫn của TS. Hoàng Thị Mỹ Lệ, hoàn thành vào tháng 02/2024.

Lý do chọn đề tài xuất phát từ thực tiễn phát triển nhanh chóng về kinh tế và du lịch của thành phố Đà Nẵng, tạo nên làn sóng di cư lớn từ lực lượng lao động, sinh viên và du khách. Sự gia tăng dân số cơ học này dẫn đến nhu cầu cấp bách về nhà ở tạm trú, đặc biệt là phân khúc phòng trọ giá rẻ và trung bình. Tuy nhiên, phương thức tìm kiếm phòng trọ truyền thống bộc lộ nhiều điểm hạn chế: người thuê phải di chuyển trực tiếp giữa nhiều địa điểm để khảo sát, tốn kém thời gian và chi phí, trong khi thông tin về giá thuê, vị trí, tiện nghi lại thiếu tính minh bạch và đồng bộ. Về phía chủ trọ, việc tiếp cận khách hàng tiềm năng chủ yếu dựa vào biển treo hoặc phương thức truyền miệng với hiệu quả hạn chế. Do đó, việc xây dựng một nền tảng website trực tuyến là cần thiết nhằm kết nối cung - cầu, cung cấp thông tin phòng trọ đầy đủ mà không đòi hỏi người dùng phải đến tận nơi để khảo sát ban đầu.

Mục tiêu nghiên cứu của đề tài được tác giả xác định cụ thể:

  1. Xây dựng một nền tảng trực tuyến kết nối trực tiếp chủ phòng trọ với khách hàng có nhu cầu thuê phòng tại Đà Nẵng.
  2. Hỗ trợ khách hàng tìm kiếm và sàng lọc phòng trọ một cách thuận tiện, nhanh chóng thông qua môi trường web.
  3. Nâng cao trải nghiệm người dùng trong việc tiếp cận thông tin nhà ở tạm trú, đồng thời tạo ra môi trường kinh doanh dịch vụ cho thuê cạnh tranh và minh bạch.

Nhiệm vụ nghiên cứu của đồ án bao gồm:

  1. Thu thập thông tin, tài liệu liên quan và tiến hành khảo sát thực tế.
  2. Phân tích và thiết kế các yêu cầu chức năng của hệ thống.
  3. Phân tích và thiết kế cấu trúc cơ sở dữ liệu quan hệ.
  4. Thiết kế giao diện cho các phân hệ chức năng.
  5. Hiện thực hóa và xây dựng hệ thống website.
  6. Thực hiện kiểm thử website.
  7. Hoàn thiện báo cáo tổng hợp đồ án tốt nghiệp.

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

  • Đối tượng nghiên cứu: Hệ thống website tìm kiếm, đăng tin và quản trị dữ liệu phòng trọ.
  • Phạm vi không gian: Các phòng trọ cho thuê trên địa bàn thành phố Đà Nẵng, hỗ trợ phân loại theo cấp quận/huyện và phường/xã.
  • Phạm vi thời gian và kế hoạch nộp: Đồ án nộp ngày 21/01/2024 và được đánh giá nghiệm thu vào tháng 02/2024.

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

Đồ án ứng dụng mô hình kiến trúc MVC (Model - View - Controller) theo cơ chế kết xuất phía máy chủ (Server Side Rendering) để xây dựng hệ thống website:

  • Bộ định tuyến (Routing) tiếp nhận yêu cầu (HTTP Request) từ trình duyệt web của người dùng và chuyển hướng đến Controller xử lý tương ứng.
  • Controller kiểm tra và tương tác với các lớp/hàm trong Model để truy xuất hoặc cập nhật dữ liệu.
  • Model phản hồi dữ liệu về cho Controller; sau đó Controller chọn lọc View thích hợp để chuyển tiếp dữ liệu hiển thị.
  • View tiếp nhận dữ liệu từ Controller, tạo mã giao diện (GUI content) trả về trình duyệt hiển thị cho người dùng.

Phương pháp nghiên cứu thực tế được tác giả triển khai bao gồm:

  • Phương pháp nghiên cứu lý thuyết: Thu thập, tổng hợp và phân tích kiến thức từ sách chuyên ngành, tài liệu kỹ thuật, các bài viết và video hướng dẫn lập trình trên nền tảng YouTube; khảo sát các website và ứng dụng tìm kiếm tương tự để xây dựng cơ sở lý thuyết.
  • Phương pháp khảo sát và thu thập dữ liệu ban đầu: Số liệu thực tế được trao đổi và thu thập trực tiếp từ các chủ cho thuê phòng trọ trên địa bàn thành phố Đà Nẵng, kết hợp với các tài liệu tham khảo về lập trình web mã nguồn mở.

Thiết kế và triển khai

Hệ thống được thiết kế và xây dựng dựa trên ngăn xếp công nghệ mã nguồn mở phổ biến, kết hợp các công cụ hỗ trợ phân tích thiết kế phần mềm.

Thành phần Công nghệ / Công cụ sử dụng Vai trò trong hệ thống
Ngôn ngữ phía máy chủ PHP Xử lý logic nghiệp vụ và tương tác cơ sở dữ liệu
Framework máy chủ Laravel Framework Cung cấp cấu trúc MVC, bảo mật, định tuyến và hỗ trợ ORM
Ngôn ngữ giao diện HTML (HTML5), CSS (SASS), JavaScript Xây dựng cấu trúc, định dạng thẩm mỹ và tương tác giao diện
Thư viện Front-end Bootstrap 5, jQuery, jQuery confirm Thiết kế giao diện tương thích đa thiết bị và xử lý tương tác
Cơ sở dữ liệu MySQL (RDBMS) Quản trị và lưu trữ cơ sở dữ liệu quan hệ
Môi trường máy chủ giả lập XAMPP Giả lập môi trường máy chủ cục bộ (Apache, MySQL, PHP)
Công cụ mô hình hóa StarUML Thiết kế sơ đồ Use Case, sơ đồ hoạt động và sơ đồ ERD
Trình soạn thảo mã nguồn Visual Studio Code Soạn thảo mã nguồn, gỡ lỗi và quản lý phiên bản

Cấu trúc cơ sở dữ liệu của hệ thống được thiết kế chi tiết với 7 bảng quan hệ chính:

  1. Bảng nguoidung (Người dùng): Lưu trữ thông tin tài khoản gồm id (BIGINT, khóa chính), ten (VARCHAR), email (VARCHAR), sodienthoai (VARCHAR), anhdaidien (VARCHAR), sodukhadung (BIGINT - ghi nhận số dư tài khoản của khách hàng), matkhau (VARCHAR).
  2. Bảng phong (Phòng trọ): Chứa thông tin bài đăng phòng gồm id (BIGINT, khóa chính), ten, slug, anhdaidien, mota (TEXT), qhuyen_id (BIGINT, khóa ngoại trỏ về quận huyện), phuongxa_id (BIGINT, khóa ngoại trỏ về phường xã), gia (BIGINT), khoanggia (TINYINT), khoangkhuvuc (TINYINT), trangthai (TINYINT), khuvuc (INT), sophong (VARCHAR), chitietdiachi (VARCHAR), hot (TINYINT), danhmuc_id (BIGINT, khóa ngoại), thoigianbatdau_id (DATE), thoigianketthuc_id (DATE), xacthuc_id (BIGINT, khóa ngoại), dichvu_hot (TINYINT), map (TEXT).
  3. Bảng anh (Hình ảnh phòng trọ): Lưu ảnh thực tế của phòng trọ gồm id (BIGINT, khóa chính), ten (VARCHAR), duongdan (VARCHAR), phong_id (BIGINT, khóa ngoại).
  4. Bảng danhmuc (Danh mục): Quản lý phân loại tin gồm id (BIGINT, khóa chính), ten (VARCHAR), slug (VARCHAR), mota (VARCHAR), trangthai (BIGINT).
  5. Bảng diachi (Địa chỉ hành chính): Hỗ trợ phân cấp địa giới Đà Nẵng gồm id (BIGINT, khóa chính), ten (VARCHAR), slug (VARCHAR), trangthai (TINYINT), hot (TINYINT), quan_id (VARCHAR), loai (TINYINT: giá trị 1 tương ứng Quận/Huyện, giá trị 2 tương ứng Phường/Xã).
  6. Bảng lich_su_nap_tien (Lịch sử nạp tiền): Lưu vết giao dịch nạp tiền của người dùng gồm id (BIGINT, khóa chính), ten, duongdan, phong_id.
  7. Bảng lich_su_thanh_toan (Lịch sử thanh toán): Quản lý các giao dịch trừ tiền dịch vụ gồm id (BIGINT, khóa chính), Nguoidung_id (BIGINT, khóa ngoại), loai (TINYINT), phong_id (INT), tien (INT), trangthai (TINYINT).

Quy trình kiểm thử được triển khai xuyên suốt việc xây dựng các kịch bản use case, tập trung kiểm tra luồng dữ liệu hợp lệ và các tình huống ngoại lệ như: thông báo lỗi khi email đăng ký đã tồn tại, kiểm tra định dạng dữ liệu đầu vào, bắt lỗi khi bỏ trống các trường bắt buộc lúc đăng tin hoặc nhập sai mật khẩu đăng nhập.

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

Chương 1. Cơ sở lý thuyết

Chương 1 hệ thống hóa toàn bộ các nền tảng lý thuyết và công nghệ được sử dụng trong đề tài:

  • Ngôn ngữ đánh dấu và phong cách: Trình bày vai trò của HTML (phiên bản HTML5) do tổ chức W3C duy trì như khung xương định dạng trang web, kết hợp cùng CSS/SASS để thiết lập phong cách giao diện và màu sắc.
  • Ngôn ngữ kịch bản máy chủ PHP: Phân tích ưu điểm mã nguồn mở, tối ưu hóa cho web, cú pháp tương đồng với C và Java, thời gian phát triển ngắn và khả năng nhúng trực tiếp vào tài liệu HTML.
  • Hệ quản trị cơ sở dữ liệu MySQL: Giới thiệu hệ thống quản trị cơ sở dữ liệu quan hệ (RDBMS) vận hành theo mô hình client-server, tốc độ truy xuất cao, tính bảo mật và khả năng tương thích đa nền tảng.
  • Framework và thư viện hỗ trợ: Trình bày chi tiết Laravel Framework của tác giả Taylor Otwell với mô hình MVC, tính năng quản lý gói Composer và bảo mật cao; thư viện jQuery giúp rút gọn mã JavaScript; thư viện Bootstrap 5 hỗ trợ giao diện đáp ứng (responsive design) trên thiết bị di động, tablet và máy tính để bàn.
  • Công cụ phát triển: Mô tả phần mềm giả lập máy chủ cục bộ XAMPP (tích hợp Apache, MySQL, PHP, Perl) và trình biên tập Visual Studio Code với các tính năng gỡ lỗi, quản lý mã nguồn Git và tự động hoàn thiện mã.
  • Mô hình kiến trúc MVC: Trình bày nguyên lý hoạt động Server Side Rendering giữa các thành phần Controller, Model, View và Browser.

Chương 2. Phân tích thiết kế hệ thống

Chương 2 tập trung phân tích yêu cầu, mô hình hóa luồng xử lý và thiết kế dữ liệu cho hệ thống:

  • Xác định 3 nhóm tác nhân chính:
    • Khách vãng lai: Người dùng chưa có tài khoản, thực hiện xem thông tin, hướng dẫn bảng giá, đăng ký tài khoản, lọc và tìm kiếm phòng trọ theo quận/huyện, phường/xã, khoảng giá, diện tích và liên hệ chủ trọ.
    • Khách hàng: Người dùng đã đăng ký và đăng nhập hệ thống, có đầy đủ quyền tìm kiếm như khách vãng lai, đồng thời có thể quản lý thông tin tài khoản, đăng tin cho thuê mới, cập nhật bài đăng đã đăng, nạp tiền vào tài khoản và theo dõi lịch sử nạp tiền/thanh toán.
    • Quản trị viên (Admin): Đăng nhập trang quản trị riêng biệt; theo dõi số liệu thống kê tổng thể; quản lý danh mục phòng trọ; quản lý danh mục địa chỉ (quận/huyện, phường/xã); quản lý tài khoản thành viên; duyệt, xóa hoặc hủy tin đăng phòng trọ (có ghi rõ lý do hủy); quản lý các giao dịch nạp tiền của người dùng và theo dõi lịch sử thanh toán.
  • Xây dựng 18 bảng kịch bản Use Case chi tiết (từ Bảng 2.1 đến Bảng 2.18) kèm sơ đồ hoạt động (Activity Diagram từ Hình 2.2 đến Hình 2.16):
    • Kịch bản tìm kiếm phòng trọ (Bảng 2.1) và xem chi tiết (Bảng 2.2).
    • Kịch bản xem hướng dẫn và bảng giá (Bảng 2.3).
    • Kịch bản đăng ký (Bảng 2.4), đăng nhập người dùng (Bảng 2.5), cập nhật thông tin cá nhân (Bảng 2.6 và Bảng 2.9).
    • Kịch bản đăng tin (Bảng 2.7), cập nhật tin đăng (Bảng 2.8) và quản lý danh sách tin (Bảng 2.10).
    • Kịch bản nghiệp vụ quản trị: Đăng nhập admin (Bảng 2.11), quản lý danh mục (Bảng 2.12), quản lý địa điểm (Bảng 2.13), quản lý thành viên (Bảng 2.14), xem lịch sử thanh toán (Bảng 2.15), quản lý và duyệt tin đăng (Bảng 2.16), quản lý nạp tiền (Bảng 2.17 - xử lý chuyển đổi giữa các trạng thái "Khởi tạo", "Duyệt" và "Hủy bỏ"), xem thống kê tổng hợp (Bảng 2.18 - đếm số lượng tin đăng, thành viên, thanh toán, lịch sử nạp và tổng số tiền nạp).
  • Thiết kế cơ sở dữ liệu quan hệ: Đặc tả chi tiết cấu trúc kiểu dữ liệu, ràng buộc khóa chính và khóa ngoại cho 7 bảng dữ liệu (nguoidung, phong, anh, danhmuc, diachi, lich_su_nap_tien, lich_su_thanh_toan).

Chương 3. Xây dựng chương trình

Chương 3 trình bày kết quả hiện thực hóa giao diện website trên thực tế theo hai phân hệ độc lập:

  • Phân hệ giao diện người dùng (Khách vãng lai và Khách hàng):
    • Giao diện đăng ký và đăng nhập tài khoản.
    • Giao diện trang chủ hiển thị danh sách phòng trọ nổi bật, tin mới cập nhật.
    • Giao diện bộ lọc nâng cao cho phép lọc dữ liệu kết hợp theo danh mục, địa bàn quận/huyện, phường/xã, mức giá và diện tích.
    • Giao diện trang chi tiết phòng trọ hiển thị ảnh phòng, giá, diện tích, địa chỉ chi tiết, bản đồ tích hợp và số điện thoại liên hệ chủ trọ.
    • Giao diện hướng dẫn dịch vụ và bảng giá niêm yết các gói tin.
    • Giao diện người dùng đăng tin phòng trọ mới và biểu mẫu cập nhật bài đăng.
    • Giao diện quản lý thông tin tài khoản cá nhân, lịch sử nạp tiền và lịch sử thanh toán trừ tiền đăng tin.
  • Phân hệ giao diện trang quản trị (Admin Dashboard):
    • Giao diện đăng nhập trang quản trị bảo mật riêng.
    • Giao diện bảng điều khiển trung tâm (Dashboard) tổng hợp số liệu thống kê.
    • Giao diện quản lý danh mục phòng trọ (thêm, sửa, ẩn/hiện danh mục).
    • Giao diện quản lý địa giới hành chính (quận/huyện và phường/xã thuộc Đà Nẵng).
    • Giao diện quản lý khách hàng (xem danh sách, cập nhật thông tin hoặc xóa tài khoản).
    • Giao diện quản lý tin đăng: xem chi tiết bài đăng, duyệt tin để hiển thị ra trang chủ, hoặc hủy duyệt có kèm nội dung lý do hủy.
    • Giao diện quản lý nạp tiền: theo dõi yêu cầu nạp tiền, phê duyệt trạng thái cộng tiền vào tài khoản người dùng hoặc hủy giao dịch.
    • Giao diện theo dõi danh sách lịch sử thanh toán dịch vụ.

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

Kết quả kỹ thuật đạt được:

  • Đã phân tích, thiết kế và lập trình hoàn chỉnh hệ thống website tìm kiếm phòng trọ tại thành phố Đà Nẵng bằng mô hình kiến trúc MVC với PHP Laravel và MySQL.
  • Triển khai thành công 18 use case phân quyền rõ ràng giữa 3 tác nhân: Khách vãng lai, Khách hàng thành viên và Quản trị viên.
  • Xây dựng hệ thống cơ sở dữ liệu quan hệ gồm 7 bảng logic, quản lý thông tin phòng trọ, hình ảnh liên kết, phân cấp địa lý 2 cấp (quận/huyện và phường/xã) tại Đà Nẵng, cùng cơ chế số dư tài khoản và lịch sử giao dịch nạp/thanh toán.
  • Thiết kế hệ thống giao diện trực quan bằng Bootstrap 5, đáp ứng đầy đủ quy trình từ tìm kiếm, xem phòng, liên hệ, nạp tiền đến quản lý và kiểm duyệt tin.

Giải pháp và kiến nghị đề xuất:

  • Thiết lập quy trình kiểm duyệt tin đăng hai bước: Chủ trọ đăng thông tin -> Quản trị viên xem xét nội dung (giá, địa chỉ, hình ảnh) và quyết định duyệt hiển thị hoặc từ chối kèm lý do, giúp hạn chế tin rác và thông tin sai lệch.
  • Đề xuất mô hình nạp tiền vào tài khoản người dùng để thanh toán phí đăng tin theo bảng giá quy định, tạo nguồn thu duy trì vận hành website và phân định các gói tin nổi bật (dichvu_hot).

Đóng góp tự nêu của đồ án:

  • Cung cấp một giải pháp công nghệ trực tuyến cụ thể giải quyết nhu cầu tìm kiếm phòng trọ tại địa bàn Đà Nẵng, giúp người thuê tra cứu thông tin chính xác về giá cả, vị trí và tiện nghi mà không cần trực tiếp đến khảo sát, tiết kiệm thời gian và chi phí đi lại.
  • Giúp chủ nhà trọ có thêm kênh quảng bá phòng trọ trực quan, tiếp cận đúng đối tượng sinh viên và người lao động có nhu cầu tạm trú.

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

Hạn chế được tác giả đề cập trong văn bản:

  • Do giới hạn về mặt thời gian thực hiện đồ án và kiến thức chuyên môn của sinh viên, hệ thống không tránh khỏi những thiếu sót nhất định trong quá trình hoàn thiện các tính năng.
  • Nguồn tài liệu tham khảo ban đầu chủ yếu thu thập từ các bài viết kỹ thuật và các khóa học lập trình trực tuyến trên nền tảng YouTube, chưa có điều kiện khảo cứu sâu các mô hình kiến trúc phân tán quy mô lớn.
  • Dữ liệu thử nghiệm và khảo sát thực tế mới dừng lại ở phạm vi cục bộ tại thành phố Đà Nẵng.

Hướng nghiên cứu và phát triển tiếp:

  • Tiếp thu các ý kiến đóng góp từ giảng viên hướng dẫn và hội đồng phản biện để tối ưu hóa mã nguồn và nâng cao tính hoàn thiện của các chức năng hiện có.
  • Nghiên cứu mở rộng quy mô hệ thống, cải tiến giao diện và bổ sung các tiện ích hỗ trợ người dùng trong các giai đoạn phát triển tiếp theo.

Giá trị tham khảo

Đồ án là tài liệu tham khảo hữu ích cho:

  • Sinh viên chuyên ngành Công nghệ Thông tin, Kỹ thuật Phần mềm hoặc Hệ thống Thông tin đang thực hiện đồ án tốt nghiệp, bài tập lớn về xây dựng ứng dụng web thương mại điện tử hoặc dịch vụ trực tuyến sử dụng PHP và Laravel Framework.
  • Người học lập trình web cần tìm hiểu phương pháp phân tích thiết kế hệ thống theo mô hình MVC kết xuất phía máy chủ.

Các nội dung có giá trị tham khảo nổi bật:

  • Hệ thống 18 kịch bản Use Case được đặc tả chi tiết về đầu vào, đầu ra, các bước thực hiện, luồng phát sinh và trường hợp ngoại lệ.
  • Mô hình dữ liệu quan hệ 7 bảng xử lý tốt bài toán phân cấp địa giới hành chính hai cấp (quận/huyện và phường/xã) phục vụ lọc tin bất động sản/phòng trọ.
  • Cơ chế quản lý giao dịch nạp tiền, trừ tiền thanh toán tin đăng và quy trình quản trị viên phê duyệt trạng thái giao dịch trong ứng dụng web.

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

1. Hệ thống phân chia người dùng thành các tác nhân nào và phạm vi quyền hạn ra sao? Hệ thống xác định 3 tác nhân: Khách vãng lai (tìm kiếm/lọc tin theo giá, diện tích, khu vực; xem chi tiết phòng; xem hướng dẫn, bảng giá và đăng ký tài khoản), Khách hàng (người dùng đã đăng ký: đăng nhập, quản lý thông tin cá nhân, đăng tin phòng trọ, sửa tin, nạp tiền và xem lịch sử giao dịch), và Quản trị viên (quản lý địa chỉ, danh mục, thành viên, duyệt/hủy tin đăng, quản lý nạp tiền và theo dõi thống kê).

2. Cơ sở dữ liệu của website tổ chức dữ liệu địa chỉ phòng trọ như thế nào để phục vụ việc lọc tin? Hệ thống sử dụng bảng diachi với trường loai phân chia giá trị (1 là Quận/Huyện, 2 là Phường/Xã) và trường quan_id. Trong bảng phong, tác giả thiết lập hai trường khóa ngoại độc lập gồm qhuyen_id và phuongxa_id liên kết về bảng địa chỉ, cho phép người dùng lọc chính xác phòng trọ theo từng cấp hành chính tại Đà Nẵng.

3. Quản trị viên quản lý yêu cầu nạp tiền của khách hàng qua những trạng thái nào? Theo kịch bản use case Bảng 2.17, Quản trị viên quản lý danh sách nạp tiền, có thể chỉnh sửa thông tin số tiền và chuyển đổi trạng thái giao dịch giữa ba mức cụ thể: "Khởi tạo", "Duyệt" hoặc "Hủy bỏ".

4. Khách thuê có thể tìm kiếm và lọc phòng trọ dựa trên những tiêu chí nào? Dựa trên đặc tả chức năng và kịch bản tìm kiếm Bảng 2.1, người dùng có thể lọc phòng trọ theo 4 tiêu chí chính: loại danh mục trọ, đơn vị hành chính (quận/huyện và phường/xã), khoảng giá thuê (khoanggia) và khoảng diện tích/khu vực (khoangkhuvuc).

5. Đồ án sử dụng ngăn xếp công nghệ và mô hình kiến trúc nào để phát triển website? Đồ án áp dụng mô hình MVC (Server Side Rendering), phát triển trên nền tảng ngôn ngữ PHP kết hợp framework Laravel, cơ sở dữ liệu MySQL chạy trên môi trường XAMPP, giao diện xây dựng bằng HTML5, CSS (SASS), Bootstrap 5, thư viện jQuery và jQuery confirm, được thiết kế mô hình hóa bằng StarUML và soạn thảo trên Visual Studio Code.

Kết luận

Đồ án tốt nghiệp "Xây dựng website tìm kiếm phòng trọ tại thành phố Đà Nẵng" của sinh viên Lương Văn Chương đã giải quyết bài toán thực tế về nhu cầu tìm kiếm và cho thuê phòng trọ tại khu vực đô thị Đà Nẵng. Tác giả đã hoàn thành các mục tiêu nghiên cứu từ khâu thu thập thông tin, mô hình hóa nghiệp vụ với 18 kịch bản use case, thiết kế cơ sở dữ liệu quan hệ 7 bảng đến hiện thực hóa giao diện website bằng Laravel và MySQL. Hệ thống phân định rõ ràng quyền hạn giữa khách vãng lai, khách hàng và quản trị viên, cung cấp quy trình kiểm duyệt tin đăng và nạp tiền hoàn chỉnh. Công trình là tài liệu tham khảo có giá trị học thuật và thực tiễn cho sinh viên ngành Công nghệ Thông tin trong việc thiết kế và xây dựng các hệ thống web dịch vụ theo mô hình MVC.