Tải bản đầy đủ (.doc) (57 trang)

Báo cáo đồ án Quản lý nhà sách

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (8.23 MB, 57 trang )

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
-------------------

BÁO CÁO ĐỒ ÁN MÔN HỌC
LẬP TRÌNH TRỰC QUAN

-----------

Lớp: IT008.F22

Đề tài: QUẢN LÝ NHÀ SÁCH
Giảng viên hướng dẫn:
ThS: Lê Thanh Trọng

Sinh viên thực hiện:
1- Tô Thành Thương
MSSV: 13520862
2- Châu Ngọc Thái Sơn MSSV: 13520704

1


Phụ Lục
Chương 1: Giới thiệu bài toán cần giải quyết, mô tả qui trình thực hiện các công việc chính........................3
1.Giới thiệu bài toán Quản Lý Nhà Sách:........................................................................................................3
2. Quy trình thực hiện các công việc chính:....................................................................................................3
Chương 2: Xác định và mô hình hóa yêu cầu phần mềm:...............................................................................3
1.Phân loại và bảng trách nhiệm cho từng loại yêu cầu...................................................................................3
2.Sơ đồ luồng dữ liệu cho từng yêu cầu:.........................................................................................................9
Chương 3: Thiết kế hệ thống:........................................................................................................................18


1.Kiến trúc hệ thống.......................................................................................................................................18
2.Mô tả các thành phần trong hệ thống:.........................................................................................................18
Chương 4: Thiết kế dữ liệu:...........................................................................................................................19
1.Thuật toán lập sơ đồ logic:..........................................................................................................................19
2.Sơ đồ hoàn chỉnh:.......................................................................................................................................26
Chương 5: Thiết kế giao diện........................................................................................................................30
1. Sơ đồ liên kết các màn hình.......................................................................................................................30
2.Danh sách các màn hình:............................................................................................................................32
3.Mô tả các màn hình:....................................................................................................................................34
Chương 6: Cài đặt và thử nghiệm:.................................................................................................................55
Chương 7: Nhận xét và kết luận....................................................................................................................56
1.Ưu điểm:.....................................................................................................................................................56
2.Khuyết điểm:...............................................................................................................................................56
3.Kết luận:......................................................................................................................................................57
Chương 8: Hướng phát triển..........................................................................................................................57
Chương 9: Tài liệu tham khảo.......................................................................................................................57
1.Tiếng Anh:..................................................................................................................................................57
2.Tiếng việt:...................................................................................................................................................57
Chương 10: Bảng phân công công việc.........................................................................................................57

2


Chương 1: Giới thiệu bài toán cần giải quyết, mô
tả qui trình thực hiện các công việc chính.
1.Giới thiệu bài toán Quản Lý Nhà Sách:
Một khách hàng là chủ của một nhà sách yêu cầu xây dựng một phần mềm hỗ trợ cho việc quản lý
sách và quản lý việc bán sách. Thông tin về nhà sách như sau:
• Nhà sách có quy mô vừa và nhỏ.
• Nhân sự của nhà sách gồm có: Quản lý nhà sách (Chủ nhà sách), nhân viên bán hàng và thủ

kho.
• Mỗi khách hàng đến mua sách thì nhân viên bán hàng sẽ lập hóa đơn bán sách gồm có các
thông tin sau: mã hóa đơn, tên khách hàng, ngày lập hóa đơn, mã sách, tên sách (Danh sách
các sách), số lượng, đơn giá, thành tiền.
• Thủ kho có nhiệm vụ cập nhật thông tin sách mới vào kho, kiểm kê và báo cáo số lượng sách
trong kho.
• Hàng tháng, người quản lý sẽ thống kê số sách đã bán, số sách còn trong kho, để có thể biết
được loại sách nào bán được nhiều, loại sách nào bán với số lượng ít. Ngoài ra, người quản lý
còn thống kê doanh thu để nắm bắt tình hình kinh doanh của nhà sách.
Hệ thống được truy cập vào CSDL của nhà sách.
Hệ thống cho phép:
• Người quản lý nhà sách:
- Toàn quyền sử dụng các chức năng
• Nhân viên bán hàng:
- Lập hóa đơn
- Tìm kiếm sách
- Quản lý khách hàng
- Lập phiếu thu tiền
• Thủ kho:
- Cập nhật sách (Thêm, sửa, xóa )
- Kiểm kê số lượng sách trong kho

2. Quy trình thực hiện các công việc chính:






Xác định yêu cầu bài toán Quản Lý Nhà Sách

Phân tích yêu cầu bài toán
Thiết kế phần mềm: Thiết kế dữ liệu, thiết kế giao diện và thiết kế xử lý
Cài đặt phần mềm
Kiểm thử và bảo trì phần mềm

Chương 2: Xác định và mô hình hóa yêu cầu phần
mềm:
1. Phân loại và bảng trách nhiệm cho từng loại yêu cầu.
a. Yêu cầu nghiệp vụ:


Bảng trách nhiệm yêu cầu nghiệp vụ
STT
1

Nghiệp vụ
Lập phiếu nhập

Người dùng
Cung cấp thông tin lập
3

Phần mềm
Kiểm tra qui

Ghi chú
Cho phép


phiếu nhập sách


định và ghi
nhận

ghi, xóa, sửa

Cung cấp thông tin
khách hàng và sách

Kiểm tra qui
định và ghi
nhận

Cho phép
ghi, xóa, sửa

sách
2

Lập hóa đơn bán
sách

3

Tra cứu sách

Cung cấp thông tin về
sách

4


Lập phiếu thu
tiền

Cung cấp thông tin
khách hàng

Kiểm tra qui
định và ghi
nhận

Cho phép
ghi, xóa, sửa

5

Lập báo cáo
tháng

Cung cấp thông tin lập
báo cáo

Xuất thông tin

Cho phép
ghi, xóa, sửa

Thay đổi quy định

Kiểm tra qui

định và ghi
nhận

Cho phép
hủy,sửa,
thêm qui
định

Thay đổi qui
định

6

Tìm kiếm và Nhanh chống
Xuất thông tin và tiện dụng

b. Yêu cầu tiến hóa


Danh sách các yêu cầu tiến hóa
STT
1
2
3
4



Nghiệp vụ


Tham số cần thay đổi

Thay đổi qui định Lập
phiếu nhập sách
Thay đổi qui định Lập
hóa đơn bán sách
Thay đổi qui định Thay
đổi qui định
Thay đổi qui định Lập
phiếu thu tiền

Số lượng nhập tối thiểu, số
lượng tồn tối thiểu.
Tiền nợ tối đa, số lượng
tồn tối thiểu
Qui định

1

2

3

Qui định

Tiền thu, tiền nợ

Bảng trách nhiệm yêu cầu tiến hóa
STT
Nghiệp vụ

Người dùng

Thay đổi qui
định Lập phiếu
nhập sách

Miền giá trị cần
thay đổi

Thay đổi giá trị mới Số
lượng nhập tối thiểu, số
lượng tồn tối thiểu.

Phần mềm

Ghi nhận giá
trị mới và
thay đổi cách
thức kiểm tra

Ghi chú
Cho phép
thay đổi, cập
nhật lại
thông tin về
Số lượng
nhập tối
thiểu, số
lượng tồn tối
thiểu.


Thay đổi qui
định Lập hóa
đơn bán sách

Thay đổi giá trị mới
Tiền nợ tối đa, số lượng
tồn tối thiểu

Ghi nhận giá
trị mới và
thay đổi cách
thức kiểm tra

Cho phép
thay đổi, cập
nhật lại
thông tin về
Tiền nợ tối
đa, số lượng
tồn tối thiểu

Thay đổi qui
định Thay đổi

Thay đổi qui định, thêm
một số qui định mới

Ghi nhận giá
trị mới và


Cho phép
hủy, tạo

4


qui định

4

Thay đổi qui
định Lập phiếu
thu tiền

Thay đổi giá trị mới
Tiền thu, tiền nợ

thay đổi cách
thức kiểm tra

thêm và cập
nhật lại
thông tin Qui
định

Ghi nhận giá
trị mới và
thay đổi cách
thức kiểm tra


Cho phép
thay đổi, cập
nhật lại
thông tin về
Tiền thu, tiền
nợ

c. Yêu cầu tiện dụng

 Danh sách các yêu cầu tiện dụng
STT

Nghiệp vụ

Mức độ dễ học

1

Lập phiếu nhập sách

1 phút hướng dẫn

2

3

4

Lập hóa đơn bán

sách

Tra cứu sách

Lập phiếu thu tiền

Mức độ dễ
sử dụng

hình
minh họa,
ghi chú đầy
đủ cho nhân
viên dễ thao
tác

1 phút hướng dẫn

Có hình
minh họa,
ghi chú đầy
đủ cho nhân
viên dễ thao
tác

1 phút hướng dẫn

Tra cứu dễ
dàng với
hiểu biết của

khách hàng
về sách cần
tìm

1 phút hướng dẫn

Có hình
minh họa,
ghi chú đầy
đủ cho nhân
viên dễ thao
tác

5

Lập báo cáo tháng

2 phút hướng dẫn

Có hình
minh họa,
ghi chú đầy
đủ cho nhân
viên dễ thao
tác

6

Thay đổi qui định


5 phút hướng dẫn

Xác định
tính đúng
đắn yêu cầu

5

Ghi chú

Hiện đầy đủ
thông tin về
sách


 Bảng trách nhiệm yêu cầu tiện dụng
STT

Nghiệp vụ

Người dùng

Phần mềm
Hình ảnh và ghi
chú, thực hiện
đúng yêu cầu
người dùng

1


Lập phiếu
nhập sách

Đọc tài liệu hướng dẫn
sử dụng

2

Lập hóa đơn
bán sách

Đọc tài liệu hướng dẫn
sử dụng

Hình ảnh và ghi
chú, thực hiện
đúng yêu cầu
người dùng

3

Tra cứu sách

Đọc tài liệu hướng dẫn
sử dụng

Hình ảnh và ghi
chú, thực hiện
đúng yêu cầu
người dùng


4

Lập phiếu thu
tiền

Đọc tài liệu hướng dẫn
sử dụng

Hình ảnh và ghi
chú, thực hiện
đúng yêu cầu
người dùng

Đọc tài liệu hướng dẫn
sử dụng

Hình ảnh và ghi
chú, thực hiện
đúng yêu cầu
người dùng

Đọc tài liệu hướng dẫn
sử dụng

Hình ảnh và ghi
chú, thực hiện
đúng yêu cầu
người dùng


5

6

Lập báo cáo
tháng

Thay đổi qui
định

Ghi chú

Xác định tính
đùng đắn

d. Yêu cầu hiệu quả
 Danh sách các yêu cầu hiệu quả
Nghiệp vụ

Tốc độ xử lý

Dung lượng
lưu trữ

1

Lập phiếu nhập
sách

50 phiếu/giờ


1Kb / 1 phiếu

2

Lập hóa đơn bán
sách

50 hóa đơn/giờ

1Kb / 1 hóa đơn

3

Tra cứu sách

4

Lập phiếu thu tiền

50 phiếu/giờ

1Kb / 1 phiếu

5

Lập báo cáo tháng

20 báo cáo/giờ


5Kb / 1 báo cáo

6

Thay đổi qui định

Cập nhật lại tất cả
trong 10 phút

STT

Ghi chú

Hầu như tức khắc

 Bảng trách nhiệm yêu cầu hiệu quả
STT

Nghiệp vụ

Người dùng

1

Lập phiếu nhập
sách

Nhập và xử lý thông tin
chính xác.


2

Lập hóa đơn bán

Nhập và xử lý thông tin
6

Phần mềm
Cho ra kết
quả chính xác
nhất
Cho ra kết

Ghi chú


sách

chính xác.

quả chính xác
nhất
Cho ra kết
quả chính xác
nhất

3

Tra cứu sách


Nhập và xử lý thông tin
chính xác.

4

Lập phiếu thu
tiền

Nhập và xử lý thông tin
chính xác.

Cho ra kết
quả chính xác
nhất

5

Lập báo cáo
tháng

Nhập và xử lý thông tin
chính xác.

Cho ra kết
quả chính xác
nhất

6

Thay đổi qui

định

Chuẩn bị các qui định

Cho ra kết
quả chính xác
nhất

e. Yêu cầu tương thích

 Danh sách các yêu cầu tương thích
STT

Nghiệp vụ

Đối tượng liên quan
Có thể đọc và xuất ra
(WinFax, Word, Excel)

Ghi chú

1

Lập phiếu nhập sách

Độc lập phiên bản

2

Lập hóa đơn bán sách


Có thể đọc và xuất ra
(WinFax, Word, Excel)

Độc lập phiên bản

3

Lập phiếu thu tiền

Có thể đọc và xuất ra
(WinFax, Word, Excel)

Độc lập phiên bản

4

Lập báo cáo tháng

Có thể đọc và xuất ra
(WinFax, Word, Excel)

Độc lập phiên bản

 Bảng trách nhiệm yêu cầu tương thích
STT

Nghiệp vụ
Lập phiếu nhập
sách


Người dùng
Đọc và xuất ra (WinFax,
Word, Excel)

Phần mềm
Thực hiện
đúng yêu cầu

2

Lập hóa đơn bán
sách

Đọc và xuất ra (WinFax,
Word, Excel)

Thực hiện
đúng yêu cầu

3

Lập phiếu thu
tiền

Đọc và xuất ra (WinFax,
Word, Excel)

Thực hiện
đúng yêu cầu


4

Lập báo cáo
tháng

Đọc và xuất ra (WinFax,
Word, Excel)

Thực hiện
đúng yêu cầu

1

Ghi chú

f. Yêu cầu bảo mật

 Danh sách các yêu cầu bảo mật
STT

Nghiệp vụ

Quản trị hệ
thống
X

Nhân viên

1


Phân quyền

2

Lập phiếu nhập sách

X

3

Lập hóa đơn bán sách

X
7

Người dùng
khác


4

Tra cứu sách

X

5

Lập phiếu thu tiền


X

6

Lập báo cáo tháng

X

7

Thay đổi qui định

X

X

 Bảng trách nhiệm yêu cầu bảo mật
STT

Nghiệp vụ

1

Quản trị

2

Nhân viên

3


Khác

Người dùng
Cho biết người dùng
mới và quyền hạn

Phần mềm
Ghi nhận và
thực hiện đúng

Cung cấp tên và mật
khẩu

Ghi nhận và
thực hiện đúng

Ghi chú

Tên chung

g. Yêu cầu an toàn
 Danh sách các yêu cầu an toàn
STT

Nghiệp vụ

Đối tượng
Phiếu nhập sách, hóa đơn bán,
phiếu thu, báo cáo đã xóa


1

Phục hồi

2

Hủy thật sự

3

Không cho phép xóa

Ghi chú

Phiếu nhập sách, hóa đơn bán,
phiếu thu, báo cáo cần hủy
Phiếu nhập sách, hóa đơn bán,
phiếu thu, báo cáo chưa thanh lý
hoặc chưa thực hiện

 Bảng trách nhiệm yêu cầu an toàn
STT

1

2

3


Nghiệp vụ

Phục hồi

Quản trị hệ
thống
Cho biết Phiếu
nhập sách, hóa
đơn bán, phiếu
thu, báo cáo đã
xóa

Nhân viên

Người dùng
khác

Phục hồi

Hủy thật sự

Phiếu nhập sách,
hóa đơn bán,
Hủy thật sự
phiếu thu, báo cáo
đã hủy

Không cho phép
xóa


Phiếu nhập sách,
hóa đơn bán,
phiếu thu, báo cáo
chưa thanh lý
hoặc chưa thực
hiện, cần giữ lại.

Thực hiện đúng
yêu cầu

h. Yêu cầu công nghệ
 Danh sách các yêu cầu công nghệ
STT
1

Yêu cầu
Dễ sửa lỗi

Mô tả chi tiết
Xác định lỗi trung bình
8

Ghi chú
Khi sửa lỗi không ảnh hưởng


trong 10 phút

đến các chức năng khác, cập
nhật mới sau khi hoàn tất.


Thêm chức năng, sửa
chữa khắc phục lỗi
nhanh chống.

Không ảnh hưởng đến các
chức năng đã có. Có khả
năng liên kết với nguổn dữ
liệu và các chức năng khác.

2

Dễ bảo trì

3

Tái sử dụng

Có thể xây dựng phần
mềm khác từ code phần
mềm này

Cùng với các yêu cầu

4

Dễ mang chuyển

Thay đổi hệ thống quản
trị dữ liệu mới trong 1

ngày

Cùng với các yêu cầu

2. Sơ đồ luồng dữ liệu cho từng yêu cầu:
a. Lập phiếu nhập sách
BM1:

Phiếu Nhập Sách
Ngày nhập:......................................

STT

Sách

Thể Loại

Tác Giả

Số Lượng

1
2

QĐ1: Số lượng nhập ít nhất là 150. Chỉ nhập các sách có lượng tồn ít hơn 300.

Sơ đồ DFD 1: Lập phiếu nhập sách.
 Mô tả:
9


Đơn Giá Nhập


D1: Ngày nhập, tên sách, thể loại, tác giả, số lượng nhập, đơn giá nhập.
D2: Không có.
D3: Số lượng nhập hiện tại, số lượng tồn hiện tại (D1); Số lượng nhập tối thiểu, số
lượng tồn quy định.
D4: D1 + Số lượng tồn hiện tại.
D5: D4.
D6: Không có.

 Thuật toán:
B1: Nhận D1 từ người dùng.
B2: Kết nối Cơ sở dữ liệu.
B3: Đọc D3 từ bộ nhớ phụ.
B4: Kiểm tra số lượng nhập hiện tại có lớn hơn bằng số lượng nhập tối thiểu.
B5: Kiểm tra số lượng tồn tiện tại có nhỏ hơn bằng số lượng tồn quy định.
B6: Nếu không thỏa tất cả các quy định trên thì tới B10.
B7: Tính số lượng tồn hiện tại = Số lượng tồn cũ + Số lượng nhập.
B8: Lưu D4 xuống bộ nhớ phụ.
B9: Xuất D5 ra máy in.
B10: Đóng kết nối cơ sở dữ liệu.
B11: Kết thúc.

b. Hóa đơn bán sách
BM2:

Hóa Đơn Bán Sách

Họ tên khách hàng:...............................

STT

Sách

Ngày lập hóa đơn: .................................

Thể Loại

Số Lượng

Đơn Giá Bán

1
2
Tổng tiền:…………………
Số tiền trả:…………………
Còn lại:…………………

QĐ2: Chỉ bán cho các khách hàng nợ không quá 20.000 và đầu sách có lượng tồn sau khi bán ít nhất là 20. Đơn giá
bán = 105% x Đơn giá nhập.

10


Sơ đồ DFD 2: Lập hóa đơn bán sách.
 Mô tả:
D1: Họ tên khách hàng, ngày lập hóa đơn, danh sách sách cần bán với thông
tin: Tên sách, thể loại, số lượng và số tiền trả.
D2: Không có.
D3: Số tiền khách hàng đang nợ, số tiền nợ tối đa, số lượng tồn trước khi bán

của từng đầu sách, số lượng tồn tối thiểu và đơn giá nhập.
D4: D1 + số tiền nợ mới của khách hàng + số lượng tồn mới của từng đầu
sách.
D5: D4.
D6: Không có.

 Thuật toán:
B1: Nhận D1 từ người dùng.
B2: Kết nối Cơ sở dữ liệu.
B3: Đọc D3 từ bộ nhớ phụ.
B4: Kiểm tra số tiền khách hàng đang nợ (D3) có vượt quá số tiền nợ tối đa
(D3) không.
B5: Tính số lượng tồn mới = Số lượng tồn cũ – Số lượng.
B6: Kiểm tra số lượng tồn mới có thỏa số lượng tồn tối thiểu hay không.
B7: Nếu không thỏa 1 trong các quy định trên thì chuyển sang bước 13.
B8: Tính đơn giá bán = 105% đơn giá nhập (D3).
B9: Tính tổng tiền = Số lượng * Đơn giá bán.
B10: Tính số tiền nợ mới = Tổng tiền – Số tiền trả + số tiền nợ cũ của khách
hàng.
B11: Lưu D4 xuống bộ nhớ phụ.
B12: Xuất D5 ra máy in.
B13: Đóng kết nối cơ sở dữ liệu.
B14: Kết thúc.

c. Tra cứu sách
Danh Sách Sách
STT

Tên Sách


Thể Loại

11

Tác Giả

Số Lượng


1
2

Sơ đồ DFD 3: Tra cứu sách.
 Mô tả:
D1: Danh sách thông tin về cuốn sách cần tìm(ít nhất là 1 trong các thông tin
sau): Tên sách, thể loại, tác giả, số lượng.
D2: Không có.
D3: Danh sách các đầu sách thỏa mã tiêu chuẩn tìm kiêm (D1) cùng với các
thông tin chi tiết liên quan (Tên sách, thể loại, tác giả , số lượng).
D4: Không có.
D5: D3.
D6: D5.

 Thuật toán:
B1: Nhận D1 từ người dùng.
B2: Kết nối Cơ sở dữ liệu.
B3: Đọc D3 từ bộ nhớ phụ.
B4: Xuất D5 ra máy in.
B5: Trả D6 cho người dùng.
B6: Đóng kết nối cơ sở dữ liệu.

B7: Kết thúc.

d. Phiếu thu tiền
BM4:

Phiếu Thu Tiền

Họ tên khách hàng: ................................... Địa chỉ:......................................................
Điện thoại:.................................................. Email:........................................................
Ngày thu tiền: ............................................ Số tiền thu: ...............................................

QĐ4: Số tiền thu không vượt quá số tiền khách hàng đang nợ

12


Sơ đồ DFD 4: Lập phiếu thu tiền.
 Mô tả:
D1: Họ tên khách hàng, số tiền thu, ngày thu tiền.
D2: Không có.
D3: Thông tin về số tiền khách hàng đang nợ.
D4: D1 + Số tiền nợ mới của khách hàng.
D5: D4.
D6: Không có.

 Thuật toán:
B1: Nhận D1 từ người dùng.
B2: Kết nối Cơ sở dữ liệu.
B3: Đọc D3 từ bộ nhớ phụ.
B4: Kiểm tra xem “Số tiền thu” (D1) có vượt quá “Số tiền khách đang nợ”

(D3) hay không.
B5: Nếu không thỏa quy định trên thì chuyển sang bước 9.
B6: Tính “Số tiền nợ mới” = “Số tiền khách đang nợ” – “Số tiền thu”.
B7: Lưu D4 xuống bộ nhớ phụ.
B8: Xuất D5 ra máy in.
B9: Đóng kết nối cơ sở dữ liệu.
B10: Kết thúc.

e.

Báo cáo tồn
BM5.1

Báo Cáo Tồn
Tháng:..........................................

STT

Sách

Tồn Đầu

1
2

13

Phát Sinh

Tồn Cuối



Sơ đồ DFD 5: Lập báo cáo tồn.
 Mô tả:
D1: Tháng, năm cần lập báo cáo.
D2: Không có.
D3: Danh sách các đầu sách, danh sách phiếu nhập sách và danh sách hóa đơn
trong tháng.
D4: D1 + Tên sách + Tồn đầu + Phát sinh + Tồn cuối trong tháng đó.
D5: D4.
D6: D5.

 Thuật toán:
B1: Nhận D1 từ người dùng.
B2: Kết nối Cơ sở dữ liệu.
B3: Đọc D3 từ bộ nhớ phụ.
B4: Kiểm tra “tháng”,”năm” (D1) có vượt qua tháng, năm hiện tại không. Nếu
vượt quá thì tới bước 14.
B5: Tính tổng số lượng sách đã bán = Tổng số lượng trong danh sách hóa đơn
trong tháng D1.
B6: Tính tổng số lượng sách phát sinh = Tổng số lượng trong danh sách phiếu
nhập sách phát sinh trong tháng D1.
B7: Nếu là tháng đầu tiên sử dụng chương trình thì Tồn cuối của tháng trước
bằng 0.
B8: Lượng tồn đầu = Tồn cuối tháng trước đó
B9: Lượng phát sinh = Tổng số lượng sách phát sinh.
B10: Lượng tồn cuối = Tồn đầu + Phát sinh – Tổng số lượng sách đã bán.
B11: Lưu D4 xuống bộ nhớ phụ.
B12: Xuất D5 ra máy in.
B13: Trả D6 về cho người sử dụng.

B14: Đóng kết nối Cơ sở dữ liệu.
B15: Kết thúc.

14


f. Báo cáo công nơ
BM5.2

Báo Cáo Công Nợ
Tháng:..........................................

STT

Khách Hàng

Nợ Đầu

Phát Sinh

Nợ Cuối

1
2

Sơ đồ DFD 6: Lập báo cáo công nợ.
 Mô tả:
D1: Tháng,Năm.
D2: Không có.
D3: Danh sách tên khách hàng, thông tin về Hóa Đơn bán sách, Phiếu thu tiền

D4: D1 + Thông tin về số tiền nợ đầu tháng, số tiền nợ cuối tháng, phát sinh
thêm trong tháng của từng khách hàng
D5: D4.
D6: D5.

 Thuật toán:
B1: Nhận D1 từ người dùng.
B2: Kết nối Cơ sở dữ liệu.
B3: Đọc D3 từ bộ nhớ phụ.
B4: Kiểm tra “Tháng”,”Năm” (D1) có vượt qua tháng hiện tại không. Nếu
vượt qua thì tới bước 13.
B5: Tính tổng số lượng nợ phát sinh = Tổng các “Còn lại” trong danh sách
các hóa đơn.
B6: Tính số tiền đã thanh toán = Tổng “Số tiền thu” trong Phiếu thu tiền
B7: Nếu tháng đầu tiên sử dụng chương trình thì “Nợ cuối tháng trước = 0”
B8: Nợ đầu = Nợ cuối của tháng trước đó
B9: Nợ phát sinh = Tổng số lượng nợ phát sinh.
B10: Nợ cuối = Nợ đầu + Nợ phát sinh – tổng số tiền đã thanh toán.
B11 : Lưu D4 xuống bộ nhớ phụ.
B12: Xuất D5 ra máy in.
B13: Trả D6 cho người dùng.
15


B14: Đóng kết nối cơ sở dữ liệu.
B15: Kết thúc.

g. Thay đổi quy định
QĐ6: Người dùng có thể thay đổi các qui định như sau:
+ QĐ1: Thay đổi số lượng nhập tối thiểu, lượng tồn tối thiểu trước khi nhập.

+ QĐ2: Thay đổi tiền nợ tối đa, lượng tồn tối thiểu sau khi bán.
+ QĐ4: Sử dụng hay không sử dụng qui định này.

Sơ đồ DFD 7: Thay đổi quy định 1.
 Mô tả:
D1: Thông tin thay đổi quy định: Số lượng nhập tối thiểu, Số lượng tồn tối
thiểu trước khi nhập
D2: Không có.
D3: Không có.
D4: D1
D5: Không có.
D6: Không có.

 Thuật toán:
Bước 1. Nhận D1 từ người quản trị hệ thống.
Bước 2. Kết nối cơ sở dữ liệu.
Bước 3. Kiểm tra D1 có thỏa miền giá trị tham số (không được âm).
Bước 4. Nếu không thỏa bước 3 thì chuyển sang Bước 6
Bước 5. Ghi D4 xuống bộ nhớ phụ.
Bước 6. Đóng kết nối cơ sở dữ liệu.
Bước 7. Kết thúc.

16


Sơ đồ DFD 8: Thay đổi quy định 2.
 Mô tả:
D1: Thông tin thay đổi quy định: Số lượng nhập tối thiểu, Số lượng tồn tối
thiểu trước khi nhập
D2: Không có.

D3: Không có.
D4: D1
D5: Không có.
D6: Không có.

 Thuật toán:
Bước 1. Nhận D1 từ người quản trị hệ thống.
Bước 2. Kết nối cơ sở dữ liệu.
Bước 3. Kiểm tra D1 có thỏa miền giá trị tham số (không được âm).
Bước 4. Nếu không thỏa bước 3 thì chuyển sang Bước 6
Bước 5. Ghi D4 xuống bộ nhớ phụ.
Bước 6. Đóng kết nối cơ sở dữ liệu.
Bước 7. Kết thúc.

17


Sơ đồ DFD 9: Thay đổi quy định 4.
 Mô tả:
D1: Thông tin thay đổi quy định: sử dụng hay không quy định này
D2: Không có.
D3: Không có.
D4: D1
D5: Không có.
D6: Không có.

 Thuật toán:
Bước 1. Nhận D1 từ người quản trị hệ thống.
Bước 2. Mở kết nối cơ sở dữ liệu.
Bước 3. Kiểm tra D1 thỏa miền giá trị tham số hay không (1-Sử dụng, 0Không sử dụng)

Bước 4. Nếu không thỏa bước 3 chuyển Bước 6
Bước 5. Ghi D4 xuống bộ nhớ phụ
Bước 6. Đóng kết nối cơ sở dữ liệu.
Bước 7. Kết thúc.

Chương 3: Thiết kế hệ thống:
1.Kiến trúc hệ thống.
- Làm theo mô hình kiến trúc 3 tiers

2.Mô tả các thành phần trong hệ thống:
STT
Thành phần
Presentation Layer
1

2

Business Layer

Diễn giải


Đây là layer tạo lên giao diện cho
người dùng, nó sẽ là nơi tiếp nhận và
kết xuất ra kết quả của chương trình
cho bạn.



Nó có nhiệm vụ xử lý, kiểm tra các

dữ liệu nhập vào ( ví như ở TextBox
này nó phải là số, số phải từ 1-9….).
Đây là layer xử lý chính các dữ liệu
trước khi được đưa lên hiển thị trên
màn hình hoặc xử lý các dữ liệu
trước khi lưu dữ liệu xuống cơ sở dữ
liệu.
Đây là nơi đê kiểm tra các yêu cầu
nghiệp vụ, tính toán các yêu cầu
nghiệp vụ.
Tại đây các tính năng tính toán trong
chương trình sẽ được thực thi. (Như
tính lương theo một công thức.)
Layer này sẽ lo nhiệm vụ là đọc cơ
sở dữ liệu lên, cập nhật cơ sở dữ liệu,







3

Data Access Layer



18



update cơ sở dữ liệu.


Nói chung là nó làm nhiệm vụ là
giao tiếp với database.

Chương 4: Thiết kế dữ liệu:
1.Thuật toán lập sơ đồ logic:
Bước 1: Xét yêu cầu lập phiếu nhập sách
a. Thiết kế dữ liệu với tính đúng đắn
 Biểu mẫu liên quan: BM1
BM1
:

Phiếu Nhập Sách
Ngày nhập:.........................

ST
T

Sách

Thể loại

Tác giả

Số lượng

1

2

 Sơ đồ liên quan: SĐ1
 Các thuộc tính mới: TacGia, TheLoai, NhaXuatBan, NamXuatBan, SoLuongTon,
DonGiaBan, SoLuongNhap, DonGiaNhap, ThanhTien, NgayLap, TongTien
 Thiết kế dữ liệu: table SACH, table CT_PHIEUNHAPSACH, table
PHIEUNHAPSACH
 Sơ đồ logic:

19


 Các thuộc tính trừu tượng: MaSach, MaDauSach, SoPNS

b. Thiết kế dữ liệu với tính tiến hóa
 Quy định liên quan: QĐ1
QĐ1: Số lượng nhập ít nhất là 150. Chỉ nhập các sách có lượng tồn ít hơn 300.






Sơ đồ liên quan: SĐ1
Các thuộc tính mới: TenDauSach
Các tham số mới: SoLuongNhapToiThieu, SoLuongTonToiDa
Thiết kế dữ liệu: table SACH, table CT_PHIEUNHAPSACH, table
PHIEUNHAPSACH, table DAUSACH, table CT_TACGIA, table THELOAI
 Sơ đồ logic:


20


 Các thuộc tính trừu tượng: MaTheLoai

Bước 2: Xét yêu cầu lập hóa đơn bán sách
a. Thiết kế dữ liệu với tính đúng đắn
 Biểu mẫu liên quan: BM2
BM2
:

Hóa Đơn Bán Sách

Họ tên khách hàng:.................
ST
T

Sách

Ngày lập hóa đơn: ..................
Số
lượng

Thể loại

Đơn giá

1
2


 Sơ đồ liên quan: SĐ2
 Các thuộc tính mới: TenKhachHang, DiaChi, SDT, Email, SoLuong, DonGia,
ThanhTien, NgayLap, TongTien, ThanhToan, ConLai
 Thiết kế dữ liệu: table SACH, table HOADON, table CT_HOADON, table
KHACHHANG
 Sơ đồ logic:
21


 Các thuộc tính trừu tượng: MaKhachHang, SoHD

b. Thiết kế dữ liệu với tính tiến hóa
 Quy định liên quan: QĐ2

QĐ2: Chỉ bán cho các khách hàng nợ không quá 20.000 và đầu sách có
lượng tồn sau khi bán ít nhất là 20. Đơn giá bán = 105% x Đơn giá nhập.
 Các thuộc tính mới: SoTienNo
 Các tham số mới: TiLeTinhDonGiaBan, SoLuongTonToiThieu,
SoTienNoToiDa
 Thiết kế dữ liệu: table SACH, table HOADON, table CT_HOADON, table
KHACHHANG, table DAUSACH, table CT_TACGIA, table THELOAI
 Sơ đồ logic:

22


Bước 3: Xét yêu cầu tra cứu danh sách sách
a. Thiết kế dữ liệu với tính đúng đắn
 Biểu mẫu liên quan: BM3
BM3

:
ST
T

Danh Sách Sách
Tên Sách

Thể Loại

Tác Giả

Số
Lượng

1
2

 Sơ đồ liên quan: SĐ3
 Thiết kế dữ liệu: table SACH, table DAUSACH, table CT_TACGIA, table
THELOAI
 Sơ đồ logic:

23


Bước 4: Xét yêu cầu Lập phiếu thu tiền
a. Thiết kế dữ liệu với tính đúng đắn
 Biểu mẫu liên quan: BM4
BM
4:


Phiếu Thu Tiền

Họ tên khách hàng: .................... Địa chỉ:.......................................
Điện thoại:................................... Email:.........................................
Ngày thu tiền: ............................ Số tiền thu: ................................






Sơ đồ liên quan: SĐ4
Các thuộc tính mới: NgayLap, SoTienThu
Thiết kế dữ liệu: table KHACHHANG, table PHIEUTHUTIEN
Sơ đồ logic:

24


 Các thuộc tính trừu tượng: MaPT

b. Thiết kế dữ liệu với tính tiến hóa
 Quy định liên quan: QĐ4

QĐ4: Số tiền thu không vượt quá số tiền khách hàng đang nợ

 Sơ đồ liên quan: SĐ2
 Thiết kế dữ liệu: table KHACHHANG, table PHIEUTHUTIEN
 Sơ đồ logic:


Bước 5: Xét yêu cầu thay đổi quy định
a.

Thiết kế dữ liệu với tính tiến hóa

 Qui định liên quan: QĐ6
QĐ6: Người dùng có thể thay đổi các qui định như sau :
+ QĐ1 : Thay đổi số lượng nhập tối thiểu, lượng tồn tối thiểu trước khi nhập.
+ QĐ2 : Thay đổi tiền nợ tối đa, lượng tồn tối thiểu sau khi bán .
+ QĐ4 : Sử dụng hay không sử dụng qui định này.
25


×