I. Phân tích đồ án CDIO SE 347 Website bán giày sneaker
Dự án CDIO SE 347 với đề tài Website Bán Giày Sneaker là một nghiên cứu điển hình về việc áp dụng kiến thức công nghệ phần mềm vào giải quyết bài toán thực tế trong lĩnh vực thương mại điện tử. Trọng tâm của dự án là xây dựng website thương mại điện tử chuyên biệt, tập trung vào một ngách sản phẩm duy nhất là giày sneaker, nhằm mang lại trải nghiệm mua sắm tối ưu cho người dùng. Báo cáo đồ án cung cấp một cái nhìn toàn diện, từ khâu đề xuất ý tưởng, phân tích yêu cầu, thiết kế hệ thống cho đến triển khai giao diện. Theo tài liệu gốc, lý do chính chọn đề tài là vì "đa số các website bán hàng đều trưng bày nhiều loại mặt hàng dẫn đến không có sự đầu tư kĩ lưỡng cho một mặt hàng nhất định". Điều này tạo ra một cơ hội để phát triển một cửa hàng sneaker uy tín trên nền tảng trực tuyến, nơi thông tin sản phẩm được đầu tư kỹ lưỡng về hình ảnh và chi tiết kỹ thuật. Dự án không chỉ là một đồ án môn học công nghệ phần mềm thông thường mà còn là một sản phẩm có tiềm năng ứng dụng cao, đáp ứng xu hướng mua sắm online ngày càng phát triển. Toàn bộ quy trình được thực hiện bởi nhóm sinh viên thuộc khoa Công nghệ thông tin, Đại học Duy Tân, dưới sự hướng dẫn của giảng viên, cho thấy sự kết hợp chặt chẽ giữa lý thuyết và thực hành trong đào tạo.
1.1. Mục tiêu và ý nghĩa của đồ án môn học công nghệ phần mềm
Mục tiêu cốt lõi của đồ án môn học công nghệ phần mềm này là tạo ra một shop giày sneaker online hoạt động hiệu quả, có khả năng thay thế cho cửa hàng bán lẻ truyền thống. Website được kỳ vọng sẽ trở thành công cụ quảng bá sản phẩm mạnh mẽ, giúp biến khách truy cập thành khách hàng tiềm năng. Ý nghĩa của dự án vượt ra ngoài phạm vi một bài tập học thuật. Nó cung cấp một giải pháp thực tiễn cho các doanh nghiệp nhỏ và vừa muốn kinh doanh giày thể thao chính hãng trực tuyến. Đồng thời, dự án cũng tạo ra một tài nguyên mã nguồn mở (source code website bán giày) có thể được tái sử dụng và phát triển cho các loại cửa hàng khác. Báo cáo nhấn mạnh, website cho phép khách hàng "mua sắm bất cứ thứ gì ở bất cứ nơi đâu chỉ với vài cú nhấp chuột, và có thể tìm kiếm, so sánh, đánh giá các mẫu mã, một cách trực quan nhất".
1.2. Đối tượng và phạm vi nghiên cứu trong báo cáo dự án CDIO
Đối tượng nghiên cứu chính của dự án là các công nghệ và ngôn ngữ lập trình hiện đại cần thiết để xây dựng website thương mại điện tử. Cụ thể, nhóm đã nghiên cứu sâu về HTML, CSS, JavaScript, ReactJS cho phần frontend và Node.js cho phần backend, cùng với cơ sở dữ liệu MongoDB. Phạm vi nghiên cứu của báo cáo dự án CDIO không chỉ dừng lại ở việc lập trình. Nó còn bao gồm việc phân tích các phương thức mua bán trực tuyến, nghiên cứu quy trình đặt hàng và các yêu cầu về bảo mật thông tin. Đặc biệt, dự án còn đề cập đến "phương thức liên kết với ngân hàng trong quá trình thanh toán trực tuyến qua thẻ", một yếu tố quan trọng để tạo nên một mẫu website bán hàng hoàn chỉnh và chuyên nghiệp.
II. Thách thức khi xây dựng website bán giày sneaker chuyên nghiệp
Việc phát triển một website bán giày sneaker không chỉ đơn thuần là tạo ra một trang web có chức năng mua bán. Thách thức lớn nhất nằm ở việc tạo ra một trải nghiệm người dùng liền mạch và xây dựng niềm tin nơi khách hàng, biến trang web thành một cửa hàng sneaker uy tín. Một trong những khó khăn ban đầu là việc đặc tả yêu cầu chức năng một cách chi tiết. Hệ thống cần phân định rõ ràng vai trò của các tác nhân như Khách vãng lai (Guest), Thành viên (User) và Quản trị viên (Admin), mỗi vai trò có một tập hợp quyền hạn và chức năng riêng biệt. Ví dụ, Guest chỉ có thể tìm kiếm và xem sản phẩm, trong khi User có thể quản lý giỏ hàng, đánh giá sản phẩm. Thách thức tiếp theo là thiết kế giao diện website bán hàng sao cho hấp dẫn, trực quan nhưng vẫn đảm bảo tốc độ tải trang nhanh. Giao diện cần hiển thị sản phẩm một cách rõ ràng, cho phép người dùng dễ dàng tìm kiếm, lọc và so sánh các mẫu giày thể thao chính hãng. Hơn nữa, việc tích hợp một hệ thống quản lý phức tạp phía sau, bao gồm quản lý sản phẩm, đơn hàng, tài khoản, khuyến mãi và thống kê doanh thu, đòi hỏi một kiến trúc phần mềm vững chắc và khả năng mở rộng trong tương lai.
2.1. Phân tích yêu cầu hệ thống cho các nhóm người dùng
Tài liệu dự án đã phân tích chi tiết yêu cầu hệ thống dựa trên ba tác nhân chính. Khách vãng lai có các chức năng cơ bản: tìm kiếm sản phẩm, xem chi tiết và đăng ký tài khoản. Thành viên (User) có đầy đủ quyền của khách hàng: đăng nhập, quản lý thông tin cá nhân, quản lý lịch sử đơn hàng, đánh giá sản phẩm và quan trọng nhất là quản lý giỏ hàng. Nhà quản trị (Admin) có quyền cao nhất, bao gồm toàn bộ các chức năng quản lý cốt lõi như quản lý sản phẩm sneaker, quản lý đơn hàng, quản lý tài khoản, và xem các báo cáo thống kê. Việc phân tích này là nền tảng để thiết kế các biểu đồ use case, xác định luồng hoạt động của hệ thống một cách chính xác.
2.2. Khó khăn trong việc thiết kế cơ sở dữ liệu và luồng dữ liệu
Thiết kế cơ sở dữ liệu là một bước quan trọng và đầy thách thức. Cần phải xác định tất cả các thực thể cần thiết như Tài khoản, Sản phẩm, Hóa đơn, Đánh giá, Khuyến mại và mối quan hệ giữa chúng. Báo cáo dự án đã đề xuất các bảng CSDL chi tiết như Bảng CSDL Sản phẩm, Bảng CSDL chi tiết Hóa đơn, Bảng CSDL Đánh giá... Thách thức nằm ở việc tối ưu hóa cấu trúc để đảm bảo tính toàn vẹn dữ liệu và hiệu suất truy vấn. Ví dụ, việc liên kết giữa sản phẩm, chi tiết hóa đơn và khuyến mại cần được thiết kế cẩn thận để hệ thống có thể tính toán giá cuối cùng một cách chính xác. Luồng dữ liệu, từ khi người dùng thêm sản phẩm vào giỏ hàng đến khi hoàn tất thanh toán và đơn hàng được ghi nhận, phải được mô hình hóa chặt chẽ thông qua các biểu đồ tuần tự và biểu đồ hoạt động.
III. Bí quyết áp dụng quy trình CDIO để phát triển website bán hàng
Dự án đã áp dụng thành công mô hình CDIO (Conceive – Design – Implement – Operate) vào quy trình phát triển phần mềm, một phương pháp tiếp cận hiện đại trong đào tạo kỹ sư. Quy trình này cung cấp một khuôn khổ rõ ràng để biến ý tưởng thành một sản phẩm hoạt động. Giai đoạn Conceive (Hình thành ý tưởng) được thể hiện rõ trong phần "Đề xướng ý tưởng sản phẩm", nơi các thành viên đưa ra lý do và đánh giá tiềm năng của việc tạo ra một shop giày sneaker online. Giai đoạn Design (Thiết kế) là phần trọng tâm của đồ án, bao gồm việc phân tích và thiết kế hệ thống chi tiết. Nhóm đã sử dụng các công cụ như Draw.io để vẽ biểu đồ use case, biểu đồ tuần tự, biểu đồ hoạt động và thiết kế cơ sở dữ liệu. Giai đoạn Implement (Triển khai) là quá trình viết code dựa trên bản thiết kế, sử dụng các công nghệ làm web bán giày đã chọn. Cuối cùng, giai đoạn Operate (Vận hành) được mô phỏng thông qua việc kiểm thử các chức năng và chuẩn bị cho việc triển khai thực tế. Việc tuân thủ quy trình phát triển phần mềm theo mô hình CDIO giúp đảm bảo dự án đi đúng hướng, quản lý được tiến độ và chất lượng sản phẩm cuối cùng.
3.1. Giai đoạn Conceive Design Từ ý tưởng đến bản thiết kế
Trong giai đoạn đầu, nhóm đã tiến hành khảo sát thị trường và xác định được nhu cầu về một website chuyên biệt cho sneaker. Các ý tưởng được đánh giá dựa trên kiến thức nền tảng và khả năng phát triển. Giai đoạn thiết kế là bước cụ thể hóa ý tưởng. Tài liệu dự án cho thấy một quá trình thiết kế bài bản, bắt đầu từ việc xác định các tác nhân hệ thống, sau đó vẽ biểu đồ use case tổng quát để mô tả tất cả các chức năng. Từng chức năng lớn như "Quản lý sản phẩm" hay "Quản lý đơn hàng" lại được chia nhỏ và mô tả chi tiết bằng các đặc tả use case, biểu đồ tuần tự và biểu đồ hoạt động. Đây là bước cực kỳ quan trọng để đội ngũ lập trình hiểu rõ yêu cầu và logic của hệ thống trước khi bắt tay vào viết mã.
3.2. Giai đoạn Implement Operate Triển khai và vận hành
Giai đoạn triển khai là quá trình chuyển đổi các bản thiết kế thành source code website bán giày. Nhóm đã sử dụng Visual Studio Code làm công cụ lập trình chính. Frontend được xây dựng bằng ReactJS để tạo ra giao diện người dùng động và tương tác cao. Backend sử dụng Node.js và Express.js để xử lý logic nghiệp vụ và giao tiếp với cơ sở dữ liệu MongoDB. Giai đoạn vận hành, mặc dù không được triển khai trên máy chủ thực tế trong khuôn khổ đồ án, nhưng đã được chuẩn bị thông qua việc kiểm thử các chức năng, đảm bảo rằng demo trang web bán sneaker hoạt động ổn định, các chức năng như đăng ký, đăng nhập, thêm vào giỏ hàng và thanh toán đều chạy đúng như thiết kế.
IV. Các công nghệ và chức năng cốt lõi của website bán giày sneaker
Để xây dựng một mẫu website bán hàng hiện đại và hiệu quả, việc lựa chọn công nghệ phù hợp là yếu tố quyết định. Dự án này đã sử dụng một bộ công nghệ (tech stack) phổ biến và mạnh mẽ. Phía client (frontend), ReactJS được lựa chọn để xây dựng giao diện người dùng (UI) có khả năng tương tác cao và tối ưu hóa trải nghiệm. Phía server (backend), Node.js cùng với framework Express.js đảm nhận việc xử lý các yêu cầu từ client, thực thi logic nghiệp vụ và tương tác với cơ sở dữ liệu. MongoDB, một hệ quản trị cơ sở dữ liệu NoSQL, được sử dụng để lưu trữ dữ liệu sản phẩm, người dùng và đơn hàng, mang lại sự linh hoạt trong cấu trúc dữ liệu. Ngoài các công nghệ làm web bán giày chính, dự án còn sử dụng các công cụ hỗ trợ như Figma để thiết kế giao diện website bán hàng và Draw.io để mô hình hóa hệ thống. Các chức năng cốt lõi của website được xây dựng dựa trên nền tảng công nghệ này, bao gồm các module quan trọng như quản lý sản phẩm sneaker, quản lý người dùng, và đặc biệt là hệ thống giỏ hàng và thanh toán.
4.1. Công nghệ Frontend và Backend được sử dụng trong dự án
Frontend của website được xây dựng hoàn toàn bằng ReactJS, một thư viện JavaScript mạnh mẽ của Facebook. Điều này cho phép tạo ra các thành phần giao diện có thể tái sử dụng, giúp quá trình phát triển nhanh hơn và dễ bảo trì. Giao diện được thiết kế theo hướng đáp ứng (responsive), đảm bảo hiển thị tốt trên cả máy tính và thiết bị di động. Backend sử dụng Node.js, một môi trường chạy JavaScript phía máy chủ, cho phép xây dựng các ứng dụng web hiệu suất cao. Việc sử dụng JavaScript cho cả frontend và backend (MERN stack: MongoDB, Express.js, React, Node.js) tạo ra sự đồng bộ, giúp đơn giản hóa quy trình phát triển phần mềm.
4.2. Phân tích chức năng giỏ hàng và thanh toán chi tiết
Một trong những module phức tạp và quan trọng nhất của bất kỳ trang thương mại điện tử nào là chức năng giỏ hàng và thanh toán. Trong dự án này, chức năng giỏ hàng cho phép người dùng thêm sản phẩm, xem danh sách sản phẩm đã chọn, chỉnh sửa số lượng hoặc xóa sản phẩm khỏi giỏ. Biểu đồ tuần tự và biểu đồ hoạt động trong tài liệu đã mô tả rất chi tiết luồng xử lý của các thao tác này. Khi người dùng tiến hành đặt hàng, hệ thống sẽ chuyển sang quy trình thanh toán. Tài liệu đề cập đến việc "chọn phương thức thanh toán" và "liên kết với ngân hàng", cho thấy định hướng xây dựng một hệ thống thanh toán trực tuyến hoàn chỉnh, dù có thể chỉ dừng ở mức mô phỏng trong khuôn khổ đồ án. Toàn bộ thông tin đơn hàng sau đó được lưu vào cơ sở dữ liệu để quản trị viên xử lý.
V. Demo thiết kế giao diện và trải nghiệm người dùng website
Thiết kế giao diện (UI) và trải nghiệm người dùng (UX) là yếu tố sống còn quyết định sự thành công của một shop giày sneaker online. Báo cáo dự án CDIO SE 347 đã dành một phần quan trọng để đặc tả và trình bày thiết kế giao diện, cho thấy sự chú trọng vào yếu tố này. Công cụ Figma đã được sử dụng để tạo ra các bản thiết kế chi tiết trước khi tiến hành lập trình, giúp hình dung rõ ràng về giao diện cuối cùng. Trang chủ (Homepage) được thiết kế để gây ấn tượng ngay từ lần truy cập đầu tiên, với banner nổi bật, các sản phẩm mới và sản phẩm bán chạy được hiển thị một cách khoa học. Mục tiêu là giúp khách hàng nhanh chóng tìm thấy những đôi giày thể thao chính hãng mà họ quan tâm. Quá trình thiết kế giao diện website bán hàng cũng tập trung vào sự đơn giản và dễ sử dụng. Các chức năng như tìm kiếm, bộ lọc sản phẩm, và quy trình thanh toán được thiết kế để giảm thiểu số bước và thao tác của người dùng. Một demo trang web bán sneaker tốt phải đảm bảo rằng người dùng, dù là khách vãng lai hay thành viên, đều có thể dễ dàng điều hướng và thực hiện hành động mua hàng một cách thuận lợi.
5.1. Đặc tả giao diện trang chủ và trang đăng ký tài khoản
Theo tài liệu, giao diện trang chủ được thiết kế để hiển thị các sản phẩm một cách linh hoạt, sử dụng các hashtag để liên kết với các sản phẩm liên quan, giúp tăng doanh thu. Các danh mục sản phẩm tương tự được trình bày trực quan, giúp khách hàng dễ dàng khám phá. Trang đăng ký tài khoản được thiết kế đơn giản, yêu cầu người dùng nhập các thông tin cần thiết. Báo cáo cũng đặc tả chi tiết luồng xử lý khi người dùng nhập sai định dạng email hoặc mật khẩu không đủ ký tự, hệ thống sẽ hiển thị thông báo lỗi tương ứng. Điều này cho thấy sự quan tâm đến trải nghiệm người dùng ngay từ những bước đầu tiên.
5.2. Luồng trải nghiệm người dùng từ tìm kiếm đến đặt hàng
Luồng trải nghiệm người dùng (user flow) được xây dựng một cách logic. Người dùng bắt đầu bằng việc tìm kiếm sản phẩm thông qua thanh tìm kiếm hoặc duyệt qua các danh mục. Sau khi chọn được sản phẩm ưng ý, họ có thể xem trang chi tiết sản phẩm với đầy đủ thông tin, hình ảnh và đánh giá. Từ đây, họ có thể thêm sản phẩm vào giỏ hàng. Quản lý giỏ hàng cho phép xem lại, sửa đổi và xóa sản phẩm. Cuối cùng, quy trình thanh toán được thiết kế gồm các bước rõ ràng: nhập thông tin giao hàng, chọn phương thức thanh toán và xác nhận đơn hàng. Toàn bộ luồng này được mô tả chi tiết qua các biểu đồ hoạt động, đảm bảo một hành trình mua sắm mượt mà và không gây khó khăn cho khách hàng.
VI. Kết luận và định hướng phát triển cho shop giày sneaker online
Dự án Website Bán Giày Sneaker trong khuôn khổ môn học CDIO SE 347 đã hoàn thành xuất sắc các mục tiêu đề ra. Sản phẩm không chỉ là một đồ án môn học công nghệ phần mềm mà còn là một mẫu website bán hàng hoàn chỉnh, có tính ứng dụng thực tiễn cao. Dự án đã áp dụng thành công quy trình phát triển phần mềm bài bản, từ khâu hình thành ý tưởng, thiết kế chi tiết đến triển khai bằng các công nghệ hiện đại. Kết quả là một hệ thống website có đầy đủ các chức năng cần thiết của một trang thương mại điện tử, từ quản lý sản phẩm, giỏ hàng, đặt hàng đến quản lý người dùng và thống kê. Báo cáo dự án đã chứng minh được năng lực phân tích, thiết kế và lập trình của nhóm sinh viên. Hướng phát triển trong tương lai cho dự án này là rất lớn. Việc có sẵn source code website bán giày là một lợi thế để tiếp tục cải tiến và mở rộng. Các chức năng nâng cao có thể được bổ sung để biến trang web trở thành một cửa hàng sneaker uy tín và cạnh tranh trên thị trường.
6.1. Đánh giá kết quả đạt được của báo cáo dự án CDIO
Kết quả lớn nhất của dự án là đã xây dựng website thương mại điện tử thành công, đáp ứng đầy đủ các yêu cầu chức năng đã đặc tả. Hệ thống phân chia rõ ràng vai trò người dùng, có các module quản lý mạnh mẽ cho admin và giao diện thân thiện cho khách hàng. Việc sử dụng các công nghệ như ReactJS và Node.js đảm bảo website có hiệu năng tốt và khả năng mở rộng. Đồ án cũng là một tài liệu học thuật giá trị, cung cấp một ví dụ thực tế về việc áp dụng lý thuyết công nghệ phần mềm và mô hình CDIO vào một dự án cụ thể. Đây là một tài liệu tham khảo hữu ích cho các sinh viên khóa sau.
6.2. Tiềm năng phát triển và các tính năng có thể mở rộng
Tiềm năng phát triển của shop giày sneaker online này là rất lớn. Trong tương lai, hệ thống có thể được mở rộng với nhiều tính năng nâng cao. Ví dụ: tích hợp hệ thống gợi ý sản phẩm dựa trên lịch sử xem và mua hàng của người dùng (machine learning), xây dựng chức năng chatbot hỗ trợ khách hàng tự động, tối ưu hóa SEO on-page để thu hút lưu lượng truy cập tự nhiên. Ngoài ra, có thể phát triển thêm ứng dụng di động (mobile app) để nâng cao trải nghiệm mua sắm. Việc tích hợp các cổng thanh toán trực tuyến phổ biến như MoMo, ZaloPay và kết nối với các đơn vị vận chuyển cũng là những bước đi cần thiết để đưa website vào vận hành thực tế.