Xây dựng hệ thống website thương mại điện tử bán sách Nguồn chính chủ từ sinh viên điện lực đạt A+ đồ án tốt nghiệp
Trang 2LỜI CẢM ƠN
Quá trình nghiên cứu và thực hiện đề tài khóa luận là giai đoạn quan trọng nhấttrong quãng đời sinh viên của mỗi người Bản thân em giai đoạn này cũng gặp rấtnhiều khó khăn và áp lực trong việc hoàn thành hóa luận nhưng nhờ có sự giúp đỡ từphía gia đình, thầy cô hướng dẫn, bạn bè và các đồng nghiệp trong công ty thực tập.Đó là một nguồn động lực và thúc đẩy to lớn giúp em có thể hoàn thành được chặngđường cuối cùng của mình thời sinh viên Em xin cảm ơn chân thành tất cả mọi người.
Đầu tiên, em xin cảm ơn chân thành thầy Nguyễn Đình Thái mặc dù bận rộnnhiều công việc nhưng thầy vẫn dành thời gian để hướng dẫn và chỉ bảo tận tình, cũngnhư đưa ra những góp ý quý giá cho em trong suốt thời gian thực hiện khóa luận.
Em cũng xin chân thành cảm ơn thầy cô, cán bộ giảng viên trường Đại họcĐiện lực đã tận tình truyền đạt kiến thức, dạy dỗ bảo ban em từ những ngày đầu bỡngỡ bước chân vào cánh cổng Đại học, luôn luôn tâm huyết tạo điều kiện tốt nhất choem để có cơ hội học hỏi, tích lũy các kiến thức, kỹ năng để hoàn thành khóa luận.
Cuối cùng em xin kính chúc các thầy, cô luôn luôn mạnh khỏe và thành côngtrong sự nghiệp.
Trang 3DANH MỤC VIẾT TẮT
JSON JavaScript Object NotationREST Representationally State TransferHTTP Hyper Text Transfer Protocol
XML Extensible Markup LanguageAPI Application Programming InterfaceURL Uniform Resource LocationSQL Structured Query Language
Trang 4DANH MỤC HÌNH ẢNH
Hình 2.1 Biểu đồ usecase của hệ thống
Hình 2.2 Biểu đồ hoạt động mô tả usecase đăng ký của hệ thốngHình 2.3 Biểu đồ hoạt động của chức năng đăng nhập
Hình 2.4 Biểu đồ tuần tự mô tả chi tiết use case đăng kýHình 2.5 Biểu đồ tuần tự mô tả chi tiết use case đăng nhậpHình 2.6 Sơ đồ lớp của chức năng đăng ký
Hình 2.7 Sơ đồ lớp của chức năng đăng nhập
Hình 2.8 Biểu đồ hoạt động mô tả chi tiết usecase tìm kiếm sáchHình 2.9 Biểu đồ tuần tự mô tả chi tiết use case tìm kiếm sáchHình 2.10 Sơ đồ lớp mô tả chi tiết use case tìm kiếm sách
Hình 2.11 Biểu đồ hoạt động mô tả chi tiết usecase chức năng giỏ hàngHình 2.12 Biểu đồ tuần tự mô tả chi tiết use case thay đổi số lượng sản phẩmHình 2.13 Sơ đồ lớp mô tả chi tiết use case thay đổi số lượng sản phẩm trong giỏ hàng
Hình 2.14 Biểu đồ hoạt động mô tả chi tiết use case thực hiện mua sáchHình 2.15 Biểu đồ tuần tự mô tả chi tiết use case thực thi mua sáchHình 2.16 Sơ đồ lớp mô tả chi tiết use case thực hiện mua sách
Trang 5Hình 2.19 Biểu đồ lớp mô tả chi tiết use case thống kê số lượng sách được mua nhiều nhất
Hình 2.20 Biểu đồ lớp mô tả chi tiết use case đề xuất sản phẩm tương tựHình 2.21 Biểu đồ tuần tự mô tả chi tiết use case đề xuất sản phẩm tương tựHình 2.22 Biểu đồ hoạt động mô tả chi tiết use case thêm một tác giả
Hình 2.23 Biểu đồ hoạt động mô tả chi tiết use case thêm một nhà xuất bảnHình 2.24 Biểu đồ hoạt động mô tả chi tiết use case thêm một cuốn sách
Hình 2.25 Biểu đồ hoạt động mô tả chi tiết use case chỉnh sửa thông tin của sáchHình 2.26 Biểu đồ tuần tự mô tả chi tiết use case thêm một tác giả
Hình 2.27 Biểu đồ tuần tự mô tả chi tiết use case thêm nhà xuất bảnHình 2.28 Biểu đồ tuần tự mô tả chi tiết use case thêm một cuốn sách
Hình 2.29 Biểu đồ tuần tự mô tả chi tiết use case chỉnh sửa thông tin của một cuốn sách
Hình 2.30 Sơ đồ lớp mô tả chi tiết use case thêm một tác giả
Hình 2.31 Sơ đồ lớp mô tả chi tiết use case thêm một nhà xuất bản mớiHình 2.32 Sơ đồ lớp mô tả chi tiết use case thêm một cuốn sách mớiHình 2.33 Sơ đồ lớp mô tả chi tiết use case chỉnh sửa thông tin của sáchHình 2.34 Sơ đồ lớp mô tả chi tiết use case danh sách ưa thích
Hình 2.35 Sơ đồ tuần tự mô tả chi tiết use case danh sách ưa thích
Hình 2.36 Sơ đồ hoạt động mô tả chi tiết use case lấy địa chỉ thông qua GoogleMap API
Trang 6Hình 3.1 REST API DesignHình 3.2 Bảng AddressesHình 3.3 Bảng Users
Hình 3.4 Bảng UserRecentlyViewedItemsHình 3.5 Bảng PaymentOptions
Hình 3.6 Bảng TransactionsHình 3.7 Bảng Books
Hình 3.8 Bảng AuthorsHình 3.9 Bảng BookImagesHình 3.10 Bảng PublishersHình 3.11 Bảng OrdersHình 3.12 Bảng OrderDetailsHình 3.13 Bảng BasketItemsHình 3.14 Bảng Roles
Hình 3.15 Bảng CountriesHình 3.16 Bảng BookConditionsHình 3.17 Bảng ExecptionsHình 3.18 Bảng OrderStatuses
Trang 7Hình 4.1 Trang đăng ký
Hình 4.2 Chức năng đăng nhậpHình 4.3 Các sách đã xem gần nhất
Hình 4.4 Giao diện trang thêm một cuốn sách vào giỏ hàngHình 4.5 Trang giỏ hàng
Hình 4.6 Trang thêm địa chỉHình 4.7 Trang tìm kiếm sách
Hình 4.8 Giao diện của chức năng chọn một phương thức thanh toán cho đơn hàngHình 4.9 Trang phương thức thanh toán VNPay
Hình 4.10 Trang giỏ hàng
Hình 4.11 Trang giỏ hàng thay đổi số lượng sản phẩm
Hình 4.12 Giao diện xem thông tin chi tiết của một cuốn sáchHình 4.13 Trang danh mục ưa thích
Hình 4.14 Màn hình các đơn hàng mà người dùng đã muaHình 4.15 Trang thêm địa chỉ
Hình 4.16 Trang danh sách các tác giảHình 4.17 Trang tóm tắt đơn hàngHình 4.18 Trang xem sách theo thể loại
Hình 4.19 Giao diện chỉnh sửa thông tin một cuốn sáchHình 4.20 Trang thêm tác giả
Hình 4.21 Trang thêm nhà xuất bản
Trang 8Bảng 2.5 Bảng mô tả chi tiết use case thanh toán đơn hàng
Bảng 2.6 Bảng mô tả chi tiết use case thống kê số lượng sách được mua nhiều nhấtBảng 2.7 Bảng mô tả chi tiết use case đề xuất sản phẩm tương tự
Bảng 2.8 Bảng mô tả chi tiết use case thêm một tác giảBảng 2.9 Bảng mô tả chi tiết use case thêm một nhà xuất bảnBảng 2.10 Bảng mô tả chi tiết use case thêm một cuốn sách
Bảng 2.11 Bảng mô tả chi tiết chức năng chỉnh sửa thông tin một cuốn sáchBảng 2.12 Bảng mô tả chi tiết usecase danh sách ưa thích
Bảng 2.13 Bảng mô tả chi tiết usecase lấy địa chỉ thông qua GoogleMap API
Trang 91.4 Đối tượng và phạm vi nghiên cứu 3
1.4.1 Đối tượng nghiên cứu 3
1.4.2 Phạm vi nghiên cứu 4
1.5 Phương pháp thực hiện đề tài 4
1.5.1 Nghiên cứu và Thu thập thông tin 4
1.5.2 Phân tích và Thiết kế 4
1.5.4 Triển khai và Đánh giá 5
1.5.5 Viết Báo cáo 5
CHƯƠNG 2 PHÂN TÍCH THIẾT KẾ HỆ THỐNG 6
2.1 Đặc tả yêu cầu và sơ đồ tổng quan chức năng 6
2.1.1 Đặc tả yêu cầu 6
2.1.1.1 Mô tả tổng quan 6
2.1.1.2 Yêu cầu chức năng 6
2.1.1.2 Yêu cầu phi chức năng 7
2.1.2 Đặc tả bổ sung 7
2.1.3 Mô hình usecase của hệ thống 7
2.2 Đặc tả chức năng: 8
2.2.1 Chức năng đăng nhập, đăng ký 8
2.2.1.1 Biểu đồ hoạt động chức năng đăng nhập, đăng ký 8
2.2.1.2 Biểu đồ tuần tự chức năng đăng nhập, đăng ký 12
2.2.1.3 Biểu đồ lớp chức năng đăng nhập, đăng ký 14
2.2.2 Chức năng tìm kiếm sách 16
2.2.2.1 Biểu đồ hoạt động chức năng tìm kiếm sách 16
Trang 102.2.3.3 Biểu đồ lớp chức năng giỏ hàng 22
2.2.4 Chức năng thanh toán đơn hàng 23
2.2.4.1 Biểu đồ hoạt động chức năng thanh toán đơn hàng 23
2.2.4.2 Biểu đồ tuần tự chức năng thanh toán đơn hàng 26
2.2.4.3 Biểu đồ lớp chức năng thanh toán đơn hàng 27
2.2.5 Chức năng thống kê số lượng sách được mua nhiều nhất 27
2.2.5.1 Biểu đồ hoạt động chức năng thống kê số lượng sách được mua nhiều nhất 27
2.2.5.2 Biểu đồ tuần tự chức năng thống kê số lượng sách được mua nhiều nhất 29
2.2.5.3 Biểu đồ lớp chức năng thống kê số lượng sách được mua nhiều nhất 30
2.2.6 Chức năng đề xuất sản phẩm tương tự 30
2.2.6.1 Biểu đồ hoạt động chức năng đề xuất sản phẩm tương tự 30
2.2.6.2 Biểu đồ tuần tự chức năng đề xuất sản phẩm tương tự 32
2.2.7 Chức năng cho Quản trị viên 32
2.2.7.1 Biểu đồ hoạt động chức năng Quản trị viên 32
2.2.7.2 Biểu đồ tuần tự chức năng Quản trị viên 38
2.2.7.3 Biểu đồ lớp chức năng Quản trị viên 41
2.2.8 Chức năng danh sách ưa thích 44
2.2.8.1 Biểu đồ hoạt động chức năng danh sách ưa thích 44
2.2.8.2 Biểu đồ tuần tự chức năng danh sách ưa thích 45
2.2.9 Chức năng lấy địa chỉ thông qua GoogleMap API 46
2.2.9.1 Biểu đồ hoạt động chức năng lấy địa chỉ thông qua GoogleMap API 46
2.2.9.2 Biểu đồ tuần tự chức năng lấy địa chỉ thông qua GoogleMap API 48
2.2.9.3 Biểu đồ lớp chức năng lấy địa chỉ thông qua GoogleMap API 49
CHƯƠNG 3 TRIỂN KHAI VÀ ĐÁNH GIÁ HỆ THỐNG 51
3.1 Lựa chọn công nghệ và ngôn ngữ 51
Trang 113.3.1.8 Xóa một sản phẩm khỏi giỏ hàng 70
3.3.1.9 Thay đổi số lượng sản phẩm 70
3.3.1.10 Xem thông tin chi tiết của một quyển sách 71
3.3.1.11 Thêm sách vào mục ưa thích của tôi 72
3.3.1.12 Xem các đơn hàng mình đã mua 72
3.3.1.13 Xem các địa chỉ đã lưu 73
3.3.1.14 Xem các tác giả 73
3.3.1.15 Tóm tắt đơn hàng trước khi đặt hàng 74
3.3.1.16 Xem sách theo thể loại 75
3.3.2 Chức năng cho Quản trị viên 76
3.3.2.1 Xóa một cuốn sách 76
3.3.2.2 Chỉnh sửa thông tin của một cuốn sách 76
3.3.2.3 Tạo thêm một tác giả (Phục vụ cho mục đích thêm một cuốn sách) 77
3.3.2.4 Thêm một nhà xuất bản (Phục vụ cho mục đích thêm một cuốn sách) 783.3.2.5 Thêm một cuốn sách 78
3.3.2.6 Thống kê sách có lượt mua nhiều nhất theo năm, tháng hoặc ngày 79
KẾT LUẬN 81
Kết quả đạt được 81
Khó khăn, vướng mắc 81
Hướng phát triển và nghiên cứu hệ thống trong tương lai 82
TÀI LIỆU THAM KHẢO 83
Trang 12MỞ ĐẦU
Học tập là một thứ vô cùng quan trọng trong thế giới hiện tại của chúng ta Thếgiới không ngừng thay đổi nếu con người không chịu học tập thì sẽ bị bỏ lại phía sau.Học tập không chỉ mang lại cho con người những lợi ích như: có nguồn kiến thức rộnglớn hơn, tìm kiếm được công việc tốt hơn mà còn ra tăng tư duy và trí nhớ của conngười.
Một trong những cách quan trọng nhất để phát triển tư duy và kiến thức củachúng ta đó là sách Sách chính là nguồn tri thức vô tận về mọi lĩnh vực trong cuộcsống của những người đi trước viết ra kể lại và truyền đạt cho chúng ta [7] Các cuốnsách về kinh tế, lịch sử, văn hóa cho ta kiến thức về kinh doanh và thực tế xã hội, về sựphát triển qua từng thời kỳ nhân loại.
10 lợi ích lớn nhất của sách như: nâng cao kiến thức, cải thiện sự tập trung vàtăng cường kỹ năng tư duy và phân tích, vốn từ vựng phong phú hơn, cải thiện trí nhớ,giải trí và giảm căng thẳng, kích thích tinh thần, tăng tuổi thọ, hoàn thiện kỹ năng viếtlách, là hình thức giải trí miễn phí, điều khiển cảm xúc của bản thân [7].
Thị trường mua sắm trực tuyến đang trở nên ngày càng phổ biến và thu hút sựquan tâm của người tiêu dùng Việc tạo ra một trang web bán sách trực tuyến phản ánhxu hướng này và cung cấp một kênh bán hàng hiệu quả [8].
Vì vậy, việc truyền bá sách tới mọi công chúng là việc cấp thiết quan trọng.Cùng với việc phát triển của công nghệ như hiện nay, công cụ để chúng ta có thể tiếpcận với sách tốt nhất là thông qua nền tảng online cụ thể hơn là các trang web bánsách.
Trên cơ sở tìm hiểu về những web bán sách thịnh hành nhất và dựa vào kiếnthức thực tế của bản thân Khóa luận đưa ra mô hình trang web bán sách thương mạiđiện tử.
Trang 13● Chương 3 sẽ đi trình bày về các công nghệ được sử dụng trong hệ thống, cấu
trúc cơ sở dữ liệu và giao diện hệ thống
Trang 14CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI
1.1 Lý do chọn đề tài
Trong thời đại số hóa hiện nay, việc tận dụng công nghệ để phát triển các hệ thốngthương mại điện tử đã trở thành một xu hướng quan trọng trong kinh doanh Đặc biệt,xây dựng một hệ thống website thương mại điện tử dành cho bán sách không chỉ giúptạo ra một nền tảng kinh doanh hiệu quả mà còn đáp ứng nhu cầu ngày càng tăng củangười tiêu dùng đối với việc mua sắm sách trực tuyến [8] Một trang web bán sáchtrực tuyến mang lại sự thuận tiện cho người dùng khi có thể dễ dàng tìm kiếm, xemthông tin về sách và mua hàng mọi lúc, mọi nơi, thậm chí là khi họ không có thời gianđể đến cửa hàng sách truyền thống.
Việc chọn đề tài xây dựng hệ thống website thương mại điện tử dành cho bán sáchxuất phát từ nhận thức về sự phát triển mạnh mẽ của thị trường sách trực tuyến Sáchlà một sản phẩm được mọi người quan tâm và cần thiết, và việc tận dụng công nghệ đểcung cấp một nền tảng mua sắm thuận tiện, linh hoạt và đáng tin cậy cho người tiêudùng sẽ mang lại nhiều lợi ích cho cả người bán và người mua sách.
1.2 Mục tiêu của đề tài
Xây dựng hệ thống website thương mại điện tử dành cho bán sách với giao diệnthân thiện và dễ sử dụng Một trong những mục tiêu chính của đề tài là tạo ra một giaodiện trực quan, dễ sử dụng cho người dùng Giao diện người dùng được thiết kế saocho có tính tương tác cao, giúp người dùng dễ dàng tìm kiếm sách theo nhiều tiêu chíkhác nhau như tác giả, thể loại, năm xuất bản, đánh giá và giá cả Điều này cần phảiđược xây dựng kỹ lưỡng để tạo ra trải nghiệm mua sắm trực tuyến thoải mái và thuậntiện cho người dùng.
An ninh thông tin và tính an toàn của giao dịch trực tuyến là một ưu tiên hàng đầu
Trang 15sách, viết bình luận, chia sẻ trải nghiệm mua sắm, và cung cấp phản hồi để giúp cảithiện dịch vụ Mục tiêu là tạo ra một môi trường mua sắm năng động và thú vị, khuyếnkhích sự tham gia và chia sẻ từ cộng đồng người đọc.
1.3 Khảo sát thực tiễn
Tổng quan về thị trường sách trực tuyến
Trong giai đoạn chuẩn bị cho việc xây dựng hệ thống website thương mại điệntử dành cho bán sách, việc tìm hiểu sâu về thị trường sách trực tuyến là cực kỳ quantrọng [8] Tuy không thể tiến hành khảo sát thị trường một cách toàn diện như doanhnghiệp, em đã tham khảo thông tin từ các nguồn tài liệu, báo cáo nghiên cứu, và cácnghiên cứu trực tuyến Việc này giúp hiểu rõ hơn về xu hướng, cạnh tranh, nhu cầucủa người dùng và các dịch vụ đã có.
Phân tích các website sách hiện tại
Bằng việc phân tích sâu về các website bán sách đang hoạt động để hiểu rõ hơnvề cấu trúc, tính năng, giao diện người dùng và các điểm mạnh, yếu Việc này sẽ giúpnhận biết những gì cần cải thiện hoặc những tính năng mà họ có thể áp dụng vào dự án[8] Ngoài ra, em có tìm kiếm thông tin từ các tài liệu sách, báo cáo thị trường sách,bài viết trên trang web chuyên ngành hoặc từ các nền tảng nghiên cứu trực tuyến nhưcác diễn đàn chuyên ngành Điều này giúp em hiểu rõ hơn về xu hướng thị trường vàcác thông tin liên quan đến việc xây dựng hệ thống website thương mại điện tử sách[9].
1.4 Đối tượng và phạm vi nghiên cứu1.4.1 Đối tượng nghiên cứu
Người mua sách trực tuyến: Bao gồm những người thường xuyên mua sách qua
các nền tảng thương mại điện tử, đánh giá, và đưa ra ý kiến phản hồi về trải nghiệmcủa họ.
Các nhà xuất bản sách: Đối tượng này cung cấp thông tin về các tiêu chuẩn xuất
bản, quy trình cung cấp sản phẩm và mong đợi từ một nền tảng thương mại điện tử. Người bán sách: Gồm các cơ sở kinh doanh sách trực tuyến hoặc cá nhân bán sách
trên nền tảng thương mại điện tử.
Trang 161.4.2 Phạm vi nghiên cứu
Tập trung vào xây dựng hệ thống website thương mại điện tử cho bán sách:
Nghiên cứu sẽ tập trung vào các giai đoạn phát triển từ giao diện người dùng, hệthống quản lý sản phẩm, tính năng thanh toán và giao hàng.
Phân tích và đánh giá trải nghiệp: Qua việc thu thập phản hồi từ đối tượng
nghiên cứu, sẽ tiến hành phân tích để đánh giá hiệu quả, tính linh hoạt và sự thuậntiện của hệ thống trong việc mua bán sách trực tuyến.
Giới hạn về khu vực hoạt động: Nghiên cứu sẽ tập trung vào phát triển hệ thống
ứng dụng cho một khu vực trong nước để có thể kiểm soát và đánh giá các thay đổimột cách cụ thể và hiệu quả.
Việc xác định đối tượng nghiên cứu và phạm vi nghiên cứu giúp hạn chế và tậptrung nghiên cứu vào các khía cạnh quan trọng nhất của việc xây dựng hệ thốngwebsite thương mại điện tử cho bán sách, đồng thời đảm bảo rằng nghiên cứu có thểmang lại những kết quả cụ thể và áp dụng được trong thực tế.
1.5 Phương pháp thực hiện đề tài
1.5.1 Nghiên cứu và Thu thập thông tin
Nghiên cứu các hệ thống thương mại điện tử hiện có, đặc biệt là các nền tảng bánsách trực tuyến.
Thu thập thông tin về yêu cầu cụ thể của khách hàng, cấu trúc dữ liệu sách, thôngtin tác giả, danh mục sách,…
1.5.2 Phân tích và Thiết kế
Xác định yêu cầu chức năng và phi chức năng cụ thể cho hệ thống bán sách. Phân tích cấu trúc cơ sở dữ liệu, thiết kế cơ sở hạ tầng của hệ thống [9]. Thiết kế giao diện người dùng thân thiện và dễ sử dụng.
1.5.3 Phát triển và Kiểm thử
Trang 17 Thu thập phản hồi từ người dùng và đối tác để đánh giá hiệu suất và tính hiệu quảcủa hệ thống.
Đưa ra các cải tiến, điều chỉnh để tối ưu hóa hoạt động của hệ thống.
1.5.5 Viết Báo cáo
Tổng hợp tất cả quá trình nghiên cứu, phân tích, thiết kế, triển khai và đánh giá vàomột báo cáo khoa học.
Mô tả chi tiết quá trình xây dựng hệ thống, vấn đề gặp phải, giải pháp đã thực hiệnvà kết quả đạt được.
Trang 18CHƯƠNG 2 PHÂN TÍCH THIẾT KẾ HỆ THỐNG
2.1 Đặc tả yêu cầu và sơ đồ tổng quan chức năng2.1.1 Đặc tả yêu cầu
Đặc tả yêu cầu là tập hợp bao gồm các mô tả của hệ thống phần mềm được pháttriển, đưa ra các yêu cầu chức năng và phi chức năng, và có thể bao gồm một tập hợpcác case sử dụng (usecases) để thông qua đó mô tả tương tác giữa phần mềm và ngườidùng [9].
2.1.1.1 Mô tả tổng quanMục tiêu
Xây dựng một hệ thống thương mại điện tử cho phép người dùng mua sách trựctuyến, thêm vào giỏ hàng, thanh toán và quản lý đơn hàng.
Người dùng có thể đăng ký tài khoản mới hoặc đăng nhập vào hệ thống.
Người dùng có thể cập nhật thông tin cá nhân như địa chỉ, thông tin thanh toán,…
Duyệt và tìm kiếm sách, tác giả
Người dùng có thể tìm kiếm sách theo tiêu chí như tên sách, tác giả, thể loại,… Người dùng có thể xem thông tin chi tiết và mô tả về sách.
Quản lý giỏ hàng
Trang 192.1.1.2 Yêu cầu phi chức năngHiệu suất
Hệ thống phải có thời gian tải trang nhanh và phản hồi nhanh chóng khi người dùngtương tác Ngoài ra, hệ thống phải có khả năng xử lý nhiều yêu cầu từ người dùngcùng lúc mà vẫn duy trì hiệu suất ổn định.
Thân thiện với người dùng
Giao diện cần được thiết kế sao cho dễ sử dụng và hiểu, giúp người dùng dễ dàng tìmkiếm và mua sách.
2.1.2 Đặc tả bổ sung
Tính năng: Hệ thống có khả năng cho phép nhiều người dùng truy cập cùng một
thời điểm, thực hiện các tác vụ đồng thời [9].
Tính tương thích: chạy trên các trình duyệt khác nhau như Google Chrome,
Internet Explorer,…
Tính khả dụng: Giao diện thân thiện, dễ sử dụng, màu sắc hài hòa, người dùng dễ
sử dụng, đáp ứng đầy đủ hết các chức năng cho một hệ thống bán sách cơ bản. Hiệu năng: Khả năng xử lý và phản hồi nhanh chóng (không quá 3 giây), đáp ứng
tốt nhu cầu của người sử dụng khi ở trạng thái bình thường.
Tính bảo mật: Tính bảo mật cao, mật khẩu được gửi và lưu trữ dưới dạng mã hóa,
các thay đổi chỉ có thể thực hiện bởi người được phân quyền, người dùng được cấpquyền tương ứng với tài khoản mà họ sử dụng.
2.1.3 Mô hình usecase của hệ thống
Hình dưới thể hiện các usecase tổng quát của hệ thống gồm 2 tác nhân chính: Ngườidùng, khách hàng hệ thống và quản lý của cửa hàng.
Trang 20Hình 2.4 Biểu đồ usecase của hệ thống
2.2 Đặc tả chức năng:
2.2.1 Chức năng đăng nhập, đăng ký
2.2.1.1 Biểu đồ hoạt động chức năng đăng nhập, đăng kýBiểu đồ hoạt động chức năng đăng ký
Bảng 2.1 Bảng mô tả chức năng đăng ký một tài khoản mới
Tên usecase Đăng ký
Tác nhân Người dùng, Hệ thống
Trang 21Luồng phụ - Tài khoản đã tồn tại: Hệ thống báo lỗi và yêu cầuđăng ký lại
Điều kiện ban đầu - Hệ thống ở trạng thái bình thường hiển thị mànhình đăng ký
Điều kiện sau
Yêu cầu đặc biệt Không cóĐặc điểm mở rộng Không có
Biểu đồ hoạt động thực thi usecase đăng ký được mô tả như hình dưới
Trang 22Hình 2.5 Biểu đồ hoạt động mô tả usecase đăng ký của hệ thống
Trang 23Luồng chính - Truy cập trang đăng nhập của hệ thống- Trang đăng nhập sẽ được hệ thống hiển thị
- Nhập thông tin đăng nhập hệ thống sẽ kiểm tra vàtrả về kết quả đăng nhập thất bại/ thành côngLuồng phụ - Tài khoản đăng nhập sai tài khoản hoặc mật khẩu:
Hệ thống báo lỗi
Điều kiện ban đầu - Hệ thống ở trạng thái bình thường hiển thị mànhình đăng nhập
Điều kiện sau
Yêu cầu đặc biệt Không cóĐặc điểm mở rộng Không có
Biểu đồ hoạt động thực thi usecase đăng nhập được mô tả như hình dưới
Trang 24Hình 2.6 Biểu đồ hoạt động của chức năng đăng nhập
2.2.1.2 Biểu đồ tuần tự chức năng đăng nhập, đăng ký
Biểu đồ tuần tự chức năng đăng ký
Trang 25Hình 2.4 Biểu đồ tuần tự mô tả chi tiết use case đăng ký
Luồng thực thi use case đăng ký một tài khoản được thể hiện như hình trên Khingười dùng đăng ký một tài khoản mới, hệ thống sẽ yêu cầu người dùng nhập cácthông tin như: tài khoản, mật khẩu và xác nhận mật khẩu Sau đó hệ thống sẽ kiểm tracác thông tin được nhập có đủ và đúng hay không Nếu đủ và đúng hệ thống sẽ chuyểnhướng người dùng về trang chủ của hệ thống còn nếu không thì hệ thống sẽ trả lại lỗicho người dùng.
Biểu đồ tuần tự chức năng đăng nhập
Trang 26Hình 2.5 Biểu đồ tuần tự mô tả chi tiết use case đăng nhập
Luồng thực thi use case đăng nhập được thể hiện như hình trên Khi người dùngmuốn đăng nhập vào hệ thống thì hệ thống sẽ bắt người dùng nhập tài khoản và mậtkhẩu Sau đó hệ thống sẽ kiểm tra đầu vào người dùng nhập vào đã đúng hay chưa.Nếu tài khoản nhập vào hợp lệ thì hệ thống sẽ cho người dùng đăng nhập vào hệ thốngcòn nếu không thì hệ thống sẽ trả lại lỗi cho người dùng.
2.2.1.3 Biểu đồ lớp chức năng đăng nhập, đăng ký
Biểu đồ lớp chức năng đăng ký
Trang 27Hình 2.6 Sơ đồ lớp của chức năng đăng ký
Biểu đồ lớp chức năng đăng nhập
Hình 2.7 Sơ đồ lớp của chức năng đăng nhập
Trang 282.2.2 Chức năng tìm kiếm sách
2.2.2.1 Biểu đồ hoạt động chức năng tìm kiếm sách
Bảng dưới đây thể hiện về usecase tìm kiếm sách
Bảng 2.3 Bảng mô tả chi tiết usecase tìm kiếm sách
Tên usecase Tìm kiếm sách theo tên sách, theo tên tác giả hoặc theothể loại
Luồng phụ - Người dùng có thể chọn trực tiếp sách ở thanh tìmkiếm khi tìm kiếm sách
Điều kiện ban đầu - Không có
Điều kiện sau - Người dùng sẽ được chuyển sang trang có cácsách phù hợp
Yêu cầu đặc biệt Không cóĐặc điểm mở rộng Không có
Biểu đồ hoạt động thực thi usecase tìm kiếm theo tên sách được mô tả như hình dưới
Trang 29Hình 2.8 Biểu đồ hoạt động mô tả chi tiết usecase tìm kiếm sách
Trang 302.2.2.2 Biểu đồ tuần tự chức năng tìm kiếm sách
Trang 312.2.2.3 Biểu đồ lớp chức năng tìm kiếm sách
Hình 2.10 Sơ đồ lớp mô tả chi tiết use case tìm kiếm sách
2.2.3 Chức năng giỏ hàng
2.2.3.1 Biểu đồ hoạt động chức năng giỏ hàng
Bảng dưới đây thể hiện về usecase giỏ hàng
Bảng 2.4 Bảng mô tả chi tiết usecase giỏ hàng
Tên use case Chức năng giỏ hàng chứa sáchTác nhân Người dùng, Hệ thống
Mục đích Người dùng muốn thay đổi số lượng sản phẩm muốnmua trong giỏ hàng
Luồng chính - Người dùng vào hệ thống để truy cập vào chứcnăng giỏ hàng.
- Hệ thống hiển thị giỏ hàng cho người dùng.
- Hệ thống kiểm tra xem giỏ hàng có chứa sách nàokhông.
Trang 32lượng sách hoặc xóa sách khỏi giỏ hàng.
- Nếu giỏ hàng trống, hệ thống thông báo giỏ hàngtrống.
Luồng phụ - Người dùng hủy thao tác
Điều kiện ban đầu - Ít nhất một sản phẩm phải có trong giỏ hàng
- Số lượng thay đổi phải hợp lệ lớn hơn 0 và khôngvượt quá số lượng có trong kho
Điều kiện sau - Nếu thành công, người dùng sẽ thay đổi số lượngthành công
Yêu cầu đặc biệt Không cóĐặc điểm mở rộng Không có
Biểu đồ hoạt động thực thi use case chức năng giỏ hàng được mô tả như hình dưới
Trang 33Hình 2.11 Biểu đồ hoạt động mô tả chi tiết usecase chức năng giỏ hàng
Trang 342.2.3.2 Biểu đồ tuần tự chức năng giỏ hàng
Hình 2.12 Biểu đồ tuần tự mô tả chi tiết use case thay đổi số lượng sản phẩm
Trang 352.2.3.3 Biểu đồ lớp chức năng giỏ hàng
Hình 2.13 Sơ đồ lớp mô tả chi tiết use case thay đổi số lượng sản phẩm trong giỏ hàng
2.2.4 Chức năng thanh toán đơn hàng
2.2.4.1 Biểu đồ hoạt động chức năng thanh toán đơn hàng
Bảng dưới đây thể hiện về use case thanh toán đơn hàng
Bảng 2.5 Bảng mô tả chi tiết use case thanh toán đơn hàng
Tên use case Thanh toán đơn hàng
Tác nhân Người dùng, Hệ thống, Hệ thống VNPay
Mục đích Giúp người dùng thực hiện hoàn thành thanh toán đơnhàng
Luồng chính - Người dùng chọn thanh toán đơn hàng.
- Hệ thống hiển thị thông tin đơn hàng và yêu cầunhập địa chỉ giao hàng.
- Người dùng nhập địa chỉ giao hàng và sau đó hệthống tính số km và phí ship dựa trên địa chỉ đãnhập.
- Hệ thống hiển thị số km và phí ship cho ngườidùng.
Trang 36nhận thanh toán tiền mặt.
- Nếu chọn thanh toán qua VNPay, hệ thống chuyểnhướng người dùng qua VNPay để xác nhận thanhtoán, sau đó thông báo thanh toán thành công chongười dùng.
Luồng phụ - Người dùng hủy thao tác
Điều kiện ban đầu - Người dùng đã đăng nhập vào hệ thống
- Phải tồn tại ít nhất một sản phẩm trong giỏ hàng- Người dùng phải chọn địa chỉ hợp lệ
- Người dùng phải chọn phương thức thanh toánhợp lệ
Điều kiện sau - Nếu thành công, người dùng sẽ xem được mã sốcủa đơn hàng của họ
Yêu cầu đặc biệt Không cóĐặc điểm mở rộng Không có
Biểu đồ hoạt động thực thi use case thanh toán đơn hàng như hình dưới
Trang 37Hình 2.14 Biểu đồ hoạt động mô tả chi tiết use case thực hiện mua sách
Trang 382.2.4.2 Biểu đồ tuần tự chức năng thanh toán đơn hàng
Hình 2.15 Biểu đồ tuần tự mô tả chi tiết use case thực thi mua sách
Luồng thực thi use case thực thi mua sách được thực thi như hình trên Ngườidùng sẽ vào giỏ hàng trong đó phải có hàng và nhấn tiếp tục Sau đó hệ thống sẽ hiển
Trang 392.2.4.3 Biểu đồ lớp chức năng thanh toán đơn hàng
Hình 2.16 Sơ đồ lớp mô tả chi tiết use case thực hiện mua sách
2.2.5 Chức năng thống kê số lượng sách được mua nhiều nhất
2.2.5.1 Biểu đồ hoạt động chức năng thống kê số lượng sách được mua nhiều nhất
Bảng dưới đây thể hiện về use case thống kê số lượng sách được mua nhiều nhất
Bảng 2.6 Bảng mô tả chi tiết use case thống kê số lượng sách được mua nhiều nhất
Tên use case Thống kê số lượng sách được mua nhiều nhấtTác nhân Người dùng, Hệ thống
Mục đích Giúp quản trị viên thống kê được số lượng sách đượcmua nhiều nhất
Luồng chính - Người dùng vào hệ thống để chọn cách thức thốngkê theo ngày, tháng hoặc năm.
- Hệ thống yêu cầu người dùng lựa chọn thời gianthống kê.
- Nếu người dùng chọn thống kê theo ngày, hệ
Trang 40năm, hệ thống sẽ thực hiện thống kê và hiển thịbáo cáo tương ứng.
Luồng phụ - Người dùng hủy thao tác
Điều kiện ban đầu - Người dùng đã đăng nhập vào hệ thống
Điều kiện sau - Nếu thành công, người dùng sẽ xem được sốlượng những cuốn sách được mua nhiều nhất theongày, tháng hoặc năm (tối đa 10)
Yêu cầu đặc biệt Không cóĐặc điểm mở rộng Không có
Biểu đồ hoạt động thực thi use case thống kê số lượng sách được mua nhiều nhất nhưhình dưới