báo cáo công nghệ phần mềm dự án quản lý cửa hàng nước giải khát phân tích thiết kế theo hướng đối tượng. Bao gồm cả quản lý dự án đặc tả yêu cầu bài toán thiết kế hệ thống cài đặt hệ thống kiểm thử phần mềm
Trang 1HỌC VIỆN NÔNG NGHIỆP VIỆT NAM KHOA CÔNG NGHỆ THÔNG TIN
CHƯƠNG TRÌNH QUẢN LÝ CỬA HÀNG NƯỚC GIẢI KHÁT
CƯỜNG PHƯƠNG BẢN BÁO CÁO DỰ ÁN Nhóm thực hiện
Trang 2MỤC LỤC
PHẦN I: GIỚI THIỆU BÀI TOÁN 3
a.Giới thiệu cụ thể bài toán 3
b.Hiện trạng của bài toán 3
PHẦN II TRÌNH BÀY VIỆC QUẢN LÝ DỰ ÁN CỦA NHÓM 4
PHẦN III ĐẶC TẢ YÊU CẦU BÀI TOÁN 7
1.Phương pháp lấy yêu cầu 7
2.Đặc tả yêu cầu 7
PHẦN IV.THIẾT KẾ HỆ THỐNG 10
1.Kiến trúc hệ thống 10
2 Luồng màn hình 11
3.Lược đồ lớp 12
4 Các lược đồ 16
5 Thiết kế quản lý bán hàng 20
PHẦN V CÀI ĐẶT 27
1.Cơ sở dữ liệu 27
2 Thiết kế giao diện 30
PHẦN VI KIỂM THỬ 39
1.TEST PLAN 39
2 TEST CASE 39
Trang 3I GIỚI THIỆU BÀI TOÁN
a Giới thiệu cụ thể bài toán
- Tên đề tài: xây dựng phần mềm quản lý cửa hàng nước giải khát CườngPhương
- Địa chỉ: 486 phố Nối - Mĩ Hào - Hưng Yên
- Mục tiêu bài toán: đảm bảo xây dựng được hệ thống cho phép quản lýcác thông tin của nhân viên, khách hàng, sản phẩm Hỗ trợ cho việc báocáo thống kê hàng tháng được dễ dàng hơn
- Yêu cầu của hệ thống: phần mềm có giao diện thân thiện với người dùng,thuận tiện dễ sử dụng để những người không quen thuộc với các phầnmềm quản lý cũng có thể sử dụng dễ dàng Đảm bảo các yêu cầu mà bàitoán đặt ra Thời gian khắc phục lỗi là nhanh nhất có thể mà không bị dữliệu
b Hiện trạng của bài toán
- Hiện trạng của bài toán: hệ thống hiện nay của cửa hàng các công việcchỉ làm thủ công, mà cửa hàng đang có kế hoạch mở rộng thị trường nênviệc quản lý cửa hàng sẽ ngày càng khó khăn, làm thủ công sẽ dễ bịnhầm lẫn, mất dữ liệu, gây thất thu cho cửa hàng, khó khăn cho việc quản
lý cửa hàng
- Mô hình bài toán:
+ Cửa hàng được tổ chức thành các đơn vị Mỗi đơn vị có một tên duynhất, một mã số, và một người quản lý
+ Bán hàng làm công việc xây dựng kế hoạch làm việc trong tuần, tháng
và phụ trách việc bán hàng
+ Cửa hàng chỉ bán mặt hàng nước giải khát nhưng có nhiều loại nướcnên ta cần xây dựng một cở sở dữ liệu về các mặt hàng của cửa hàng.Chúng ta sẽ quản lý về các thông tin: mã hàng, tên hàng,đơn vị tính, đơngiá nhập, đơn giá xuất, số lượng trong kho, trị giá theo tuyến đường, ngàynhập hàng, thời hạn bảo hành Một số ứng dụng cần thực hiện: Bổ sungthêm một mặt hàng mới và lưu lại kết quả đó, cập nhật đơn giá nhập vàđơn giá xuất, cập nhật các kinh phí khác như cước phí vận chuyển….+ Việc nhập hàng được quản lý bởi các thông tin: Số phiếu nhập, ngàynhập, tên nhà cung cấp, số hóa đơn, mã hàng, mặt hàng, đơn vị tính, sốlượng
+ Xuất hàng được quản lý bởi các thông tin: mã xuất kho, ngày đặt hàng,nhân viên nhận hàng, tên khách Mã hàng, tên hàng, đơn vị tính
+ Khách hàng đặt mua hàng của cửa hàng thông qua việc mua hàng trựctiếp,gọi điện thoại, gửi đơn đặt hàng theo fax Cửa hàng sẽ trả hàng tận
Trang 4kho cho khách hàng kèm theo hóa đơn bán hàng của cửa hàng Ta quản lýhóa đơn bán hàng bởi các thông tin: hóa đơn số, mã khách, mã nhân viên,ngày lập, hình thứ thanh toán, tên hàng, số lượng, đơn giá bán, tổng tiền.Một số hóa đơn bán nếu chưa đủ hàng để cung cấp có thể xuất làm nhiếulần.
+ Tương tự như vậy cửa hàng nhập hàng từ nhà cung cấp thông qua hóađơn đặt hàng hoặc gọi điện thoại trực tiếp hoặc gửi fax
+ Đối với nhân viên cần quản lý ở các thông tin: mã nhân viên, họ tênnhân viên, ngày sinh, ngày vào làm việc, địa chỉ, điện thoại
+ Đối với đối tác là khách hàng đặt hàng lâu dài ta quản lý ở các mục:
mã khách, tên khách hàng, địa chỉ liên hệ, người đại diện giao dịch, điệnthoại, mail
+ Đối với khách hàng mua hàng ngay tại cửa hàng ta chỉ cần quản lý mụcmặt hàng và giá bán
Từ những nhận định trên nhóm em đã quyết định xây dựng phần mềm theoquy trình thác nước
Thành viên trong nhóm
Bảng rủi ro của dự án
Trang 5Nguyên Nhân Trạng thái Kế hoạch trước mắt Kế hoạch lâu dài
- Thời gian
hoàn thành
dự án theo
tiến độ
0.8 8 Open Phân chia công việc rõ ràng
cho từng thành viên, cân bằng, tránh đè nặng lên 1 thành viên nào đó
Giảm thời thời gian của các công đoạn không cần thiết Tối
ưu hoá đảm bảo chất lượng dự án
Một số yêu
cầu bị thay
đổi
Khách hàng yêu cầu
Các thành viên cần phải có ý tưởng thực hiện ngay từ lúc bắt đầu dự án
Cố gắng khắc phục và cải tiến cho phù hợp với các hệ điều hành
Áp dụng các chuẩn chung nhằm đem đến
sự tương thích lâu dài của phần mềm với các hệ điều hành Kinh nghiệm
Các mốc thời gian quan trọng
Trang 6Các sản phẩm bàn giao
giao Địa điểm bàn giao Ghi chú
1 Nghiên cứu tính khả thi của kế hoạch
dự án 05/03/2016 Cửa hàng nước giảikhát
2 Phân tích thiết kế dự án 01/04/2016 Cửa hàng nước giải
khát
3 Phần mềm hoàn chỉnh 10/05/2016 Đã được đóng
gói.
Lịch trình dự án
Trang 7` Giao tiếp trong nội bộ dự án
+ Mỗi thành viên trong dự án được giao một nhiệm vụ và có sự gắn kết giữacác thành viên
+ Trao đổi thông tin với khách hàng thông qua điện thoại, email, fax hay trực tiếp đến gặp khách hàng
+ Sau từng khoảng thời gian nhất định các thành viên phải có báo cáo, đánh giá về tiến độ công việc và các vấn đề phát sinh có liên quan
+ Các cuộc họp thường diễn ra 2 lần một tuần Nếu có vấn đề phát sinh thì phải có những cuộc họp để khắc phục các vấn đề đó
Giao tiếp với quản lý cấp cao
+ Luôn có sự giám sát từ cấp trên và trực tiếp từ quản lý của dự án+ Báo cáo tiến độ hoàn thành của dự án với người quản lý
+ Luôn có sự trao đổi thông tin qua email, điện thoại hay trực tiếp gặpngười quản lý
Giao tiếp với khách hàng:
+ Luôn tiếp nhận yêu cầu, phản hồi từ phía khách hàng trong quá trìnhhoàn thành dự án
+ Các lỗi phát sinh khi khách hành sử dụng các phần mềm, và khắcphục trước và sau khi dự án đã hoàn thành( giai đoạn bảo trì hay nâng cấp)
1 Phương pháp lấy yêu cầu:
- Sử dụng phương pháp datamining
- Quan sát kết hợp với phỏng vấn: đến trực tiếp cửa hàng để quan sát môhình làm việc của cửa hàng kết hợp với việc phỏng vấn các nhân viên củacửa hàng
- Phân loại các thông tin: sau khi thu thập được thông tin sẽ phân loại cácthông tin và biên tập lại một cách có hệ thống
2 Đặc tả yêu cầu
Yêu cầu chức năng:
- SRS001: Yêu cầu về chức năng phân quyền truy cập
Trang 8- SRS002: Yêu cầu về chức năng lưu trữ thông tin
- SRS003: Yêu cầu về chức năng tra cứu
- SRS004: Yêu cầu về chức năng thống kê
- SRS005: Yêu cầu về chức năng báo cáo
- SRS006: Yêu cầu về chức năng xuất hóa đơn
- SRS007: Yêu cầu về chức cập nhật thông tin
Đặc tả chức năng:
SRS001: Yêu cầu về chức năng phân quyền truy cập
- Đảm bảo nhân viên của phòng nào sẽ truy cập vào hệ thống của phòng đótránh sự nhầm lẫn Chủ cửa hàng có thể truy cập vào toàn bộ hệ thống.SRS002: Yêu cầu về chức năng lưu trữ thông tin
- Đảm bảo thông tin về mặt hàng, khách hàng, nhân viên không bị mất
dữ liệu
SRS003: Yêu cầu về chức năng tra cứu
- Dễ dàng tra cứu thông tin của mặt hàng, khách hàng, nhân viên
SRS004: Yêu cầu về chức năng thống kê
- Thống kê đầy đủ các thông tin đã lưu trữ theo từng tháng, năm
SRS005: Yêu cầu về chức năng báo cáo
- Tổng kết, công nợ, doanh thu của nhân viên để gửi cho chủ cửa hàng.SRS006: Yêu cầu về chức năng xuất hóa đơn
- Xuất được các hóa đơn, phiếu nhập hàng, phiếu xuất hàng, danh sáchmặt hàng, hợp đồng mua bán
SRS007: Yêu cầu về chức cập nhật thông tin
- Cập nhật thông tin nhân viên, mặt hàng, khách hàng, nhà cung cấp vào
hệ thống mỗi khi có thêm nhân viên, mặt hàng, khách hàng
Yêu cầu phi chức năng:
- SRS008: Khả năng sử dụng
- SRS009: Độ tin cậy
Trang 9- Giao diện của hệ thống nên đủ đơn giản để người dùng có thể sử dụng nó
dễ dàng sau 5 phút Giao diện người dùng thân thiện Phần hỗ trợ hoạtđộng của hệ thống dễ hiểu được thiết kế bằng hình ảnh trực quan
- Dễ sử dụng với những giao diện đồ hoạ thân thiện phù hợp với người sửdụng
SRS009: Độ tin cậy
- Hệ thống hoạt động thường xuyên, dữ liệu phải chính xác không có bất
cứ sai sót nào và luôn được cập nhật
- Hệ thống phải sao lưu dữ liệu sau một ngày hoạt động
SRS0010: Độ chính xác
- Các thông tin được lưu trữ trong cơ sở dữ liệu về khách hàng, nhân viên,mặt hàng phải chính xác tuyệt đối, dữ liệu phải chính xác và luôn luônđược cập nhật
SRS011: Hiệu suất
- Hệ thống phải hỗ trợ đến 100 người dùng truy xuất CSDL trung tâmđồng thời bất kỳ lúc nào, và đến 50 người dùng truy xuất các server cụcbộ
- Hệ thống hoạt động liên tục không bị gián đoạn quá 10 phút
- Thời gian trả lời ngắn không quá 1 giây
- Thời gian refesh khoảng 30 phút một lần
- Thời gian xử lý nhanh: Tra cứu dữ liệu được xử lý chính xác các thôngtin về nhân viên, mặt hàng, thống kê báo cáo nhằm phục vụ cho các thaotác hoặc các chức năng sau nó
- Hệ thống phải hoạt động liên tục 12 giờ/ngày, 7 ngày/tuần, với thời gianngừng hoạt động không quá 10%
SRS012: Bảo mật
Trang 10- Hệ thống có khả năng bảo mật cùng với khả năng phân quyền ngườidùng đối với từng chức vụ mà nhân viên đang nắm giữ làm tăng khảnăng bảo mật cao hơn cho dữ liệu Như mọi hệ thống khác thì việc đổiquyền sử dụng cho các nhân viên khi việc nhân viên chuyển công tác haychuyển phòng làm việc và việc đổi lại password của người quản trị hệthống nhằm tăng khả năng linh hoạt cho hệ thống khi người dùng bị mấtpassword hoặc thông tin.
- Dữ liệu tự khóa sau một khoảng thời gian không được truy cập cần yêucầu pass để mở và quy định số lần thử pass
- Lớp lưu trữ: Lưu trữ các dữ liệu cần thiết cho hệ thống
- Hệ thống sử dụng mô hình kiến trúc kho dữ liệu dùng chung Dữ liệu của
hệ thống sẽ được chia sẻ và dùng chung cho các hệ thống con Dữ liệu chia
sẻ tập trung trong một kho dữ liệu để có thể truy cập vào
Trang 112 Luồng màn hình
ST
T
bán hàng, lập hóa đơn và thống kê báo cáo
- Thiết kế chương trình sao cho có giao diện thân thiện với người sử dụng Từgiao diện chính của màn hình, người sử dụng cần phải đăng nhập vào chươngtrình để sử dụng Mỗi người có 1 tài khoản với những quy định chỉ được truycập vào những chức năng được quy định cho mỗi tài khoản
+ Chủ cửa hàng là người quản trị của chương trình, có thể thao tác trên mọichức năng của chương trình
+ Các nhân viên là các người sử dụng chỉ có thể thao tác trên một số chứcnăng của chương trình như nhập thông tin bán hàng, tìm kiếm sản phẩm, nhàcung cấp, khách hàng
Trang 123.Lược đồ lớp
Bảng danh sách các lớp
ST
T Tên lớp Mô tả
01 Nhân viên Tất cả các thông tin của nhân viên
02 Mặt hàng Tất cả các thông tin của mặt hàng
03 Nhà cung cấp Thông tin nhà cung cấp
04 Khách hàng Thông tin của khách hàng
Thống kê sản phẩm, doanh thu, tồn kho…
3.1 Lớp nhân viên
ST
T Thuộc tính Kiểu Giá trị mặc định Phạm vi Mô tả
04 SDT Number Not null Public/ Static Số điện thoại liên hệCác phương thức
Trang 13STT Phương thức Mô tả
Đơn giá của 1 mặt hàng
Static
Số lượng 1 mặt hàng có trong cửa hàng
03 Xóa Xóa thông tin của mặt hàng không còn trong cửa hàng
04 Tìm kiếm Tìm kiếm thông tin mặt hàng
Trang 1403 Diachi Text Not null Public/ Static Địa chỉ nhà cung cấp
04 SDT Number Not null Public/ Static Số điện thoại liên hệ
Các phương thức
STT Phương thức Mô tả
3.4 Lớp khách hàng
STT Thuộc tính Kiểu Giá trị mặc định Phạm vi Mô tả
04 SDT Number Not null Public/ Static Số điện thoại liên
hệCác phương thức
STT Phương thức Mô tả
Trang 1502 NgayBan Datetime() Not null Public/
03 NgayNhap Datetime() Not null Public/ Static Ngày nhập
04 Soluong Number Not null Public/ Static Số lượng mặt hàng
nhập vào
05 Đơn giá Currency Not null Public/ Static Đơn giá từng mặt
hàng nhập
06 Thành tiền Currency Not null Public/ Static Tổng tiền cửa hàng
phải thanh toán cho NCC
Trang 16-Các mặt hàng được bán
ra, cập nhật thêm danhsách khách hàng và lậphóa đơn cho khách hàng
-Thống kê được tất cả cácmặt hàng trong cửa hàng,các vấn đề xảy ra trong hệthống bán hàng
-Thống kê hàng hóa-Quản lý lương cho nhân viên,các khoản nợ
-Cập nhật được các mặthàng còn trong kho
- Trả lương cho nhân viên
và các khoản tiền khácb) Biểu đồ use case các tác nhân:
- Kế toán: gồm kế toán kho và kế toán tài chính
Trang 17+ Kế toán kho: đăng nhập vào hệ thống có chức năng: tạo phiếu nhậphàng, tạo phiếu xuất hàng, kiểm kê hàng, tạo phiếu trả hàng, thống kê.
+ Kế toán tài chính: đăng nhập vào hệ thống, quản lý tiền nợ củakhách hàng, tiền lương cho nhân viên, chi phí công tác, vấn đề thuế,…
+ Nhà cung cấp: cung cấp các mặt hàng, báo giá sản phẩm
4.2 Xây dựng use case diagram:
b) Use case tổng quát:
c) Biểu đồ use case liên quan đến tác nhân nhân viên bán hàng:
Trang 184.4 Biểu đồ liên quan đến tác nhân kế toán:
a Kế toán kho:
b Kế toán tài chính:
Trang 194.5.Biểu đồ use case liên quan đến tác nhân người quản lý
4.6 Biểu đồ trạng thái:
Biểu đồ trạng thái hệ thống tổng thể
Mô tả trình tự như sau:
Trang 20Trạng thái khách hàng yêu cầu mua sản phẩm Nhân viên lấy hàng từ khohàng thông qua kế toán kho (thủ kho), nhân viên kế toán báo cáo thống kê định kỳtheo quý/tháng/năm cho người quản lý.
5 Thiết kế quản lý bán hàng
5.1 Biểu đồ tuần tự:
a Biểu đồ đăng nhập vào hệ thống quản lý bán hàng:
Trang 21d Biểu đồ xuất hàng.
Trang 22f Biểu đồ tạo phiếu thống kê:
g Biểu đồ tạo phiếu xuất hàng:
Trang 23h Biểu đồ tạo phiếu trả hàng:
i.Biểu đồ quản lý khách hàng:
Trang 24Lớp điều khiển: xử lý việc đăng nhập của người dùng.
Lớp thực thể: tài khoản, các trường dữ liệu
b Nhập – Xuất hàng:
Trang 25Kế toán đăng nhập vào hệ thống với:
Lớp biên: hiển thị giao diện nhập – xuất hàng
Lớp điều khiển: xử lý những hàng hóa được kế toán nhập vào và xuất ra.Lớp thực thể: trường dữ liệu về mặt hàng hóa, kế toán kho, hóa đơn nhập –xuất hàng
c Lập hóa đơn:
Lớp biên: hiển thị giao diện lập hóa đơn cho cho nhân viên bán hàng và kếtoán lập hóa đơn
Lớp điều khiển: xử lý dữ liệu trong hóa đơn
Lớp thực thể: các thực thể tham gia vào hệ thống như: các trường dữ liệu lậphóa đơn, hóa đơn, máy in
d Thống kê:
Trang 26Lớp biên: hiển thị giao diện giúp người thống kê đăng nhập vào hệ thống Lớp điều khiển: xử lý thống kê, đáp ứng những yêu cầu thống kê về hệthống bán hàng.
Lớp thực thể: hàng hóa, hóa đơn, khách hàng, máy in
Trang 271.3 Bảng nhân viên
1.4 Bảng nhà cung cấp
1.5 Bảng thống kê - báo cáo
1.6 Bảng hóa đơn nhập
Trang 281.7 Bảng hóa đơn xuất
1.8 Bảng tồn kho
1.9 Bảng tìm kiếm
Trang 29Sơ đồ thực thể liên kết
2 Thiết kế giao diện
2 1.Màn hình hệ thống:
Trang 302.2 Giao diện tìm kiếm nhân viên theo mã
2.3Giao diện tìm kiếm nhân viên theo tên
2.4 Giao diện tìm kiếm mặt hàng theo mã
Trang 312.5 Giao diện tìm kiếm mặt hàng theo tên
2.6 Giao diện tìm kiếm khách hàng theo mã
2.7 Giao diện tìm kiếm khách hàng theo tên
Trang 322.8 Giao diện tìm kiếm nhà cung cấp theo mã
2.9 Giao diện tìm kiếm nhà cung cấp theo tên
2.10 Giao diện tìm kiếm hóa đơn theo mã hóa đơn
Trang 332.11 Giao diện tìm kiếm hóa đơn theo tên mặt hàng
2.12 Giao diện tìm kiếm hóa đơn theo tên nhà cung cấp
2.13 Cập nhật thông tin nhân viên
Trang 342.1 Cập nhật thông tin khách hàng
2.15 Cập nhật thông tin nhà cung cấp
2.16 Cập nhật thông tin hóa đơn xuất
Trang 352.17 Cập nhật thông tin hóa đơn nhập
2.18 Cập nhật thông tin mặt hàng
2.19 Thống kê nhân viên
Trang 362.20 Thống kê mặt hàng
2.21 Thống kê khách hàng
Trang 37+ chức năng phân quyền truy cập
+ chức năng lưu trữ thông tin
Trang 38+ chức năng tra cứu
+ chức năng thống kê
+ chức năng báo cáo
+ chức năng xuất hóa đơn
- Mã số: TP001
- Ngày bắt đầu: 25/4/2016
- Ngày kết thúc: 12/5/2016
- Danh sách các Test case:
- Nhân sự tham gia: Ngô Thị Ngọc Ánh, Hoàng Đình Ba, Vũ Thị Phương
2 TEST CASE
2.1 Kiểm tra chức năng tìm kiếm nhân viên theo mã
- Project: kiểm tra tìm kiếm NV theo mã
- Module: Testing
- Màn hình: tìm kiếm nhân viên theo mã
- Chức năng: tìm kiếm nhân viên theo mã
- Mã số: TC001
- Dữ liệu test:
+ tìm kiếm theo mã: “ A123”
- Các bước thực hiện kiểm tra
bảng thông tin nhânviên có mã A123
hiện các bảng không
có thông tin nhânviên mã A123
2.2 Kiểm tra chức năng tìm kiếm nhân viên theo tên
- Project: kiểm tra tìm kiếm NV theo tên
- Module: Testing
- Màn hình: tìm kiếm nhân viên theo tên
- Chức năng: tìm kiếm nhân viên theo tên
- Mã số: TC002
- Dữ liệu test:
+ tìm kiếm theo mã: “ Ngô Ngọc Diệp”
- Các bước thực hiện kiểm tra