LỜI NÓI ĐẦU.3
PHÂN CÔNG THÀNH VIÊN TRONG NHÓM.4
CHƯƠNG 1: MÔ TẢ YÊU CẦU.6
1.1. Mô tả yêu cầu bài toán.6
1.2. Biểu đồ use case.6
1.3. Đặc tả use case.8
CHƯƠNG 2: THIẾT KẾ CHI TIẾT.12
2.1. Thiết kế lớp.12
2.1.1. Biểu đồ lớp.12
2.1.2. Thiết kế chi tiết lớp.12
2.2. Thiết kế Cơ sở dữ liệu (hoặc cấu trúc dữ liệu).16
CHƯƠNG 3: CHƯƠNG TRÌNH MINH HOẠ.18
3.1. Xây dựng chương trình.18
3.2. Kết quả chương trình.18
CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.23
TÀI LIỆU THAM KHẢO.24
24 trang |
Chia sẻ: Thành Đồng | Ngày: 05/09/2024 | Lượt xem: 156 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Báo cáo Bài tập lớn Xây dựng hệ thống quản lý cửa hàng bán sách, đĩa nhạc, đĩa phim Media One, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
*
BÁO CÁO BÀI TẬP LỚN
LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
Đề tài: Xây dựng hệ thống quản lý cửa hàng bán sách, đĩa nhạc, đĩa phim Media One
Giáo viên hướng dẫn: TS. Vũ Thị Hương Giang
ThS. Trịnh Thành Trung
Nhóm sinh viên thực hiện:
Phạm Trung Tính MSSV: 20122567 Lớp: HTTT&TT- KSCLC-K57
Mai Văn Tuấn MSSV: 20122682 Lớp: THCN- KSCLC-K57
Mai Văn Thắng MSSV: 20122476 Lớp: HTTT&TT- KSCLC-K57
Nguyễn Trọng Linh MSSV: 20121989 Lớp: CKHK- KSCLC-K57
Đỗ Anh Trung MSSV: 20122616 Lớp: THCN- KSCLC-K57
Hà Nội, 05/2015
MỤC LỤC
LỜI NÓI ĐẦU..........................................................................................................3
PHÂN CÔNG THÀNH VIÊN TRONG NHÓM.....................................4
CHƯƠNG 1: MÔ TẢ YÊU CẦU.........................................................6
1.1. Mô tả yêu cầu bài toán........................................................................6
1.2. Biểu đồ use case.................................................................................6
1.3. Đặc tả use case...................................................................................8
CHƯƠNG 2: THIẾT KẾ CHI TIẾT.................................................12
2.1. Thiết kế lớp........................................................................................12
2.1.1. Biểu đồ lớp...............................................................................12
2.1.2. Thiết kế chi tiết lớp.................................................................12
2.2. Thiết kế Cơ sở dữ liệu (hoặc cấu trúc dữ liệu)..................................16
CHƯƠNG 3: CHƯƠNG TRÌNH MINH HOẠ.................................18
3.1. Xây dựng chương trình.....................................................................18
3.2. Kết quả chương trình........................................................................18
CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN...................23
TÀI LIỆU THAM KHẢO.....................................................................................24
LỜI NÓI ĐẦU
Ngày nay, công nghệ thông tin đóng vai trò quan trọng không thể thiếu trong quá trình quản trị, điều hành các hoạt động sản xuất kinh doanh của mỗi công ty, tổ chức, doanh nghiệp. Đặc biệt, theo đà phát triển của công nghệ thông tin, việc đưa tin học vào xử lý thông tin trong công tác quản lý đã trở nên phổ biến.
Ứng dụng phần mềm vào việc quản lý bán hàng trong doanh nghiệp là nhu cầu tất yếu nhằm nâng cao hiệu quả quản lý và tăng cường mối quan hệ thân thiết với khách hàng trong môi trường cạnh tranh hiện nay. Việc chọn phần mềm phù hợp với hoạt động của doanh nghiệp là việc đau đầu.
Trước yêu cầu cấp thiết của hệ thống, nhóm chúng em đã cùng nhau quyết định phân tích , thiết kế và xây dựng hệ thống quản lý các sản phẩm băng đĩa (đĩa nhạc, đĩa phim), sách cho một cửa hàng. Với ưu điểm dễ sử dụng, hệ thống sẽ giúp cho các nhà quản lý dễ dàng tổng hợp, quản lý sản phẩm và thanh toán nhanh chóng và chuyên nghiệp. Đó chính là lý do mà nhóm chúng em chọn đề tài này.
Trong quá trình thực hiện đề tài, nhóm chúng em còn gặp nhiều khó khăn và không tránh khỏi sai sót, mong thầy cô và các bạn nhận xét và đánh gía khách quan để nhóm có thể kịp thời sửa chữa.
Để hoàn thành được bài tập lớn này, nhóm chúng em xin được gửi lời cảm ơn chân thành đến cô giáo và thầy giáo hướng dẫn đề tài:
- Cô Vũ Thị Hương Giang.
- Thầy Trinh Thành Trung.
là giảng viên Khoa Công nghệ Thông tin Trường Đại học Bách Khoa Hà Nội - đã hết lòng giúp đỡ, hướng dẫn, chỉ dạy tận tình để nhóm em hoàn thành được đề tài này.
Hà Nội, tháng 5 năm 2015.
Nhóm 38, Lớp KSCLC K57
PHÂN CÔNG CÔNG VIỆC TRONG NHÓM:
Thời gian
Mai Văn Tuấn
Phạm Trung Tính
Mai Văn Thắng
Nguyễn Trọng Linh
Đỗ Anh Trung
Tuần 1
Viết thuộc tính và phương thức lớp đĩa nhạc.
Viết thuộc tính và phương thức lớp hóa đơn.
Viết thuộc tính và phương thức lớp khách hàng.
Viết thuộc tính và phương thức lớp đĩa phim.
Viết thuộc tính và phương thức lớp sách.
Tuần 2
Xây dựng đầy đủ các phương thức và thuộc tính lớp đĩa nhạc.
Xây dựng đầy đủ các phương thức và thuộc tính lớp hóa đơn.
Xây dựng đầy đủ các phương thức và thuộc tính lớp khách hàng.
Xây dựng đầy đủ các phương thức và thuộc tính lớp đĩa phim.
Xây dựng đầy đủ các phương thức và thuộc tính lớp sách.
Tuần 3
Cấu trúc, viết lại mã nguồn theo thiết kế mới.
Phân tích, xác định chỉ ra tính kết tập và kế thừa trong hệ thống .
Phân tích, xác định chỉ ra tính kết tập và kế thừa trong hệ thống .
Cấu trúc, viết lại mã nguồn theo thiết kế mới.
Cấu trúc, viết lại mã nguồn theo thiết kế mới.
Tuần 4
Xây dựng tính năng nhập thông tin các sản phẩm.
Xây dựng tính năng nhập các thông tin hóa đơn và báo cáo .
Xây dựng tính năng nhập thông tin khách hàng, tài khoản.
Phân tích và chỉ ra tính đa hình, viết các phương thức đa hình(VD thể hiện tính đa hình).
Xây dựng tính năng nhập thông tin các sản phẩm.
Tuần 5
Xây dựng tính năng thêm/ bớt mặt hàng.
Xậy dựng tính tiền và báo cáo trong 1 khoảng thời gian.
Xây dựng tìm kiếm mặt hàng, khách hàng, thời gian.
Xây dựng tính năng thêm/ bớt khách hàng, tài khoản.
Xây dựng tính năng thêm/ bớt mặt hàng.
Tuần 6
Thảo luận và xây dựng giao diện hệ thống.
Xây dựng cơ sở dữ liệu và tổng hợp các phần mọi người đã làm.
Thảo luận và xây dựng giao diện hệ thống.
Thảo luận và xây dựng giao diện hệ thống.
Thảo luận và xây dựng giao diện hệ thống.
Tuần 7
Làm slide báo cáo
Hoàn chỉnh lại hệ thống.
Xây dựng biểu đồ UML.
Viết hướng dẫn sử dụng phần mềm.
Viết báo cáo phần mềm.
Đánh giá chung
Tích cực tham gia thảo luận, đóng góp ý kiến, xây dựng hệ thống. Hoàn thành công việc đúng thời gian quy định. Ý thức tốt
Tích cực tham gia thảo luận, đóng góp ý kiến, xây dựng hệ thống. Hoàn thành công việc đúng thời gian quy định. Ý thức tốt
Tích cực tham gia thảo luận, đóng góp ý kiến, xây dựng hệ thống. Hoàn thành công việc đúng thời gian quy định. Ý thức tốt
Tích cực tham gia thảo luận, đóng góp ý kiến, xây dựng hệ thống. Hoàn thành công việc đúng thời gian quy định. Ý thức tốt
Tích cực tham gia thảo luận, đóng góp ý kiến, xây dựng hệ thống. Hoàn thành công việc đúng thời gian quy định. Ý thức tốt
CHƯƠNG 1: MÔ TẢ YÊU CẦU
1.1. Mô tả yêu cầu bài toán:
- Mô tả yêu cầu bài toán: yêu cầu xây dựng một hệ thống quản lý các sản phẩm sách, đĩa nhạc, đĩa phim.
- Người quản lý có thể thêm bớt sản phẩm, đồng thời thanh toán khi bán hàng.
- Nhân viên có thể thanh toán, thêm thông tin khách hàng.
1.2. Biểu đồ use case:
Tác nhân:
- Chủ cửa hàng (Admin).
- Nhân viên.
Use case:
- Thêm sách, đĩa nhạc, đĩa phim, nhân viên.
- Cập nhật sách, đĩa nhạc, đĩa phim, nhân viên.
- Thêm, bớt khách hàng.
- Thanh toán.
- Tìm mặt hàng.
- Báo cáo.
Quan hệ giữa các tác nhân và các use case, giữa các use case với nhau được thể hiện trong hình bên dưới.
Thêm bớt khách hàng
Báo cáo
Cập nhật SP, nhân viên
Nhân viên
Admin
Thanh toán
Thêm bớt SP, nhân viên
Tím mặt hàng
use
include
1.3. Đặc tả use case:
Dựa vào biểu đồ use case ta có các biểu đồ hoạt động:
Chọn mục Kho hàng
• Biểu đồ hoạt động thêm mặt hàng mới:
Chọn mục Sản phẩm (Đĩa phim, Đĩa nhạc, Sách)
Nhập thông tin sản phẩm
Nhập lại
false
true
Lưu sản phẩm vừa nhập vào CSDL
Cập nhật lại danh sách
• Biểu đồ hoạt động cập nhật mặt hàng:
Chọn mục Kho hàng
Chọn mục Sản phẩm (Đĩa phim, Đĩa nhạc, Sách)
Hiển thị sản phẩm cần chỉnh sửa
Nhập thông tin cẩn chỉnh sửa
Cập nhật lại danh sách
• Biểu đồ hoạt động tìm kiếm mặt hàng:
Chọn mục Bán hàng
Chọn mã sản phẩm
Hiển thị mã sản phẩm và tên sản phẩm
• Biểu đồ hoạt động thanh toán:
Cập nhật lại danh sách khách hàng
Chọn mục Bán hàng
Chọn Khách hàng (Bán hàng)
Chọn Khách hàng (Thiết lập)
Không tìm thấy
Chọn mục Thiết lập
Tìm thấy
Chọn mã Sản phẩm
Không
có
Báo: Không đủ hàng cần mua
Đủ
Không đủ
Thêm mặt hàng vào Hóa đơn, cập nhật lại danh sách
Tiếp
Dừng
Thanh toán và xuất hóa đơn
CHƯƠNG 2: THIẾT KẾ CHI TIẾT
2.1. Thiết kế lớp:
2.1.1. Biểu đồ lớp:
Chương trình bao gồm các class:
• Class DiaNhac (lớp Đĩa Nhạc)
• Class HoaĐon (lớp Hóa Đơn)
• Class DiaPhim (lớp Đĩa Phim)
• Class Sach (lớp Sách)
• Class Sanpham
• Class TaiKhoan
• Class KhachHang
Các thuộc tính, phương thức của mỗi lớp, quan hệ giữa các lớp được thể hiện chi tiết trong biểu đồ lớp bên dưới.
SanPham
#maSP : String
#tenSP : String
#hinhThuc : String
#soluong : int
#giaMua : int
#giaBan : int
+setMaSP(String) : void
+getMaSP : String
+setTenSP(String) : void
+getTenSP : String
+setHinhThuc(String) : void
+getHinhThuc : String
+setSoluong(int) : void
+getSoluong : int
+setGiaMua(int) : void
+getGiaMua : int
+setGiaBan(int) : void
+getGiaBan : int
Sach
#nhaXuatBan : String
#tacGia : String
+setNhaXuatBan(String) : void
+getNhaXuatBan : String
+setTacGia(String) : void
+getTacGia : String
DiaNhac
#nhaSanXuat : String
#caSi : String
+setNhaSanXuat(String) : void
+getNhaSanXuat : String
+setCaSi(String) : void
+getCaSi : String
DiaPhim
#nhaSanXuat : String
#daoDien : String
+setNhaSanXuat(String) : void
+getNhaSanXuat : String
+setDaoDien(String) : void
+getDaoDien : String
2.1.2. Thiết kế chi tiết lớp:
Lớp SanPham là lớp cha có các thuộc tính maSP, tenSP, hinhThuc, soluong, giaMua, giaBan và các phương thức getter(), setter() tương ứng.
Xây dựng lớp Sach kế thừa từ lớp SanPham gồm :
+ Thuộc tính: tacGia(String), nhaXuatban(String)
+ Phương thức: getter(), setter() tương ứng.
Xây dựng lớp DiaNhac kế thừa từ lớp SanPham gồm :
+ Thuộc tính: nhaSanXuat(String), caSi(String)
+ Phương thức: getter(), setter() tương ứng.
Xây dựng lớp DiaPhim kế thừa từ lớp SanPham gồm :
+ Thuộc tính: nhaSanXuat(String), daoDien(String)
+ Phương thức: getter(), setter() tương ứng.
Xây dụng lớp SachDataAccess gồm các phương thức :
+ showAll(): xem toàn bộ thông tin sách có trong CSDL.
+ addNew(): thêm sách mới vào CSDL.
+ updateSach(): cập nhật thông tin sách vào CSDL.
+ deleteSach(): xóa sách khỏi CSDL.
+ findByMaSP(): tìm sách trong CSDL thông qua mã sản phẩm.
+ checkSach(): kiểm tra mã sách trong CSDL.
Xây dụng lớp DiaNhacDataAccess gồm các phương thức :
+ showAll(): xem toàn bộ thông tin đĩa nhạc có trong CSDL.
+ addNew(): thêm đĩa nhạc mới vào CSDL.
+ updateSach(): cập nhật thông tin đĩa nhạc vào CSDL.
+ deleteDiaNhac(): xóa đĩa nhạc khỏi CSDL.
+ findByMaSP(): tìm đĩa nhạc trong CSDL thông qua mã sản phẩm.
+ checkDiaNhac(): kiểm tra mã đĩa nhạc trong CSDL.
Xây dụng lớp DiaPhimDataAccess gồm các phương thức :
+ showAll(): xem toàn bộ thông tin đĩa phim có trong CSDL.
+ addNew(): thêm đĩa phim mới vào CSDL.
+ updateDiaPhim(): cập nhật thông tin đĩa phim vào CSDL.
+ deleteDiaPhim(): xóa đĩa phim khỏi CSDL.
+ findByMaSP(): tìm đĩa phim trong CSDL thông qua mã sản phẩm.
+ checkDiaPhim(): kiểm tra mã đĩa phim trong CSDL.
Xây dựng class Hóa Đơn gồm :
+ Thuộc tính: maHoaDon, maSanPham, tenSanPham, ngayBan, soLuong, donGia, soDienThoaiKH, maNhanVien, nhomKH, chietkhau, thanhTien.
+ Phương thức: các phương thức getter(), setter() tương ứng.
Xây dựng class HoaDonDataAccess gồm các phương thức:
+ showPart(): Hiện một số thông tin hóa đơn (dùng cho bán hàng).
+ addNew(): Thêm hóa đơn mới (dùng cho bán hàng).
+ updateHoaDon(): Cập nhật thông tin hóa đơn (dùng cho bán hàng).
+ findDate(): Hiện toàn bộ thông tin hóa đơn trong khoảng thời gian (dùng cho báo cáo).
Xây dựng các Frame hiển thị các công việc thêm, bớt, tìm kiếm, thanh toán đã xây dựng ở trên.
2.2. Thiết kế cơ sở dữ liệu / cấu trúc dữ liệu:
- Cơ sở dữ liệu sử dụng là file quanlybanhang.sql được đặt cùng thư mục với source code.
- Trong cơ sở dũ liệu gồm có 6 bảng: Sach, diaphim, dianhac, taikhoan, khachhang, hoadonbanhang như hình dưới:
- Các thuộc tính của các bảng:
+ dianhac (MaSanPham, TenSanPham, NhaSanXuat, NgheSi, HinhThuc, SoLuong, GiaMua, GiaBan).
+ diaphim (MaSanPham,TenSanPham, NhaSanXuat, DaoDien, HinhThuc, SoLuong, GiaMua, GiaBan).
+ hoadonbanhang (MaHD, MaSP, TenSP, Ngayban, SoLuong, Dongia, SodienthoaiKH, nhom KH, MaNV, ChietKhau, Thanhtien).
+ sach (MaSanPham, TenSanPham, NhaXuatBan, TacGia, HinhThuc, SoLuong, GiaMua, GiaBan).
+ taikhoan (TaiKhoan, Password, Hoten, Nhom, Manv, Tienluong).
+ khachhang (TenKhachHang, NhomKhachHang, SoDienTHoai, DiaChi).
- Các thao tác với cơ sở dữ liệu được thực hiện qua các phương thức: showAll(), deleteSach(), updateSach(), finByMaSP(), deleteDiaPhim(), updateDiaPhim() trong các lớp DiaNhacDataAcess, DiaPhimAcess, SachDataAcess.
CHƯƠNG 3: CHƯƠNG TRÌNH MINH HOẠ
3.1. Xây dựng chương trình:
- Giới thiệu về công nghệ đã sử dụng để xây dựng chương trình minh họa:
o Công nghệ sử dụng: JAVA.
o Tính năng, ưu điểm của các công nghệ này: Kiến trúc thiết kế tốt, cộng đồng mạnh, do là công nghệ mở, chạy tốt trên nhiều platform khác nhau (nhất là trên linux).
o Lý do lựa chọn/sử dụng công nghệ: các ứng dụng có khả năng chạy thống nhất trên nhiều nền tảng mà chỉ cần biên dịch một lần.
- Môi trường lập trình: NetBean IDE.
3.2. Kết quả chương trình:
- Một số hình ảnh demo thực hiện các chứng năng chính của chương trình. Trên mỗi giao diện đều có các phím bấm tương ứng với các chức năng của chương trình.
Hình 7: Giao diện main
Hình 8: Giao diện bán hàng.
Hình 9: Giao diện kho hàng.
Hình 10: Giao diện báo cáo.
Hình 11: Giao diện thiết lập.
Hình 12: Tìm kiếm sản phẩm.
Hình 13: Thêm sản phẩm, khách hàng và tài khoản.
Hình 14: Thêm sản phẩm.
Hình 15: Update thông tin.
CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
- Kết quả đạt được:
Hoàn thành chương trình, báo cáo bài tập lớn đúng thời hạn.
Giao diện thân thiện với người dùng, có đầy đủ các chức năng cơ bản theo yêu cầu.
- Hạn chế:
Chưa có kinh nghiệm trong việc xây dựng một chương trình quản lý với quy mô lớn.
Khả năng lập trình của các thành viên còn hạn chế.
- Kinh nghiệm thu được:
Tăng hiểu biết và củng cố các kiến thức đã học về : kĩ năng lập trình, cơ sở dư liệu, SQL.... và một số kĩ năng khác.
- Hướng phát triển cho đề tài, cho sản phẩm và khả năng ứng dụng:
Chương trình có thể ứng dụng cho những cửa hàng nhỏ không yêu cầu cao về cơ sở dữ liệu. Tuy nhiên, chương trình có thể phát triển thêm để ứng dụng cho các cửa hàng kinh doanh lớn với cơ sở dữ liệu lớn hơn và có thêm một số chức năng khác.
Bổ sung các thuộc tính của cở sở dữ liệu để hệ thống hoàn thiện hơn.
Một số chức năng còn chưa hoàn thiện như:
+ Nhật kí nhập hàng.
+Nhật kí bán hàng.
TÀI LIỆU THAM KHẢO
[1] Đoàn Văn Ban. Lập trình hướng đối tượng với Java. Nhà xuất bản Khoa học kỹ thuật, 2003.
[2] Slide lập trình hướng đối tượng trên hệ thống ACU.
[3] Java Core 1( Tiếng việt).
Các file đính kèm theo tài liệu này:
- bao_cao_bai_tap_lon_xay_dung_he_thong_quan_ly_cua_hang_ban_s.docx