Ngoài ra ứng dụng còn cho phép nhân viên quản lýmột số chức năng cơ bản như thêm sản phẩm, thêm thông tin khách hàng,… Tổng quan về các tính năng chung mà phần mềm này thường cung cấp ch
Trang 1TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI
KHOA CÔNG NGHỆ THÔNG TIN
-o0o -BÁO CÁO BÀI TẬP LỚN MÔN HỌC: ĐẶC TẢ PHẦN MỀM
ĐỀ TÀI XÂY DỰNG ỨNG DỤNG QUẢN LÝ BÁN MÁY TÍNH
Giảng viên hướng dẫn: Thầy Trần Văn Dũng
Sinh viên thực hiện Nguyễn Tuấn Giang
Mã sinh viên 201200100
Hà Nội, tháng 12 năm 2023
Trang 2MỤC LỤC
1 GIỚI THIỆU CHUNG 2
1.1 Mục đích 2
1.2 Phạm vi 2
1.3 Tài liệu tham khảo 2
2 MÔ TẢ TỔNG QUAN 2
2.1 Tổng quát về phần mềm 2
2.2 Các chức năng phần mềm 3
2.3 Các đặc trưng người sử dụng 3
2.4 Các ràng buộc 3
2.5 Các yêu cầu chức năng 3
3 ĐẶC TẢ HỆ THỐNG 5
3.1 Sơ đồ phân rã chức năng 5
3.2 Đặc tả chức năng 5
3.2.1 Các chức năng chính 5
3.2.2 Các chức năng cơ sở 6
3.3 Sơ đồ quan hệ thực thể 8
3.4 Đặc tả các thực thể 9
3.5 Cài đặt cơ sở dữ liệu vật lý 12
Trang 31 GIỚI THIỆU CHUNG
1.1 Mục đích
- Sự phát triển của công nghệ đang trên đà vươn tới một kỉ nguyên mới với nhiều sự phong phú và đa dạng trên nhiều lĩnh vực thuộc mọi ngành nghề khác nhau Cùng với những xu hướng phát triển đó thì việc sử dụng Internet ngày càng lan rộng và phổ biến Chúng ta dễ dàng sử dụng chúng ở bất cứ đâu với kho dữ liệu thông tin khổng lồ mà chúng ta thường gọi là “Big Data” chỉ với những thao tác đơn giản và nhanh chóng, nó đã trả về cho chúng ta kết quả mà chúng ta mong muốn
- Thật vậy giờ đây việc bán hàng online là hình thức kinh doanh đang rất phổ biến Tận dụng môi trường Internet để tạo ra quá trình mua bán hàng hóa Bán hàng Online có rất nhiều ưu điểm như nhân viên, mặt bằng, đi lại, …
- Chính vì vậy mục đích của tài liệu này là mô tả chi tiết yêu cầu cho phần mềm quản lý cửa hàng bán máy tính Chương trình giúp cho việc quản lý các công việc trong quán trở lên đơn giản, nhanh chóng và chính xác hơn
1.2 Phạm vi
- App quản lý là ứng dụng giúp cho người quản lý cửa hàng bán máy tính dễ dàng kiểm soát được cửa hàng Ứng dụng được dành riêng cho người quản
lý nên đây là phần mềm riêng biệt
1.3 Tài liệu tham khảo
[1] Bài giảng và sự hướng dẫn do thầy Trần Văn Dũng cung cấp
[2] Trần Văn Dũng, Bộ môn khoa học máy tính Bài giảng đặc tả phần mềm
Trường đại học Giao Thông Vận tải
2 MÔ TẢ TỔNG QUAN
2.1 Tổng quát về phần mềm
Phần mềm quản lý cửa hàng bán máy tính là một ứng dụng quản lý doanh nghiệp được thiết kế để hỗ trợ quản trị viên trong việc quản lý mọi hoạt động của cửa hàng bán máy tính Ngoài ra ứng dụng còn cho phép nhân viên quản lý một số chức năng cơ bản như thêm sản phẩm, thêm thông tin khách hàng,… Tổng quan về các tính năng chung mà phần mềm này thường cung cấp cho quản trị viên gồm: Quản lý sản phẩm, quản lý hóa đơn nhập, hóa đơn xuất, quản lý thông tin khách hàng, thông tin nhân viên và quản lý doanh thu của cửa hàng
Ứng dụng này dùng dữ liệu làm trọng tâm, nó sẽ cần nơi nào đó để lưu trữ
dữ liệu Để làm điều đó, cơ sở dữ liệu sẽ được dùng Do đó ứng dụng sẽ sử dụng dữ liệu local để dễ dàng quản lý các thông tin
Tuy nhiên ứng dụng vẫn còn nhiều hạn chế về dung lượng lưu trữ dữ liệu, vấn đề về tài nguyên,…
Trang 42.2 Các chức năng phần mềm
Phần mềm này dành cho quản lý và nhân viên nên chủ yếu để quản lý sản phẩm, hóa đơn và thông tin Về mặt thông tin thì quản lý có thể chỉnh sửa được thông tin cá nhân của nhân viên và của khách hàng Bên cạnh đó ứng dụng còn
hỗ trợ gọi điện trực tiếp cho khách hàng hay nhân viên mà không còn lưu số ở mục danh bạ bên ngoài
Việc nhập hàng hóa cũng rất thuận tiện khi người quản lý có thể nhập hóa đơn nhập hàng nhanh chóng mà không mất nhiều thời gian Hay như hóa đơn xuất cũng vậy, nhưng cần phải nhập thông tin khách hàng trước khi nhập hóa đơn xuất
Thêm sản phẩm hay chi tiết sản phẩm là yếu tố có hầu hết ở mọi ứng dụng quản lý bán hàng Ứng dụng này cũng thế việc nhập thông tin sản phẩm cũng rất nhanh chóng mà không mất nhiều thời gian
Về doanh thu thì chỉ dành cho quản trị viên của cửa hàng thì mới có thể xem Bên cạnh đó ứng dụng còn cho phép xem trong thời gian đó việc nhập và xuất hàng của cửa hàng như thế nào để người quản trị viên dễ dàng cân nhắc trong vấn đề kinh doanh
2.3 Các đặc trưng người sử dụng
Ứng dụng chỉ dành riêng cho người quản lý và nhân viên nên chỉ có 2 đối tượng sử dụng được ứng dụng mobile Nên ứng dụng có những phần dành riêng cho từng đối tượng nên mỗi đối tượng sẽ có những yêu cầu riêng
Người quản trị là người lập thông tin của nhân viên, có chức năng thêm sửa xóa sản phẩm, thông tin nhân viên, khách hàng, hóa đơn xuất , hóa đơn nhập và kiểm kê doanh thu theo tuần, theo tháng,…
Nhân viên thì có thể nhập thông tin của khách hàng, thêm hóa đơn nhập, xuất khi bán hàng cùng với các chức năng thêm sửa xóa sản phẩm, tìm kiếm sản phẩm,…
2.4 Các ràng buộc
Ứng dụng mobile do sử dụng cơ sở dữ liệu local vì thế hệ thống không cần
sử dụng Internet vẫn có thể sử dụng được như một ứng dụng quản lý bình thường
2.5 Các yêu cầu chức năng
Chức năng đăng nhập:
Người quản trị và nhân viên cần có tài khoản được thiết lập ngay từ đầu để
có thể đăng nhập vào app Tài khoản đăng nhập sẽ được cung cấp cho nhà quản trị do nhà phát triển ứng dụng quy định
Chỉnh sửa thông tin cá nhân:
Người quản trị và nhân viên có thể chỉnh sửa thông tin cá nhân của mình khi đăng nhập như thay đổi tên, mật khẩu, …
Quản lý tài khoản nhân viên:
Trang 5Chỉ có người quản trị mới có thể thêm tài khoản cho nhân viên, ngoài ra còn thêm sửa xóa được thông tin cá nhân Và cung cấp cho nhân viên tài khoản đã thiết lập để nhân viên có thể đăng nhập vào hệ thống
Cập nhật hóa đơn nhập:
Chức năng này giúp người quản trị viên kiểm soát việc nhập hàng hóa trên
hệ thống nhanh chóng Nhân viên cũng có quyền nhập hóa đơn nhập trên hệ thống Sau khi nhập xong hóa đơn nhập sẽ hiển thị trên màn hình và người quản trị và nhân viên có thể thêm sửa xóa thông tin hóa đơn nhập bằng cách nhấn vào hóa đơn đó
Cập nhật hóa đơn bán:
Người quản trị và nhân viên sẽ dùng chức năng này để nhập thông tin hóa đơn bán mỗi khi có khách mua hàng Sau đó các hóa đơn bán sẽ hiển thị trên màn hình và có thể chỉnh sửa được khi nhấn vào hóa đơn đó trên màn hình
Cập nhập hãng:
Cả người quản trị và nhân viên đều có thể thêm hãng nhập hàng vào trong
hệ thống
Cập nhật sản phẩm:
Việc cập nhật sản phẩm được diễn ra thường xuyên nên cả người quản trị
và nhân viên đều có thể nhập thông tin sản phẩm mỗi khi có sản phẩm mới
Và sản phẩm sẽ hiển thị lên trên hệ thống cách dễ dàng
Quản lý thông tin khách hàng:
Việc mua bán được diễn ra thường xuyên nên quản trị và nhân viên đều có thể nhập thông tin và quản lý thông tin khách hàng cách nhanh chóng nhất Việc thêm, sửa, xóa cũng diễn ra dễ dàng
Kiểm tra doanh thu:
Việc kiểm tra doanh thu được diễn ra định kỳ nên cả hai cũng có thể xem mức nhập xuất của cửa hàng
Trang 63 ĐẶC TẢ HỆ THỐNG
3.1 Sơ đồ phân rã chức năng
3.2 Đặc tả chức năng
3.2.1 Các chức năng chính
Quản lý hệ thống: Hỗ trợ người sử dụng đăng ký tài khoản, đăng
nhập vào hệ thống và giúp người quản trị dễ dàng cập nhật tài khoản, kích hoạt hoặc hủy bỏ tài khoản, cấp quyền sử dụng trong hệ thống Hỗ trợ người quản trị cập nhật những loại sản phẩm, thương hiệu, hãng cung cấp hàng cách dễ dàng nhất
Quản lý hàng nhập: Người quản lý sẽ cập nhật sản phẩm vào dữ liệu,
các thành phần có trong sản phẩm, cập nhật chi tiết sản phẩm nhập ( tên, thương hiệu,…) Sau đó người quản lý lập phiếu nhập kho và chi tiết phiếu nhập kho để quản lý sản phẩm cách thuận tiện và nhanh chóng, dễ dàng kiểm kê
Trang 7Quản lý bán hàng:
- Xử lý đơn đặt hàng (Kiểm tra xem các đơn đặt có khả thi không: số lượng, địa chỉ giao hàng, …), Lập hóa đơn bán, In hóa đơn
- Sau đó nhân viên sẽ chế biến sản phẩm theo phiếu yêu cầu
- Đưa ra thống kê doanh thu sản phẩm hay kinh doanh theo từng nhóm tùy chọn, định kỳ từ thời gian bắt đầu đến thời gian kết thúc
Quản lý giao dịch khách hàng: Khách hàng sẽ đăng ký tài khoản nếu
là lần đầu sử dụng, những lần tiếp theo khách hàng chỉ cần đăng nhập Nếu
là khách thì có thể xem hàng nhưng để mua hàng thì khách hàng cần đăng nhập tài khoản thì mới mua được Khách hàng có thể đặt theo yêu cầu và xem hóa đơn sau khi đặt hàng
3.2.2 Các chức năng cơ sở
Quản lý hệ thống:
Cập nhật tài khoản: Khi đăng kí thêm một tài khoản mới cập nhật
thêm vào hệ thống một tài khoản Chỉnh sửa và bổ sung thông tin về tài khoản của nhân viên hoặc khách hàng
Cập nhật loại sản phẩm: Quản trị viên sẽ cập nhật loại sản phẩm
khi có nhu cầu thay đổi về thông tin hoặc thêm loại sản phẩm
Cập nhật hãng: quản trị viên cập nhật các thương hiệu đồ uống để
phục vụ theo nhu cầu khách hàng
Quản lý hàng nhập:
Cập nhật sản phẩm: Khi thêm sản phẩm mới thì mục sản phẩm sẽ
được nhập vào dữ liệu để người mua hàng có thêm sự lựa chọn Ngoài ra còn cập nhật giá cả, thông tin về sản phẩm
Cập nhật chi tiết sản phẩm: Cần cho người mua biết chi tiết rõ
ràng về thông tin có trong sản phẩm để người dùng mua hàng với tâm thế đáp ứng được nhu cầu của mình nhất
Cập nhật chi tiết sản phẩm nhập: quản trị viên sẽ cập nhật chi tiết
sản phẩm nhập như: tên, số lượng, giá cả,…để dễ dàng quản lý thông tin
về sản phẩm
Lập phiếu nhập hàng: Người quản lý lập phiếu nhập hàng để dễ
dàng quản lý các mặt hàng, ngày giờ nhập,…
Cập nhật chi tiết phiếu nhập hàng: để dễ dàng quản lý về sản
phẩm, ngày giờ nhập hàng, số lượng mặt hàng, thời gian nhập hàng,…
Quản lý bán hàng:
Lập phiếu yêu cầu: người quản trị sẽ lập phiếu yêu cầu của khách
hàng để dễ dàng khâu mua hàng và các dịch vụ kèm theo
Trang 8Xử lý đơn hàng: Xem xét các đơn đặt về tính hợp lệ, mặt hàng, số
lượng, địa điểm nhận hàng để duyệt đơn hàng Hoặc sản phẩm đã hết hàng hoặc gặp sự cố gì đó
Lập và in hóa đơn: Khi đơn hàng đã được chấp nhận, nhân viên sẽ
bắt đầu sản phẩm và lập phiếu đơn hàng sau đó in đơn hàng cho khách hàng Khách hàng sẽ cầm phiếu in hàng để kiểm tra hàng
Báo cáo doanh thu: Mỗi đơn hàng sẽ được tự động cập nhật trong
lịch sử bán hàng sau đó ứng dụng tự động cập nhật tổng tiền thu được từ các đơn hàng
Cập nhật chi tiết hóa đơn: Sau khi chế biến sản phẩm xong nhân
viên sẽ cập nhật chi tiết hóa đơn về ngày giờ đặt hàng, tổng tiền phải trả của khách hàng, địa chỉ giao hàng ( nếu có)…
Quản lý giao dịch khách hàng
Đăng ký: Mở Form cho người sử dụng đăng ký Tài khoản, điền các
thông tin cần thiết của mình như họ tên, giới tính, ngày sinh, số điện thoại, vai trò, mật khẩu, … giúp người dùng mua hàng cách nhanh chóng nhất mà không cần phải nhập nhiều lần mỗi khi mua hàng
Đăng nhập: Xác thực vào hệ thống với tư cách một Tài khoản bằng
cách nhập email hoặc số điện thoại và mật khẩu
Tìm kiếm sản phẩm: hỗ trợ người sử dụng tìm kiếm sản phẩm
theo hãng, tên sản phẩm hoặc loại sản phẩm và một số đặc trưng của sản phẩm mà người mua muốn Ngoài ra dữ liệu sẽ đọc các tìm kiếm đó của khách hàng đề nhắc lại cho lần mở tiếp theo
Xem hóa đơn: Sau khi đã chọn giỏ hàng, khách hàng có thể nhấn
nút đặt mua hàng và nhập thông tin nơi nhận hàng hoặc người mua hàng
có thể mua hàng ngay trong mục xem chi tiết sản phẩm cách nhanh chóng và thuận tiện Sau đó người dùng có thể xem hóa đơn mua hàng của mình
Trang 93.3 Sơ đồ quan hệ thực thể
Trang 103.4 Đặc tả các thực thể
Bảng NhanVien
ST
3 dienThoai TEXT Số điện thoại nhân viên
Bảng KhachHang
ST
3 dienThoai TEXT Số điện thoại khách hàng
Bảng HoaDon
ST
Trang 11Bảng Hang
ST
Bảng SanPham
ST
Bảng ChiTietHoaDon
ST
1 maCTHD INT PK Mã chi tiết hóa đơn
Trang 12Bảng ThuocTinhSanPham
ST
8 dungLuongPin TEXT Dung lượng pin
10 loaiPhuKien TEXT Loại phụ kiện
Trang 133.5 Cài đặt cơ sở dữ liệu vật lý
//Tạo bảng Nhân Viên
String createTableNhanVien = "CREATE TABLE NhanVien(" +
"maNV TEXT NOT NULL UNIQUE PRIMARY KEY," +
"hoTen TEXT NOT NULL," +
"dienThoai TEXT NOT NULL," +
"diaChi TEXT," +
"namSinh TEXT," +
"taiKhoan TEXT NOT NULL," +
"matKhau TEXT NOT NULL," +
"hinhAnh BLOB)";
db.execSQL(createTableNhanVien);
//Tạo bảng Khách hàng
String createTableKhachHang = "CREATE TABLE KhachHang(" +
"maKH TEXT NOT NULL UNIQUE PRIMARY KEY," +
"hoTen TEXT NOT NULL ," +
"dienThoai TEXT NOT NULL," +
"diaChi TEXT NOT NULL)";
db.execSQL(createTableKhachHang);
//Tạo bảng Hãng
String createTableHang = "CREATE TABLE Hang(" +
"maHang TEXT NOT NULL UNIQUE PRIMARY KEY," +
"tenHang TEXT NOT NULL," +
"hinhAnh BLOB)";
db.execSQL(createTableHang);
//Tạo bảng Sản Phẩm
String createTableSanPham = "CREATE TABLE SanPham(" +
"maSP TEXT NOT NULL UNIQUE PRIMARY KEY," +
"maHang TEXT NOT NULL REFERENCES Hang(maHang)ON
DELETE CASCADE ON UPDATE CASCADE," +
"tenSP TEXT NOT NULL," +
"hinhAnh BOLD," +
"phanLoai INTEGER NOT NULL," +
"tinhTrang INTEGER NOT NULL," +
"giaTien TEXT NOT NULL," +
"trangThai INTERGER NOT NULL," +
"moTa TEXT)";
db.execSQL(createTableSanPham);
// Tạo bảng thuộc tính SP
String createTableThuocTinhSanPham = "CREATE TABLE ThuocTinhSanPham(" +
"maTT INTEGER PRIMARY KEY AUTOINCREMENT," +
"maSP TEXT NOT NULL REFERENCES SanPham(maSP) ON
DELETE CASCADE ON UPDATE CASCADE," +
"boNho TEXT," +
"RAM TEXT," +
"chipSet TEXT," +
"heDieuHanh TEXT," +
Trang 14"dungLuongPin TEXT," +
"congSac TEXT," +
"loaiPhuKien TEXT)";
db.execSQL(createTableThuocTinhSanPham);
//Tạo bảng hóa đơn
String createTableHoaDon = "CREATE TABLE HoaDon(" +
"maHD TEXT NOT NULL UNIQUE PRIMARY KEY," +
"maNV TEXT NOT NULL REFERENCES NhanVien(maNV) ON DELETE CASCADE ON UPDATE CASCADE," +
"maKH TEXT REFERENCES KhachHang(maKH) ON DELETE CASCADE ON UPDATE CASCADE," +
"phanLoai INTEGER NOT NULL," +
"trangThai INTEGER NOT NULL," +
"ngay TEXT NOT NULL)";
db.execSQL(createTableHoaDon);
//Tạo bảng Chi tiết HĐ
String createTableChiTietHoaDon = "CREATE TABLE ChiTietHoaDon(" + "maCTHD INTEGER PRIMARY KEY AUTOINCREMENT," +
"maHD NOT NULL REFERENCES HoaDon(maHD) ON DELETE CASCADE ON UPDATE CASCADE," +
"maSP NOT NULL REFERENCES SanPham(maSP) ON DELETE CASCADE ON UPDATE CASCADE," +
"soLuong INTEGER NOT NULL," +
"giamGia INTEGER," +
"donGia TEXT NOT NULL," +
"baoHanh INTEGER)";
db.execSQL(createTableChiTietHoaDon);