Đặc tả use case 4.1: Đăng nhập Use case Nội dung Tên use case Đăng nhập Mô tả Cho phép người dùng đăng nhập vào hệ thống để sử dụng chức năng Actor Admin, người dùng Điều kiện kích hoạt
KHẢO SÁT - GIỚI THIỆU TỔNG QUAN
Khảo sát – Giới thiệu đề tài
1.1 Khảo sát: Đối tượng Người tiêu dùng và người mua sắm trực tuyến, người yêu thích thời trang Người thực hiện Nguyễn Tiến Đạt
Vũ Thế Hậu Mục đích Tạo trải nghiệm mua sắm thuận tiện: Tạo ra một giao diện trực quan và dễ sử dụng cho người mua sắm, giúp họ duyệt qua các sản phẩm, lựa chọn quần áo và tiến hành thanh toán một cách dễ dàng và nhanh chóng
Cung cấp lựa chọn đa dạng: Đưa ra một loạt các sản phẩm quần áo từ nhiều thương hiệu, phong cách và xu hướng khác nhau để người mua có nhiều sự lựa chọn
Tạo không gian thời trang và phong cách: Mang đến một không gian trực tuyến thú vị và sáng tạo, nơi người mua có thể tìm hiểu về các xu hướng thời trang mới nhất và cách kết hợp trang phục
Chúng em nhận thấy ngành thương mại đang rất phát triển dẫn đến nhu cầu mua sắm ngày càng lớn Qua khảo sát chúng em thấy rằng việc mua sắm trực tuyến người dùng có thể tiết kiệm nhiều về mặt thời gian Ngoài những lợi ích kể trên thì hầu hết các shop bán quần áo đều không muốn công khai giá thành dẫn đến người tiêu dùng rất ngại đến nếu như nó quá đắt đỏ Chính vì những lý do trên nên bọn em muốn phát triển một trang web để người tiêu dùng có thể xem được giá thành để người dùng thấy có phải phù hợp với ví tiền của người tiêu dùng hay không thay vì phải đến tại cửa hàng quần áo, mọi thứ đều trở lên tiện lợi thì nhiều người có thể tiếp cận được giúp cho chủ shop quần áo tăng doanh số trang để tiếp cận một đối tượng khách hàng rộng lớn và tạo cơ hội kinh doanh mới
Kết quả khảo sát Khi đăng kí thông tin vào form (họ tên,ngày sinh, email, số điện thoại) ở website thì tư vấn viên bên ROUTINE sẽ liên lạc lại cho người đăng kí
- Thanh toán qua mã QR hoặc thanh toán khi nhận được hàng
Links website: https://oldsailor.com.vn/nam.html
Links website: https://yody.vn/
● Những người yêu thích thời trang
1.4 Sơ đồ làm việc nhóm
Hình 1.8: Sơ đồ làm việc nhóm 1.5 Phân chia công việc
1.5.1 Đối tượng tham gia vào dự án
Các đối tượng tham gia vào dự án của chúng tôi, bao gồm:
+ Nhóm phát triển dự án
Dự án (Xây dựng website bán quần áo)
Nguyễn Tiến Đạt(frontend design,Khảo sát)
Nguyễn Khánh Văn(backend design,Khảo sát)
Nguyễn Mạnh Cường(backend design,khảo sát)
Dương Trọng Bình(backend design,khảo sát)
Vũ Thế Hậu(backend design,khảo sát) GVHD
Nguyễn Tiến Đạt Thực hiện phát triển module cùng nhóm Coder
Nguyễn Khánh Văn Thực hiện phát triển module cùng nhóm Coder
Nguyễn Mạnh Cường Thực hiện phát triển module cùng nhóm Coder
Dương Trọng Bình Thực hiện phát triển module cùng nhóm Coder
Vũ Thế Hậu Thực hiện phát triển module cùng nhóm Coder
1.6 Công cụ và công nghệ
1.6.1 Các công cụ hỗ trợ phát triển dự án
1.6.2 Các công nghệ sử dụng pháp triển dự án
PHÂN TÍCH – THIẾT KẾ HỆ THỐNG
Danh sách các tác nhân
-Khách hàng: Có thể mua quần áo, xem, tìm kiếm thông tin về nhiều danh mục, thanh toán hàng
Ma trận phân quyền
STT Chức năng Admin Học viên
7 Quản trị danh mục (Thêm, sửa, xóa)
8 Quản trị sản phẩm(Thêm, sửa, xóa)
9 Quản trị tài khoản(Thêm,Sửa, xóa)
10 Quản trị bình luận(Sửa, xóa)
11 Quản trị banner(thêm,sửa,xóa)
12 Quản trị hóa đơn(sửa, xóa)
15 Xem sản phẩm chi tiết
16 Xem sản phẩm được lọc
18 Xem thông tin tài khoản
Sơ đồ use case
Hình 3.1: Sơ đồ use case
Đặc tả use case
Tên use case Đăng nhập
Mô tả Cho phép người dùng đăng nhập vào hệ thống để sử dụng chức năng
Actor Admin, người dùng Điều kiện kích hoạt Khi người dùng chọn chức năng đăng nhập của hệ thống Tiền điều kiện Người dung phải có tài khoản trong hệ thống
Hậu điều kiện Đăng nhập thành công
Luồng sự kiện chính 1 Hiển thị màn hình đăng nhập
2 Nhập user name và password
3 Hệ thống kiểm tra thông tin đăng nhập
4 Đăng nhập thành công và sử dụng chức năng
Tên use case Đăng xuất
Mô tả Cho phép người dùng đăng xuất ra khỏi tài khoản đang đăng nhập
Actor Admin, người dùng Điều kiện kích hoạt Khi người dùng chọn chức năng đăng xuất của hệ thống Tiền điều kiện Người dùng phải đăng nhập vào hệ thống
Hậu điều kiện Thoát ra khỏi hệ thống thành công
Luồng sự kiện chính 1 Đăng nhập vào hệ thống thành công
2 Chọn chức năng đăng xuất
Tên use case Quên mật khẩu
Mô tả Cho phép thay đổi mật khẩu của tài khoản
Actor Admin, người dùng Điều kiện kích hoạt Khi người dùng chọn chức năng quên mật khẩu
Tiền điều kiện Người dùng quên mật khẩu
Hậu điều kiện Hệ thống sẽ gửi đến email của người dùng 1 email để xác nhận lấy lại mật khẩu
Luồng sự kiện chính 1 Người dùng chọn chức năng quên mật khẩu
2 Người dùng nhập email muốn lấy lại mật khẩu
3 Hệ thống gửi đến email 1 liên kết giúp tạo mới mật khẩu
4 Khi thiết lập mật khẩu mới xong, hệ thống sẽ thông báo đổi mật khẩu thành công, và chuyển sang giao diện đăng nhập
Tên use case Đổi mật khẩu
Mô tả Cho phép người dùng lấy lại mật khẩu bằng cách xác nhận qua email hoặc số điện thoại liên kết với tài khoản
Actor Admin, người dùng Điều kiện kích hoạt Khi người dùng chọn chức năng đổi mật khẩu
Tiền điều kiện Người dùng phải đăng nhập vào hệ thống
Hậu điều kiện Mật khẩu sẽ được thay đổi theo mật khẩu người dùng vừa tạo
Luồng sự kiện chính 1 Đăng nhập vào hệ thống thành công
2 Chọn chức năng đổi mật khẩu
3 Người dùng nhập mật khẩu cũ, nhập mật khẩu mới và nhập lại mật khẩu
4 Hệ thống sẽ thông báo đổi mật khẩu thành công và đưa người dùng về trang đăng nhập
Tên use case Tìm kiếm
Mô tả Cho phép người dùng truy cập vào hệ thống để thực hiện chức năng tìm kiếm
Actor Admin, người dùng Điều kiện kích hoạt Khi người dùng chọn chức năng tìm kiếm
Tiền điều kiện Khi người dùng đăng nhập vào hệ thống
Hậu điều kiện Thông tin tìm kiếm được hiển thị
Luồng sự kiện chính 1 Đăng nhập vào hệ thống thành công
2 Chọn chức năng tìm kiếm
3 Hệ thống sẽ hiển thị thông tin trùng khớp với từ khóa tìm kiếm
4 Hệ thống sẽ thông báo hiển thị thông tin tìm kiếm
4.6: Thêm sản phẩm vào giỏ hàng
Tên use case Đăng ký khóa học
Mô tả Cho phép người dùng,admin truy cập vào hệ thống để thực hiện chức năng thêm giỏ hàng
Actor Người dùng Điều kiện kích hoạt Khi người dùng,admin chọn chức thêm sản phẩm vào giỏ hàng Tiền điều kiện Khi người dùng đăng nhập vào hệ thống
Hậu điều kiện Thông tin thêm được hiển thị
Luồng sự kiện chính a Đăng nhập vào hệ thống thành công b Chọn sản phẩm và thêm sản phẩm vào giỏ hàng c Hệ thống sẽ hiển thị thông tin sản phẩm, giá tiền d Hệ thống sẽ thông báo thêm thành công và quay về trang sản phẩm e Kết thúc use case
Tên use case Quản lý danh mục
Mô tả Cho phép người quản trị đăng nhập vào hệ thống để thực hiện chức năng thêm, sửa, xóa danh mục
Actor Admin Điều kiện kích hoạt Khi admin chọn chức năng thêm, sửa, xóa danh mục Tiền điều kiện Khi admin đăng nhập thành công vào hệ thống
Hậu điều kiện Dữ liệu của hệ thống sẽ được cập nhật sau khi admin thực hiện các chức năng
Luồng sự kiện chính a Đăng nhập vào hệ thống thành công b Admin thực hiện các chức năng thêm, sửa, xóa học viên c Hệ thống cập nhật lại thông tin d Kết thúc use case
Tên use case Quản lý sản phẩm
Mô tả Người quản trị đăng nhập vào hệ thống để thực hiện chức năng thêm sửa xóa sản phẩm
Actor Admin Điều kiện kích hoạt Khi admin chọn chức năng thêm sửa xóa sản phẩm
Tiền điều kiện Khi admin đăng nhập thành công vào hệ thống
Hậu điều kiện Dữ liệu của hệ thống được thực hiện sau khi admin thực hiện chức năng Luồng sự kiện chính A,Đăng nhập vào hệ thống thành công
B,Admin thực hiện chức năng thêm,sửa, xóa sản phẩm
C,Hệ thống cập nhật lại thông tin D,Kết thúc use case
Tên use case Quản lý tài khoản
Mô tả Cho phép người quản trị đăng nhập vào hệ thống để thực hiện chức năng thêm, sửa, xóa tài khoản
Actor Admin Điều kiện kích hoạt Khi admin chọn chức năng thêm, sửa, xóa tài khoản
Tiền điều kiện Khi admin đăng nhập thành công vào hệ thống
Hậu điều kiện Dữ liệu của hệ thống sẽ được cập nhật sau khi admin thực hiện các chức năng
Luồng sự kiện chính a Đăng nhập vào hệ thống thành công b Admin thực hiện các chức năng thêm, sửa, xóa tài khoản c Hệ thống cập nhật lại thông tin d Kết thúc use case
Tên use case Quản lý banner
Mô tả Cho phép người quản trị đăng nhập vào hệ thống để thực hiện chức năng thêm, sửa, xóa banner
Actor Admin Điều kiện kích hoạt Khi admin chọn chức năng thêm, sửa, xóa banner
Tiền điều kiện Khi admin đăng nhập thành công vào hệ thống
Hậu điều kiện Dữ liệu của hệ thống sẽ được cập nhật sau khi admin thực hiện các chức năng
Luồng sự kiện chính a Đăng nhập vào hệ thống thành công b Admin thực hiện các chức năng thêm, sửa, xóa banner c Hệ thống cập nhật lại thông tin d Kết thúc use case
Tên use case Quản lý hóa đơn
Mô tả Cho phép người quản trị đăng nhập vào hệ thống để thực hiện chức năng thêm, sửa, xóa hóa đơn
Actor Admin Điều kiện kích hoạt Khi admin chọn chức năng thêm, sửa, xóa hóa đơn
Tiền điều kiện Khi admin đăng nhập thành công vào hệ thống
Hậu điều kiện Dữ liệu của hệ thống sẽ được cập nhật sau khi admin thực hiện các chức năng
Luồng sự kiện chính a Đăng nhập vào hệ thống thành công b Admin thực hiện các chức năng thêm, sửa, xóa hóa đơn c Hệ thống cập nhật lại thông tin d Kết thúc use case
Mô tả chi tiết luồng và chức năng
5.1 Luồng và chức năng phía quản trị
Hình 2.2.1: Sơ đồ activity đăng nhập
Hình 2.2.3: Sơ đồ activity tìm kiếm
Chức năng quản lý tài khoản
Hình 2.2.4: Sơ đồ activity quản lý tài khoản
Chức năng thêm mới đăng ký
Chức năng quản lý danh mục sản phẩm
Hình 2.2.3.6: Sơ đồ activity quản lý danh mục sản phẩm
Chức năng quản lý sản phẩm
Hình 2.2.7: Sơ đồ activity quản lý sản phẩm
Chức năng quản lý hóa đơn
Hình 2.2.8: Sơ đồ activity quản lý hóa đơn
5.2 Luồng và chức năng phía người dùng
Chức năng xem danh mục sản phẩm
Chức năng xem sản phẩm
Hình 2.2.2.2: Sơ đồ activity xem sản phẩm Chức năng thêm vào giỏ hàng và thanh toán
Hình 2.2.2.3: Sơ đồ activity thanh toán sản phẩm
Chức năng xem thông tin thanh toán
Hình 2.2.2.5: Sơ đồ activity xem thông tin thanh toán
Hiển thị thông tin thanh toán
Chọn thanh toán trên menu
*Đăng nhập bằng tài khoản khác hoặc muốn truy cập vào hệ thống admin khi chưa đăng nhập
Hình 6.1.(1): Giao diện đăng nhập
Hình 6.1.(2): Giao diện trang chủ admin
Hình 6.1.(3): Giao diện thêm danh mục
Hình 6.1.(5): Giao diện danh sách danh mục
Hình 6.1.(6): Giao diện sửa banner
Hình 6.1.(7): Giao diện thêm banner
Hình 6.1.(8): Giao diện quản lý danh sách banner
Hình 6.1.(09): Giao diện thêm danh sách sản phẩm
Hình 6.1.(10): Giao diện Thêm sản phẩm
Hình 6.1.(11): Giao diện trang thêm ảnh sản phẩm
Hình 6.1.(12): Giao diện danh sách tài khoản
Hình 6.1.(13): Giao diện sửa tài khoản
Hình 6.1.: Giao diện quản lý hóa đơn
Hình 6.1.(14): Giao diện quản lý bình luận
Hình 6.1.(15): Giao diện thống kê
Hình 6.1.(16): Giao diện thống kê theo ngày
Hình 6.1.(17): Giao diện thống kê theo tháng
6.2 Giao diện người dùng: Đăng nhập
Hình 6.2.(7): Giao diện trang đăng nhập Đăng ký
Hình 6.2.(7): Giao diện trang đăng ký
Hình 6.2.(7): Giao diện trang quên mật khẩu
Hình 6.2.(1): Giao diện trang chủ
Hình 6.2.(2): Giao diện trang chủ
Hình 6.2.(3): Giao diện trang chủ
Hình 6.2.(4): Giao diện trang chủ
Hình 6.2.(6): Giao diện trang thời trang nữ
Hình 6.2.(8): Giao diện trang tìm kiếm
+ Ấn myaccount hiện trang thông tin tài khoản
Hình 6.2.(9): Giao diện trang thông tin tài khoản
Hình 6.2.(10): Giao diện trang chi tiết sản phẩm
Hình 6.2.(11): Giao diện trang chi tiết sản phẩm
Hình 6.2.(13): Giao diện trang giỏ hàng
Hình 6.2.(13): Giao diện trang giỏ hàng
Hình 6.2.(13): Giao diện trang giỏ hàng
Trang đăng nhập mới bình luận được
Hình 6.2.(14): Giao diện trang đăng nhập mới bình luận dược
Giao diện thanh toán momo
Hình 6.2.(19): Giao diện trang thanh toán momo
Hình 6.2.(19): Giao diện trang thanh toán momo
Hình 6.2.(19): Giao diện trang thanh toán momo
Hình 6.2.(19): Giao diện trang thanh toán momo
Hình 6.2.(19): Giao diện trang thanh toán momo
Hình 6.2.(21): Giao diện bộ lọc nam
Hình 6.2.(21): Giao diện bộ lọc nữ
Hình 6.2.(21): Giao diện bộ lọc sale
Hình 6.2.(21): Giao diện bộ lọc new
Hình 6.2.(21): Giao diện bộ lọc new
Thiết kế cơ sở dữ liệu
7.2: Chi tiết các bảng a 7.2.1: Bảng banner
STT Name Type Length Key Note
1 banner_id int 11 PK ID banner
2 banner_name Vachar 50 Tên banner
3 banner_image Vachar 50 Đường dẫn ảnh a 7.2.2: Bang categories
STT Name Type Length Key Note
1 id_category int 11 PK ID loại sản phẩm
2 name_category varchar 50 Tên danh mục sản phẩm a 7.2.3: Bảng color_name
STT Name Type Length Key Note
1 color_name_id int 11 PK ID màu
2 color_name Vachar 255 Tên màu
4 color_type_id Int 11 FK ID loại màu a 7.2.4: Bảng color_type
STT Name Type Length Key Note
2 color_type_name Vachar 255 Tên loại màu a 7 2.5: Bảng comment
STT Name Type Length Key Note
1 comment_id int 11 PK ID bình luận
2 content Vachar 255 Tên học viên
3 id int 11 FK Id người dùng
4 product_id int 11 FK Id sản phẩm
5 comment_time Varchar 50 Thời gian bình luận a 7.2.6: Bảng images
STT Name Type Length Key Note
1 image_id int 11 PK ID khóa học
2 image_url Vachar 255 Tên khóa học
3 color_name_id int 11 FK Ảnh khóa học
4 product_id int 11 FK Giá khóa học a 7.2.7: Bảng oders
STT Name Type Length Key Note
1 order_id int 11 PK ID oder
4 receiver_address Varchar 255 Địa chỉ người nhận
5 receiver_number_phone Varchar 255 SĐT người nhận
6 receiver_email Varchar 255 FK Email người nhận
7 receiver_note text Ghi chú
8 status_id int 11 Id trạng thái
9 created_at timestamp Thời gian tạo
10 completed_at datetime Thời gian hoàn thành
11 pay_methods int 2 Phương thức thanh toán
12 total_price float Tổng giá
13 delivery_charges float Phí vận chuyển a 7.2.8: Bảng oder_product
STT Name Type Length Key Note
1 order_product_id int 11 PK ID quản trị
2 order_id int 11 FK Tên tài khoản
3 product_id int 11 FK Mật khẩu quản trị viên
4 color_name_id int 11 FK Họ tên quản trị viên
5 size_id int 11 FK Bình luận
6 quantity int 11 Id học viên
1 product_id int 11 PK ID sản phẩm
2 product_name Varchar 50 Tên sản phẩm
3 main_image_url Varchar 255 Ảnh chính
4 hover_main_image_url Varchar 255 Ảnh phụ
5 product_price float Giá sản phẩm
6 discount int 2 Email người nhận
9 product_code Varchar 255 Mã sản phẩm
11 created_at timestamp Thời gian tạo
12 category_id int 11 FK ID danh mục sản phẩm
13 product_status int 1 Trang thái sản phẩm b 7.2.10: Bảng product_color
STT Name Type Length Key Note
1 product_color_id int 11 PK ID màu sản phẩm
2 product_id int 11 FK ID sản phẩm
3 color_name_id int 11 FK ID màu c 7.2.11: Bảng product_size phẩm
2 product_id int 11 FK ID sản phẩm
3 size_id int 11 FK ID kích thước d 7.2.12: Bảng quantities
STT Name Type Length Key Note
1 quantity_id int 11 PK ID số lượng
2 product_id int 11 FK ID sản phẩm
3 color_name_id int 11 FK ID màu
4 size_id int 11 FK ID kích thước
5 quantity int 11 Số lượng e 7.2.13: Bảng size
STT Name Type Length Key Note
1 size_id int 11 FK ID kích thước
2 size_name varchar 255 Tên kích thước f 7.2.13: Bảng status
STT Name Type Length Key Note
1 status_id int 11 FK ID trạng thái
STT Name Type Length Key Note
1 id int 11 PK ID người dùng
2 full_name Varchar 250 Tên đầy đủ
3 username Varchar 250 Tên tài khoản
5 email Varchar 250 Địa chỉ email
6 address Varchar 250 Địa chỉ người dùng
7 phone Varchar 50 Số điện thoại
9 image_user Varchar 11 Ảnh người dùng
XÂY DỰNG HỆ THỐNG
Mã nguồn dự án
Các công nghệ sử dụng và lý do sử dụng các công nghệ này:
- HTML5/CSS3: Thông dụng, tiện lợi Giúp cho việc xây dựng trang web dễ nhìn hơn, bắt mắt hơn
- MySQL: Cơ sở dữ liệu tốc độ cao và ổn định, dễ sử dụng và hoạt động trên nhiều hệ điều hành cung cấp hệ thống lớn các hàm tiện ích Đa tính năng
- BOOTSTRAP: Là một framework quen thuộc đối với các lập trình viên frontend
- JAVASCRIPT: Là một ngôn ngữ lập trình máy tính năng động được sử dụng phổ biến Giúp tiết kiệm lưu lượng của máy chủ
TỔNG KẾT
Mức độ hoàn thành dự án
So với mục tiêu đề ra ban đầu thì nhóm thì mức độ hoàn thành đạt 80% Còn nhiều phần đã lên ý tưởng phát triển song do thời gian cũng như nhân lực còn chưa đáp ứng đủ nên dự án không thể hoàn thành mức 100%
STT Nhiệm vụ hoành thành Mức độ hoàn thành
1 Lên ý tưởng và khảo sát hệ thống 85%
3 Phân tích actor và user case cho hệ thống 80%
4 Thiết kế cơ sở dữ liệu 90%
7 Test tất cả các chức năng của hệ thống 90%
8 Hoàn thiện báo cáo và slide thuyết trình 100%
Những khó khăn gặp phải và cách giải quyết
Trong quá trình làm dự án với nhau, chúng em đã gặp một chút khó khăn và hạn chế song bên cạnh đó chúng em đã có hướng đi và cách khắc phục để dự án hoàn thiện tốt hơn
Khó khăn Cách giải quyết
Thành viên trong nhóm chưa đồng nhất ý kiến
Tổ chức họp nhóm tìm hướng giải quyết
Các thành viên trong nhóm vừa thực tập vừa làm dự án và viếng bận việc cá nhân
Nhóm họp lại về thời gian cố định
Thành viên quản lý thời gian chưa tốt dẫn đến việc chậm deadline
Chia nhỏ công việc theo các môc thời gian
Tìm hiểu một số kiến thức cho dự án Tận dụng tất cả các tài nguyên từ internet, giảng viên hướng dẫn
Những bài học rút ra sau khi làm dự án
Trong quá trình làm việc nhóm chung với nhau, chúng em rút ra được kinh nghiệm như sau:
- Tôn trọng ý kiến của người khác
- Giúp đỡ nhau trong công việc
- Các thành viên nên giao tiếp nhiều, công việc sẽ được giải quyết nhanh
- Chủ động trong công việc: hoàn thành công việc cá nhân, gặp vấn đề khó chủ động tìm kiếm sự giúp đỡ xung quanh
- Trách nhiệm trong công việc: kiểm tra các đầu công việc của bản thân cẩn thận tránh
Hướng phát triển dự án trong tương lai
Sau khi kết thúc dự án, kế hoạch phát triển trong tương lai của nhóm chúng em là tiếp tục nghiên cứu, tìm tòi để phát triển thêm các chức năng như:
- Danh mục khác như bán giày dép phụ kiện
- Quản lý nhiều mặt hàng và mở rộng nhiều cơ sở
- Quản lý doanh thu của từng cấp bậc mua hàng và các vấn đề liên quan đến back office