Tải bản đầy đủ (.pdf) (22 trang)

Lập trình python Phần mềm quản lý, lưu trữ sách thư viện

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 (532.7 KB, 22 trang )

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG
TRUNG TÂM ĐÀOTẠO BƯU CHÍNH VIỄN THƠNG I
__________***__________

BÀI TẬP Q TRÌNH/THU HOẠCH
MƠN: LẬP TRÌNH PYTHON

Họ tên

: NGUYỄN THỊ MAI

Mã sinh viên

: B19DTCN024

Lớp sinh viên

: D19TXCN02-B

Hà Nội, tháng 10/2021


2

MỤC LỤC
I. LỜI NĨI ĐẦU.................................................................................................................................... 3
II. THƠNG TIN CHUNG ..................................................................................................................... 4
III. PHÂN TÍCH HỆ THỐNG.............................................................................................................. 4
1. Chức năng chính............................................................................................................................ 4
2. Quản lý sách lưu trữ ...................................................................................................................... 5
3. Quản lý kệ sách ............................................................................................................................. 5


4. Quản lý sách theo kệ ..................................................................................................................... 6
5. Tìm kiếm thơng tin sách lưu trữ ................................................................................................... 6
6. Sắp xếp sách lưu trữ trong file quản lý sách ................................................................................ 7
III. LƯỢC ĐỒ USER CASE ................................................................................................................ 7
1. Quản lý sách .................................................................................................................................. 8
2. Quản lý kệ ...................................................................................................................................... 8
3. Quản lý thông tin sách theo kệ ..................................................................................................... 8
IV. BIÊU ĐỒ TRÌNH TỰ .................................................................................................................... 9
VI. THỰC HIỆN ................................................................................................................................. 14
1. Khởi tạo đối tượng ...................................................................................................................... 14
2. Xử lý đối tượng ........................................................................................................................... 14
VII. KẾT QUẢ THỰC HIỆN ............................................................................................................ 17

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


I. LỜI NĨI ĐẦU
Ngày nay, một thơng tin được phát ra qua hệ thống mạng Internet, có thể
được chuyển đến hàng triệu thiết bị thông minh như điện thoại thông minh, máy
tính bảng, laptop,… với một tốc độ chưa từng có. Sức mạnh thời đại cơng nghệ số
với hàng loạt tiện ích, mở ra rất nhiều cơ hội cho sự phát triển và hội nhập. Những
thành tựu của Công nghệ thông tin đang hiện diện khắp mọi nơi, cho chúng ta một
cuộc sống ngày càng văn minh, tiện lợi, nhanh chóng và hiệu quả.
Trên thế giới cũng như ở Việt Nam, công nghệ thông tin đã trở thành một
công nghệ mũi nhọn, nó là ngành khoa học kỹ thuật khơng thể thiếu trong việc áp
dụng vào các hoạt động kinh tế, xã hội. Việt Nam cũng đang chuyển mình trong
quá trình chuyển đổi số với kinh tế số, xã hội số, giáo dục số,… Việc áp dụng số
hóa tại tất cả các ngành, nghề, lĩnh vực đang rất phổ biến và trở nên cấp thiết,
ngành nghề nào cũng yêu cầu con người phải xử lý khối lượng công việc khổng lồ
và những kiến thức chuyên sâu. Hơn nữa, trong 02 năm qua, Việt Nam cùng thế

giới đang chống trọi với đại dịch tồn cầu, bệnh viêm đường hơ hấp COVID-19. Số
hóa điện tử lại càng trở lên cần thiết hơn.
Sách là kho tàng tri thức của dân tộc và nhân loại. Đọc sách là phương thức
tích lũy, phát triển, tiếp biến tri thức của nhân loại. Phương tiện dùng để cố định,
sản xuất và lưu truyền văn bản có tác dụng hình thành các thói quen đọc sách và
học tập của con người. Sách giúp con người nâng cao tầm hiểu biết, bồi bổ trí tuệ,
ni dưỡng đời sống tâm hồn. Đây là nguồn tri thức vô giá mà mỗi con người có
thể tự tìm tịi trong suốt cuộc đời. Và mỗi loại sách đều có tác dụng riêng, phù hợp
với từng độ tuổi. Bên cạnh đó, cách đọc sách truyền thống, sách điện tử ngày một
chứng minh được sự hiệu quả, tiện lợi của mình cùng sự phát triển của công nghệ
4.0. Lưu trữ, quản lý sách điện tử tại thư viện, trường học cũng trở lên cần thiết
hơn.


II. THÔNG TIN CHUNG
Tên phần mềm: Quản lý Lưu trữ sách thư viện
Giải pháp: Ngơn ngữ lập trình Python
III. PHÂN TÍCH HỆ THỐNG
1. Chức năng chính
Giải pháp quản lý lưu trữ sách thư viện được xây dựng bằng ngôn ngữ lập
trình Python, với 05 chức năng chính:
- Chức năng quản lý sách lưu trữ
+ Thêm sách
+ Hiển thị thông tin sách đã có
- Chức năng quản lý kệ sách
+ Thêm kệ
+ Hiển thị kệ đã có
- Chức năng quản lý sách theo kệ
+ Thêm thông tin quản lý sách theo kệ
+ Hiển thị thông tin quản lý sách

- Chức năng tìm kiếm thơng tin
- Chức năng sắp sếp thơng tin hiển thị

Quản lý kệ
sách

Quản lý sách
theo kệ
Tìm kiếm

Quản lý sách
lưu trữ

Sắp xếp
Quản lý
lưu trữ
sách

Hình 1: Các chức năng chính của phần mềm


5

Quản lý lưu trữ sách thư viện

Quản lý
thông tin sách

Quản lý sách


Quản lý kệ

Thêm sách

Thêm kệ

Thêm
thông tin
sách

Xem sách

Xem kệ

Xem thông
tin sách

Tìm kiếm

Sắp xếp

Tìm sách
theo chuyên
ngành

Theo tên
sách

Theo số
lượng sách


Hình 2: Sơ đồ phân cấp chức năng hệ thống
2. Quản lý sách lưu trữ
- Mục đích: Thủ thư có thể nhập thêm thơng tin sách gồm có: Tên sách,
tacgia, chun ngành sách, năm sản xuất và lưu trữ dữ liệu ra file trên máy tính.
Khi cần chúng ta có thể truy cập, tìm kiếm sách thơng qua tên sách, chun ngành
sách một cách dễ dàng.
- Dữ liệu đầu vào: Thủ thư nhập thông tin sách hoặc muốn xem sách.
+ Mã sách là một dãy số có 5 chữ số và được tăng tự động mỗi lần cập nhật
sách vào file.
+ Chuyên ngành sách được giới hạn bởi 04 giá trị sau: Khoa học tự nhiên,
Văn học nghệ thuật, Công nghệ thông tin và Điện tử viễn thông.
- Xử lý:
+ Thêm sách: Thủ thư yêu cầu sử dụng chức năng nhập sách, nhập các thông
tin quản lý sách vào hệ thống. Hệ thống kiểm tra tính tồn vẹn dữ liệu đầu vào, ghi
thơng tin sách vào file lưu trữ khi thông tin hợp lệ hoặc từ chối lưu thông tin khi
thông tin không hợp lệ.
+ Hiển thị thơng tin sách đã có: Thủ thư yêu cầu sử dụng chức năng, hệ
thống xuất dữ liệu thơng tin sách đã có trong file trên màn hình.
- Dữ liệu được in ra theo mẫu: Hiển thị danh sách các thông tin mã sách, tên
sách, tacgia, chuyên ngành sách, năm sản xuất trong file SACH.txt
3. Quản lý kệ sách
- Mục đích: Thủ thư có thể nhập thêm thơng tin kệ sách gồm có: Tên kệ, loại
kệ, số lượng tối đa sách được đặt trong kệ và lưu trữ dữ liệu ra file trên máy tính.
Khi cần chúng ta có thể truy cập thơng tin kệ qua file một cách dễ dàng.
- Dữ liệu đầu vào: Thủ thư nhập thông tin kệ hoặc muốn xem kệ sách.
Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


6


+ Mã kệ là một dãy số có 3 chữ số và được tăng tự động mỗi lần cập nhật kệ
vào file.
+ Lọai kệ sách được giới hạn trong 03 giá trị sau: Nhỏ, Trung bình và Lớn.
- Xử lý:
+ Thêm sách: Thủ thư yêu cầu sử dụng chức năng nhập kệ, nhập các thông
tin quản lý kệ vào hệ thống. Hệ thống kiểm tra tính tồn vẹn dữ liệu đầu vào, ghi
thông tin kệ vào file lưu trữ khi thông tin hợp lệ hoặc từ chối lưu thông tin khi
thông tin không hợp lệ.
+ Hiển thị thông tin kệ đã có: Thủ thư yêu cầu sử dụng chức năng, hệ thống
xuất dữ liệu thơng tin kệ đã có trong file trên màn hình.
- Dữ liệu được in ra theo mẫu: Hiển thị danh sách các thông tin mã kệ, tên
kệ, loại kệ và số lượng sách tối đa trong file KE.txt
4. Quản lý sách theo kệ
- Mục đích: Thủ thư có thể nhập thêm thơng tin quản lý sách theo kệ sách,
thơng tin gồm có: Tên sách, tên kệ, tình trạng sách, số lượng sách được đặt trong kệ
và lưu trữ dữ liệu ra file trên máy tính. Khi cần chúng ta có thể truy cập thơng tin
quản lý sách theo kệ qua file một cách dễ dàng.
- Dữ liệu đầu vào: Thủ thư nhập thông tin sách theo kệ hoặc muốn xem
thông tin sách trong các kệ sách.
Số lượng sách được nhập không vượt quá số trống của kệ.
- Xử lý:
+ Thêm sách: Thủ thư yêu cầu sử dụng chức năng nhập sách vào kệ, nhập
các thông tin quản lý sách vào hệ thống. Hệ thống kiểm tra tính tồn vẹn dữ liệu
đầu vào, ghi thơng tin kệ vào file lưu trữ khi thông tin hợp lệ hoặc từ chối lưu thông
tin khi thông tin không hợp lệ.
+ Hiển thị thơng tin sách theo kệ đã có: Thủ thư yêu cầu sử dụng chức năng,
hệ thống xuất dữ liệu thơng tin sách theo kệ đã có trong file trên màn hình.
- Dữ liệu được in ra theo mẫu: Hiển thị danh sách các thông tin tên sách, tên
kệ, tình trạng sách và số lượng sách trong file QLSTV.txt

5. Tìm kiếm thơng tin sách lưu trữ
- Mục đích: Thủ thư tìm kiếm thơng tin quản lý sách lưu trữ trong thư viện
điện tử.
- Dữ liệu đầu vào: Thủ thư nhập nhập từ khóa chun ngành sách để tìm
kiếm thơng tin sách.
- Xử lý: Thủ thư yêu cầu sử dụng chức năng tìm kiếm sách, nhập chuyên
ngành. Hệ thống xuất dữ liệu thơng tin sách đã có trong file trên màn hình.

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


7

- Dữ liệu được in ra theo mẫu: Hiển thị danh sách các thông tin mã sách, tên
sách, chuyên ngành sách, năm sản xuất của các cuốn sách có chuyên ngành sách
theo dữ tìm kiếm.
6. Sắp xếp sách lưu trữ trong file quản lý sách
- Mục đích: Thủ thư sắp xếp thông tin quản lý sách lưu trữ trong thư viện
điện tử theo tên sách hoặc số lượng sách có trong file.
- Dữ liệu đầu vào: Thủ thư chọn chức năng sắp sếp thông tin sách.
- Xử lý: Thủ thư yêu cầu sử dụng chức năng sắp xếp thông tin quản lý sách.
Hệ thống xuất dữ liệu thông tin sách đã có trong file trên màn hình.
- Dữ liệu được in ra theo mẫu: Hiển thị danh sách các thông tin tên sách, tên
kệ, tình trạng sách và số lượng theo kết quả sắp xếp.
III. LƯỢC ĐỒ USER CASE
Các chức năng chính của hệ thống được thể hiện chi tiết qua các sơ đồ usercase sau:

extend
Quản lý sách


extend
extend

Thủ thư

Quản lý kệ

Xem sách
Tìm kiếm

extend

Thêm kệ

extend

Xem kệ

extend
Quản lý
thơng tin sách

Thêm sách

extend

Thêm thơng tin
Xem thơng tin

extend


Hình 3: Biểu đồ User-case

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B

Sắp xếp


8

Đặc tả user-case:
1. Quản lý sách:
User case này cho phép thủ thư thêm sách, xem sách đã có trong file và tìm
kiếm thơng tin sách theo chun ngành sách.
Thủ thư đăng nhập vào hệ thống, thủ thư chọn chức năng quản lý sách, gồm
có: Thêm sách, Xem sách và tìm kiếm sách theo chuyên ngành sách.
- Chức năng Thêm sách: Sau khi thủ thư chọn chức năng thêm sách, hệ
thống sẽ hiện giao diện để thủ thư nhập các thông tin tên sách, chuyên ngành sách,
tacgia, năm sản xuất. Trong đó, mã sách gồm 5 chữ số và được tạo tự động, chuyên
ngành sách chỉ được nhập 1 trong số 4 loại chun ngành sách được hiển thị trên
màn hình.
Thơng tin sách sau khi được kiểm tra các ràng buộc dữ liệu sẽ được thêm
vào file SACH.txt lưu trữ.
- Chức năng Xem sách: Thủ thư lựa chọn chức năng xem sách lưu trữ, giao
diện sẽ hiển thị các thông tin sách trong file.
- Chức năng tìm kiếm sách theo chuyên ngành: Thủ thư lựa chọn chức năng
tìm kiếm, nhập chuyên ngành sách muốn tìm. Hệ thống sẽ trả lại danh sách các
sách có chun ngành muốn tìm kiếm.
2. Quản lý kệ:
User case này cho phép thủ thư thêm kệ, xem kệ đã có trong file.

Thủ thư đăng nhập vào hệ thống, thủ thư chọn chức năng quản lý kệ, gồm
có: Thêm kệ, Xem kệ.
- Chức năng Thêm kệ: Sau khi thủ thư chọn chức năng thêm kệ, hệ thống sẽ
hiện giao diện để thủ thư nhập các thông tin tên kệ, loại kệ, số lượng tối đa của
sách. Trong đó, mã kệ gồm 3 chữ số và được tạo tự động, loại kệ chỉ được nhập 1
trong số 3 loại kệ được hiển thị trên màn hình.
Thơng tin ke sau khi được kiểm tra các ràng buộc dữ liệu sẽ được thêm vào
file KE.txt lưu trữ.
- Chức năng Xem kệ: Thủ thư lựa chọn chức năng xem kệ, giao diện sẽ hiển
thị các thông tin kệ trong file.
3. Quản lý thông tin sách theo kệ:
User case này cho phép thủ thư thêm thông tin sách, xem thông tin sách theo
kệ đã có trong file và sắp xếp cách hiển thị dữ liệu.
Thủ thư đăng nhập vào hệ thống, thủ thư chọn chức năng quản lý thơng itn
sách, gồm có: Thêm thông tin sách, Xem thông tin sách và sắp xếp hiển thị.
- Chức năng Thêm thông tin sách: Sau khi thủ thư chọn chức năng thêm
thông tin sách, hệ thống sẽ hiện giao diện để thủ thư nhập các thông tin tên sách,
tên kệ, tình trạng sách và số lượng sách. Trong đó, tên sách, tên kệ chỉ được nhập
Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


9

theo danh sách tên sách, tên kệ có trong fiel SACH.txt, KE.txt được hiển thị trên
màn hình. Số lượng sách được nhập không vượt quá số trống của kệ.
Thông tin sách sau khi được kiểm tra các ràng buộc dữ liệu sẽ được thêm
vào file QLSTV.txt lưu trữ.
- Chức năng Xem thông tin sách: Thủ thư lựa chọn chức năng xem sách lưu
trữ, giao diện sẽ hiển thị các thông tin sách trong file.
- Chức năng sắp xếp thông tin sách: Thủ thư lựa chọn sắp xếp thông tin sách

theo tên hoặc theo số lượng sách. Hệ thống sẽ trả lại danh sách trong file theo thứ
tự sắp xếp.
IV. BIÊU ĐỒ TRÌNH TỰ
Hệ thống QLSTV

Thủ thư

File dữ liệu

Chọn thêm sách

Giao diện thêm sách

Nhập thơng tin sách
Kiểm tra tính hợp lệ
thơng tin sách
Thông tin không hợp lệ

Thông tin hợp lệ
Ghi vào
file

Giao diện thơng báo

Ghi file thành cơng

Hình 4: Biểu đồ trình tự của chức năng thêm sách

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B



10
Hệ thống QLSTV

Thủ thư

File dữ liệu

Chọn thêm kệ

Giao diện thêm kệ

Nhập thơng tin kệ
Kiểm tra tính hợp lệ
thơng tin kệ
Thơng tin không hợp lệ

Thông tin hợp lệ
Ghi vào
file
Ghi file thành cơng

Giao diện thơng báo

Hình 5: Biểu đồ trình tự của chức năng thêm kệ
Hệ thống QLSTV

Thủ thư

File dữ liệu


Chọn thêm thông tin sách

Giao diện thêm thông tin sách

Nhập thông tin thơng tin sách
Kiểm tra tính hợp lệ
thơng tin kệ
Thơng tin không hợp lệ

Giao diện thông báo

Thông tin hợp lệ, ghi vào file

Ghi file thành cơng

Hình 6: Biểu đồ trình tự của chức năng thêm thông tin sách

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


11
Hệ thống QLSTV

Thủ thư

File dữ liệu

Chọn xem thông tin


Kiểm tra tính hợp lệ
của file
Thơng tin hợp lệ, ghi vào file

Thơng tin không hợp lệ

Dữ liệu file

Giao diện hiển thị thông tin

Hình 7: Biểu đồ trình tự của chức năng xem thông tin
Hệ thống QLSTV

Thủ thư

File dữ liệu

Chọn sắp xếp thông tin

Kiểm tra tính hợp lệ
của file
Thơng tin khơng hợp lệ

Thơng tin hợp lệ
Lấy dữ
liệu
Dữ liệu file

Sắp xếp dữ liệu
Giao diện hiển thị thơng tin


Hình 8: Biểu đồ trình tự của chức năng sắp xếp

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


12
Hệ thống QLSTV

Thủ thư

File dữ liệu

Chọn tìm kiếm

Giao diện nhập thơng tin tìm kiếm

Nhập thơng tin thơng tin tìm kiếm
Kiểm tra tính hợp lệ
thơng tin
Thơng tin khơng hợp lệ

Thơng tin hợp lệ
Dữ liệu
Dữ liệu file

Tìm kiếm dữ liệu
Giao diện thơng tin

Hình 9: Biểu đồ trình tự của chức năng tìm kiếm

V. BIỂU ĐỒ HOẠT ĐỘNG

Nhập thơng tin

Kiểm tra
tính hợp lệ
Thơng tin
khơng hợp lệ

Thơng tin hợp lệ

Ghi dữ liệu vào file

Hình 10: Biểu đồ hoạt động của chức năng thêm mới
Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


13

Xem thơng tin

Kiểm tra tính
hợp lệ file
Thơng tin file
khơng hợp lệ

Thơng tin file hợp lệ

Dữ liệu hiển thị


Hình 11: Biểu đồ hoạt động của chức năng xem thông tin

Nhập thông tin tìm
kiếm

Kiểm tra
tính hợp lệ
Thơng tin
khơng hợp lệ

Thơng tin hợp lệ

Dữ liệu hiển thị

Hình 12: Biểu đồ hoạt động của chức năng tìm kiếm

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


14

VI. THỰC HIỆN
1. Khởi tạo đối tượng
Tạo class Sach.py với các trường thông tin của Sách:

Tạo class Ke.py với các trường thông tin của Kệ:

2. Xử lý đối tượng
Tạo class QLSach.py, QLKe.py xử lý các yêu cầu chức năng thêm sách,
xem sách, tìm kiếm sách.

- Tạo mã sách có 5 chữ số. Mỗi lần thêm một sách mới, mã sách được tăng 1
giá trị so với mã sách lớn nhất có trong file lưu trữ SACH.txt:

Tạo mã kệ có 3 chữ số. Mỗi lần thêm một kệ mới, mã sách được tăng 1 giá
trị so với mã kệ lớn nhất có trong file lưu trữ KE.txt:

- Xử lý lưu thơng tin sách: Hiển thị danh sách các chuyên ngành của sách để
thủ thư thuận tiện theo dõi, kiểm tra định dạng năm sản xuất.

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


15

Lưu thông tin kệ: Hiển thị danh sách các loại kệ có sẵn để thủ thư thuận tiện
theo dõi, kiểm tra định dạng số lượng tối đa.

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


16

- Xử lý thông tin sách theo kệ:
Hiển thị danh sách các sách, kệ có trong kho lưu trữ trước khi thủ thư nhập
tên sách, kệ cần thêm. Thủ thư chỉ có thể nhập tên sách, tên kệ có trong kho lưu trữ
để thêm:

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B



17

Kiểm tra định dạng số lượng của sách. Số lượng sách khơng được vượt q
vị trí trống của kệ:

- Xử lý sắp xếp dữ liệu:
Lấy dữ liệu trong file ra list:

Sắp xếp dữ liệu theo tên sách hoặc số lượng sách:

- Tìm kiếm thơng tin sách theo chun ngành:

VII. KẾT QUẢ THỰC HIỆN
Giao diện chính của hệ thống:

Thủ thư chọn chức năng tương ứng cho các chức năng chính.

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


18

- Chức năng thêm sách:

Thêm sách thành công:

Thông báo lỗi, nếu có:

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B



19

- Chức năng xem sách:

- Chức năng thêm kệ:

Kiểm tra sự tồn tại của kệ trong file:

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


20

- Hiển thị danh sách kệ:

- Thêm mới thông tin sách trong kệ:

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B


21

Xử lý các ngoại lệ của thông tin:

Hiển thị thông tin sách:

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B



22

- Sắp xếp danh sách thông tin theo tên sách:

- Sắp xếp danh sách thông tin theo số lượng sách:

- Tìm kiếm sách theo chun ngành:

- Thốt khỏi chương trình:

Trên đây là bản mô tả chi tiết các chức năng của chương trình QUẢN LÝ
LƯU TRỮ SÁCH THƯ VIỆN.
Em xin ý kiến góp ý của thầy cơ. E xin chân thành cảm ơn!

Họ và tên: Nguyễn Thị Mai – Mã SV: B19DTCN024 - Lớp: D19TXCN02-B



×