Trong học kỳ 2 tại FPT Aptech, nhóm sinh viên lớp T1.2406.E1 đã cùng nhau phát triển Tourgether -một hệ thống đặt tour du lịch trực tuyến tích hợp nhiều công nghệ hiện đại, giải quyết bài toán thực tiễn trong ngành du lịch. Dự án không chỉ là bài kiểm tra kỹ năng lập trình PHP – Laravel mà còn là hành trình học cách làm việc nhóm, xử lý tình huống và phát triển sản phẩm sát với nhu cầu thị trường.
Nhóm thực hiện đồ án kỳ 2 – Tourgether gồm:
- Nguyễn Minh Nhân (trưởng nhóm),
- Trần Trung Anh,
- Đặng Quốc Khánh,
- Lê Nguyễn Gia Huy.
Nội dung
Ý tưởng và động lực thực hiện
Từ thực tế ngành du lịch đang chuyển dịch mạnh mẽ sang mô hình số hóa, nhóm sinh viên nhận thấy vẫn còn nhiều đơn vị kinh doanh tour chưa có hệ thống quản lý và đặt tour hiệu quả. Tourgether ra đời nhằm cung cấp một nền tảng đặt tour tiện lợi, nơi khách hàng có thể dễ dàng chọn các tour có sẵn hoặc thiết kế tour tùy chỉnh theo nhu cầu cá nhân – tất cả chỉ trong vài bước đơn giản.
Dự án hướng tới việc xây dựng một website vừa thân thiện với người dùng, vừa hỗ trợ doanh nghiệp du lịch quản lý toàn bộ quy trình hoạt động như quản lý lịch trình, đơn đặt, thông tin khách hàng và xử lý thanh toán. Đồng thời, nhóm mong muốn Tourgether sẽ góp phần nâng cao trải nghiệm du lịch của khách hàng thông qua giao diện hiện đại, chức năng thanh toán nhanh chóng và hệ thống xác nhận tự động qua email.
Công nghệ sử dụng và quy trình triển khai
Dự án được phát triển bằng PHP kết hợp với Laravel Framework, sử dụng Tailwind CSS cho phần thiết kế và Vite để tối ưu hiệu suất tải trang. Giao diện website được thiết kế theo hướng responsive, đảm bảo hiển thị tốt trên mọi thiết bị từ máy tính đến điện thoại di động.
Ở giai đoạn đầu, nhóm phân tích yêu cầu và chia nhỏ công việc dựa trên từng tính năng như đặt tour, tạo tour tùy chỉnh, xử lý thanh toán và gửi mail xác nhận. Sau đó, nhóm tiến hành thiết kế kiến trúc hệ thống theo mô hình MVC, xây dựng giao diện với Blade Template và phân chia controller hợp lý theo từng nhóm chức năng như tour có sẵn, tour tùy chỉnh và thanh toán.
Quá trình lập trình được thực hiện theo hướng module hóa. Mỗi thành viên đảm nhận một phần việc cụ thể, từ xử lý logic backend đến thiết kế frontend và cấu hình các dịch vụ phụ trợ. Nhóm cũng đặc biệt chú trọng kiểm thử sản phẩm trên nhiều thiết bị khác nhau, đảm bảo tính ổn định, tốc độ phản hồi nhanh và bảo mật cao. Hệ thống gửi mail tự động, tính năng thanh toán và các thao tác người dùng đều được thử nghiệm kỹ lưỡng trước khi hoàn thiện.
Vượt qua thử thách và gắn kết nhóm
Trong quá trình phát triển, nhóm gặp không ít thử thách. Một trong những khó khăn lớn nhất là xử lý logic tách biệt giữa hai loại tour – tour có sẵn và tour tùy chỉnh. Mỗi loại yêu cầu quy trình đặt tour và quản lý khác nhau, buộc nhóm phải xây dựng cấu trúc controller rõ ràng, tránh trùng lặp và lỗi phát sinh.
Bên cạnh đó, việc tích hợp hệ thống thanh toán và gửi email tự động cũng là điều hoàn toàn mới với các thành viên. Laravel Mail yêu cầu cấu hình SMTP chính xác, trong khi hệ thống đôi khi không gửi được mail hoặc mail bị đưa vào mục spam. Nhóm đã mất nhiều thời gian để thử nghiệm và điều chỉnh cấu hình phù hợp.
Một trở ngại khác là giao diện responsive với Tailwind CSS. Dù công cụ này mạnh mẽ, nhưng việc làm chủ cách sử dụng class và nguyên tắc utility-first không hề đơn giản. Nhóm phải phối hợp chặt chẽ để giao diện hoạt động mượt mà trên cả desktop lẫn thiết bị di động. Thêm vào đó, quá trình build với Vite cũng gây ra lỗi do thiếu kinh nghiệm cấu hình ban đầu, buộc nhóm phải học thêm tài liệu và trao đổi kỹ thuật nhiều hơn.
Một kỷ niệm đáng nhớ là khi nhóm mất gần cả buổi tối để khắc phục lỗi báo “Class not found”. Sau nhiều giờ tìm kiếm, nguyên nhân được phát hiện đơn giản chỉ vì quên use model
ở đầu file controller. Dù là lỗi cơ bản, nhưng lại rất dễ xảy ra trong quá trình làm việc nhóm và phân chia task. Chính những khoảnh khắc “vật lộn với bug” ấy đã giúp cả nhóm hiểu hơn tầm quan trọng của việc kiểm tra kỹ từng dòng code, tuân thủ chuẩn Laravel và luôn hỗ trợ lẫn nhau trong những tình huống áp lực.
Kết quả và điểm nổi bật của sản phẩm
Sau hơn một tháng triển khai, sản phẩm Tourgether đã hoàn thiện và vượt kỳ vọng ban đầu về hiệu suất, trải nghiệm người dùng cũng như khả năng mở rộng. Nhờ tích hợp Vite với Laravel và Tailwind CSS, website có tốc độ tải trang nhanh, tương tác mượt và khả năng phản hồi thao tác tức thời. Các truy vấn dữ liệu cũng được tối ưu hóa, đảm bảo xử lý nhanh kể cả khi có nhiều đơn đặt tour cùng lúc.
Giao diện người dùng được thiết kế hiện đại, dễ hiểu và trực quan. Người dùng có thể đặt tour chỉ trong vài bước, từ chọn hành trình, nhập thông tin, đến thanh toán và nhận mail xác nhận ngay sau đó. Các trang như trang chủ, danh sách tour có sẵn, tạo tour tùy chỉnh, tra cứu đơn hàng và giao diện quản lý dành cho admin đều được trình bày rõ ràng, dễ thao tác.
Về mặt hệ thống, quản trị viên có thể tạo tour mẫu, theo dõi đơn đặt hàng, thống kê doanh thu, chỉnh sửa tour và phân loại tour theo loại hình hoặc thời gian. Website cũng được tích hợp đầy đủ cơ chế bảo mật như CSRF token, phân quyền người dùng và xác thực đăng nhập. Điều này giúp hệ thống vận hành an toàn, ổn định và có thể mở rộng nếu triển khai trong môi trường thực tế.
Trưởng thành sau đồ án
Dự án Tourgether không chỉ giúp nhóm nâng cao kiến thức lập trình, mà còn là một bài học sâu sắc về quản lý dự án và làm việc nhóm. Về mặt kỹ thuật, nhóm đã thành thạo cách tổ chức route, controller, model và view trong Laravel. Các thành viên nắm rõ quy trình gửi mail, xử lý thanh toán, thiết kế giao diện với Tailwind CSS mà không cần sử dụng thư viện ngoài.
Ở khía cạnh tổ chức, nhóm biết cách chia nhỏ công việc theo thế mạnh từng người, sử dụng công cụ quản lý tiến độ như Trello để theo dõi task và làm việc song song hiệu quả. Nhờ lên kế hoạch bài bản và xác định mốc thời gian cụ thể cho từng giai đoạn, nhóm đã đảm bảo tiến độ và chất lượng sản phẩm đầu ra.
Đặc biệt, dự án giúp các thành viên rèn luyện khả năng tự học, tra cứu tài liệu tiếng Anh, xử lý vấn đề phát sinh trong môi trường thực tế. Nhóm cũng học được cách giao tiếp, hỗ trợ lẫn nhau, đặc biệt trong những lúc áp lực cao và sắp đến deadline.
Sau khi hoàn thành Tourgether, cả nhóm đều tự tin hơn khi đối diện với những dự án lớn hơn trong tương lai. Một số thành viên đã xác định rõ định hướng học chuyên sâu về backend, bảo mật hệ thống và ứng dụng Laravel trong môi trường doanh nghiệp thực tế.
Link video giới thiệu đồ án Tourgether:
Giảng viên Lê Mộng Thúy
FPT Aptech trực thuộc Tổ chức Giáo dục FPT có hơn 25 năm kinh nghiệm đào tạo lập trình viên quốc tế tại Việt Nam, và luôn là sự lựa chọn ưu tiên của các sinh viên và nhà tuyển dụng. |