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

Thị trường bất động sản không ngừng mở rộng đi kèm với nhu cầu ngày càng lớn về tìm kiếm, mua bán và cho thuê nhà đất, căn hộ và các dự án dân cư. Trong phương thức vận hành truyền thống, các giao dịch bất động sản thường chịu sự chi phối và phụ thuộc vào nhiều cấp trung gian như nhà môi giới, cơ sở dữ liệu tài sản của chính phủ, công ty ký quỹ, luật sư, thanh tra viên, thẩm định viên và công chứng viên. Quy trình qua nhiều bước trung gian này làm phát sinh chi phí giao dịch đáng kể, đặc biệt là khoản phí môi giới phải trả cho "cò" nhà đất, đồng thời kéo dài thời gian từ lúc ký thỏa thuận mua bán cho đến khi hoàn tất hợp đồng chuyển nhượng thực tế.

Bên cạnh đó, việc truyền tải thông tin dự án từ chủ sở hữu đến khách hàng tiềm năng cũng như việc người mua tiếp cận nguồn tin tức đáng tin cậy, an toàn và minh bạch về mặt pháp lý vẫn gặp nhiều trở ngại. Trước thực trạng đó, đề tài "Xây dựng website và ứng dụng hỗ trợ giao dịch dự án bất động sản" (hay hệ thống Smart Real) được xây dựng nhằm tạo ra một kênh tương tác trực tiếp, minh bạch giữa người mua và bên bán, giúp người dùng tra cứu thông tin nhanh chóng, chính xác và tiết kiệm thời gian, công sức.

Mục tiêu và các nhiệm vụ nghiên cứu được văn bản xác định cụ thể như sau:

  1. Nghiên cứu lý thuyết về các công nghệ và thuật toán áp dụng trong phát triển hệ thống: Front-end (HTML5, CSS3, ReactJS, React Native), Back-end (Java Spring Framework, Node.js), Hệ quản trị cơ sở dữ liệu (MySQL), và giao diện lập trình ứng dụng bản đồ (Google Maps API).
  2. Khảo sát hiện trạng và phân tích yêu cầu bài toán: Xác định đối tượng sử dụng, xây dựng các yêu cầu chức năng nghiệp vụ cho khách hàng và quản trị viên, xác định các yêu cầu chức năng hệ thống và yêu cầu phi chức năng.
  3. Mô hình hóa và thiết kế hệ thống: Xây dựng biểu đồ ca sử dụng (Use case diagram), biểu đồ tuần tự (Sequence diagram), biểu đồ lớp (Class diagram); thiết kế cấu trúc cơ sở dữ liệu quan hệ và thiết kế giao diện người dùng trên nền tảng web và thiết bị di động.
  4. Hiện thực hóa hệ thống và đánh giá kết quả: Cài đặt hoàn chỉnh ứng dụng web và ứng dụng di động cho phép người dùng đăng nhập, tìm kiếm căn hộ, theo dõi vị trí trên bản đồ số, quản lý danh mục ưa thích, bình luận và đặt mua trực tuyến.

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

  • Đối tượng nghiên cứu: Mô hình kiến trúc phần mềm kết hợp giữa nền tảng web và thiết bị di động trong hỗ trợ quy trình tra cứu, quảng cáo và giao dịch dự án bất động sản.
  • Đối tượng sử dụng hệ thống: Người có nhu cầu tìm kiếm, tham khảo và đặt mua căn hộ (Khách hàng/User) và người phụ trách quản lý nội dung dự án, kiểm duyệt hệ thống (Người quản trị/Admin).
  • Phạm vi nghiên cứu về không gian: Hỗ trợ tìm kiếm, định vị và hiển thị thông tin dự án căn hộ trên phạm vi toàn quốc.
  • Phạm vi nghiên cứu về thời gian: Đề tài được triển khai thực hiện từ ngày 24/02/2020 đến ngày 01/07/2020 tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh.

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

Đồ án tổng hợp và ứng dụng hệ thống công nghệ đa tầng phục vụ việc phát triển ứng dụng web và ứng dụng di động đa nền tảng:

  • Công nghệ phía máy khách (Client / Front-end):
    • ReactJS: Thư viện JavaScript mã nguồn mở xây dựng ứng dụng trang đơn (Single Page Application - SPA). Đồ án khai thác cơ chế Virtual DOM (DOM ảo) giúp tối ưu hóa việc tái kết xuất giao diện thông qua luồng dữ liệu một chiều (one-way data binding), cú pháp mở rộng JSX kết hợp JavaScript và HTML, kiến trúc hướng thành phần (Component-based architecture), việc quản lý trạng thái qua Props và State, cùng cơ chế điều hướng React-Router (bao gồm BrowserRouter sử dụng HTML5 History API và HashRouter).
    • React Native: Nền tảng phát triển ứng dụng di động đa nền tảng (iOS và Android) bằng ngôn ngữ JavaScript, kết xuất trực tiếp qua API nền tảng gốc, hỗ trợ cơ chế nạp nóng (Hot-Loading). Văn bản trình bày chi tiết vòng đời của một React Native Component gồm các phương thức: Constructor(props), render(), ComponentDidMount(), ComponentWillReceiveProps(nextProps), ShouldComponentUpdate(nextProps, nextState), ComponentWillUpdate(nextProps, nextState), ComponentDidUpdate(prevProps, prevState) và ComponentWillUnmount().
    • Quản lý trạng thái Redux: Thư viện quản lý trạng thái tập trung được xây dựng trên nền tảng ngôn ngữ Elm và kiến trúc Flux, bao gồm 4 thành phần chính: Store, Action Creators, Reducer và View. Hệ thống vận hành theo 3 nguyên tắc: Store là nguồn dữ liệu tin cậy duy nhất (Single source of truth), State chỉ được phép đọc (State is read-only), và các hàm Reducer phải là hàm thuần khiết (Pure functions).
  • Công nghệ phía máy chủ (Server / Back-end):
    • Java Spring Framework: Khung phát triển ứng dụng phân tán doanh nghiệp dựa trên các đối tượng Java đơn giản (POJO), giải quyết các hạn chế cồng kềnh của EJB trước đây. Nền tảng cốt lõi gồm Spring Core, Spring Bean, cơ chế tiêm phụ thuộc (Dependency Injection - DI / Inversion of Control - IoC) và Spring Context (ApplicationContext). Văn bản khảo sát các dự án mở rộng trong hệ sinh thái gồm: Spring MVC, Spring Data, Spring Security, Spring Boot, Spring Batch, Spring Integration và Spring Social.
    • Node.js: Môi trường chạy JavaScript phía máy chủ xây dựng trên nền tảng V8 JavaScript Engine và tầng trừu tượng libuv. Node.js hoạt động dựa trên mô hình xử lý xuất/nhập không chặn (non-blocking I/O) và kiến trúc hướng sự kiện đơn luồng (Single-Threaded), thích hợp cho các ứng dụng thời gian thực. Các framework bổ trợ được khảo sát gồm ExpressJS (xây dựng định tuyến, API) và SocketIO (kết nối Web-socket thời gian thực).
  • Hệ quản trị cơ sở dữ liệu:
    • MySQL: Hệ quản trị cơ sở dữ liệu quan hệ phục vụ lưu trữ, truy cập, tổ chức và xử lý dữ liệu. Đồ án khảo sát các lệnh cập nhật dữ liệu (INSERT INTO, UPDATE TABLE) cùng các nhóm hàm tích hợp sẵn: nhóm hàm thống kê GROUP BY (AVG, MIN, MAX, COUNT, SUM), nhóm hàm chuỗi (ASCII, CHAR, UPPER, LOWER, LEN, LTRIM, RTRIM, LEFT, RIGHT, INSTR), nhóm hàm thời gian (CURDATE(), CURTIME(), PERIOD_DIFF, DAYOFMONTH) và hàm toán học (SQRT).
  • Giao diện lập trình ứng dụng bản đồ (Google Maps API):
    • Sử dụng dịch vụ bản đồ số và thư viện react-native-maps để nhúng bản đồ, xác định tọa độ kinh độ/vĩ độ và hiển thị các lớp phủ (Overlays) gồm: Marker (đánh dấu điểm), Polyline (đường nối chuỗi tọa độ), Polygon (vùng bao khép kín), Circle và Rectangle (hình tròn và hình chữ nhật khoanh vùng), cùng InfoWindow (cửa sổ hiển thị thông tin dạng cửa sổ bật lên).
  • Công cụ phát triển, kiểm tra và gỡ lỗi được khảo sát:
    • Expo SDK, công cụ kiểm tra chất lượng mã nguồn ESLint và Flow, thư viện kiểm thử giao diện Enzyme, cùng công cụ gỡ lỗi Reactotron.

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

  1. Phương pháp tổng hợp lý thuyết: Nghiên cứu, thu thập và hệ thống hóa các tài liệu chuyên ngành, tài liệu đặc tả kỹ thuật và trang tài liệu chính thức về ReactJS, React Native, Spring Framework, Node.js và MySQL.
  2. Phương pháp chuyên gia: Tham khảo ý kiến định hướng chuyên môn, góp ý và nhận xét từ giảng viên hướng dẫn (TS. Nguyễn Thiên Bảo) cùng các kỹ sư, đồng nghiệp có kinh nghiệm thực tế trong phát triển phần mềm.
  3. Phương pháp mô hình hóa: Thiết kế và mô phỏng toàn bộ ứng dụng từ bước đặc tả yêu cầu, xây dựng sơ đồ ca sử dụng, sơ đồ tuần tự, sơ đồ lớp, thiết kế cơ sở dữ liệu đến cài đặt và kiểm thử sản phẩm hoàn thiện.

Nguồn dữ liệu: Dữ liệu thử nghiệm về danh mục dự án, thông tin căn hộ, hồ sơ pháp lý, vị trí tọa độ, tiện ích và các phản hồi bình luận được nhóm tác giả khởi tạo và lưu trữ trực tiếp trong cơ sở dữ liệu MySQL để phục vụ việc kiểm thử các chức năng nghiệp vụ của hệ thống.

Thiết kế và triển khai

Hệ thống được thiết kế theo kiến trúc phân tầng kết hợp giữa máy khách web và di động với hệ thống máy chủ xử lý dữ liệu tập trung.

Phân tích ca sử dụng (Use case) và xử lý tuần tự

Hệ thống phân chia quyền hạn rõ ràng giữa hai tác nhân chính:

  • Khách hàng (User): Đăng ký tài khoản, Đăng nhập, Đăng xuất, Tìm kiếm căn hộ, Xem chi tiết căn hộ, Xem vị trí bản đồ, Quản lý danh sách yêu thích, Bình luận đánh giá căn hộ, Đặt mua trực tuyến, Chỉnh sửa thông tin cá nhân và Đổi mật khẩu.
  • Người quản trị (Admin): Đăng nhập trang quản trị, Quản lý dự án (thêm mới, chỉnh sửa thông tin căn hộ) và Quản lý bình luận (kiểm duyệt, xóa bình luận không phù hợp).

Hệ thống thiết lập 11 biểu đồ tuần tự (Sequence Diagram) tương ứng với các luồng tương tác giữa giao diện người dùng, bộ điều khiển (Controller), dịch vụ xử lý và cơ sở dữ liệu: Đăng nhập, Đăng ký, Đăng xuất, Tìm kiếm, Bình luận, Chỉnh sửa thông tin tài khoản, Quản lý căn hộ, Đổi mật khẩu, Quản lý yêu thích, Đặt mua, và Quản lý chi tiết căn hộ. Bên cạnh đó, các sơ đồ lớp (Class Diagram) được xây dựng theo kiến trúc phân lớp gồm Controller, Model, View và cấu trúc Thông tin căn hộ.

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

Cơ sở dữ liệu của hệ thống được xây dựng trong hệ quản trị MySQL bao gồm 10 bảng dữ liệu chính, được liên kết chặt chẽ qua các khóa ngoại nhằm bảo đảm tính toàn vẹn dữ liệu:

Tên bảng trong cơ sở dữ liệu Chức năng nghiệp vụ Mô tả thuộc tính lưu trữ chính
TaiKhoan Quản lý định danh tài khoản người dùng Tên đăng nhập, mật khẩu, quyền hạn truy cập hệ thống
ThongTinTaiKhoan Lưu trữ hồ sơ người dùng Họ tên, số điện thoại, địa chỉ liên lạc, thư điện tử
CanHo Quản lý thông tin bất động sản, căn hộ Mã căn hộ, tên căn hộ, diện tích, giá bán, số phòng, trạng thái
ViTri Tọa độ địa lý của căn hộ/dự án Kinh độ, vĩ độ, địa chỉ hiển thị trên Google Maps
HoSoPhapLy Hồ sơ pháp lý của dự án/căn hộ Loại giấy tờ, cơ quan cấp phép, tình trạng phê duyệt pháp lý
TienIchKhu Danh mục tiện ích nội và ngoại khu Tên tiện ích (bệnh viện, trường học, công viên, hồ bơi), khoảng cách
MatBang Bản vẽ quy hoạch mặt bằng Hình ảnh sơ đồ mặt bằng, kích thước kỹ thuật, tỷ lệ thiết kế
MauThietKe Phối cảnh thiết kế kiến trúc Hình ảnh mẫu thiết kế, hình ảnh nội thất và ngoại thất căn hộ
YeuThich Danh sách căn hộ quan tâm của người dùng Khóa ngoại liên kết giữa tài khoản và căn hộ được đánh dấu
BinhLuan Ý kiến phản hồi của khách hàng Khóa ngoại tài khoản, khóa ngoại căn hộ, nội dung bình luận, thời gian

Thiết kế giao diện (UI)

Hệ thống xây dựng đầy đủ các giao diện vận hành trên cả hai môi trường:

  • Giao diện Web: Giao diện Đăng nhập, Đăng ký, Trang chủ (Home), Trang hiển thị dự án, Trang chủ quản trị (Home Admin), Trang quản lý dự án, Trang chỉnh sửa thông tin dự án, Trang quản lý bình luận (comment) và Trang quản lý danh mục ưa thích (Favorite).
  • Giao diện Mobile: Màn hình bắt đầu, Màn hình đăng nhập, Màn hình đăng ký, Màn hình khám phá, Màn hình danh sách yêu thích, Màn hình vị trí (bản đồ), Màn hình thông tin cá nhân, Màn hình chi tiết căn hộ, Màn hình đặt mua, Màn hình đổi mật khẩu và Màn hình cập nhật thông tin cá nhân.

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

CHƯƠNG 1. Khảo sát hiện trạng

Chương mở đầu phân tích thực trạng giao dịch bất động sản tại Việt Nam, nêu bật những hạn chế do sự phụ thuộc vào các khâu trung gian, môi giới khiến chi phí giao dịch tăng cao và thủ tục chuyển nhượng kéo dài. Tác giả xác định mục tiêu xây dựng giải pháp công nghệ Smart Real bao gồm ứng dụng web và ứng dụng di động hỗ trợ giao dịch căn hộ minh bạch, tạo kênh kết nối trực tiếp giữa khách hàng và người quản lý dự án. Chương này cũng làm rõ ba phương pháp nghiên cứu được áp dụng xuyên suốt đồ án (tổng hợp lý thuyết, phương pháp chuyên gia và phương pháp mô hình hóa), đồng thời khẳng định ý nghĩa thực tiễn của đề tài trong việc hỗ trợ người dùng tra cứu thông tin căn hộ nhanh chóng, thuận tiện.

CHƯƠNG 2. Cơ sở lý thuyết

Chương 2 trình bày có hệ thống các kiến thức nền tảng và công nghệ chủ chốt phục vụ triển khai đồ án:

  • Phân tích chi tiết thư viện ReactJS với kiến trúc SPA, cơ chế Virtual DOM, cú pháp JSX, cấu trúc component, luồng dữ liệu thông qua Props và State, cùng các cơ chế điều hướng bằng BrowserRouter và HashRouter.
  • Phân tích kiến trúc Java Spring Framework với vai trò thay thế EJB, làm rõ nguyên lý Spring Core, Spring Bean, kỹ thuật tiêm phụ thuộc (Dependency Injection) và Inversion of Control (IoC), cùng các dự án mở rộng tiêu biểu (Spring MVC, Spring Data, Spring Security, Spring Boot).
  • Khảo sát hệ quản trị cơ sở dữ liệu MySQL, làm rõ mục đích sử dụng (lưu trữ, truy cập, tổ chức, xử lý dữ liệu), cú pháp câu lệnh INSERT, UPDATE và các nhóm hàm thông dụng phục vụ thao tác trên chuỗi, thời gian, số học và thống kê nhóm.
  • Nghiên cứu nền tảng di động React Native, đối chiếu ưu - nhược điểm của Native App và Hybrid App, phân tích chu trình vòng đời của component (Lifecycle), cấu trúc thư mục dự án chuẩn, và các công cụ bổ trợ (Expo SDK, ESLint, Flow, Enzyme, Reactotron).
  • Phân tích kiến trúc quản lý trạng thái Redux với mô hình Store tập trung, Action Creators, hàm xử lý Reducer và các nguyên tắc thiết kế bất biến.
  • Giới thiệu dịch vụ bản đồ số Google Maps API và các thành phần lớp phủ (Marker, Polyline, Polygon, Circle, InfoWindow) nhằm hiển thị vị trí địa lý dự án.
  • Khảo sát nền tảng Node.js với cơ chế non-blocking I/O, mô hình đơn luồng hiệu năng cao, cùng các framework phổ biến gồm ExpressJS và SocketIO hỗ trợ giao tiếp thời gian thực.

CHƯƠNG 3. PHÂN TÍCH VÀ THIẾT KẾ ỨNG DỤNG

Chương 3 là phần nội dung trọng tâm của đồ án, hiện thực hóa các yêu cầu bài toán:

  • Xác định đối tượng sử dụng hệ thống gồm khách hàng có nhu cầu mua căn hộ và người quản trị hệ thống. Lập bảng đặc tả yêu cầu chức năng nghiệp vụ, yêu cầu chức năng hệ thống và các yêu cầu phi chức năng.
  • Mô hình hóa hệ thống thông qua biểu đồ ca sử dụng (Use case diagram) và đặc tả chi tiết 11 use case cốt lõi.
  • Xây dựng 11 biểu đồ tuần tự (Sequence Diagram) mô tả chi tiết quy trình xử lý thông điệp giữa các tầng cho từng tác vụ: đăng nhập, đăng ký, đăng xuất, tìm kiếm, bình luận, chỉnh sửa thông tin tài khoản, quản lý căn hộ, đổi mật khẩu, quản lý yêu thích, đặt mua và quản lý chi tiết căn hộ.
  • Xây dựng hệ thống sơ đồ lớp (Class Diagram) chi tiết cho các lớp Controller, Model, View và cấu trúc dữ liệu thông tin căn hộ.
  • Thiết kế cơ sở dữ liệu quan hệ hoàn chỉnh với lược đồ quan hệ giữa các bảng và bảng đặc tả chi tiết các thuộc tính cho 10 bảng dữ liệu (TaiKhoan, ThongTinTaiKhoan, CanHo, ViTri, HoSoPhapLy, TienIchKhu, MatBang, MauThietKe, YeuThich, BinhLuan).
  • Thiết kế giao diện và sơ đồ liên kết màn hình, trình bày các ảnh chụp giao diện hoàn thiện trên cả hai nền tảng web (dành cho người dùng và quản trị viên) và ứng dụng di động (bao gồm các màn hình chức năng từ khám phá dự án, định vị bản đồ đến đặt mua trực tuyến).

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Tổng kết các kết quả đạt được về mặt lý thuyết và sản phẩm hiện thực hóa. Tác giả tự đánh giá mức độ hoàn thành nhiệm vụ và chỉ ra những hạn chế còn tồn đọng trong phiên bản hiện tại, từ đó đề xuất các định hướng nâng cấp, mở rộng tính năng cho hệ thống trong tương lai.

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

Về kết quả thực nghiệm và sản phẩm:

  • Nhóm tác giả đã hoàn thành đúng thời hạn các mục tiêu đề ra ban đầu theo xác nhận của giảng viên hướng dẫn.
  • Nghiên cứu và làm chủ được các công nghệ lập trình hiện đại: ReactJS, React Native, Redux, Spring Framework, Node.js, ExpressJS và MySQL.
  • Xây dựng thành công hệ thống phần mềm hoàn chỉnh bao gồm ứng dụng web và ứng dụng di động hỗ trợ giao dịch bất động sản với các tính năng:
    • Phía khách hàng: Đăng nhập/đăng ký tài khoản, tìm kiếm căn hộ theo tên/địa chỉ/giá bán, xem chi tiết dự án (hồ sơ pháp lý, tiện ích khu dân cư, mặt bằng, mẫu thiết kế), xem định vị dự án trên bản đồ số Google Maps, lưu dự án ưa thích, gửi bình luận và thực hiện thao tác đặt mua trực tuyến.
    • Phía người quản trị: Cung cấp giao diện quản trị cho phép thêm mới, cập nhật thông tin dự án, quản lý danh sách yêu thích và kiểm duyệt, xóa bỏ các bình luận không lịch sự của người dùng.
  • Hoàn thiện bộ hồ sơ thiết kế kỹ thuật phần mềm đầy đủ gồm 11 biểu đồ tuần tự, sơ đồ lớp phân tầng và cấu trúc cơ sở dữ liệu gồm 10 bảng dữ liệu liên kết chuẩn mực.

Về giải pháp và đóng góp thực tiễn:

  • Cung cấp giải pháp công nghệ trực quan giúp người mua tiếp cận trực tiếp với các dự án căn hộ, tạo điều kiện để hai bên trao đổi thông tin dễ dàng mà không bắt buộc phải qua khâu trung gian môi giới, từ đó tránh được các khoản phí phát sinh cho "cò" nhà đất.
  • Việc tích hợp bản đồ số Google Maps API và các trường dữ liệu chi tiết về pháp lý, mặt bằng giúp người dùng tham khảo dự án minh bạch, thuận tiện trước khi đưa ra quyết định giao dịch thực tế.

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

Theo phiếu nhận xét của giảng viên hướng dẫn (TS. Nguyễn Thiên Bảo) và phần tổng kết của văn bản, đồ án còn tồn tại một số hạn chế:

  • Về mặt thiết kế và giao diện: Mặc dù đã xây dựng đầy đủ các màn hình chức năng trên web và mobile, thiết kế giao diện của hệ thống chưa thực sự có nét nổi trội.
  • Về mặt tính năng nghiệp vụ:
    • Hệ thống chưa tích hợp tính năng trợ lý ảo hoặc Chatbot tự động để hỗ trợ giải đáp thắc mắc của khách hàng theo thời gian thực.
    • Ứng dụng chưa hỗ trợ chức năng cho phép người dùng phổ thông tự đăng tin rao bán bất động sản cá nhân (mới chỉ cho phép người quản trị thêm và sửa dự án).
    • Hệ thống chưa có tính năng gợi ý thông minh (recommendation) để tự động đề xuất các căn hộ, dự án phù hợp với nhu cầu và thị hiếu của từng khách hàng.

Hướng nghiên cứu và phát triển tiếp theo được đề xuất:

  • Tích hợp tính năng Chatbot thông minh hỗ trợ tư vấn khách hàng tự động và hệ thống tin nhắn trực tiếp giữa hai bên giao dịch.
  • Mở rộng phân quyền và giao diện cho phép người dùng phổ thông có thể trực tiếp đăng tin rao bán, cho thuê các sản phẩm bất động sản cá nhân lên hệ thống.
  • Nghiên cứu và ứng dụng các giải pháp thuật toán nhằm gợi ý các dự án phù hợp dựa trên hành vi tìm kiếm và thông tin cá nhân của khách hàng.

Giá trị tham khảo

Tài liệu khóa luận có giá trị tham khảo cụ thể đối với các đối tượng và phạm vi học thuật sau:

  • Sinh viên chuyên ngành Công nghệ thông tin, Kỹ thuật phần mềm đang chuẩn bị thực hiện đồ án tốt nghiệp hoặc các dự án môn học về phát triển ứng dụng di động đa nền tảng kết hợp ứng dụng web quản trị.
  • Các nhà phát triển phần mềm cần tài liệu tổng hợp và hướng dẫn áp dụng thực tế các công nghệ: cấu trúc vòng đời component của React Native, nguyên lý luồng dữ liệu 4 bước của Redux, và cách thức phân chia module trong Spring Framework.
  • Tài liệu cung cấp mẫu tham khảo rõ ràng về tài liệu phân tích thiết kế hệ thống (Software Design Document - SDD), đặc biệt là thiết kế 11 biểu đồ tuần tự (Sequence Diagrams), sơ đồ lớp (Class Diagrams) và bộ cơ sở dữ liệu quan hệ chuẩn hóa 10 bảng cho bài toán thương mại điện tử lĩnh vực bất động sản.

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

1. Đề tài sử dụng những công nghệ nào cho phía máy khách (Front-end) và máy chủ (Back-end)?
Theo phiếu nhiệm vụ và nội dung đồ án, phía máy khách sử dụng HTML5, CSS3, ReactJS cho nền tảng web và React Native kết hợp thư viện quản lý trạng thái Redux cho ứng dụng di động. Phía máy chủ sử dụng Java Spring Framework kết hợp với môi trường Node.js (cùng ExpressJS, SocketIO). Cơ sở dữ liệu được quản trị bằng hệ quản trị cơ sở dữ liệu quan hệ MySQL và tích hợp dịch vụ bản đồ số thông qua Google Maps API.

2. Cơ sở dữ liệu MySQL của hệ thống bao gồm những bảng dữ liệu nào?
Hệ thống thiết kế cơ sở dữ liệu bao gồm 10 bảng nghiệp vụ cụ thể: TaiKhoan (quản lý tài khoản đăng nhập), ThongTinTaiKhoan (thông tin cá nhân), CanHo (thông tin chi tiết căn hộ), ViTri (tọa độ bản đồ), HoSoPhapLy (chứng từ pháp lý), TienIchKhu (tiện ích lân cận), MatBang (sơ đồ mặt bằng), MauThietKe (phối cảnh thiết kế), YeuThich (danh sách căn hộ yêu thích của người dùng), và BinhLuan (nội dung nhận xét của khách hàng).

3. Khách hàng sử dụng ứng dụng có thể thực hiện những chức năng chính nào?
Khách hàng có thể đăng ký, đăng nhập tài khoản, tìm kiếm căn hộ theo tên, địa chỉ hoặc giá tiền; xem chi tiết căn hộ kèm hồ sơ pháp lý, mặt bằng, tiện ích và vị trí trên bản đồ số Google Maps; thêm hoặc xóa căn hộ trong mục yêu thích; đăng bình luận phản hồi; đặt mua căn hộ trực tuyến; và chỉnh sửa thông tin cá nhân hoặc thay đổi mật khẩu.

4. Những hạn chế chính của đề tài được giảng viên hướng dẫn chỉ ra là gì?
Trong phiếu nhận xét, TS. Nguyễn Thiên Bảo đánh giá hệ thống còn một số khuyết điểm: giao diện hiện thực chưa thực sự nổi trội; hệ thống chưa áp dụng thêm các tính năng như Chatbot; người dùng chưa thể tự đăng tin rao bán bất động sản; và chưa có tính năng gợi ý các dự án phù hợp cho khách hàng.

5. Mục đích chính của việc xây dựng ứng dụng hỗ trợ giao dịch bất động sản này là gì?
Mục đích của đề tài là xây dựng sàn giao dịch trực tiếp qua web và ứng dụng di động, giúp người có nhu cầu mua hoặc thuê bất động sản có thể xem trước các dự án minh bạch, chính xác, tiết kiệm thời gian và liên hệ trực tiếp với người bán/quản lý dự án mà không phải qua trung gian, từ đó tránh được khoản chi phí phải trả cho "cò" nhà đất.

Kết luận

Đồ án tốt nghiệp "Xây dựng ứng dụng hỗ trợ giao dịch bất động sản" của sinh viên Nguyễn Viết Cương và Đào Văn Toản (Khoa Đào tạo Chất lượng cao, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh) đã hoàn thành các mục tiêu đề ra về việc xây dựng hệ sinh thái ứng dụng web và di động phục vụ tra cứu, tham khảo và đặt mua căn hộ. Công trình thể hiện sự làm chủ kỹ thuật đối với chuỗi công nghệ hiện đại bao gồm ReactJS, React Native, Redux, Java Spring Framework, Node.js và MySQL, đi kèm hệ thống tài liệu phân tích thiết kế phần mềm chi tiết. Dù còn một số hạn chế về mặt giao diện và các tính năng thông minh như chatbot hay thuật toán gợi ý, đồ án cung cấp một mô hình thực nghiệm hoàn chỉnh, có giá trị học thuật và ứng dụng cao cho sinh viên ngành Công nghệ thông tin tham khảo.