PHÂN TÍCH YÊU CẦU HỆ THỐNG
Tổng quan về hệ thống quản lý bán hàng, hàng hóa
Nhiều cửa hàng hiện nay vẫn sử dụng phương pháp quản lý hàng hóa thủ công bằng sổ sách, dẫn đến mất thời gian và dễ gây nhầm lẫn Việc kiểm soát hàng hóa bán ra về số lượng và tài chính chưa được thực hiện chặt chẽ, gây khó khăn cho người quản lý và ảnh hưởng đến độ chính xác của doanh thu Điều này có thể dẫn đến thất thoát và thua lỗ trong dài hạn, tác động tiêu cực đến lợi nhuận của cửa hàng.
Bên cạnh đó việc quản lý bán hàng của cửa hàng được thực hiện bằng phương pháp thủ công còn dẫn đến những bất cập như sau:
Tốc độ cập nhật, xử lý không cao, không đáp ứng được nhu cầu cần báo cáo nhanh chóng và chính xác cho chủ của hàng.
Không đồng bộ trong việc cập nhật dẫn đến những sai sót không đáng có.
Quản lý thủ công thường chịu ảnh hưởng bởi các yếu tố chủ quan do sự tác động của môi trường bên ngoài.
Lưu trữ thông tin khó khăn, dễ bị lộ, lẫn thông tin khách hàng.
Thông tin thường được lưu trữ trên giấy nên gây lãng phí lớn.
Khi mở rộng quy mô hoạt động thì hệ thống quản lý thủ công sẽ không đáp ứng được các yêu cầu lớn đề ra.
Cửa hàng cần xây dựng một hệ thống quản lý hiệu quả cho các hoạt động bán hàng và kiểm soát hàng hóa, nhằm giải quyết các vấn đề hiện tại và phù hợp với điều kiện thực tế Hệ thống mới không chỉ đáp ứng yêu cầu quản lý hiện tại mà còn cần được bổ sung các chức năng mới để nâng cao khả năng quản lý, từ đó thúc đẩy sự phát triển bền vững của cửa hàng.
Hệ thống quản lý bán hàng và hàng hóa giúp người quản lý dễ dàng theo dõi và giám sát hoạt động mua bán cũng như doanh thu của cửa hàng Chức năng quản lý bán hàng cho phép kiểm soát khách hàng, doanh số và doanh thu, trong khi chức năng quản lý hàng hóa giúp theo dõi số lượng, chủng loại và giá thành của từng sản phẩm.
Kiểm soát hoạt động nhập hàng (bao gồm đầy đủ các thông tin về giá nhập, số lượng và thông tin của từng mặt hàng).
Kiểm soát hoạt động bán hàng (bao gồm đầy đủ các thông tin về giá bán, số lượng và xu hướng của từng mặt hàng).
Kiểm tra số lượng hàng hóa tồn (bao gồm thông tin về số lượng).
Kiểm tra, báo cáo doanh số hàng tháng, hàng quý.
Người dùng cuối hệ thống (tên, mô tả, trách nhiệm)
Quản trị viên hệ thống của cửa hàng chịu trách nhiệm quản lý tất cả các chức năng trong hệ thống, bao gồm việc điều khiển phần mềm Họ có toàn quyền xử lý thông tin, cho phép sửa đổi, xóa hoặc thêm các dữ liệu cần thiết để đảm bảo hoạt động hiệu quả của cửa hàng.
Các bên liên quan (tên, mô tả, trách nhiệm)
Nhà cung cấp đóng vai trò quan trọng trong việc cung cấp nguồn hàng cho cửa hàng Quản lý thông tin nhà cung cấp giúp cửa hàng duy trì liên lạc hiệu quả, từ đó nhập hàng nhanh chóng và thuận tiện Ngoài ra, việc xây dựng mối quan hệ thân thiết với nhà cung cấp còn giúp cửa hàng tiết kiệm chi phí khi đặt hàng.
Khách hàng là những người đã thực hiện giao dịch tại cửa hàng, và việc lưu trữ thông tin của họ trong hệ thống giúp nâng cao chất lượng hỗ trợ khách hàng Công ty thường tổ chức các chương trình khuyến mãi đặc biệt dành cho khách hàng thân thiết, từ đó xây dựng niềm tin và mối quan hệ bền vững với khách hàng.
Yêu cầu của hệ thống
Hệ thống quản lý sẽ được giám sát toàn diện qua các khâu như nhập hàng, quản lý sản phẩm, quản lý hóa đơn, quản lý khách hàng và quản lý nhà cung cấp Dưới đây là những chức năng cơ bản của hệ thống.
Quản lý hàng hóa trong cửa hàng là yếu tố then chốt trong kinh doanh, giúp người quản lý kiểm soát hiệu quả hàng hóa, ngăn ngừa thất thoát và tồn đọng Chức năng quản lý hàng hóa của phần mềm quản lý là không thể thiếu, bao gồm hai thành phần chính: “Quản lý sản phẩm” và “Quản lý phiếu nhập hàng” Chức năng quản lý sản phẩm đóng vai trò quan trọng trong việc theo dõi và tối ưu hóa quy trình kinh doanh.
Kiểm soát, cập nhật dữ liệu về hàng hóa
Tìm kiếm, thêm, sửa, xóa sản phẩm.
Để quản lý hàng hóa hiệu quả, cần theo dõi những mặt hàng sắp hết hoặc tồn kho lâu để kịp thời nhập và xả hàng Đồng thời, hãy đính kèm ảnh chứng từ vào các phiếu nhập kho để đảm bảo tính minh bạch và chính xác trong quá trình quản lý.
Bên cạnh chức năng quản lý sản phẩm là chức năng quản lý phiếu nhập hàng Chức năng này bao gồm:
Tìm kiếm, thêm, sửa, xóa phiếu nhập hàng.
Chức năng quản lý hóa đơn đóng vai trò quan trọng trong việc theo dõi và quản lý hoạt động bán hàng của cửa hàng.
Để quản lý hiệu quả việc bán hàng, việc báo cáo là rất quan trọng Phần mềm quản lý bán hàng được phát triển với chức năng thống kê báo cáo, bao gồm các tính năng như tìm kiếm, thêm, sửa và xóa hóa đơn.
Báo cáo doanh thu theo ngày, tuần hay tháng.
Chức năng quản lý khách hàng trong phần mềm cho phép lưu trữ thông tin khách hàng, giúp người bán dễ dàng phân biệt khách mới, khách cũ và khách quen Điều này hỗ trợ trong việc xây dựng các chương trình bán hàng và tri ân hợp lý, từ đó tiết kiệm chi phí và thời gian trong quá trình tạo lập đơn hàng.
1.2.2 Yêu cầu phi chức năng. Để hệ thống này hoạt động một cách hiệu quả thì nó phải được nằm dưới những “Yêu cầu phi chức năng” Vậy với hệ thống này cần những “Yêu cầu phi chức năng nào”.
Hệ thống cần đảm bảo phân quyền chặt chẽ, cho phép quản lý người dùng hiệu quả thông qua các chức năng và dữ liệu của hệ thống Điều này có nghĩa là các quản trị viên hoặc chủ cửa hàng sẽ có những quyền hạn riêng biệt để tác động lên hệ thống và dữ liệu.
Tính bảo mật là yêu cầu quan trọng hàng đầu, không chỉ bảo vệ hệ thống mà còn đảm bảo an toàn cho toàn bộ doanh nghiệp.
Hệ thống cần đảm bảo giao diện đẹp và thân thiện, dễ sử dụng cho người dùng Các màn hình được thiết kế đơn giản và tiện lợi cho việc nhập liệu, đồng thời hướng đến tính cá nhân hóa theo nhu cầu của từng người dùng Người dùng cũng có khả năng tự thiết lập các nghiệp vụ và màn hình thường xuyên sử dụng, cũng như định dạng danh sách dữ liệu theo yêu cầu công việc của mình.
Hệ thống cần có tính kế thừa cao, đảm bảo các phân hệ có khả năng kế thừa và xử lý tự động Đồng thời, phần mềm phải dễ dàng kết nối với các ứng dụng khác để nâng cao hiệu quả công việc và đồng nhất dữ liệu.
Yêu cầu phi chức năng đóng vai trò quan trọng trong việc đảm bảo hiệu quả của hệ thống; nếu không được đáp ứng, hệ thống sẽ trở nên vô dụng.
1.3 Các công cụ được sử dụng.
StarUML là phần mềm hỗ trợ UML (Unified Modeling Language), giúp thực hiện các phương pháp MDA (Model Driven Architecture) thông qua các khái niệm hồ sơ UML Phần mềm này rất quan trọng trong việc phân tích và thiết kế hệ thống, điều cần thiết cho mọi dự án Sử dụng StarUML giúp tối đa hóa năng suất và chất lượng của các dự án phần mềm, vì nó cho phép mô hình hóa độc lập với người lập trình, ngôn ngữ lập trình hay nền tảng sử dụng Hơn nữa, mô hình hóa giúp tài liệu trở nên dễ đọc và dễ hiểu hơn.
1.3.2 Phần mềm code NetBeans IDE.
NetBeans IDE là một trong những công cụ lập trình miễn phí tốt nhất hiện nay, chủ yếu phục vụ cho các lập trình viên phát triển Java Tuy nhiên, phần mềm này yêu cầu máy tính có cấu hình cao với RAM và CPU tương đối mạnh để hoạt động hiệu quả.
NetBeans IDE là một môi trường phát triển tích hợp (IDE) quan trọng cho lập trình viên, hỗ trợ nhiều hệ điều hành như Linux, Windows và MacOS Là một phần mềm mã nguồn mở, NetBeans cung cấp các tính năng cần thiết để phát triển ứng dụng web, ứng dụng di động và ứng dụng desktop.
NetBeans IDE hỗ trợ rất nhiều những ngôn ngữ lập trình như Python, Ruby,JavaScript, Groovy, C / C + +, và PHP.
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
Biểu đồ Use case
Sau khi xác định yêu cầu hệ thống ở Chương 1, chúng ta sẽ phân tích các tác nhân và chức năng liên kết thông qua biểu đồ usecase Biểu đồ này thể hiện rõ các tác nhân và usecase trong hệ thống, mang lại cái nhìn tổng quan và rõ ràng cho người thiết kế, từ đó giúp xây dựng hệ thống một cách hiệu quả.
2.1.1 Biểu đồ ca sử dụng mức tổng quát:
Hình 2 1: Biểu đồ Usecase mức tổng quát
2.1.2 Phân rã biểu đồ ca sử dụng.
2.1.2.1 Biểu đồ Usecase “ Quản lý hàng hóa”
Admin sử dụng chức năng Quản lý hàng hóa để quản lý sản phẩm và phiếu nhập hàng tại cửa hàng Với tính năng quản lý sản phẩm, admin có thể tạo và chỉnh sửa danh mục sản phẩm, cũng như xem danh sách các mặt hàng hiện có Đồng thời, chức năng quản lý phiếu nhập hàng cho phép admin tạo phiếu nhập, tìm kiếm, sửa đổi và xóa thông tin liên quan đến phiếu nhập.
Hình 2 2: Biểu đồ Usecase Quản lý hàng hóa
2.1.2.2 Biểu đồ Usecase “ Quản lý hóa đơn”
Quản lý hóa đơn cho phép Admin tạo mới, xem và quản lý thông tin các hóa đơn đã được khởi tạo trong hệ thống Ngoài ra, tính năng quản lý bán hàng còn hỗ trợ Admin trong việc tìm kiếm, chỉnh sửa và xóa các hóa đơn có sẵn trong cửa hàng.
Hình 2 3: Biểu đồ Usecase Quản lý hóa đơn
2.1.2.3 Biểu đồ Usecase “ Thống kê báo cáo”
Thống kê báo cáo phân tích những số liệu bán hàng của cửa hàng Nó giúp
Admin kiểm soát được doanh số của cửa hàng và phán đoán được nhu cầu khách hàng để kinh doanh sản phẩm phù hợp.
Hình 2 4: Biểu đồ Usecase Thống kê báo cáo
2.1.2.4 Biểu đồ Usecase “ Quản lý khách hàng”
Quản lý khách hàng dùng để Admin quản lý thông tin khách hàng Admin có thể thêm, chỉnh sửa hay tìm kiếm thông tin về khách hàng của mình.
Hình 2 5: Biểu đồ Usecase Quản lý khách hàng
2.1.2.5 Biểu đồ Usecase “ Quản lý nhà cung cấp”
Quản lý nhà cung cấp cho phép admin thêm, xem và chỉnh sửa thông tin các nhà cung cấp hiện có trong hệ thống Ngoài ra, tính năng này cũng hỗ trợ admin tìm kiếm và xóa thông tin của nhà cung cấp trong cửa hàng một cách dễ dàng.
Hình 2 6: Biểu đồ Usecase Quản lý nhà cung cấp.
Đặc tả chi tiết từng ca sử dụng
2.2.2 Đặc tả Use case “Quản lý hàng hóa”.
2.2.2.1 Đặc tả Use case “Quản lý sản phẩm”
Bảng 2 2: Đặc tả Usecase Quản lý sản phẩm
2.2.2.2 Đặc tả Use case “Thêm sản phẩm”
2.2.2.3 Đặc tả Use case “Tìm kiếm sản phẩm”
4 Admin chọn nút “Tìm kiếm”
5 Admin nhập mã sản phẩm.
6 Admin chọn nút “Tìm kiếm”
7 Hệ thống hiển thị hàng hóa với mã hàng hóa tương ứng
2.2.2.4 Đặc tả Use case “Sửa thông tin”
2.2.2.5 Đặc tả Use case “Xóa hàng hóa”
2.2.2.6 Đặc tả Use case “Quản lý phiếu nhập hàng”
2.2.2.7 Đặc tả Use case “Thêm phiếu nhập”
2.2.2.8 Đặc tả Use case “Tìm kiếm phiếu nhập”
2 Hệ thống hiển thị các lựa chọn “Quản lý sản phẩm”,“Quản lý phiếu nhập hàng”
3 Admin chọn “Quản lý phiếu nhập hàng”
4 Admin chọn nút “Tìm kiếm”
5 Admin nhập mã phiếu nhập.
6 Admin chọn nút “Tìm kiếm”
7.Hệ thống hiển thị form thông tin phiếu nhập với mã phiếu nhập tương ứng
2.2.2.9 Đặc tả Use case “Sửa thông tin”
6 Admin chon phiếu nhập hàng cần chỉnh sửa thông tin và chỉnh sửa.
7 Admin chọn nút “Sửa” để hoàn tất.
7.Hệ thống kiểm tra thông tin và thông báo “Cập nhật thành công”.
Bảng 2 10: Đặc tả Usecase Sửa thông tin phiếu nhập
2.2.2.10 Đặc tả Use case “Xóa phiếu nhập”
2.2.3 Đặc tả Use case “Quản lý hóa đơn”.
2.2.3.1 Đặc tả Use case “Thêm hóa đơn”
2.2.3.2 Đặc tả Use case “Tìm kiếm hóa đơn”
2.2.3.3 Đặc tả Use case “Sửa thông tin”
Bảng 2 14: Đặc tả Usecase Sửa thông tin hóa đơn
2.2.3.4 Đặc tả Use case “Xóa hóa đơn”
2.2.4 Đặc tả Use case “Thống kê, báo cáo”.
2.2.4.1 Đặc tả Use case “Thêm báo cáo”
2.2.4.2 Đặc tả Use case “Tìm kiếm báo cáo”
2.2.4.3 Đặc tả Use case “Sửa thông tin”
Bảng 2 18: Đặc tả Usecase Sửa thông tin báo cáo
2.2.4.4 Đặc tả Use case “Xóa báo cáo”
2.2.5 Đặc tả Use case “Quản lý nhà cung cấp”.
2.2.5.1 Đặc tả Usecase “Thêm nhà cung cấp”
2.2.5.2 Đặc tả Use case “Tìm kiếm nhà cung cấp”
Bảng 2 21: Đặc tả Usecase Tìm kiếm nhà cung cấp
2.2.5.3 Đặc tả usecase “ Sửa thông tin”
Bảng 2 22: Đặc tả Usecase Sửa thông tin nhà cung cấp
2.2.5.4 Đặc tả Usecase “Xóa nhà cung cấp”
2.2.6 Đặc tả Use case “Quản lý khách hàng”.
2.2.6.1 Đặc tả Usecase “Thêm khách hàng”
Use Case Thêm khách hàng
2.2.6.2 Đặc tả Use case “Tìm kiếm khách hàng”
Bảng 2 25: Đặc tả Usecase Tìm kiếm khách hàng
2.2.6.3 Đặc tả usecase “ Sửa thông tin”
Bảng 2 26: Đặc tả Usecase Sửa thông tin khách hàng
2.2.6.4 Đặc tả Usecase “Xóa khách hàng”
Các biểu đồ tuần tự
2.3.1 Biểu đồ tuần tự Đăng nhập.
Biểu đồ tuần tự dưới đây minh họa kịch bản của use case Đăng nhập, thể hiện mối quan hệ giữa các đối tượng và tác nhân theo trình tự thời gian.
Hình 2 7: Biểu đồ tuần tự Đăng nhập
2.3.2 Biểu đồ tuần tự Quản lý sản phẩm.
Biểu đồ tuần tự dưới đây minh họa kịch bản của use case Quản lý sản phẩm, thể hiện mối quan hệ giữa các đối tượng và tác nhân theo trình tự thời gian.
Hình 2 8: Biểu đồ tuần tự Quản lý sản phẩm
2.3.3 Biểu đồ tuần tự Quản lý phiếu nhập hàng.
Biểu đồ tuần tự dưới đây minh họa kịch bản của use case Quản lý phiếu nhập hàng, thể hiện mối quan hệ giữa các đối tượng và tác nhân theo trình tự thời gian.
Hình 2 9: Biểu đồ tuần tự Quản lý phiếu nhập hàng
2.3.4 Biểu đồ tuần tự Quản lý hóa đơn.
Biểu đồ tuần tự dưới đây minh họa kịch bản của use case Quản lý hóa đơn, thể hiện mối quan hệ giữa các đối tượng và tác nhân theo thứ tự thời gian.
Hình 2 10: Biểu đồ tuần tự Quản lý hóa đơn
2.3.5 Biểu đồ tuần tự Quản lý khách hàng.
Biểu đồ tuần tự dưới đây minh họa kịch bản của use case Quản lý khách hàng, thể hiện mối quan hệ giữa các đối tượng và các tác nhân theo trình tự thời gian.
Hình 2 11: Biểu đồ tuần tự Quản lý khách hàng
2.3.6 Biểu đồ tuần tự Thống kê, báo cáo.
Biểu đồ tuần tự dưới đây minh họa kịch bản của use case Thống kê báo cáo, thể hiện mối quan hệ giữa các đối tượng và các tác nhân theo trình tự thời gian.
Hình 2 12: Biểu đồ tuần tự Thống kê, báo cáo
2.3.7 Biểu đồ tuần tự Quản lý nhà cung cấp.
Biểu đồ tuần tự dưới đây minh họa kịch bản của use case Quản lý nhà cung cấp, thể hiện mối quan hệ giữa các đối tượng và các tác nhân theo trình tự thời gian.
Hình 2 13: Biểu đồ tuần tự Quản lý nhà cung cấp.
Thiết kế cơ sở dữ liệu
2.4.1 Mô hình thực thể quan hệ (E-R).
Hình 2 14:Mô hình thực thể quan hệ (E-R)
2.4.2 Lược đồ cơ sở dữ liệu quan hệ.
Lược đồ cơ sở dữ liệu quan hệ.
Khach_hang(MaKH, TenKH, Diachi, Gioitinh, SDT)
Hoa_don(MaHD, Ngaylap, Tongtien, MaKH)
San_pham(MaSP, TenSP, LoaiSP, Gianhap, Giaban, Nhacungcap, Soluong) Mua_hang(MaHD, MaSP, Soluong, Thanhtien)
Phieu_nhap_hang(MaPhieunhap, Ngaynhap, Tongtien, MaNcc)
Nhap_hang(MaPhieunhap, MaSP, Soluong, Thanhtien)
Nha_cung_cap(MaNcc, TenNcc, Diachi, SDT, Email)
Thongke_baocao(MaBaocao, TenBaocao, MaHD, MaPhieunhap, Doanhthu,
TRIỂN KHAI HỆ THỐNG
Quá trình triển khai hệ thống
Sau khi phân tích yêu cầu và xác định mô hình thiết kế hệ thống, nhóm chúng em tiến hành triển khai hệ thống, bao gồm hai phần chính: Front-end và Back-end.
3.1.1 Quá trình triển khai Front-end.
Front-end là quá trình thiết kế giao diện người dùng cho trang web, bao gồm tất cả các yếu tố hiển thị và hiệu ứng Để tạo ra một website thu hút và có tính thẩm mỹ cao, việc sử dụng thành thạo các ngôn ngữ lập trình và công cụ hỗ trợ là rất quan trọng Trong bài viết này, nhóm đã chọn Java Swing để phát triển phần front-end cho phần mềm.
3.1.2 Quá trình triển khai Back-end.
Back-end giúp người dùng có thể thực hiện được các chức năng của phần mềm. Quá trình triển khai Back-end được thực hiện như sau:
Xây dựng các chức năng theo đúng yêu cầu và mô hình thiết kế trước đó đã đặt ra.
Sử dụng JAVA để xử lý dữ liệu, thực hiện các chức năng, yêu cầu của người dùng.
Triển khai dự án theo mô hình MVC cơ bản bao gồm ba thành phần chính: Model, View và Controller Để lưu trữ và truy vấn cơ sở dữ liệu, MySQL là lựa chọn phổ biến với nhiều ưu điểm nổi bật.
MySQL là một hệ quản trị cơ sở dữ liệu dễ dàng sử dụng, cung cấp độ bảo mật cao và đa tính năng Ngoài ra, MySQL còn đưa ra các tiêu chuẩn giúp cải thiện hiệu quả công việc và tiết kiệm chi phí.
Giới thiệu một số giao diện của hệ thống
Khi mở giao diện chính của hệ thống, người dùng sẽ thấy nút đăng nhập, mô tả chi tiết về hệ thống, các sản phẩm hiện có và thông tin liên hệ để hỗ trợ.
Khi đăng nhập vào hệ thống, người dùng cần nhập tài khoản và mật khẩu trên trang đăng nhập Nếu thông tin bị bỏ trống hoặc sai, hệ thống sẽ yêu cầu nhập lại Đối với người dùng chưa có tài khoản, hãy chọn chức năng đăng ký để tạo tài khoản mới.
Hình 3 1: Giao diện đăng nhập của hệ thống
3.2.2 Giao diện chính của hệ thống.
Sau khi đăng nhập thành công, giao diện hệ thống sẽ hiển thị lượt thích của Fanpage, số lượng khách hàng, báo cáo đơn giản và các chức năng khác của hệ thống.
Hình 3 2: Giao diện chính của hệ thống
3.2.3 Các giao diện chức năng.
3.2.3.1 Giao diện quản lý sản phẩm
Khi truy cập vào chức năng quản lý sản phẩm, người dùng có thể xem danh sách đầy đủ các sản phẩm của cửa hàng, bao gồm tên sản phẩm, mã sản phẩm, giá nhập, số lượng và giá bán Tính năng tìm kiếm giúp dễ dàng tìm sản phẩm, đồng thời người dùng có thể thêm, sửa hoặc xóa thông tin sản phẩm thông qua các nút chức năng, từ đó nhanh chóng cập nhật thông tin sản phẩm.
Hình 3 3: Giao diện chức năng quản lý sản phẩm
3.2.3.2 Giao diện quản lý hóa đơn
Khi truy cập vào quản lý hóa đơn, người dùng có thể xem toàn bộ danh sách hóa đơn của cửa hàng, bao gồm mã hóa đơn, thông tin khách hàng, tổng số tiền Ngoài ra, người dùng còn có thể dễ dàng tìm kiếm sản phẩm cũng như thực hiện các thao tác thêm, sửa, xóa thông tin hóa đơn thông qua các nút chức năng tiện lợi.
Hình 3 4: Giao diện chức năng quản lý hóa đơn
Hình 3 5: Giao diện chức năng quản lý nhà cung cấp
Hình 3 6: Giao diện Thống kê báo cáo
Hình 3 7: Giao diện quản lý khách hàng.