Buổi 1 – Giới thiệu đề tài & chia nhóm
Bài trước: Giới thiệu môn học
Bài tiếp theo: Buổi 2: Phân tích chức năng (Use Case)
Xin chào các em! 🎉
Chào mừng các em đến với môn học Dự án 1 – Lập trình Web! Đây sẽ là một hành trình thú vị và đầy thử thách, nhưng thầy tin rằng các em sẽ học được rất nhiều điều bổ ích!
🎯 Mục tiêu học tập
Sau buổi học hôm nay, các em sẽ:
- ✅ Hiểu rõ đề tài "Hệ thống Quản lý Tour Du lịch" mà chúng ta sẽ xây dựng
- ✅ Nắm được cấu trúc hệ thống và các module chính
- ✅ Chia nhóm và phân công vai trò cho từng thành viên
- ✅ Xác định được module mà nhóm sẽ phụ trách
📋 Nội dung chính
1. Giới thiệu đề tài
Hôm nay thầy sẽ giới thiệu với các em về dự án chúng ta sẽ làm trong 5 tuần tới!
Hệ thống Quản lý Tour Du lịch là gì?
Các em có thể tưởng tượng một công ty du lịch cần quản lý những gì không? 😊
Hệ thống website mà chúng ta sẽ xây dựng sẽ giúp:
- Khách hàng: Xem tour, đặt tour, thanh toán, đánh giá
- Nhân viên: Quản lý tour, xử lý booking, theo dõi doanh thu
- Quản trị viên: Quản lý toàn bộ hệ thống, phân quyền, báo cáo
Công nghệ chúng ta sẽ sử dụng
Các em sẽ sử dụng những công nghệ web cơ bản nhất:
- Frontend: HTML, CSS, JavaScript (những gì các em đã học)
- Backend: PHP (ngôn ngữ server-side phổ biến)
- Database: MySQL (hệ quản trị cơ sở dữ liệu)
- Version Control: Git/GitHub (để làm việc nhóm)
Đừng lo nếu các em chưa biết PHP nhiều! Thầy sẽ hướng dẫn các em trong quá trình làm dự án. Quan trọng là tinh thần học hỏi và làm việc nhóm! 💪
2. Cấu trúc hệ thống và các module (25 phút)
Thầy sẽ giới thiệu các module mà các nhóm có thể chọn:
Module 1: Tour & Lịch trình
- Quản lý tour, điểm đến, lịch trình chi tiết
- Thêm, sửa, xóa tour
- Xem lịch trình tour theo ngày
Module 2: Booking & Thanh toán
- Đặt tour, xử lý thanh toán, xác nhận đơn hàng
- Quản lý trạng thái booking
- Tính toán giá tour
Module 3: Khách hàng & Đánh giá
- Quản lý thông tin khách hàng
- Nhận và hiển thị đánh giá tour
- Lịch sử đặt tour của khách hàng
Module 4: Hướng dẫn viên & Lịch làm việc
- Quản lý hướng dẫn viên
- Phân công lịch làm việc
- Theo dõi hiệu suất HDV
Module 5: Quản trị hệ thống / Báo cáo
- Dashboard tổng quan
- Thống kê doanh thu
- Quản lý user và phân quyền
Lưu ý: Các em có thể chọn module phù hợp với sở thích và khả năng của nhóm. Module Booking thường được chọn nhiều vì có nhiều logic nghiệp vụ thú vị! 😊
3. Chia nhóm và phân vai (20 phút)
Bây giờ các em sẽ được chia nhóm (3–5 người/nhóm) và phân công vai trò.
Các vai trò trong nhóm:
- 👨💼 Leader: Quản lý tiến độ, phân công công việc, đảm bảo deadline
- 💻 Developer: Viết code, triển khai chức năng
- 🧪 Tester: Kiểm thử, tìm lỗi, đảm bảo chất lượng
- 📝 Documenter: Viết tài liệu, báo cáo, slide
Lưu ý quan trọng:
- Mỗi người có thể đảm nhiệm nhiều vai trò (ví dụ: vừa là Developer vừa là Tester)
- Leader không chỉ là người phân công mà còn phải review code, theo dõi tiến độ
- Tất cả thành viên đều phải code, không ai chỉ ngồi không nhé! 😊
4. Thảo luận nhóm và chọn module (25 phút)
Các nhóm sẽ thảo luận và chọn module phụ trách. Thầy sẽ đi vòng hỗ trợ các em!
Các câu hỏi để các em thảo luận:
- Module nào phù hợp với khả năng của nhóm?
- Nhóm có bao nhiêu người? Có đủ để làm module này không?
- Module này có thú vị với các em không? (Quan trọng lắm đó! 😊)
- Có thể tích hợp module này với module khác không?
Tips từ thầy:
- Nếu nhóm có 3 người, không nên chọn module quá phức tạp
- Nên chọn module các em thấy hứng thú, như vậy sẽ làm tốt hơn
- Nhớ rằng các module sẽ phải tích hợp với nhau ở tuần 4, nên cần suy nghĩ kỹ
📘 Bài tập nhóm
Project Proposal (1 trang A4)
Các em cần nộp file Word hoặc PDF với nội dung sau:
1. Thông tin nhóm
- Tên nhóm (ví dụ: "Team Alpha", "Nhóm 1"...)
- Danh sách thành viên (MSSV, Họ tên, Vai trò)
Ví dụ:
Tên nhóm: Team Alpha
Thành viên:
- 12345678 - Nguyễn Văn A - Leader/Developer
- 12345679 - Trần Thị B - Developer/Tester
- 12345680 - Lê Văn C - Developer/Documenter2. Module phụ trách
- Tên module
- Mô tả mục tiêu module (2–3 câu)
Ví dụ:
Module: Booking & Thanh toán
Mục tiêu: Xây dựng hệ thống đặt tour cho khách hàng, cho phép khách hàng
đặt tour trực tuyến, thanh toán và theo dõi trạng thái booking.3. Chức năng chính (3–5 chức năng)
Liệt kê các chức năng sẽ triển khai.
Ví dụ:
- Thêm/sửa/xóa booking
- Xem danh sách booking
- Cập nhật trạng thái booking (Chờ xác nhận → Đã cọc → Hoàn tất)
- Tính toán giá tour
- Xử lý thanh toán
4. Phân công sơ bộ
Ai làm phần nào (Frontend/Backend/Database/Tester).
Ví dụ:
- Nguyễn Văn A: Backend (PHP), Database design
- Trần Thị B: Frontend (HTML/CSS/JS), Tester
- Lê Văn C: Full-stack, DocumenterDeadline
Nộp trước buổi 2 (gửi qua email hoặc LMS)
Đừng quên deadline nhé! File này sẽ giúp thầy biết nhóm các em đã chuẩn bị gì và hỗ trợ tốt hơn! 😊
📦 Kết quả mong đợi sau buổi học
Sau buổi học hôm nay, các em sẽ:
- ✅ Mỗi nhóm đã chọn module cụ thể
- ✅ Có danh sách thành viên và phân vai rõ ràng
- ✅ Nộp Project Proposal đúng format
- ✅ Hiểu được quy trình làm việc trong 5 tuần tới
- ✅ Có động lực và hứng thú với dự án! 💪
💡 Tips hữu ích
Chọn module phù hợp: Đừng chọn module quá khó hoặc quá dễ. Nên chọn module các em thấy hứng thú!
Phân vai rõ ràng: Mỗi người nên biết mình làm gì. Nhưng cũng đừng quá cứng nhắc, nên hỗ trợ lẫn nhau!
Giao tiếp tốt: Tạo group chat, trao đổi thường xuyên. Đừng để đến buổi học mới gặp nhau!
Bắt đầu sớm: Đừng đợi đến tuần 3 mới bắt đầu code. Các em có thể bắt đầu suy nghĩ về code ngay từ bây giờ!
🔍 Câu hỏi thường gặp
Q: "Nhóm em 5 người, có thể làm 2 module không?"
A: Có thể, nhưng cần đảm bảo tích hợp tốt và hoàn thành đúng deadline. Thầy khuyên nên làm 1 module thật tốt hơn là làm 2 module không tốt! 😊
Q: "Em chưa biết PHP nhiều, có làm được không?"
A: Có, hoàn toàn làm được! Thầy sẽ hướng dẫn các em trong quá trình làm. Quan trọng là tinh thần học hỏi và teamwork. Các em có thể học PHP cơ bản trước ở nhà, hoặc học trong quá trình làm dự án.
Q: "Làm sao để tích hợp module với module khác?"
A: Các em sẽ học cách tích hợp ở tuần 4. Hiện tại các em chỉ cần tập trung vào module của mình thôi. Đừng lo lắng quá! 😊
Q: "Module nào dễ nhất?"
A: Không có module nào "dễ nhất". Mỗi module đều có thử thách riêng. Quan trọng là các em chọn module phù hợp với khả năng và sở thích của nhóm!
📌 Lưu ý: Buổi tiếp theo chúng ta sẽ học cách viết Use Case. Các em nhớ chuẩn bị Project Proposal và đọc trước bài 2 nhé!
Chúc các em học tốt! 🎉