You are on page 1of 11

1.

Phân tích yêu cầu


a. Phát biểu bài toán
- Mỗi độc giả khi đến thư viện sẽ được tạo một thẻ độc giả bao gồm các thông
tin: Mã thẻ, ngày bắt đầu, ngày kết thúc.
- Mỗi cuốn sách gồm các thông tin: mã sách, vị trí, tên tác giả, thể loại, số
lượng, nhà xuất bản. Các cuốn sách cùng tên có cùng mã sách.
- Mỗi độc giả có thể mượn nhiều cuốn sách khác nhau, mỗi cuốn sách được
mượn bởi nhiều độc giả. Thông tin về thời gian mượn và hạn trả trong mỗi
lần mượn cần phải được lưu lại. Độc giả muốn mượn sách thì tra cứu sách và
điền thông tin sách vào phiếu mượn. Khi trả sách, thủ thư nhập mã độc giả thì
thông tin những lần mượn/trả sách của người đọc sẽ hiện lên, thủ thư nhập
ngày trả và lưu.
- Các thủ thư quản lý quá trình mượn sách của các độc giả. Mỗi độc giả khi
mượn 1 cuốn sách phải được quản lý bởi 1 thủ thư. Thủ thư được cấp 1 tài
khoản bao gồm các thông tin: Họ và tên, mã thủ thư, tuổi, số CMT.
- Các thủ thư sẽ được quản lý bởi một người thủ thư trưởng.
Mỗi người thủ thư trưởng quản lý nhiều thủ thư và tất cả thủ thử sẽ được
quản lý bởi một người thủ thư trưởng.
- Mỗi giá sách cần phải được đặt trong 1 phòng đọc. Mỗi phòng đọc có nhiều
giá sách. Mỗi giá sách trong một phòng đọc phải có mã khác nhau, nhưng các
giá sách thuộc các phòng khác nhau có thể trùng nhau.
- Mỗi cuốn sách được đặt tại một vị trí nhất định trên 1 giá sách. Mỗi giá sách
chứa nhiều sách. Mã vị trí của mỗi cuốn sách trên 1 giá phải khác nhau,
nhưng các cuốn sách thuộc các giá sách khác nhau có thể trùng vị trí.
- Mỗi thư viện thì gồm có nhiều phòng đọc, mỗi phòng đọc có mã khác nhau
và được giám sát bởi 1 thủ thư.
- Thư viện được quản lý bởi người quản lý. Một thư viện có các thông tin về
tên, địa chỉ, số điện thoại, email.
- Người quản lý nhập sách từ nhiều nhà xuất bản. Thông tin mỗi lần nhập sách
cần được lưu lại.

b. Đối tượng người dùng


- Thủ thư
- Người quản lý.
- Người quản trị hệ thống.

2. Các chức năng của hệ thống.


Phần 2: Thiết kế logic và chuẩn hóa

- Quản lý mượn, trả sách dễ dàng. Thủ thư theo dõi được thời gian mượn, ngày
trả, sách mượn của độc giả.
- Tìm kiếm sách theo tên, tác giả, nhà xuất bản, thể loại.
- Thủ thư cập nhật, thêm, sửa, xoá, tra cứu sách.
- Hỗ trợ quản lý thẻ độc giả: thêm, tra cứu, xoá, chỉnh sửa thông tin độc giả.
- Hỗ trợ báo cáo số sách mượn hàng tháng theo tác giả, thể loại. Thống kê các
loại sách không được mượn hàng tháng, năm.
- Hỗ trợ quản lý thông tin thủ thư: thêm, sửa, xoá, tra cứu thủ thư.
- Nhập sách: ghi lại thông tin mỗi lần nhập sách như thời gian, số lượng, nhà
xuất bản, giá, sách.

3. Mô tả tập thực thể và quan hệ giữa các tập thực thể


● Mô tả:
- Người: Họ tên, CMT, Tuổi, giới tính, địa chỉ
- Độc giả: Mã độc giả, SĐT, email
- Sách: Mã sách, Vị trí, tên sách, thể loại, nhà xuất bản, tác giả
- Thư viện: TênTV, Địa chỉ, số điện thoại, email
- Nhà xuất bản: Tên NXB, địa chỉ, SĐT
- Thủ thư: Mã thủ thư, lương
- Phòng đọc: Mã phòng
- Giá sách: Mã giá
- Người quản lý: MãQL

● Quan hệ:
- Độc giả, thủ thư, người quản lý là tập con của tập Người.
- Người là tập cha của Độc giả, Thủ thư, Người quản lý

- Mỗi thủ thư trưởng sẽ quản lý nhiều thủ thử, mỗi thủ thư sẽ được quản lý bởi
một thủ thư trưởng

- Mỗi sách được mượn/trả bởi nhiều độc giả


- Độc giả có thể mượn/ trả sách khi đủ điều kiện

- Mỗi độc giả mượn sách/ trả phải có sự quản lý của thủ thư
- Thủ thư quản lý hoạt động mượn/ trả sách cho nhiều độc giả

- Mỗi giá sách cần phải được đặt trong 1 phòng đọc
- Mỗi phòng đọc có nhiều giá sách.
Phần 2: Thiết kế logic và chuẩn hóa

- Mỗi giá sách trong một phòng đọc phải có mã khác nhau, nhưng các giá sách
thuộc các phòng khác nhau có thể trùng nhau

- Mỗi cuốn sách được đặt tại một vị trí nhất định trên giá sách.
- Mỗi giá sách chứa nhiều sách.
- Mã vị trí của mỗi cuốn sách trên 1 giá phải khác nhau, nhưng các cuốn sách
thuộc các giá sách khác nhau có thể trùng vị trí.

4. Lược đồ ERD

5. Ánh xạ mô hình quan hệ


Phần 2: Thiết kế logic và chuẩn hóa

Ký hiệu : Mã sách : khoá chính


Mã sách : khoá ngoại

6. Xác định phụ thuộc hàm


Phần 2: Thiết kế logic và chuẩn hóa

Thư viện
 TênTV Địa chỉ SĐT email
{ TênTV  địa chỉ, SĐT, email }

Phòng đọc
 Mã TênT
phòng V
{ Mã phòng, tên TV  Mã phòng }

Giá sách
 Mã Mã phòng
giá
{ Mã giá, Mã phòng  Mã giá }

Sách
 Mã Mã Mã Vị Tên Nhà xuất Thể Tác Số
sách giá phòng trí sách bản loại giả lượng
{ Mã sách  tên sách, NXB, Thể loại, tác giả, số lượng
Vị trí, mã giá, mã phòng  mã sách }

Nhà xuất bản


 TênNXB  Địa chỉ  SĐT
{ TênNXB  Địa chỉ, SĐT }

N- Người quản lý
 MaQL TênT Q-
V CMT
{ MaQL, TênTV  MaQL; Q-CMT MaQL; MaQL  Q-CMT }

Nhập
 Mã nhập Mã TênNX Giá Số lượng Ngày nhập MaQ
sách B nhập L

{ Mã nhập  Ngày nhập, TênNXB, MaQL;


Mã nhập, mã sách -> số lượng nhập, giá nhập }
Phần 2: Thiết kế logic và chuẩn hóa

Người
 CMT Họ tên Tuổ Giới tính Địa chỉ
i

{CMT  Họ tên; CMT  Tuổi; CMT  Giới tính; CMT  Địa chỉ }

Mượn/Trả
 Mã mượn Mã Mã thủ Mã độc Ngày Ngày
trả sách thư giả mượn trả

{ Mã mượn trả  ngày mượn; Mã mượn trả, Mã sách  ngày trả;


Mã mượn trả  Mã độc giả, Mã thủ thư }

N-Thủ thư
 Mã thủ T- Lươn Mã
thư CMT g phòng

{ Mã thủ thư  T-CMT; T-CMT  Mã thủ thư; Mã thủ thư  Mã phòng. }

N-Thủ thư trưởng


 Mã thủ Mã thủ thư - Mã quản
thư t lý

{ Mã thủ thư  Mã thủ thư - t; Mã thủ thư – t-> MãQL }

N-Độc giả
 Mã độc giả Đ- Email Số SĐT
CMT thẻ

{ Mã độc giả  Đ-CMT; Đ-CMT -> Mã độc giả, số thẻ; Mã độc giả  SĐT, email; }
Phần 2: Thiết kế logic và chuẩn hóa

Thẻ độc giả


 Số thẻ Ngày hết hạn Ngày bắt dầu

{ Số thẻ  Ngày hết hạn; Số thẻ  Ngày bắt đầu }

7. Chuẩn hoá lược đồ quan hệ


Thư viện
 TênTV Địa chỉ SĐT email
{ TênTV  địa chỉ, SĐT, email }
Khoá dự bị: TênTV => Thư viện (TênTV, địa chỉ, SĐT, email)
TênTV  địa chỉ, SĐT, email.

Phòng đọc
 Mã TênT
phòng V
{ Mã phòng, tên TV  Mã phòng }
Phụ thuộc hàm hiển nhiên đúng, không phải chuẩn hoá.
Phòng đọc ( Mã phòng, TênTV)
{ Mã phòng, TênTV  Mã phòng }

Giá sách
 Mã Mã phòng
giá
{ Mã giá, Mã phòng  Mã giá }
Phụ thuộc hàm hiển nhiên đúng, không phải chuẩn hoá.
Giá sách (Mã sách, Mã phòng)
{ Mã giá, Mã phòng  Mã giá }

Sách
 Mã Mã Mã Vị Tên Nhà xuất Thể Tác Số
sách giá phòng trí sách bản loại giả lượng
{ Mã sách  tên sách, NXB, Thể loại, tác giả, số lượng
Vị trí, mã giá, mã phòng  mã sách }
Khoá dự bị: Vị trí, mã giá, mã phòng
Sau khi chuẩn hoá 2NF:
Sách (Mã sách, Tên sách, Nhà xuất bản, Thể loại, Tác giả, Số lượng)
Phần 2: Thiết kế logic và chuẩn hóa

Mã sách  Tên sách, Nhà xuất bản, Thể loại, Tác giả, Số lượng
Vị trí sách ( Mã phòng, Mã giá, Vị trí, Mã sách)
Mã phòng, Mã giá, Mã sách  Mã sách
 3NF = 2NF

Nhà xuất bản


 TênNXB  Địa chỉ  SĐT
{ TênNXB  Địa chỉ, SĐT }
Khoá dự bị: TênNXB
 Thuộc 2NF và không có phụ thuộc hàm bắc cầu nên thuộc 3NF
Nhà xuất bản(TênNXB, Địa chỉ, SĐT)
TênNXB  Địa chỉ, SĐT

N- Người quản lý
 MaQL TênT Q-
V CMT
{ MaQL, TênTV  MaQL; Q-CMT MaQL; MaQL  Q-CMT }
Khoá dự bị: MaQL, Tên TV hoặc Q-CMT, Tên TV
Chọn khoá: MãQL, TênTV
 Thuộc 2NF và không có phụ thuộc hàm bắc cầu nên thuộc 3NF
Người quản lý ( MaQL, TênTV, Q-CMT)
MaQL, TênTV  MaQL
MaQL  Q-CMT
Q-CMT MaQL

Nhập

 Mã nhập Mã TênNX Giá Số lượng Ngày nhập MaQ


sách B nhập L

{ Mã nhập  Ngày nhập, TênNXB, MaQL;


Mã nhập, mã sách -> số lượng nhập, giá nhập }
Siêu khoá: Mã nhập, Mã sách
Sau khi chuẩn hoá 2NF
Phần 2: Thiết kế logic và chuẩn hóa

CT Nhập sách ( Mã nhập, Ngày nhập, TênNXB, MaQL)


Mã nhập  Ngày nhập, TênNXB, MaQL;

Nhập sách (Mã nhập, Mã sách, số lượng nhập, giá nhập)


Mã nhập, mã sách -> số lượng nhập, giá nhập

 3NF = 2NF

Người
 CMT Họ tên Tuổ Giới tính Địa chỉ
i

{CMT  Họ tên; CMT  Tuổi; CMT  Giới tính; CMT  Địa chỉ }
Khoá dự bị: CMT Thuộc 2NF và không có phụ thuộc hàm bắc cầu nên thuộc 3NF
Người (CMT, Họ tên, Tuổi, Giới tính, Địa chỉ)
CMT  Họ tên; CMT  Tuổi; CMT  Giới tính; CMT  Địa chỉ

Mượn/Trả
 Mã mượn Mã Mã thủ Mã độc Ngày Ngày
trả sách thư giả mượn trả

{ Mã mượn trả  ngày mượn; Mã mượn trả, Mã sách  ngày trả;


Mã mượn trả  Mã độc giả, Mã thủ thư }
Khoá dự bị: Mã mượn trả, mã sách.
Sau khi chuẩn hoá 2NF:
CT Mượn trả (Mã mượn trả, Mã độc giả, Mã thủ thư, Ngày mượn)
Mã mượn trả  ngày mượn;
Mã mượn trả, Mã sách  ngày trả;

Mượn trả( Mã mượn trả, Mã sách, ngày trả)


Mã mượn trả, Mã sách  ngày trả;
 3NF = 2NF

N-Thủ thư
 Mã thủ T- Lươn Mã
Phần 2: Thiết kế logic và chuẩn hóa

thư CMT g phòng


{ Mã thủ thư  T-CMT, lương; T-CMT  Mã thủ thư; Mã thủ thư  Mã phòng. }
Có 2 khoá dự bị: Mã thủ thư và T-CMT
Chọn khoá: Mã thủ thư
Thuộc 2NF và không có phụ thuộc hàm bắc cầu nên thuộc 3NF
Thủ thư( Mã thủ thư, T-CMT, Lương, Mã phòng)

N-Thủ thư trưởng


 Mã thủ Mã thủ thư - Mã quản
thư t lý

{ Mã thủ thư  Mã thủ thư - t; Mã thủ thư – t -> MãQL }


Khoá dự bị: Mã thủ thư
Sau khi chuẩn hoá 2NF:
Thủ thư trưởng 1 (Mã thủ thư, Mã thủ thư-t)
Mã thủ thư  Mã thủ thư – t
Thủ thư trưởng 2 (Mã thủ thư-t , maQL)
Mã thủ thư – t -> MãQL

N-Độc giả
 Mã độc giả Đ- Email Số SĐT
CMT thẻ
{ Mã độc giả  Đ-CMT, số thẻ; Đ-CMT  Mã độc giả; Mã độc giả  SĐT, email;
số thẻ  Mã độc giả }
Có 3 khoá dự bị: Đ-CMT và Mã độc giả và số thẻ
Chọn khoá: Mã độc giả
Thuộc 2NF và không có phụ thuộc hàm bắc cầu nên thuộc 3NF
Độc giả ( Mã độc giả, Đ-CMT, Số thẻ, Email, SĐT)
Mã độc giả  Đ-CMT, số thẻ; Đ-CMT  Mã độc giả;
Mã độc giả  SĐT, email; số thẻ  Mã độc giả
Phần 2: Thiết kế logic và chuẩn hóa

Thẻ độc giả


 Số thẻ Ngày hết hạn Ngày bắt dầu

{ Số thẻ  Ngày hết hạn; Số thẻ  Ngày bắt đầu }


Khoá dự bị: Số thẻ => Thuộc 2NF và không có phụ thuộc hàm bắc cầu nên thuộc 3NF
Thẻ độc giả ( Số thẻ, Ngày hết hạn, Ngày bắt đầu)
Số thẻ  Ngày hết hạn
Số thẻ  Ngày bắt đầu

8. Kết quả sau khi chuẩn hoá gồm các bảng sau:

Thư viện ( TênTV, địa chỉ, SĐT, email)


Phòng đọc ( Mã phòng, TênTV)
Giá sách ( Mã sách, Mã phòng)
Sách ( Mã sách, Tên sách, Nhà xuất bản, Thể loại, Tác giả, Số lượng)
Vị trí sách ( Mã phòng, Mã giá, Vị trí, Mã sách)
Nhà xuất bản( TênNXB, Địa chỉ, SĐT)
Người ( CMT, Họ tên, Tuổi, Giới tính, Địa chỉ)
Người quản lý ( MaQL, TênTV, Q-CMT)
CT Nhập sách ( Mã nhập, Ngày nhập, TênNXB, MaQL)
Nhập sách ( Mã nhập, Mã sách, số lượng nhập, giá nhập)
CT Mượn trả ( Mã mượn trả, Mã độc giả, Mã thủ thư, Ngày mượn)
Mượn trả ( Mã mượn trả, Mã sách, ngày trả)
Thủ thư ( Mã thủ thư, T-CMT, Lương, Mã phòng)
Thủ thư trưởng 1 ( Mã thủ thư, Mã thủ thư-t)
Thủ thư trưởng 2 ( Mã thủ thư-t , maQL)
Độc giả ( Mã độc giả, Đ-CMT, Số thẻ, Email, SĐT)
Thẻ độc giả ( Số thẻ, Ngày hết hạn, Ngày bắt đầu)

------The end -------

You might also like