khoản Hệ thống trở về trang chủ khi đăng kí thành công Kết thúc usecase Các luồng sự kiện Tên Usecase Quản lý giỏ hàng Mô tả Cho phép khách hàng đặt sách và kiểm tra sách trong giỏ h
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
Chương trình Thiết kế và Quản trị Hệ Thống Thông Tin
Giảng viên hướng dẫn:
Chuyên ngành:
Viện:
Nguyễn Nhật Quang
Khoa học máy tính Công nghệ thông tin và truyền thông
HÀ NỘI, 7/2021
Chữ ký của GVHD
Trang 2ĐỀ TÀI TỐT NGHIỆP
Thiết kế và xây dựng website bán sách
Giáo viên hướng dẫn
Ký và ghi rõ họ tên
Trang 3Lời cảm ơn
Lời đầu tiên, em xin được gửi lời cảm ơn chân thành đến Ban giám hiệu
nhà trường cùng toàn thể thầy cô trong Khoa, Viện đã luôn dạy dỗ, giúp đỡ vàđồng hành cùng em trong suốt 5 năm học tập tại trường Đại học Bách Khoa Hà
Nội Đặc biệt, em xin gửi lời cảm ơn đến thầy Nguyễn Nhật Quang, thầy đã luôn
tin tưởng, giúp đỡ em trong suốt quá trình làm Đồ án tốt nghiệp Trong quá trìnhlàm đồ án tốt nghiệp không thể tránh khỏi những thiếu sót, em rất mong nhậnđược sự thông cảm của quý Thầy cô
Em xin chân thành cảm ơn!
Tóm tắt nội dung đồ án
Ngày nay, có rất nhiều trang thương mại điện tử tuy nhiên việc quản lý lạithường phải dung một phần mềm của bên thứ ba Nên em sẽ khắc phục nhượcđiểm này Để sự bất đồng bộ không thể xảy ra giữa 2 hệ thống cũng như giảmchi phí vận hành
Vấn đề bảo mật an toàn dữ liệu cũng là một vấn đề vô cũng quan trọngtrong môi trường mạng hiện nay Đã có rất nhiều vụ việc đánh cắp dữ liệu, nhất
là dữ liệu người dùng, điển hình là Facebook Vì vậy cũng cần phải có một hệthống đủ an toàn, và những trang web bán sách hiện tại chưa có được điều đó
Từ vấn đề đó, em đã quyết định thiết kế và xây dựng một website bánsách, trang web không chỉ thực hiện nhiệm vụ bán sách mà còn tích hợp cả hệthống quản lí, thống kê cũng như có những phương thức bảo mật thông tin phùhợp cho việc kinh doanh
- Ngôn ngữ lập trình sử dụng: PHP (Laravel 7.x framework)
- Hệ quản trị cơ sở dữ liệu: MySQL
Sinh viên thực hiện
Ký và ghi rõ họ tên
Trang 4CHƯƠNG 1 GIỚI
THIỆU ĐỀ TÀI
1.1 Đặt vấn đề
Trong thời đaị công nghệ thông tin phát triển, nhu cầu nắm bắt thông tin một cáchnhanh chóng và chính xác là điều cấp thiết Với mạng Internet chỉ cần click chuột cả thếgiới mà chúng ta quan tâm đều nằm trong tầm tay, với đầy đủ thông tin, hình ảnh, âmthanh
Cùng với sự phát triển đó các công ty và doanh nghiệp cũng không ngừng lớn mạnhkhi áp dụng những công nghệ mới trong lĩnh vực này Nếu muốn tìm một cuốn sách hay,nhanh chóng tiện lợi phù hợp với sở thích của mình, cách đơn giản nhất hãy truy cập vàowebsite bán sách, chúng ta có thể dọc qua đọc lại nột dung tóm tắt của sách, các thông tinliên quan như: tác giả, nhà xuất bản, giá tiên và hơn thế nữa có thể đặt mua sách mà bạnmong muốn Do vậy, nhu cầu thiết kế website bán sách cho các công ty sách là rất cầnthiết Vấn đề đặt ra là ấc thông tin trên các website bán sách phải thường xuyên cập nhật,chính xác, khách hang có thể đặt sách và thanh toán trực tuyến trên mạng mà không phảitrực tiếp đến nơi thanh toán hay phải ra ngân hang chuyển khoản
Từ đó em đã lên ý tưởng xây dựng một website bán sách,đáp ứng nhu cầu cấp thiếtcủa không chỉ người mua hàng có thể mua hàng một cách nhanh chóng nhất, mà cũnggiúp những người chủ quản lí và nhân viên cửa hàng có thể sử dụng cùng một hệ thốngtrang web để có thể kiểm soát một một cách tốt nhất, kèm theo đó là một hệ thống bảomật thông tin của khách hàng để khách hàng có thể an tâm sử dụng hệ thống mà không lo
bị đánh cắp dữ liệu
1.2 Mục đích dự án
Với các vấn đề đã nêu ở trên, em sẽ xây dựng một website sẽ giúp khách hàng có thể muanhững phụ kiện mình ưng ý nhất mà không cần phải đến tận cửa hàng Điều này sẽ giúptiết kiệm được thời gian cũng như giải quyết việc đi lại của khách hàng, làm giảm thiểuviệc quá nhiều người đến cửa hàng cùng lúc Website cũng giúp đưa ra thực trạng và kếtquả bán hàng của cửa hàng từ đó sẽ có hướng quảng cáo cho sản phẩm để tăng doanh thu.Quan trọng nhất, những thông tin đơn hàng của khách hàng sẽ được bảo mật an toàn,tránh tình trạng đánh cắp dữ liệu hay tấn công dữ liệu có thể xảy ra
1.3 Phạm vi đề tài
Trang 5Phạm vi của đề tài tập trung vào những chức năng cơ bản của một trang web thương mạiđiện tử thông thường dành cho khách hàng sử dụng, những chức năng quản lí cơ bản củamột nhà quản trị viên và các nhân viên của cửa hàng, cuối cũng là một lớp bảo mật dànhcho hệ thống mỗi khi khách hàng tạo đơn hàng thành công.
1.4 Định hướng và giải pháp
Xây dựng một website thương mại điện tử là một giải pháp nhằm giải quyết nhữngvấn đề nêu trên Về phía người sử dụng, họ sẽ được xem từng loại sản phẩm, đánh giá vềsản phẩm hay có thể so sánh giá giữa các sản phẩm với nhau Về phía quản trị viên nắmđược chiến lược kinh doanh là một điều quan trọng dựa vào lượng khách hàng và doanhthu
Hệ thống sẽ được xây dựng trên nền tảng web, một cách tiếp cận rất phổ biến, manglại cho người sử dụng nhiều lựa chọn khi có thể truy cập từ nhiều thiết bị như laptop, điệnthoại, máy tính bảng,
Về công nghệ sử dụng trong đề tài này, với phần hệ thống em sẽ sử dụng Laravel,một PHP Framework giúp xử lí những bài toán về nghiệp vụ của cửa hàng một cách đơngiản, kèm với đó là thư viện Boostrap để có thể xây dựng giao diện của trang web dựatrên HTML nhưng có thể sử dụng được những đoạn code PHP trong đó Hệ thống sẽ sửdụng MySQL làm cơ sở dữ liệu
Trang 6CHƯƠNG 2 KHẢ
O SÁT PHÂN TÍCH HỆ THỐNG 2.1 Khảo sát thực trạng
Ngày nay, có rất nhiều trang thương mại điện tử tuy nhiên việc quản lý lại thườngphải dung một phần mềm của bên thứ ba Nên em sẽ khắc phục nhược điểm này Để sựbất đồng bộ không thể xảy ra giữa 2 hệ thống cũng như giảm chi phí vận hành
Vấn đề bảo mật an toàn dữ liệu cũng là một vấn đề vô cũng quan trọng trong môitrường mạng hiện nay Đã có rất nhiều vụ việc đánh cắp dữ liệu, nhất là dữ liệu ngườidùng, điển hình là Facebook Vì vậy cũng cần phải có một hệ thống đủ an toàn, và nhữngtrang web bán phụ kiện hiện tại chưa có được điều đó
Trong phần này, em sẽ phân tích yêu cầu một hệ thống cần phải có và các chứcnăng cơ bản của trang web
2.2 Phân tích yêu cầu chức năng:
2.2.1 Tổng quan về chức năng của hệ thống
Chức năng đăng nhập của Khách hàng và Quản trị viên sẽ hoạt động cùng một formlogin, hệ thống sẽ kiểm tra phân quyền của tài khoản để điều hướng trang web, vì vậy em
sẽ gộp chung hai chức năng này vào cùng một phần mô tả
Tóm tắt về các use case chính được trình bày trong bảng dưới đây:
Đăng nhập Cho phép người dùng đăng nhập vào hệ thống
Đăng kí Cho phép người dùng đăng kí tài khoản sử
dụng hệ thốngThanh toán Cho phép người dùng thanh toán online khi
đặt hàng
Trang 7Chỉnh sửa thông tin
tài khoản
Cho phép người dùng thay đổi thông tin cánhân cho tài khoản của mình
Quản lí người dùng Cho phép quản trị viên quản lí, cấp hoạt động
cho tài khoản người dùng Quản lí sản phẩm Cho phép quản trị viên xem danh sách sản
phẩm, tạo sản phẩm mới, chỉnh sửa sản phẩmhoặc xóa sản phẩm
Quản lí danh mục sản
phẩm
Cho phép quản trị viên xem danh sách danhmục sản phẩm, tạo danh mục sản phẩm mới,chỉnh sửa danh mục hoặc xóa danh mục Quản lí đơn hàng Cho phép quản trị viên xem danh sách đơn
hàng, xóa đơn hàng, hủy đơn hàng
Quản lí banner Cho phép quản trị viên thêm, sửa, xóa banner
nhằm quảng cáo các dòng sản phẩm Quản lí đánh giá Cho phép quản trị viên thu thập các đánh giá
Trang 8Hình 2.1 Biểu đồ Use Case Tổng quan
2.2.2 Biểu đồ use case phân rã cho Actor “Người dùng”
Trang 92.2.2.1 Phân rã Use Case:
Hình 2.2 Biểu đồ phân rã cho Actor “Người dùng”
Trang 102.2.2.2 Đặc tả Use Case:
Đăng nhập
Tên Usecase Đăng nhập
Mô tả Để truy cập vào hệ thống khách thăm cần
đăng nhập với tài khoản của mình
Sự kiên kích hoạt Khách thăm chọn chức năng đăng nhập
Tiền điều kiện Không có
Hậu điều kiện Đăng nhập thành công
Hệ thống kiểm tra thông tin đăng nhập
Hệ thống trở về trang chủ nếu đăng nhập thành công
Kết thúc usecase Các Luồng sự
kiện thay thế
Email tài khoản không hợp lệ hoặc sai mậtkhẩu
- Hệ thống tiển thị thông báo lỗi
- Cho khách thăm nhập lại hoặc chọn
“Quên mật khẩu”
- Hệ thống kiểm tra email có tồn tạihay không và gửi liên kết thay đổimật khẩu
- Hệ thống thông báo thay đổi mậtkhẩu thành công
- Kết thúc usecase
Trang 11Đăng ký
Tên Usecase Đăng kí
Mô tả Để có tài khoản đăng nhập thì khách thăm cần
đăng ký tài khoản
Sự kiện kích hoạt Khách thăm chọn chức năng đăng kí từ hệ
thống Tiền điều kiện Chưa có tài khoản trên hệ thống
Hậu điều kiện Đăng kí thành công
Luồng sự kiện
chính
Hệ thống hiển thị form đăng kí
Khách thăm nhập thông tin yêu cầu
Hệ thống kiểm tra thông tin tài
Trang 12khoản
Hệ thống trở về trang chủ khi đăng
kí thành công
Kết thúc usecase Các luồng sự kiện
Tên Usecase Quản lý giỏ hàng
Mô tả Cho phép khách hàng đặt sách và kiểm tra
sách trong giỏ hàng của mình
Sự kiện kích hoạt Khách hàng có thể chỉnh sửa giỏ hàng, đặt
hàng và thanh toán online trên hệ thốngTiền điều kiện Khách hàng đã thêm sản phẩm vào giỏ hàngHậu điều kiện Người dùng thanh toán thành công
Luồng sự kiện
chính
Khách hàng chọn giỏ hàng
Hệ thống hiển thị sách trong giỏ hàng
Người dùng có thể chỉnh sửa sách tronggiỏ hàng
Trang 13 Hệ thống hiển thị sách mà khách hàng
đã chỉnh sửa
Khách hàng chọn đặt mua sách trong giỏ hàng
Hệ thống hiển thị phương thức thanh toán
Khách hàng chọn hình thức thanh toán online
Khách hàng nhập tài khoản thanh toán
Hệ thống xác nhận thanh toàn thành công
Hệ thống thông báo đặt hàng thành công
Kết thúc usecaseCác luồng sự kiện
- Cho nhập lại thông tin tài khoản
- Nếu đúng quay lại bước 4
Trang 14Chỉnh sửa thông tin tài khoản:
Tên Usecase Chỉnh sửa thông tin tài khoản
Mô tả Người dùng có thể chính sửa tài khoản cá
nhân Tác nhân Khách hàng, quản trị viên
Kết thúc usecase
Các luồng sự kiện
thay thế
Thông tin cập nhật không hợp lệ
- Hệ thống hiển thị thông báo thông tin cập nhật không hợp lệ
Trang 15(VD: Tên không đúng, mật khẩuchưa phù
2.2.3 Biểu đồ use case phân rã cho Actor “Quản trị viên”
2.2.3.1 Phân rã Use Case
Về chức năng quản lí tài khoản, quản trị viên sẽ có quyền được xem danh sách tàikhoản của trang web, được xem thông tin tài khoản và Bên cạnh đó, quản trị viên cũng
có quyền thay đổi trạng thái tài khoản như khóa, xóa tài khoản nếu cần thiết
Chức năng này rất quan trọng khi khách hàng gặp vấn đề về tài khoản
Trang 16Hình 2.3 Biểu đồ Use Case quản lí tài khoản cho Actor Quản trị viên
Mô tả chức năng quản lí sản phẩm Bao gồm: tìm kiếm sản phẩm, xem chi tiết sảnphẩm, tạo sản phẩm, sửa sản phẩm hoặc là xóa sản phẩm
Trang 17Hình 2.4 Biểu đồ Use Case quản lí sản phẩm cho Actor Quản trị viên
Mô tả chức năng quản lí danh mục sản phẩm của quản trị viên Bao gồm: tìm kiếmdanh mục, xem danh mục, tạo danh mục mới, chỉnh sửa danh mục hoặc là xóa danh mục
Trang 18Hình 2.5 Biểu đồ Use Case quản lí danh mục sản phẩm
cho Actor Quản trị viên
Mô tả chức năng quản lí đơn hàng của quan trị viên Bao gồm: xem danh sách đơnhàng, cập nhật trạng thái đơn hàng và huỷ đơn hàng
Trang 19Hình 2.6 Biểu đồ Use Case quản lí đơn hàng cho Actor Quản trị viên
Đối với chức năng quản lí banner, quản trị viên sẽ được tìm kiếm banner, xemdanh sách banner, thêm, sửa, xóa thông tin banner
Trang 20Hình 2.7 Biểu đồ Use Case quản lí banner cho Actor Quản trị viên
Đối với chức năng quản lí đánh giá, quản trị viên sẽ được xem danh sách đánh giá,
ẩn và hiển thị đánh giá của người dùng
Trang 21Hình 2.8 Biểu đồ Use Case quản lí đánh giá cho Actor Quản trị viên
2.2.3.2 Đặc tả Use Case:
Quản lí tài khoản:
Trang 22Tên Usecase Quản lí tài khoản
Mô tả Quản trị viên xem danh sách tài khoản, khóa hoặc mở
Website hiển thị danh sách tài khoản
Quản trị viên chọn chức năng xem chi tiết tài khoản
Quản trị viên chọn chức năng xoá, khoá và mởtài khoản
Hệ thống sẽ trả về những kết quả tương ứng
Thành công sẽ quay về danh sách tài khoản
Kết thúc usecase Các luồng sự
kiện thay thế
Hệ thống xảy ra lỗi
Quản trị viên không thể xóa tài khoản
Hệ thống quay lại luồng sự kiện chính
Quản lý sản phẩm:
Tên Usecase Quản lí sản phẩm
Mô tả Thêm, sửa, xóa và xem sản phẩm
Tác nhân Quản trị viên
Trang 23 Website hiển thị danh sách sản phẩm
Quản trị viên chọn chức năng tạo sản phẩm, chỉnh sửa sản phẩm, xóa sản phẩm hoặc xem danh sách sản phẩm
Hệ thống sẽ trả về những kết quả tương ứng
Hệ thống báo thành công sẽ quay về danh sách sản phẩm
Kết thúc usecase Các luồng sự
Tên Usecase Quản lí danh mục sản phẩm
Mô tả Thêm, sửa, xóa và xem danh mục sản phẩm
Tác nhân Quản trị viên
Trang 24 Website hiển thị danh sách danh mục
Quản trị viên chọn chức năng tạo danh mục, chỉnh sửa danh mục, xóa danh mục hoặc xem danh sách danh mục
Hệ thống sẽ trả về những kết quả tương ứng
Thành công sẽ quay về danh sách danh mục
Kết thúc usecase Các luồng sự
Tên Usecase Quản lí banner
Mô tả Thêm, sửa, xóa hoặc xem banner
Tác nhân Quản trị viên
Sự kiện kích Quản trị viên chọn chức năng quản lí banner
Trang 25hoạt
Tiền điều kiện Quản trị viên đã đăng nhập vào trang quản trị
Hậu điều kiện Quản trị viên cập nhật banner thành công
Luồng sự kiện
chính
Website hiển thị danh sách banner
Quản trị viên chọn chức năng tạo banner, xóa banner hoặc xem danh sách banner
Hệ thống sẽ trả về những kết quả yêu cầu
Hệ thống thực hiện thành công sẽ quay về danh sách banner
Kết thúc usecase Các luồng sự
kiện thay thế
Hệ thống báo lỗi:
- Quản trị viên không thể xóa banner
- Hệ thống quay lại luồng sự kiện chính
Quản lí đánh giá:
Tên Usecase Quản lí đánh giá
Mô tả Xem, ẩn hoặc hiện đánh giá sản phẩm
Tác nhân Quản trị viên
Sự kiện kích
hoạt
Quản trị viên chọn chức năng quản lí đánh giá
Trang 26Tiền điều kiện Quản trị viên đã đăng nhập vào trang quản trị
Hậu điều kiện Quản trị viên cập nhật đánh giá thành công
Luồng sự kiện
chính
Website hiển thị danh sách đánh giá
Quản trị viên chọn chức năng xem danh sách đánh giá hoặc xóa đánh giá
Hệ thống sẽ trả về những kết quả tương ứng
Thành công hệ thống sẽ quay về danh sách đánh giá
Kết thúc usecase Các luồng sự
Tên Usecase Quản lí đơn hàng
Mô tả Xem, cập nhật hoặc xóa đơn hàng
Tác nhân Quản trị viên
Sự kiện kích
hoạt
Quản trị viên chọn chức năng quản lí đơn hàng
Trang 27Tiền điều kiện Quản trị viên đã đăng nhập vào trang quản trị
Hậu điều kiện Quản trị viên cập nhật đơn hàng thành công
Luồng sự kiện
chính
Website hiển thị danh sách đơn hàng
Quản trị viên chọn chức năng xem danh sách đơn hàng, xóa đơn hàng hoặc cập nhật trạng thái đơn hàng
Hệ thống sẽ trả về những kết quả tương ứng
Thành công hệ thống sẽ quay về danh sách đơn hàng
Kết thúc usecase Các luồng sự
kiện thay thế
Hê thống xảy ra lỗi:
- Quản trị viên không cập nhật được đơn hàng
- Hệ thống báo đơn hàng bị lỗi
- Hệ thống quay lại luồng sự kiện chính
Thống kê:
Tên Usecase Thống kê
Mô tả Thống kê doanh số theo tháng,năm…
Tác nhân Quản trị viên
Sự kiện kích
hoạt
Quản trị viên đăng nhập thành công vào trang chủtrang quản trị
Trang 28Tiền điều kiện Quản trị viên đã đăng nhập vào trang quản trị
Hậu điều kiện Quản trị viên cập nhật thống kê thành công
Luồng sự kiện
chính
Website hiển thị các biểu đồ về doanh số
Quản trị viên chọn ngày tháng để xem doanh
số
Thành công hệ thống sẽ trả về những kết quảtương ứng
- Hệ thống quay lại luồng sự kiện chính
2.3 Yêu cầu phi chức năng
Để có thể sử dụng và vận hành trang web, ngay từ đầu trang web cần phải được xâydựng và phát triển đúng với mục tiêu đặt ra để kế thừa những chức năng cơ bản củanhững trang web đã có và xử lí những vấn đề tồn đọng mà những trang web kia đang cònthiếu sót Trong thời đại công nghệ phát triển như vũ bão hiện nay, yếu tố kĩ thuật đượcđặt lên hàng đầu trong hoạt động tồn tại của mỗi trang web Một trang web sẽ hoạt độngmột cách ổn định nếu như các yếu tố kĩ thuật được đảm bảo
Do đó, trang web sẽ hoạt động tốt nếu như: