Professional Documents
Culture Documents
Công Nghệ Phần Mềm
Công Nghệ Phần Mềm
Công Nghệ Phần Mềm
1
sắp xếp hợp lý các đầu sách một cách dễ ràng tuần tự và bổ sung những loại
sách (tài liệu ) còn thiếu trong thư viện.
➢ Quản lý tác giả: Cũng với các chức năng thêm, sửa, xóa, tìm kiếm giúp
admin có thể kiểm soát được tác giả, độ tin cậy của sách( tài liệu ) có trong
thư viện
➢ Mượn Trả sách: Quản lý sinh viên cần mượn sách: lập phiếu mượn sách, tìm
kiếm nhanh chóng sách, Sinh viên muốn mượn, theo dõi sách mượn,….;
Quản lý sinh viên và phục vụ công tác tìm kiếm sách cho sinh viên muốn
đọc tại thư viện; Quản lý hoạt động trả sách của sinh viên, với mỗi sinh viên
được theo dõi sách đã trả và sách chưa trả.
➢ Lịch sử hoạt động: Nhật ký thư viện giúp theo dõi hoạt động đến thư viện
của thủ thủ và sinh viên.
2
CHƯƠNG 2: TÀI LIỆU ĐẶC TẢ YÊU CẦU
2.1 Xác đinh yêu cầu chức năng
2.1.1 Yêu cầu chức năng
❖ Đối với thủ thư
➢ Quản lý mượn trả sách
o Mượn sách
o Trả Sách
o Sửa thông tin mượn sách
➢ Báo cáo
❖ Đối với nhà quản trị
➢ Quản lý mượn trả sách
o Mượn sách
o Trả Sách
o Sửa thông tin mượn sách
➢ Báo cáo
2.1.2 Yêu cầu phi chức năng
Giao diện đẹp, dễ thao tác, tốc độ xử lý nhanh, chính xác. Bố trí các danh mục
sản phẩm, phân loại mặt hàng hợp lý, dễ tìm kiếm.
2.2 Đặc tả yêu cầu
❖ Biểu đồ usecase
3
Hình 1: Usecase quản lý mượn sách
5
CHƯƠNG 3: THIẾT KẾ
3.1 Biểu đồ hoạt động
Biểu đồ hoạt động là phương phương tiện để mô tả các dòng công việc trong hệ
thống. Ở đây biểu đồ hoạt động dùng để mô tả chi tiết hoạt động bên trong một thao tác.
➢ Quản lý mượn trả sách
➢ Trả sách
7
3.3 Biểu đồ lớp
8
CHƯƠNG 4: THIẾT KẾ GIAO DIỆN
9
CHƯƠNG 5: TÀI LIỆU KIỂM THỬ
5.1 Danh sách các ca kiểm thử
CÁC BƯỚC THỰC KẾT
ID NAME MÔ TẢ HIỆN QUẢ ƯU
CHƯ TIÊ
Thực hiện Dự tính
ƠNG N
TRÌN
H
Kiểm Muo Kiểm tra Chọn Click nút Cho mượn Passed hight
tra nSac mượn sinh “mượn” để sách không
chức h1 sách viên và mượn sách thành công và
năng sách có hiển thị box
mượn số lượng thông báo
sách 0 “sách đã hết”
Muo Kiểm tra Chọn Click nút Cho mượn Passed hight
nSac mượn sinh “mượn” để sách thành
h1
sách viên và mượn sách công và thống
sách còn tin được lưu
trong xuống bảng
kho bên dưới
TraS Kiểm tra Chọn Click nút Trả sách Passed hight
ach trả sách sách cần “trả” để trả thành công và
trả và sách hiển thị box
sinh thông báo “trả
viên sách quá hạn”
Kiểm muốn trả
tra sách quá
chức hạn
năng
mượn Kiểm tra Chọn Click nút Trả sách Passed hight
sách trả sách sách cần “trả” để trả thành công
trả và sách
sinh
viên
muốn trả
sách
10
đúng
hạn
11
Tài liệu tham khảo
[1] https://lib.hunre.edu.vn/Giao-trinh-Cong-nghe-phan-mem-6156-106-106-tailieu
[2] https://lib.hunre.edu.vn/GIAO-TRINH-PHAN-TICH-THIET-KE--HE-
THONG-THONG-TIN-5890-106-106-tailieu
[3] https://codegym.vn/blog/2020/06/29/c-la-gi-tim-hieu-ve-ngon-ngu-lap-trinh-c/
[4] https://www.w3schools.com/cs/index.php
[5] https://123job.vn/bai-viet/tong-hop-quy-trinh-quan-ly-thu-vien-tai-doanh-
nghiep-1147.html
Phụ Lục
Mã nguồn form mượn sách
Mư int muon = int.Parse(txt_somuon.Text);
int sl = int.Parse(txt_soluong.Text);
ợn if (muon > sl)
{
Sác MessageBox.Show("Số Lượng Sách Mượn Quá Lớn!", "Error");
txt_somuon.Focus();
h }
else
{
DateTime ngaymuon = DateTime.Now;
DateTime ngayhen = DateTime.Parse(txt_ngayhen.Text);
string format = "MM-dd-yyyy";
conn.Open();
string them = "insert into T_MUONTRA (masv, masach, ngaymuon,
ngayhentra,soluong) values('" + txt_masv.Text + "','" + txt_masach.Text +
"','" + ngaymuon.ToString(format) + "','" + ngayhen.ToString(format) + "','"
+ txt_somuon.Text + "')";
SqlCommand cmd = new SqlCommand(them, conn);
cmd.ExecuteNonQuery();
int con = sl - muon;
txt_soluong.Text = con.ToString();
string sua = "update T_SACH set soluong = N'" + con + @"' where
(masach =N'" + txt_masach.Text + @"')";
SqlCommand cmd1 = new SqlCommand(sua, conn);
cmd1.ExecuteNonQuery();
conn.Close();
napdulieu();
Mã nguồn form trả sách
Trả DateTime ngaytra = DateTime.Now;
string format = "MM-dd-yyyy";
sác conn.Open();
string them = "update T_MUONTRA set ngaytra = N'" + ngaytra.ToString(format)
h + @"' where(ID = '" + txt_id.Text + "')";
SqlCommand cmd = new SqlCommand(them, conn);
cmd.ExecuteNonQuery();
int sl = int.Parse(txt_soluong.Text);
int muon = int.Parse(txt_somuon.Text);
int bd = sl + muon;
txt_soluong.Text = bd.ToString();
string sua = "update T_SACH set soluong = N'" + bd + @"' where (masach =N'" +
txt_masach.Text + @"')";
SqlCommand cmd1 = new SqlCommand(sua, conn);
cmd1.ExecuteNonQuery();
conn.Close();
napdulieu();
Mã nguồn form báo cáo
Bá CRmuontra rpt = new CRmuontra();SqlConnection conn = new
SqlConnection(chuoiketnoi);
o conn.Open();
string sql = "select
Cá T_SV.masv,T_SV.tensv,T_SACH.masach,T_SACH.tensach,T_MUONTRA.ngaymuon,T_MUONTRA
.ngayhentra,T_MUONTRA.soluong,T_MUONTRA.ngaytra from T_MUONTRA inner join
o T_SV on T_SV.masv=T_MUONTRA.masv inner join T_SACH on
T_SACH.masach=T_MUONTRA.masach";
SqlDataAdapter dap = new SqlDataAdapter(sql, conn);
DataSet ds = new DataSet();
dap.Fill(ds);
rpt.SetDataSource(ds.Tables[0]);
CRV_MUONTRA.ReportSource = rpt;
conn.Close();