Bài tập lớn phân tích và thiết kế hệ thống thông tin hướng đối tượng ULM quản lý bán hàng của cửa hàng thể thao
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI Viện Công Nghệ Thông Tin và Truyền Thông
Bài tập lớn: Phân tích và thiết kế hệ thống thông tin hướng đối tượng
Đề tài:
XÂY DỰNG PHẦN MỀM QUẢN LÍ BÁN HÀNG TRONG CỦA HÀNG THỂ THAO
Giảng viên hướng dẫn: TS Nguyễn Hữu Đức
Đoàn Trung Kiên SHSV : 20086096 Phạm Văn Chí SHSV : 20086077 Phạm Trí Dũng SHSV : 20086081 Phạm Tiến Dũng SHSV : 20086080
HÀ NỘI 4 – 2012
Trang 2Mục lục
I Khảo sát sơ bộ qui trình nghiệp vụ 3
1 Mô tả chung về hệ thống nghiệp vụ 3 2 Sơ đồ ánh xạ qui tình (activity diagram) 3 2.1 Quản lí nhập kho: 3
2.2 Quản lí bán hàng 4
3 Mô hình hóa các lớp lĩnh vực: 5 II Phân tích hệ thống: 5
1 Các tác nhân và ca sử dụng: 5 2 Đặc tả ca sử dụng: 6 2.1 Nhập kho (import product) 6
2.1.1 Giao diện: 6
2.1.2 Kịch bản: 6
2.2 Bán hàng (sell product) 7
2.2.1 Giao diện: 7
2.2.2 Kịch bản: 7
3 Biểu đồ lớp 8 3.1 Biểu đồ lớp phần nhập kho: 8
3.2 Biểu đồ lớp phần bán hàng: 9
4 Biểu đồ trình tự 10 4.1 Biểu đồ trình tự phần nhập kho 10
4.2 Biểu đồ trình tự phần bán hàng 11
5 Biểu đồ tương tác 12 5.1 Biểu đồ tương tác phần nhập kho: 12
5.2 Biểu đồ tương tác phần bán hàng 12
III Thiết kế (sử dụng kiến trúc MVC): 13
Trang 3I Khảo sát sơ bộ qui trình nghiệp vụ
1 Mô tả chung về hệ thống nghiệp vụ
- Đây là một cửa hàng thể thao nhỏ, bên trong chỉ có 1 gian kho hàng, trong gian bán hàng có 3 nhân viên chịu trách nhiệu giới thiệu, bán hành cho khách.
- Yêu cầu thực tế: để quản lí việc bán hàng trong cửa hàng, chúng em dự định xây dựng phần mềm bán hàng để hỗ trợ cho 2 qui trình chính sau:
o Quản lí nhập kho: quản lí số lượng hàng trong kho để có kế
hoạch nhập thêm sản phẩm.
o Quản lí bán hàng: giúp nhân viên bán hàng dễ dành hơn trong
việc nhập các mặt hàng, số lượng cần bán, hệ thống sẽ tự động tính tiền và in hóa đơn cho khách.
2 Sơ đồ ánh xạ qui tình (activity diagram)
2.1 Quản lí nhập kho:
Trang 4Stock manager Supplier
Product request
Sell product and send receipt
Recive product, receipt and pay money
Save receipt and update data check product quantity in stock
2.2 Quản lí bán hàng
Trang 63 Mô hình hóa các lớp lĩnh vực:
Product Receipt
1 1 *
Supplier
Category 1 0 *
1
0 *
II Phân tích hệ thống:
1 Các tác nhân và ca sử dụng:
Seller
Logon
Sell product
Manage stock
System
Add product
Edit product
Delete product
Print receipt
<<extends>>
<<extends>>
<<extends>>
<<extends>>
Trang 72 Đặc tả ca sử dụng:
2.1 Nhập kho (import product)
2.1.1 Giao diện:
Nhập hàng
Mã sản phẩm
Số lượng
Giá
Danh sách sản phẩm
Nhập Reset
Mã sản phẩm Tên sản phẩm Số lượng Giá Danh mục
2.1.2. Kịch bản:
1 - Yêu cầu nhập kho
4 - Chọn sản phẩm cần nhập
5 - Nhập số lượng, giá
6 - Click nút “nhập”
2 - Hiển thị form nhập kho
3 - Hiển thị danh sách sản phẩm
7 - Kiểm tra tính chính xác của số lượng, giá
8 - Ghi vào cơ sở dữ liệu và cập nhật lại phần danh sách sản phẩm
Trang 82.2 Bán hàng (sell product)
2.2.1 Giao diện:
Bán hàng
Mã sản phẩm
Số lượng
Danh sách sản phẩm
Mã sản phẩm Tên sản phẩm Số lượng Giá Thành tiền
Thêm sản phẩm
Xóa Xóa Xóa
Tổng tiền :
Tên sản phẩm:
Giá:
Trong kho còn:
2.2.2 Kịch bản:
1 - Yêu cầu bán hàng
4 - Chọn sản phẩm cần bán
5 - Nhập số lượng
6 - Click nút “thêm sản phẩm”
10 - Nhập tên khách hàng
2 - Hiển thị form bán hàng
3 - Hiển thị danh sách sản phẩm
7 - Kiểm tra tính chính xác của
số lượng
8 - Cập nhật số lượng phần danh sách sản phẩm
9 - Cập nhật thành tiền và tổng tiền
Trang 911 - Click nút “In biên lai”
12 - In biên lai
13 - Ghi lại biên lai trong cơ sở
dữ liệu.
3 Biểu đồ lớp
3.1 Biểu đồ lớp phần nhập kho:
3.2 Biểu đồ lớp phần bán hàng:
Product_list, selected_item, price
Trang 10Product_list, selected_item
Trang 114 Biểu đồ trình tự
4.1 Biểu đồ trình tự phần nhập kho
Product_id, quantity, price)
Product_id, quantity, price)
Trang 124.2 Biểu đồ trình tự phần bán hàng
Trang 135 Biểu đồ tương tác
5.1 Biểu đồ tương tác phần nhập kho:
5.2 Biểu đồ tương tác phần bán hàng
Trang 14III Thiết kế (sử dụng kiến trúc MVC):
Kiến trúc MVC tổng quát:
Kiến trúc MVC cho phần bán hàng (dưới dạng biểu đồ trình tự):
Top Package::Seller
Sell Product View (form)
Product List Selling Controller Product Model Receipt Model
choiceProduct()
showProductList()
getProductList()
getProducts
Product list Product list
showProductList
addProduct(id)
addProduct(id)
submitSelling()
submitSelling()
submitSelling()
calculateAmount() result
result