Tải bản đầy đủ (.docx) (29 trang)

BÀI TẬP LỚN Phân tích thiết kế hướng đối tượng Thiết kế phần mềm quản lý 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 (499.53 KB, 29 trang )

Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
BÁO CÁO BÀI TẬP LỚN LẦN 1
Môn: Phân tích thiết kế hướng đối tượng
Đề tài: Thiết kế phần mềm quản lý thư viện
Nhóm sinh viên thực hiện: Nhóm 5, Lớp KSTN – ĐTVT K54
Các thành viên: Trần Xuân Bách
Đỗ Trung Đức (nhóm trưởng)
Nguyễn Tiến Đạt
Hoàng Văn Pháp
1
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Contents
2
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Chương trình quản lý thư viện
1. Yêu cầu hệ thống của chương trình quản lý thư viện
a. Chủ nhiệm dự án (project sponsor)
Đỗ Trung Đức (trưởng nhóm)
b. Nhu cầu kinh doanh (Business Need)
Vấn đề kinh doanh của thư viện có vấn đề: lượng khách hàng giảm dần dẫn đến
doanh số giảm.
Qua điều tra phát hiện lý do:
- Hỗ trợ khách hàng kém (chậm trễ, không chính xác), dẫn đến khách
hàng không hài lòng với dịch vụ.
- Bị cạnh tranh bởi một thư viện khác trên cùng địa bàn nhiều nhân viên
hơn, chất lượng phục vụ tốt hơn.
Các phương án được đề xuất:
PA1: Tăng số lượng nhân viên
PA2: Xây dựng hệ thống quản lý thư viện thông minh hơn bằng phần mềm máy
tính
Phương án 2 là tốt hơn và được lựa chọn


c. Yêu cầu kinh doanh (Business Requirement)
o Phần mềm cuối cùng dễ dàng tương thích với các hệ điều hành thông dụng
và chạy ổn định, tin cậy.
o Phần mềm có kích thước nhỏ gọn, không đòi hỏi cấu hình phần cứng cao.
o Những chức năng của phần mềm :
• Đối với người mượn sách:
- Tìm kiếm thông tin về sách cần mượn theo tên sách, tác
giả, thể loại, vị trí của sách trong thư viện.
- Xem thông tin về trạng thái mượn sách, sách đang mượn,
lịch sử mượn sách,…
• Đối với nhân viên thư viện:
- Quản lý sách trong thư viện. Thêm/sửa/xóa các đầu sách.
Xem lịch sử mượn sách.
- Quản lý trạng thái mượn/trả sách, trạng thái tài khoản đặt
cọc, phí duy trì tài khoản của khách mượn sách.
- In hóa đơn.
3
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
d. Giá trị kinh doanh (Business Values)
o Giá trị hữu hình:
- Giảm 40% chi phí nhờ cắt giảm số nhân viên thư viện.
- Thu hút thêm 20% khách hàng nhờ tính tiện dụng cao
o Giá trị vô hình:
- Cải thiện chất lượng phục vụ: phục vụ khách mượn trả sách
nhanh hơn, chính xác hơn.
e. Các vấn đề đặc biệt
o Dự án cần hoàn thành trong thời gian tối đa là 3 tháng kể từ ngày dự án
chính thức bắt đầu.
o Sản phẩm phần mềm khi kết thúc dự án có khả năng cập nhật và nâng cấp
khi cần thiết.

o Thường xuyên đưa ra các bản nâng cấp các chức năng của chương trình
nếu thấy cần thiết để phù hợp với tình hình thực tế. Dự kiến : 1 lần nâng
cấp / 6 tháng.
2. Phân tích tính khả thi
a. Khả thi về mặt kỹ thuật:
Mức độ quen thuộc với ứng dụng : Khả năng nắm rõ nghiệp vụ là
khá
- Các thành viên trong nhóm dự án đều đang là sinh viên, hầu hết đều chưa
có kinh nghiệm quản lý các thư viện. Riêng trưởng nhóm đã có thời gian
làm việc tại một thư viện.
- Đề tài tuy không mới lạ vì có những nét tương đồng với các phần mềm
quản lý thư viện tuy nhiên do cơ chế hoạt động khác nhau và do lần đầu
thực hiện đề tài nên khả năng là còn hạn chế.
Mức độ quen thuộc với công nghệ : Khả năng hiểu rõ công nghệ
là khá
- Các thành viên trong nhóm dự án đều đang là sinh viên chuyên ngành kĩ
thuật đã có những kiến thức cơ bản về CSDL và coding
- Dự án có phần thiết kế CSDL được thực hiện trên Access 2000 và code
được viết bằng Visual Basic. Cả 2 phần mềm trên đều rất phổ cập và
tương đối dễ tiếp thu và thao tác
- Nền khi hoạt động của phần mềm là HDH Windows 7 trở về trước
Kích thuớc dự án :
- Nhóm dự án chỉ gồm 4 người tham gia.
- Độ dài tiến hành dự án không kéo dài quá 3 tháng.
- Kích thước phần mềm nhỏ dưới 20MB
- Độ phức tạp của phần mềm là không lớn do chỉ thực hiện các chức năng
cơ bản và cần thiết của 1 hệ thống quản lý.
4
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Tương thích của hệ thống (phần mềm) với các phần mềm khác

rất tốt:
- Phần mềm không đòi hỏi thiết lập thay đổi trên hệ diều hành và không có
xung đột tài nguyên với các chương trình chạy khác.
- Tuy nhiên tính tương thích với các HDH như linux và mac os là không tốt
b. Khả thi về mặt kinh tế
Xác định các loại chi phí và lợi nhuận
• Chi phí phát triển:
- Chi phí đầu tư tài liệu học tập và nghiên cứu , thực hiện phỏng vấn
- Chi phí phần mềm hệ thống.
- Chi phí quảng cáo và tiếp thị.
- Chi phí cài đặt ban đầu.
• Chi phí vận hành:
- Cập nhật phần mềm.
- Bảo trì và sửa lỗi phần mềm.
• Lợi nhuận hữu hình:
- Bán phần mềm.
• Lợi nhuận vô hình:
- Kinh nghiệm về quản lí dự án và xây dựng phần mềm.
- Nâng cao khả năng làm việc theo nhóm
- Có thêm các kinh nghiệm về nghiệp vụ quản lý thư viện
Định lượng các loại chi phí và lợi nhuận
Tổng chi phí: 3.900.000VND
Tổng thu nhập: 2.500.000VND
5
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Tính toán Lưu chuyển tiền tệ (Cash Flow)
Costs and
benefits
2008 2009 2010 2011 2012 Tổng
Bán phần mềm 2.500.000 2.550.000 2.601.000 2.653.020 2.706.080 13.010.100

Total benefits 2.500.000 2.550.000 2.601.000 2.653.020 2.706.080 13.010.100
Tài liệu &
nghiên cứu
1.000.000 0 0 0 0
Thực hiện
phần mềm
1.000.000 0 0 0 0
Quảng cáo &
tiếp thị
1.500.000 400.000 400.000 400.000 400.000
Total
development
costs
3.500.000 400.000 400.000 400.000 400.000
Cập nhật phần
mềm
100.000 100.000 100.000 100.000 100.000
Bảo trì và sửa
chữa phần
mềm
300.000 300.000 300.000 300.000 300.000
Total
operational
costs
400.000 400.000 400.000 400.000 400.000
Total costs 3.900.000 800.000 800.000 800.000 800.000
Total (1.400.000) 1.750.000 1.851.000 1.853.020 1.906.080
Xác định Giá trị ròng (Net present value)
Với giả thiết tỉ lệ lạm phát iRate = 0.1
Costs&benefits 2008 2009 2010 2011 2012 Tổng

6
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Bán phần mềm 2.500.000 2.550.000 2.601.000 2.653.020 2.706.080 13.010.100
Total benefits 2.500.000 2.550.000 2.601.000 2.653.020 2.706.080 13.010.100
PV of benefits 2.272.727 2.107.438 1.954.169 1.812.048 1.680.262 9.826.644
PV of all
benefits
2.272.727 4.380.165 6.334.334 8.146.382 9.826.644
Tài liệu &
nghiên cứu
1.000.000 0 0 0 0
Phần mềm HT 1.000.000 0 0 0 0
Quảng cáo &
tiếp thị
1.500.000 400.000 400.000 400.000 400.000
Total
development
costs
3.500.000 400.000 400.000 400.000 400.000
Cập nhật phần
mềm
100.000 100.000 100.000 100.000 100.000
Bảo trì và sửa
chữa phần mềm
300.000 300.000 300.000 300.000 300.000
Total
operational
costs
400.000 400.000 400.000 400.000 400.000
Total costs 3.900.000 800.000 800.000 800.000 800.000

PV of costs 3.545.454 661.157 601.051 546.410 496.737 5.850.809
PV of all costs 3.545.454 4.206.611 4.807.662 5.354.072 5.850.809
Total project
benefits-costs
(1.400.000) 1.750.000 1.851.000 1.853.020 1.906.080
7
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Yearly NPV (1.272.727) 1.446.280 1.390.684 1.263.711 1.183.526 4.011.474
Cumulative
NPV
(1.272.727) 173.553 1.564.237 2.827.948 4.011.474
• Tính Tỷ lệ hoàn vốn
ROI :
9.826.644 5.850.809
.100% 67.9%
5.850.809

=
• Xác định Điểm hòa vốn
Điểm hoà vốn :
( )
1.446.280 173.553
1 1.88
1.446.280

+ =
năm
Đồ thị điểm hòa vốn
 Như vậy, dự án đã khả thi về các mặt kinh tế và kĩ thuật
3. Xác định kích thước hệ thống theo phương pháp điểm

chức năng
Tính toán số điểm chức năng
Liệt kê các khả năng của chương trình
Nhập thông tin :
• Thông tin về sách
• Thông tin về thể loại sách
• Thông tin về khách hàng
8
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Tạo các báo cáo :
• Danh sách các thể loại sách
• Danh sách các đầu sách theo thể loại
• Danh sách khách hàng
• Danh sách sách đang mượn của khách hàng
• Hóa đơn mượn sách
Truy vấn :
• Thông tin của sách
• Thông tin về khách hàng
• Thông tin về việc mượn trả sách
Tính toán tổng số điểm chức năng chưa hiệu chỉnh (TUFP - Total
unadjusted function Points):
Decription
Complexity
Total
Number
s
Low Medium High Total
Inputs 3 2x 3 1 x 4 0 x 6 10
Outputs 5 3 x 4 1 x 5 1 x 7 24
Queries 3 2 x 3 0 x 4 1 x 6 12

Files 1 1 x 7 0 x 10 0 x 15 7
Program Interfaces 8 7x 5 1 x 7 0 x 10 36
Total Unadjusted Function Points ( TUFP ) : 89
Tính tổng độ phức tạp xử lý (TPC-Total Processing Complexity) :
Data communication 0
Heavy use configuration 0
Transaction rate 0
End-user effiency 0
Complex processing 0
Installation ease 1
Multiple sites 0
9
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Performance 0
Distributed functions 1
Online data entry 0
Online update 0
Reusability 1
Operation ease 1
Extensibility 1
Total processing complexity ( TPC ) 5
=> TPC = 5
Tính Độ phức tạp hiệu chỉnh (APC –Adjusted Processing Complexity) :
APC = 0.65 + (0.01 * TPC)= 0.65 + (0.01 * 5)=0.7
Tính tổng điểm chức năng đã hiệu chỉnh (TAFP - Total Adjusted Function
Points) :
TAFP = APC * TUFP = 0.7 * 89 = 62.3
Ngôn ngữ được sử dụng là Visual Basic => Lines of Codes per Function Point là 30
Total Lines of Codes (TLC) = 62.3 * 30 = 1869 total lines of code
Đánh giá nhân lực cần thiết :

Effort = 1.4 * thousands-of- lines-of-code = 1.4 * 1.869 = 2.6166 person months
Đánh giá thời gian cần thiết :
Schedule Time = 3.0 * person-months
1/3
= 3.0 * 3.2634
1/3
= 4.13 months
10
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
4. Xây dựng kế hoạch phát triển hệ thống với biểu đồ
Gantt
WBS
Task
Numbe
r
Task Name Duration
( in days)
Dependency Status
1 Quản lý sách 35 Complete
1.1 Tìm hiêủ yêu cầu 1 Complete
1.2 Phân tích và xác định yêu cầu 3 1.1 Complete
1.3 Tiến hành mô hình hóa 7 1.2 Complete
1.4 Dữ liệu sách 2 1.2 Complete
1.5 Thiết kế giao diện 3 1.4 Complete
1.6 Lập trình 14 1.5,1.4,1.3 Complete
1.7 Chạy thử + Debug 5 1.6 Complete
2 Quản lý khách hàng 28 Complete
2.1 Tìm hiêủ yêu cầu 1 Complete
2.2 Phân tích và xác định yêu cầu 3 2.1 Complete
2.3 Tiến hành mô hình hóa 5 2.2 Complete

2.4 Dữ liệu khách hàng 2 2.2 Complete
2.5 Thiết kế giao diện 3 2.4 Complete
2.6 Lập trình 10 2.5,2.4,2.3 Complete
2.7 Chạy thử + Debug 4 2.6 Complete
3 Quản lý mượn/trả sách 42 1 , 2 In Progress
3.1 Tìm hiêủ yêu cầu 1 Complete
3.2 Phân tích và xác định yêu cầu 3 3.1 Complete
3.3 Tiến hành mô hình hóa 7 3.2 Complete
3.4 Dữ liệu mượn/trả sách 4 3.2 Complete
3.5 Thiết kế giao diện 3 3.4 In Progess
3.6 Lập trình 17 3.5,3.4,3.3 0pen
3.7 Chạy thử + Debug 7 3.6 0pen
4 Hoàn thiện phần mềm 14 1,2,3 0pen
4.1 Ráp chương trình + test thử 7 0pen
4.2 Tạo bản hướng dẫn sử dụng 1 0pen
4.3 Đóng gói phần mềm + Cài đặt
thử nghiệm
5 4.1 0pen
4.4 Báo cáo tổng kết dự án 1 1,2,3,4 0pen
11
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Biểu đồ Gantt
12
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
5. Xây dựng tài liệu yêu cầu hệ thống (bằng các phương
pháp thu thập yêu cầu: phân tích tài liệu và quan
sát)
Lựa chọn kĩ thuật phân tích yêu cầu
Đánh giá các tiêu chí :
 Giá trị kinh doanh tiềm năng (Potential business value)

 Chi phí dự án (Project cost)
 Phạm vi phân tích (Breadth of analysis)
 Rủi ro thất bại (Rish)
Giá trị kinh doanh tiềm năng (Potential
business value)
Moderate
Chi phí dự án (Project cost) Low – Moderate
Phạm vi phân tích (Breadth of analysis) Narrow – Moderate
Rủi ro thất bại (Rish) Low - Moderate
Dựa vào việc đánh giá 4 tiêu chí trên , Nhóm quyết định chọn kĩ thuật phân tích yêu cầu là
Business process improvement (BPI) .
Lựa chọn phương pháp thu thập yêu cầu
Type of information As is , improments
Depth of information Medium
Breadth of information Medium
Integration of information Low
User involvement Low
Cost Low – Medium
Dựa vào việc đánh giá các tiêu chí trên , Nhóm quyết định lựa chọn 3 phương pháp thu thập yêu
cầu là
 Điều tra (Questionnaires)
 Phân tích tài liệu (Document Analysis)
 Quan sát (Observation)
Điều tra ( Questionaires)
13
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
• Những người tham gia nên được chọn từ nhiều vị trí khác nhau để có thể thu được ý kiến
từ nhiều góc độ nhưng cần chú ý đến các đối tượng là những người hoạt động trong các thư
viện, đặc biệt là những khách hàng.
• Các câu hỏi được đặt ra phải đảm bảo nhu câu tiếp thu được các phản hồi của người sử

dụng về hệ thống hiện tại, những mặt mạnh, mặt yếu kém, những vấn đề còn tồn tại cần phải
giải quyết.
• Các câu hỏi này cần phải bao quát được hết phạm vi của hệ thống, phải đề xuất được
nhiều hướng giải quyết các vấn đề còn tồn tại.
• Đặt các câu hỏi quan trọng lên ngay đầu tờ câu hỏi
• Đặt những câu hỏi mở để người tham gia có thể thoải mái nêu ý kiến của mình.
• Tìm cách gây hứng thú cho người tham gia băng cách trình bày bảng câu hỏi, bắt đầu
bằng những câu hỏi lý thú, hài hước
• Người trả lời không cần khai báo tên tuổi để tạo sự chân thật cho việc điều tra
• Các câu hỏi thuộc cùng 1 phần cần được bố trí gần nhau , đánh số các câu hỏi và không
bố trí các câu hỏi kín cả 1 trang

Sau đây là một số câu hỏi ví dụ :
1. Bạn thấy chất lượng phục vụ khách hàng tại thời điểm hiện tại của thư viện ra sao?
a. Rất tốt
b. Tốt
c. Tạm được
d. Tệ
e. Rất tệ
2. Theo bạn chức năng nào của chúng tôi làm bạn không hài lòng nhất:
a. Đăng ký người dùng
b. Tìm kiếm sách
c. Mượn/Trả sách
d. Chức năng khác: …………………….
3. Bạn có thấy hứng thú nếu chúng tôi triển khai một hệ thống phần mềm quản lý thư viện
thông minh để phục vụ khách hàng:
a. Rất hứng thú
b. Khá hứng thú
c. Không quan tâm
d. Không thích

4. Bạn đã từng sử dụng một phần mềm quản lý thư viện nào chưa, bạn thấy nó ra sao:
a. Chưa.
b. Rồi, rất tốt
c. Rồi, tốt
14
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
d. Rồi, tệ
f. Rồi, rất tệ
5. Nếu chúng tôi triển khai hệ thống quản lý thư viện bằng phần mềm, bạn mong muốn có
thêm những chức năng nào trong hệ thống?


6. Bạn mong muốn phần mềm sẽ phải có giao diện, chức năng đáp ứng điều gì ?


Phân tích tài liệu (Document Analysis)
Nghiên cứu và phân tích các tài liệu sau :
• Tài liệu mô tả mô hình hoạt động của các thư viện
• Các loại sách và mô tả ngắn gọn của từng sách
• Sổ sách kinh doanh của thư viện
• Các thống kê về khách hàng của thư viện (độ tuổi, giới tính,…)
• Tài liệu về các phần mềm có chức năng tương tự

Quan sát (Observation)
Quan sát thói những hoạt động chính trong khi sử dụng phần mềm cũng như toàn bộ quá
trình mượn trả sách của khách hàng và nhân viên thư viện. Qua đó rút ra một số thói quen
của khách hàng và nhân viên.
Kết hợp những phương pháp trên, nhóm đã xây dựng được yêu cầu hệ thống:

Yêu cầu phi chức năng (Nonfunctional Requirement)

Operational - Hệ thống sẽ hoạt động trong Windows môi trường HDH
Windows (XP, Vista, Windows 7)
- Cấu hình tối thiểu : Pentium III ,50 Mb HDD, 128 mb
RAM
Performance - Thời gian phản hồi khi người sử dụng thực hiện việc tìm
kiếm,truy xuất các kết quả không được nhiều quá 3 s
- Thời gian để khởi động phần mềm không được quá 7 s
- Thời gian chuyển đổi giữa các form của phần mềm không
được quá 2 s
Security - Người sử dụng cần nhập đúng username và password để
có thể sử dụng phần mềm
Cutural and - Hệ thống được thiết kế cho người dùng là người Việt Nam
15
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Political
Yêu cầu chức năng (Functional Requirement)
Nhập thông tin  Cho phép người sử dụng nhập mới,sửa các thông tin:
Với khách hàng:
- Mật khẩu
- Danh sách đăng ký mượn sách
Với nhân viên:
- Sách
- Thể loại sách
- Tác giả
- Số lượng
- Vị trí trong thư viện
Lưu trữ thông tin  Hệ thống cần lưu trữ chi tiết các thông tin về sách, thông
tin cá nhân khách hàng, trạng thái mượn/trả sách
 Khi có thông tin thay đổi CSDL có thể được cập nhật
ngay lập tức

 Khi có thêm các đầu sách mới và khách hàng mới các
nhân viên sẽ cập nhật vào CSDL
Tìm kiếm thông tin  Hệ thống cho phép người sử dụng tìm kiếm thông tin về
sách, trạng thái sách, vị trí trong thư viện
 Hệ thống cho phép nhân viên tìm kiếm thông tin khách
hàng
Xuất hóa đơn, báo
cáo.
 Hệ thống có khả năng lấy ra các hóa đơn cho mỗi lần
mượn/trả sách
 Hệ thống có khả năng lấy ra các báo cáo về tình hình
mượn trả sách của khách hàng, doanh số,…
16
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
6. Xây dựng biểu đồ hoạt động
17
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
7. Xây dựng biều đồ ca sử dụng
Nhận diện các ca sử dụng chính
Các ca sử dụng chính bao gồm:
1. Mượn sách
2. Trả sách
3. Tìm kiếm sách
Mở rộng ca sử dụng chính
• Để mượn sách và trả sách cần phải chứng thực khách hàng (Đăng ký với khách
hàng mới, đăng nhập với khách hàng cũ).
• Giới hạn mượn sách của người dùng là tổng tiền theo giá bìa nhỏ hơn tiền đặt cọc,
do vậy cần thêm ca sử dụng thay đổi tiền đặt cọc.
• Chi phí mỗi tháng cho việc thuê sách là cố định và như nhau với mọi khách hàng
và được thu vào đầu tháng, do đó cần có ca sử dụng để cập nhật phí hàng tháng của

khách. Nếu không đóng sẽ tự động trừ vào tiền cọc.
• Mỗi nhân viên cần có tài khoản riêng để dễ dàng cho quản lý, hơn nữa không thể
cho bất cứ ai cũng được thay đổi thông tin tiền cọc, sách mượn,… của khách nên cần
chứng thực nhân viên.
• Để khách hàng có thể chứng minh việc đóng tiền của mình, số sách mà mình đang
giữ cần in cho khách 1 hóa đơn để chứng minh khi hệ thống gặp sự cố hay sai xót của
nhân viên. Ngoài ra hóa đơn còn xác thực việc khách có cầm đúng cuốn sách mà mình
mượn về hay không (tránh tình huống khách mượn cuốn sách giá rẻ rồi lại mang cuốn đắt
hơn về nên trước khi ra khỏi của hàng cần cho nhân viên xem hóa đơn mượn có giống
với sách mà khách mang ra không). Cả 2 tình huống đều cần in hóa đơn.
• Ngoài ra còn cần thêm chức năng sửa chữa thông tin cá nhân của khách hàng
dùng cho việc khách hàng muốn thay đổi thông tin hay đổi mật khẩu cá nhân.
18
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Bảng mô tả ca sử dụng
Use case name: Tìm sách ID: 01 Level: High
Primary actor: Khách hàng Use Case Type: Detail, essential
Stakaholders and Interests:
Khách hàng – Muốn tìm kiếm thông tin về sách và trạng thái sách còn trên giá.
Brief Description:
Ca sử dụng này cho biết làm sao để tìm kiếm các thông tin cần thiết về sách và trạng
thái của sách trên giá.
Trigger:
Khách hàng nhập thông tin về loại hoặc tên sách, tên tác giả của sách mà khách hàng
muốn mượn.
Relationships:
Association: Khách hàng
Include:
Extend:
Genaralization:

Normal Flow of Events:
1. Khách hàng chọn loại sách trong danh sách hoặc gõ tên sách, tên tác giả vào ô
tìm kiếm.
Nếu muốn tìm theo loại sách, thực hiện subflows S-1.
Nếu muốn tìm theo tên sách, thực hiện subflows S-2.
Nếu muốn tìm theo tác giả, thực hiện subflows S-3.
2. Hệ thống trả về các kết quả cần thiết.
Subflows:
S-1:
Có 1 danh sách các loại sách mà thư viện có cho người dùng lựa chọn.
1. Kết quả trả về vị trí của loại sách trong thư viện và danh sách các đầu sách có
trong loại sách đó.
2. Người dùng có thể tới khu chứa loại sách đó để tiếp tục tìm kiếm theo cách
truyền thống (đọc thử sách) hoặc xem mô tả của sách bằng cách bấm chọn
cuốn sách tương ứng.
S-2:
Kết quả trả về là danh sách các cuốn sách có tên giống hoặc gần giống với từ khóa tìm
kiếm của khách hàng.
S-3:
1. Kết quả trả về danh sách các tác giả có tên giống hoặc gần giống với từ khóa
của khách hàng.
2. Khách hàng chọn tác giả mình mong muốn, trong đó sẽ liệt kê tất cả các sách
của tác giả đó.
3. Khách hàng có thể đến vị trí các cuốn sách đó để tìm kiếm theo cách truyền
thống, hoặc bấm vào xem mô tả của cuốn sách.
Alternate/Exception Flows:
19
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Use case name: Mượn sách ID: 02 Level: High
Primary actor: Khách hàng Use Case Type: Detail, essential

Stakaholders and Interests:
Khách hàng – Muốn mượn cuốn sách mình cần.
Brief Description:
Ca sử dụng này cho biết làm sao để khách hàng có thể thực hiện thủ tục mượn sách tại
thư viện.
Trigger:
Khách hàng tự lấy sách trên giá rồi nhấn nút “mượn sách” trong phần mềm để thực
hiện thủ tục mượn.
Relationships:
Association: Khách hàng
Include: Chứng thực khách hàng
Extend: Tìm sách
Genaralization:
Normal Flow of Events:
1. Khách hàng xác định sách mình định mượn.
2. Khách hàng lấy sách mình cần rồi ấn nút “mượn sách” trên phần mềm
3. Hệ thống sẽ chứng thực xem người dùng có quyền mượn (những) cuốn sách
đó hay không.
Nếu được mượn thực hiện subflows S-1
Nếu không thực hiện subflows S-2
Subflows:
S-1:
1. Hệ thống sẽ tự động in hóa đơn bao gồm thông tin về những sách khách
hàng mượn mới cũng như số sách khách hàng còn chưa trả.
2. Nhân viên sẽ đối chiếu hóa đơn với số sách khách hàng đem ra để chứng
thực khách hàng đem về đúng cuốn mà khách chọn mượn.
3. Nhân viên đóng dấu xác nhận việc mượn sách trước khi khách hàng đem
sách về.
S2:
Hệ thống báo lỗi, khách hàng có thể quay lại để tiếp tục mượn các cuốn sách khác.

Alternate/Exception Flows:
1. Khách hàng có thể đến lấy trực tiếp sách nếu đã quen thuộc hay mượn 1 cuốn mình
đã biết nó ở khu nào, hoặc sử dụng ca sử dụng tìm sách
20
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Use case name: Trả sách ID: 03 Level: High
Primary actor: Khách hàng Use Case Type: Detail, essential
Stakaholders and Interests:
Khách hàng – Muốn trả sách sau khi đọc xong.
Nhân viên – Cập nhật thông tin trả sách vào hệ thống, xếp sách lên giá.
Brief Description:
Ca sử dụng này cho biết làm sao để khách hàng và nhân viên có thể thực hiện thủ tục
trả sách tại thư viện.
Trigger:
Khách hàng đưa sách cần trả cho nhân viên, nhân viên sẽ thực hiện các thao tác cần
thiết cho thủ tục này.
Relationships:
Association: Nhân viên
Include: Chứng thực nhân viên
Extend:
Genaralization:
Normal Flow of Events:
1. Khách hàng đem sách đến trả cho thư viện.
2. Nhân viên sẽ hỏi rồi nhập mà khách hàng vào phần mềm. Phần mềm sẽ hiện ra
danh sách các sách mà khách còn mượn, nhân viên nhấn nút xóa đi các cuốn
sách tương ứng.
3. Hệ thống sẽ hiện lên hỏi khách hàng có tiếp tục mượn sách ngay hay không
Nếu khách hàng muốn mượn tiếp sách, thực hiện subflows S-1
Nếu khách hàng chỉ đến để trả sách, thực hiện subflows S-2
4. Nhân viên xếp lại sách trên giá theo đúng vị trí của nó.

Subflows:
S-1:
Hệ thống không in hóa đơn, khách hàng chuyển qua ca sử dụng mượn sách
S-2:
1. Hệ thống in cho khách hàng 1 hóa đơn có thông tin về các sách còn lại mà
khách hàng đang giữ.
2. Nhân viên đóng dấu vào hóa đơn, đưa cho khách hàng.
Alternate/Exception Flows:
2. Hệ thống sẽ yêu cầu chứng thực nhân viên (ngay trước khi hiện lên danh sách các
sách mà khách hàng mượn) xem tài khoản đó có phải của nhân viên hay không.
21
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Use case name: Chứng thực khách hàng ID: 04 Level: Medium
Primary actor: Khách hàng Use Case Type: Detail, essential
Stakaholders and Interests:
Khách hàng – Muốn đăng nhập để thực hiện các thủ tục mượn, trả sách….
Hệ thống – Muốn biết người dùng có quyền mượn những cuốn sách đó hay không
Brief Description:
Ca sử dụng này cho biết làm sao để hệ thống có thể thực hiện quá trình chứng thực
khách hàng
Trigger:
Khách hàng đăng nhập với ID và password hoặc tạo tài khoản mới.
Relationships:
Association:
Include:
Extend: Sửa chữa thông tin cá nhân
Genaralization:
Normal Flow of Events:
1. Hệ thống cần chứng thực khách hàng.
2. Khách hàng chưa đăng nhập thì yêu cầu đăng nhập, chưa có tài khoản có thể

đăng ký.
Nếu chứng thực cho việc mượn sách, thực hiện subflows S-1
Nếu chứng thực cho việc tra cứu thông tin mượn./trả sách, thực hiện subflows S-2
Subflows:
S-1:
Hệ thống kiếm tra xem tổng giá bìa của sách mượn có nhỏ hơn số tiền đặt cọc hay
không. Nếu có thì chứng thực thành công, nếu không thì chứng thực thất bại.
S-2:
Sau khi đăng nhập xong thì chứng thực cũng thành công.
Alternate/Exception Flows:
22
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Use case name: Chứng thực nhân viên ID: 05 Level: Medium
Primary actor: Nhân viên Use Case Type: Detail, essential
Stakaholders and Interests:
Nhân viên – Muốn đăng nhập để thực hiện các thủ tục trả sách, thay đổi tiền cọc….
Brief Description:
Ca sử dụng này cho biết làm sao để hệ thống có thể thực hiện quá trình chứng thực
nhân viên
Trigger:
Nhân viên đăng nhập với ID và password.
Relationships:
Association:
Include:
Extend:
Genaralization:
Normal Flow of Events:
1. Hệ thống cần chứng thực nhân viên.
2. Nhân viên chưa đăng nhập thì yêu cầu đăng nhập, đăng nhập xong thì chứng
thực thành công.

Subflows:
Alternate/Exception Flows:
23
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Use case name: Thay đổi tiền cọc ID: 06 Level: Medium
Primary actor: Nhân viên Use Case Type: Detail, essential
Stakaholders and Interests:
Nhân viên – Thực hiện thay đổi tiền cọc khi khách hàng yêu cầu
Brief Description:
Ca sử dụng này cho biết làm sao để nhân viên có thể thay đổi tiền đặt cọc của khách
hàng
Trigger:
Nhân viên nhập ID của khách hàng, thông tin hiện ra và nhân viên thay đổi tiền đặt
cọc
Relationships:
Association: Nhân viên
Include: Chứng thực nhân viên, In hóa đơn
Extend:
Genaralization:
Normal Flow of Events:
1. Khách hàng yêu cầu thay đổi tiền đặt cọc
2. Nhân viên nhập ID của khách hàng rồi nhấn nút “thay đổi tiền cọc”
3. Hệ thống yêu cầu chứng thực nhân viên
Nếu thành công thực hiện subflows S-1
Nếu không thực hiện subflows S-2
Subflows:
S-1:
1. Hệ thống cho hiện lên tiền cọc hiện tại của khách hàng
2. Nhân viên nhập tiền cọc mới
3. Hệ thống sẽ tự động in hóa đơn cho khách hàng có thông tin về số tiền cọc

mới của khách hàng.
4. Nhân viên đóng dấu vào hóa đơn, đưa cho khách hàng
S-2:
Yêu cầu đăng nhập với tài khoản nhân viên
Alternate/Exception Flows:
24
Báo cáo BTL lần 1 Nhóm 5 Lớp KSTN-ĐTVT K54
Use case name: Cập nhật phí hàng tháng ID: 07 Level: Medium
Primary actor: Nhân viên Use Case Type: Detail, essential
Stakaholders and Interests:
Nhân viên – Cập nhật tình hình đóng phí hàng tháng khi khách hàng đóng tiền
Brief Description:
Ca sử dụng này cho biết làm sao để nhân viên có thể cập nhật tình hình đóng phí sử
dụng hàng tháng của khách hàng.
Trigger:
Nhân viên nhập ID của khách hàng, thông tin hiện ra và nhân viên thay đổi thời hạn
đã đóng phí của khách hàng.
Relationships:
Association: Nhân viên
Include: Chứng thực nhân viên, In hóa đơn
Extend:
Genaralization:
Normal Flow of Events:
1. Khách hàng yêu cầu đóng phí hàng tháng
2. Nhân viên nhập ID của khách hàng rồi nhấn nút “cập nhật phí hàng tháng”
3. Hệ thống yêu cầu chứng thực nhân viên
Nếu thành công thực hiện subflows S-1
Nếu không thực hiện subflows S-2
Subflows:
S-1:

1. Hệ thống cho hiện lên thông tin khách hàng đã đóng phí đến tháng nào.
2. Nhân viên nhập hạn đóng phí mới.
3. Hệ thống sẽ tự động in hóa đơn cho khách hàng bao gồm thông tin về thời hạn
đóng phí mới của khách hàng.
4. Nhân viên đóng dấu vào hóa đơn, đưa cho khách hàng.
S-2:
Yêu cầu đăng nhập với tài khoản nhân viên.
Alternate/Exception Flows:
25

×