7. Bố cục của đề tài:
1.1.3 Giới thiệu về hệ quản trị cơ sở dữ liệu SQLite
1.1.3.1 SQLite là gì?
SQLite là một hệ quản trị cơ sở dữ liệu hay còn gọi là hệ thống cơ sở dữ liệu quan hệ nhỏ gọn, khác với các hệ quản trị khác như MySQL, SQL Server, Ocracle, PostgreSQL… SQLite là một thư viện phần mềm mà triển khai một SQL Database
SVTH: LÊ QUÔC CƯỜNG 17
Engine truyền thống, không cần mô hình client-server nên rất nhỏ gọn. SQLite được sử dụng vào rất nhiều chương trình từ desktop đến mobile hay là website.
1.1.3.2 Lịch sử hình thành SQLite thế nào?
Năm 2000: D.Richard Hipp đã thiết kế SQLite dưới dạng thư viện bằng ngôn ngữ lập trình c với mục đích không cần quản trị để điều hành một chương trình.
Vào tháng 8, SQLite 1.0 được công bố với GNU Database Manager.
Năm 2011: Hipp bổ sung UNQI Interface cho SQLite DB và để phát triển UNQLite (là một Document Oriented Database).
1.1.3.3 Tại sao sử dụng SQLite?
SQLite là mã nguồn mở, là một trong những Database Engine phát triển nhanh nhất, sự phát triển của nó là về mặt tính phổ biến. Ngoài những lý do trên thì không thể không kể đến những ưu điểm khi sử dụng SQLite, sau đây là phần ưu điểm của SQLite.
1.1.3.4 Ưu điểm của SQLite
✓ SQLite không cần mô hình client – server để hoạt động.
✓ SQLite không cần phải cấu hình tức là bạn không cần phải cài đặt.
✓ Với SQLite database được lưu trữ trên một tập tin duy nhất.
✓ SQLite hỗ trợ hầu hết các tính năng của ngông ngữ truy vấn SQL theo chuẩn SQL92.
✓ SQLite rất nhỏ gọn bản đầy đủ các tính năng nhỏ hơn 500kb, và có thể nhỏ
hơn nếu lược bớt một số tính năng.
✓ Các thao tác dữ liệu trên SQLite chạy nhanh hơn so với các hệ quản trị cơ
sở dữ liệu theo mô hình client – server.
✓ SQLite rất đơn giản và dễ dàng sử dụng.
✓ SQLite tuân thủ 4 tính chất ACID (là tính nguyên tổ (Atomic), tính nhất quán (Consistent), tính cô lập (Isolated), và tính bền vững (Durable) ).
SVTH: LÊ QUÔC CƯỜNG 18
✓ Với đặc tính nhỏ gọn, truy xuất dữ liệu nhanh SQLite thường được sử dụng
để nhúng vào các dự án.
1.1.3.5 Nhược điểm của SQLite
Ngoài những ưu điểm đã kể ra ở trên SQLite cũng có một số mặt hạn chế nếu đem so sánh với các hệ quản trị khác.
Do sử dụng cơ chế coarse-gained locking nên trong cùng một thời điểm SQLite có thể hỗ trợ nhiều người đọc dữ liệu, nhưng chỉ có 1 người có thể ghi dữ liệu.
SQLite không phải là lựa chọn hoàn hảo để đáp ứng các nhu cầu xử lý trên một khối lượng dữ liệu lớn, phát sinh liên tục.
1.1.4 Triển khai thực hiện 1.1.4.1 Mô tả đề tài 1.1.4.1 Mô tả đề tài
Xây dựng một website đáp ứng nhu cầu của người đọc.
Tại đây bạn sẽ tìm được những đánh giá về sách của người dùng, thống kê được những đánh giá tốt về những quyển sách hay cho bạn cùng đọc,... .Bạn cũng có thể tìm cho mình những quyển sách phù hợp để có thể đọc, giải trí, stress sau buổi làm việc hay những buổi học căng thẳng. Bạn sẽ tìm thấy cả kho kiến thức sách. Nếu bạn có thời gian hạn hẹp, trang web này khá hữu ích cho bạn vì có những hướng dẫn chi tiết cho bạn dù bạn ở bất cứ đâu. Và điều quan trọng bạn có thể lựa chọn các loại sách phù hợp mà không cần mất thời gian tìm kiếm trên mạng xã hội google, facebook,...
Website có Admin để quản lý sách, thể loại, người dùng và đề nghị của người dùng.
Hệ thống cho phép:
❖Người dùng:
➢ Đăng kí, đăng nhập vào website.
➢ Xem sách, đánh giá, bình luận, tìm kiếm sách theo yêu cầu.
SVTH: LÊ QUÔC CƯỜNG 19
➢ Yêu cầu thêm sách đến với admin nếu có quyển sách hay cần đăng tải lên
website
❖Admin quản lý:
➢ Quản lý sách: thêm, sửa, xóa.
➢ Quản lý thể loại: thêm, sửa, xóa.
➢ Quản lý yêu cầu: trạng thái (accept, reject, waiting)
➢ Quản lý người dùng: thêm, xóa, phân quyền.
➢ Thống kê: lượt like sách, lượt đánh giá sách, người dùng, trạng thái yêu cầu.
1.1.4.2 Quy trình cần thực hiện
➢ Khởi tạo và lập kế hoạch.
➢ Xác định phạm vi hệ thống.
➢ Mô tả bài toán chi tiết của hệ thống.
➢ Xác định các yêu cầu mà hệ thống cần đáp ứng.
➢ Xác định các chức năng cần có cho hệ thống.
➢ Mô hình hóa hệ thống.
➢ Thiết kế cơ sở dữ liệu.
➢ Thiết kế giao diện.
➢ Kiểm thử và đưa vào sử dụng.
1.1.5 Phân tích website 1.1.5.1 Khảo sát yêu cầu 1.1.5.1 Khảo sát yêu cầu - Khảo sát mức 1
SVTH: LÊ QUÔC CƯỜNG 20
Sau khi lên ý tưởng cho đề tài, em đã tiến hành khảo sát ý kiến của bạn bè và anh chị ở công ty. Nội dung xoay quanh về các chức năng của website, tìm hiểu về giao diện, cách thức hoạt động của trang website quản lý sinh viên.
- Khảo sát mức 2
Tham khảo ý kiến, đánh giá của mọi người
Sau khi chuẩn bị cơ bản các nội dung về ý tưởng, em bắt đầu thực hiện khảo sát ý kiến, nhận xét của mọi người về website. Trong đó có sự hỗ trợ, góp ý kiến nhiệt tình của các anh chị trainner thực tập tại công ty Sun Asterisk. Nội dung hướng đến là hoàn thiện về mặt ý tưởng, nêu ra các chức năng tiêu biểu, loại bỏ các chức năng không cần thiết.
- Khảo sát mức 3
Phân tích đánh giá kết quả khảo sát
Mặc dù chỉ khảo sát trong phạm vi nhỏ tại công ty Sun Asterisk nhưng em đã nhận được nhiều ý kiến đóng góp vô cùng quý giá. Kết quả là thống nhất xây dựng website quản lý sinh viên.
1.1.5.2 Phân tích yêu cầu
Với những ý kiến khảo sát trên ta có 2 đối tượng sử dụng cơ bản là khách vãng lai, người dùng và người quản lí:
➢ Khách vãng lai: Thông qua website, hệ thống cho phép xem thông tin các loại
sách được đánh giá, các thể loại, thông tin sách và những đánh giá bình luận của người dùng.
➢ Người dùng: hệ thống cho phép đăng kí, đăng nhập tài khoản để sử dụng các
chức năng như đưa ra các đánh giá, bình luận về sách mong muốn, thêm yêu thích sách và theo dõi bạn bè để xem các hoạt động của họ,…
➢ Người quản lí: Người quản lí có toàn quyền sử dụng và quản lý, đảm bảo tính
SVTH: LÊ QUÔC CƯỜNG 21 CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ
2.1 Mục tiêu và chức năng của hệ thống 2.1.1 Yêu cầu về chức năng: 2.1.1 Yêu cầu về chức năng: 2.1.1 Yêu cầu về chức năng:
❖ Chức năng thông tin
➢ Giới thiệu tới bạn đọc các thông tin về sách phù hợp bao gồm tên sách, thể
loại, tên tác giả, nhà xuất bản, nội dung tóm tắt,...
➢ Giới thiệu các loại sách hay với đầy đủ các bình luận đánh giá của bạn đọc
về sách và phù hợp cho mọi lứa tuổi.
➢ Cập nhật nhiều loại sách theo thể loại cho người dùng có thể tìm đọc và có
thể cập nhật theo yêu cầu của người dùng.
➢ Cung cấp chức năng tìm kiếm các thông tin theo từng chuyên mục (tên, thể
loại, tác giả, ...).
❖ Chức năng hệ thống
➢ Cung cấp chức năng phân quyền, cập nhật, thống kê các thông tin, dữ liệu
trên hệ thống.
➢ Cho phép người quản trị chỉnh sửa các thông tin trên website phù hợp với
yêu cầu và mục đích.
➢ Cho phép người dùng đăng ký thông tin để dễ dàng tham gia vào trang giao
diện chính và đăng nhập, bình luận bài viết, thuận tiện cho đánh giá về sách đang đọc.
➢ Cung cấp chức năng tìm kiếm thông tin hỗ trợ cho việc quản trị cơ sở dữ
liệu trên website.
➢ Đảm bảo an toàn cho dữ liệu hệ thống.
. Yêu cầu phi chức năng
SVTH: LÊ QUÔC CƯỜNG 22
✓ Đáp ứng nhanh.
✓ Dễ dàng tìm kiếm thông tin.
✓ Thường xuyên cập nhật sách được đánh giá mới nhất.
2.1.2 Phân tích thiết kế hệ thống thông tin 2.1.2.1 Biểu đồ Use Case của hệ thống
• Đối với hệ thống
SVTH: LÊ QUÔC CƯỜNG 23
• Đối với khách vãng lai
SVTH: LÊ QUÔC CƯỜNG 24
• Đối với người dùng (có đăng nhập)
SVTH: LÊ QUÔC CƯỜNG 25
• Đối với quản trị viên
SVTH: LÊ QUÔC CƯỜNG 26 2.1.2.2 Đặc tả Use Case
Mã Usecase US01
Tên Đăng nhập
Mô tả Kiểm tra và xác thực vai trò người dùng
Người thực hiện Khách hàng và người quản trị
Điều kiện trước xử lý Tồn tại tài khoản
Sau xử lý Hiển thị trang chủ theo từng vai trò
Các bước thực hiện Click “Login” trên thanh menu để hiển thị Login Form
Nhập username và password Nhấn vào button “Login”.
Ngoại lệ Sai tên đăng nhập hoặc mật khẩu, hiển thị thông báo lỗi.
Bảng 1:Bảng đặc tả Use Case đăng nhập
Mã Usecase US02
Tên Đăng xuất
Mô tả Thoát khỏi hệ thống
Người thực hiện Khách hàng và người quản trị
Điều kiện trước xử lý Tồn tại tài khoản
Sau xử lý Tài khoản được thoát ra và không có quyền truy cập các
chức năng cần đăng nhập
Các bước thực hiện Click “Logout” trên thanh menu
Ngoại lệ
Bảng 2:Bảng đặc tả Use Case đăng xuất
SVTH: LÊ QUÔC CƯỜNG 27
Tên Xem thông tin sách.
Mô tả Xem thông tin sách: Mã sách, tên sách, tóm tắt, nội
dung, tác giả, nhà sản xuất, điểm đánh giá, số trang của sách.
Người thực hiện Người quản trị
Điều kiện trước xử lý Đã đăng nhập vào hệ thống.
Sau xử lý Hiển thị trang xem thông tin sách
Các bước thực hiện Đã đăng nhập vào hệ thống
Click chuột vào “Admin” trên thanh menu.
Click chuột vào “Quản lý sách” trên thành left menu trong trang admin
Ngoại lệ
Bảng 3:Bảng đặc tả Use Case xem thông tin sách
Mã Usecase US04
Tên Thêm mới sách
Mô tả Xem thông tin sách: Mã sách, tên sách, tóm tắt, nội
dung, tác giả, nhà sản xuất, điểm đánh giá, số trang của sách.
Người thực hiện Người quản trị
Điều kiện trước xử lý Đã đăng nhập vào hệ thống.
Sau xử lý Chuyển đến trang thêm sách
Các bước thực hiện Click chuột vào “Quản lý sách” trên thành left menu
trong trang admin
Click Button “Thêm sách”
Điền đầy đủ và hợp lệ thông tin vào form thêm mới Nhấn button “Tạo sách” để thêm thông tin vào hệ thống
SVTH: LÊ QUÔC CƯỜNG 28
Ngoại lệ
Bảng 4:Bảng đặc tả Use Case thêm mới sách
Mã Usecase US05
Tên Xóa sách
Mô tả Xóa một sách trong hệ thống
Người thực hiện Người quản trị
Điều kiện trước xử lý Đã đăng nhập vào hệ thống.
Sau xử lý Tải lại danh sách hiển thị sách
Các bước thực hiện Click chuột vào “Quản lý sách” trên thành left menu
trong trang admin
Click vào button “Delete” của sách cần xóa
Xuất hiện thông báo hỏi có chắc chắn xóa hay ko? Click “OK” để xóa, Click “Hủy” để không xóa Ngoại lệ
Bảng 5:Bảng đặc tả Use Case xóa sách
Mã Usecase US06
Tên Cập nhật thông tin sách
Mô tả Cập nhật thông tin cho một sách khi có thay đổi.
Người thực hiện Người quản trị
Điều kiện trước xử lý Đã đăng nhập vào hệ thống.
Sau xử lý Chuyển đến trang sửa thông tin tour
Các bước thực hiện Click chuột vào “Quản lý sách” trên thành left menu
trong trang admin
Click vào button “Edit” của sách cần cập nhật thông tin Điền đầy đủ và hợp lệ thông tin vào form cập nhật
SVTH: LÊ QUÔC CƯỜNG 29
Click button “Cập nhật” để lưu cập nhật Ngoại lệ
Bảng 6:Bảng đặc tả Use Case cập nhật sách
Mã Usecase US07
Tên Xem dánh sách người dùng.
Mô tả Xem thông tin khách hàng: Mã người dùng, tên, địa
chỉ, địa chỉ email, password, hình ảnh.
Người thực hiện Người quản trị
Điều kiện trước xử lý Đã đăng nhập vào hệ thống.
Sau xử lý Hiển thị trang xem danh sách người dùng
Các bước thực hiện Click chuột vào “Quản lý người dùng” trên thành left
menu trong trang admin. Ngoại lệ
Bảng 7:Bảng đặc tả Use Case xem thông tin người dùng
Mã Usecase US08
Tên Tạo mới tài khoản người dùng
Mô tả Xem thông tin khách hàng: Mã người dùng, tên, địa chỉ,
địa chỉ email, password, hình ảnh.
Người thực hiện Người quản trị, người vãng lai
Điều kiện trước xử lý Chưa có tài khoản trên hệ thống.
Sau xử lý Chuyển đến Login Form
Các bước thực hiện Click “Login” trên thanh menu để hiển thị Login Form
Click “Register here” để chuyển sang Register Form Điền đầy đủ và hợp lệ thông tin vào form
SVTH: LÊ QUÔC CƯỜNG 30
Nhấn button “Đăng ký” để tạo tài khoản và đăng nhập vào hệ thống
Ngoại lệ
Bảng 8:Bảng đặc tả Use Case tạo tài khoản mới
Mã Usecase US09
Tên Cập nhật thông tin tài khoản
Mô tả Cập nhật thông tin tài khoản khi có thay đổi.
Người thực hiện Khách hàng
Điều kiện trước xử lý Đã đăng nhập vào hệ thống.
Sau xử lý Chuyển đến trang thông tin cá nhân
Các bước thực hiện Click chuột vào “Settings” trên thành trên thanh menu
top
Điền đầy đủ và hợp lệ thông tin vào form cập nhật Click button “Cập nhật” để lưu cập nhật
Ngoại lệ
Bảng 9:Bảng đặc tả Use Case cập nhật thông tin cá nhân
Mã Usecase US10
Tên Cập nhật quyền của tài khoản
Mô tả Cập nhật quyền của tài khoản (setUser, setAdmin)
Người thực hiện Người quản trị
Điều kiện trước xử lý Đã đăng nhập vào hệ thống.
Sau xử lý Chuyển đến trang danh sách người dùng
Các bước thực hiện Click chuột vào “setUser” hoặc “setAdmin” trên thành
trên thanh left menu
SVTH: LÊ QUÔC CƯỜNG 31
xuống làm người dùng
“setUser” để đưa người dùng đó từ người dùng lên làm người quản trị
Ngoại lệ
Bảng 10:Bảng đặc tả Use Case cập nhật quyền cho user
Mã Usecase US11
Tên Xóa tài khoản
Mô tả Xóa một tài khoản trong hệ thống
Người thực hiện Người quản trị
Điều kiện trước xử lý Đã đăng nhập vào hệ thống.
Sau xử lý Tải lại danh sách hiển thị người dùng
Các bước thực hiện Click chuột vào “Quản lý người dùng” trên thành left
menu trong trang admin.
Click vào button “Delete” của tài khoản cần xóa Xuất hiện thông báo hỏi có chắc chắn xóa hay ko? Click “OK” để xóa, Click “Hủy” để không xóa Ngoại lệ
Bảng 11:Bảng đặc tả Use Case xóa tài khoản
Mã Usecase US12
Tên Xem danh sách yêu cầu
Mô tả Xem thông tin đặt tour: Mã yêu cầu, tên sách, tác giả,
nội dung, thể loại
Người thực hiện Người quản trị, người dùng
Điều kiện trước xử lý Đã đăng nhập vào hệ thống.
SVTH: LÊ QUÔC CƯỜNG 32
Các bước thực hiện Đã đăng nhập vào hệ thống
Click chuột vào “Quản lý yêu cầu” trên thanh menu.( Đối với người quản trị )
Click chuột vào “My Suggests” trên thanh menu.( Đối với người người dùng )
Ngoại lệ
Bảng 12:Bảng đặc tả Use Case xem danh sách yêu cầu
Mã Usecase US13
Tên Thêm mới yêu cầu
Mô tả Xem thông tin đặt tour: Mã yêu cầu, tên sách, tác giả, nội
dung, thể loại
Người thực hiện Người dùng
Điều kiện trước xử lý Đã đăng nhập vào hệ thống.
Sau xử lý Chuyển đến Login Form
Các bước thực hiện Click chuột vào “My Suggests” trên thanh menu
Click button “Add Suggests” của yêu cầu mà muốn đề nghị lên website
Điền đầy đủ và hợp lệ thông tin vào form
Click button “Xác nhận” để gửi yêu cầu lên trên hệ thống( Sẽ có gửi về mail của người dung )
Ngoại lệ
Bảng 13:Bảng đặc tả Use Case thêm mới yêu cầu
Mã Usecase US14
Tên Xóa thêm yêu cầu
SVTH: LÊ QUÔC CƯỜNG 33
Người thực hiện Người dùng
Điều kiện trước xử lý Đã đăng nhập vào hệ thống.
Sau xử lý Tải lại danh sách hiển thị danh sách yêu cầu
Các bước thực hiện Click chuột vào “My Suggests” trên thanh menu