Chương 3 : PHÂN TÍCH THIẾT KẾ HỆ THỐNG
3.10. Thiết kế dữ liệu
3.10.1. Mô hình dữ liệu logic ở dạng sơ đồ
Dựa vào các biểu đồ lớp đã được tạo, và biểu đồ tuần tự xác định các đối tượng tương ứng trong biểu đồ quan hệ tại bảng 3.62:
Bảng 3.62: Bảng mô tả ánh xạ giữa đối tượng trong lớp và đối tượng trong biểu đồ quan hệ
STT Tên lớp Mô tả ánh xạ giữa thiết kế lớp và thiết kế dữ liệu
Ca sử dụng liên quan
Bảng dữ liệu
1 UserBO Lớp chứa các phương thức để lấy các thông tin về người dùng như: họ tên, số điện thoại, địa chỉ email, giới tính,…Để lưu các thông tin này cần phải tạo ra một lớp tên là “UserInfo” trong mô tả tại
Biểu đồ lớp: Quản lý người dùng UC01 UC54 UC55 UC56 UC57 UC58 Users
2 AlbumBO Lớp lưu thông tin về một album như: tên, ngày tạo, mô tả về album. Lớp AlBumBO được mô tả trong Biểu đồ lớp: Quản lý ảnh/video
UC44 Album
3 MenuBO Quản lý các menus mà hệ người quản trị tạo ra cho hệ thống.
UC29 Menus
4 SearchCategoryBO Lớp SearchCategoryBO chứa các phương thức và thuộc tính hỗ trợ việc tìm kiếm ảnh theo loại. Sẽ tạo ra một bảng SearchCategory tương ứng giúp việc tìm kiếm được nhanh hơn.
UC41 UC51
SearchCategory
5 SearchKeywordBO Lớp SearchKeywordBO chứa các phương thức và thuộc tính hỗ trợ việc tìm kiếm ảnh theo từ khóa. Sẽ tạo ra một bảng SearchKeyword tương ứng giúp việc tìm kiếm được tối ưu hơn.
UC41 UC51
SearchKeyword
6 PhotosBO Lớp lưu thông tin ảnh, video: tên, ngày tải lên, đường dẫn tới ảnh,…Lớp PhotosBO được mô tả trong Biểu đồ lớp: Quản lý ảnh/video UC12,UC13 UC15,UC16 UC30,UC31 UC32,UC33 UC34,UC35 UC37,UC38 Photos
UC39,UC40 UC41,UC42 UC43,UC44 UC45,UC46 UC47,UC48 UC50,UC51 UC52,UC53 UC59 7 CategoryBO Lớp CategoryBO lưu thông tin
về loại ảnh, video như: tên category, ngày tạo,…Do đó tương ứng với lớp CategoryBO này cần tạo ra một đối tượng Categories tương ứng trong cơ sở dữ liệu giúp lưu trữ các thông tin trên.
UC12,UC13 UC15,UC16 UC30,UC31 UC32,UC33 UC34,UC35 UC37,UC38 UC39,UC40 UC41,UC42 UC43,UC44 UC45,UC46 UC47,UC48 UC50,UC51 UC52,UC53 UC59 Categories
8 Bảng giúp tạo mối liên kết giữa ảnh với album. Để dễ dàng hơn trong việc quản lý ảnh theo album. UC12,UC13 UC15,UC16 UC30,UC31 UC32,UC33 UC34,UC35 UC37,UC38 UC39,UC40 UC41,UC42 UC43,UC44 UC45,UC46 UC47,UC48 UC50,UC51 UC52,UC53 UC59 PhotoAlbum
9 Để thống kê lượng xem ảnh và dự đoán xu hướng về loại ảnh mà cộng đồng muốn xem, tác giả tạo ra bảng Views lưu trữ.
UC33 UC43 UC45 UC53 Views 10 Trong hệ thống cần lưu trữ người thực hiện bình luận ảnh. Nội dung bình luận tương ứng với ảnh nào nên cần tạo ra bảng Comments.
UC30 UC31 UC32
11 Trong hệ thống cần thực hiện lưu lại số lượt thích ảnh. Và cần xác định được người dùng nào đã thích ảnh đó nên tạo ra bảng Likes để lưu trữ.
UC43 UC53
Likes
12 Như phân tích về các đối tượng tham gia vào hệ thống. Cần tạo ra bảng Roles để phân quyền cho người dùng.
UC01 UC18 UC19 UC21 UC22 UC23 Roles
Hình 3.63: Sơ đồ mô hình dữ liệu
3.10.2. Danh sách các bảng dữ liệu 3.10.2.1.Roles 3.10.2.1.Roles
Mô tả: Phân quyền cho user trong hệ thống.
Các thành phần lưu trữ: RoleID, RoleName. Khóa chính là: RoleName
3.10.2.2.Users Albums * AlbumID AlbumName CreatedDate UserID Description Permission Categories * CategoryID CategoryName Created ParentID Comments * CommentID Contents UserID PhotoID CreatedDate Likes * ID UserID PhotoID CreateDate Menus MenuID Name Url ParentID Status PhotoAlbum * ID PhotoID AlbumID Photos * PhotoID Title Description KeyWord Permission Url DateOfUpload CategoryID UserID IsVideo Password Roles * RoleID RoleName SearchCategory ID CategoryId CategoryName CreateDate SearchKeyword ID Keyword CreateDate Users * UserID Email Password FirstName LastName DateOfBirth Sex RoleID Avatar CoverImage DateOfRegister Phone Address Description Status Views * ID UserID PhotoID CreatedDate
Mô tả: Lưu trữ thông tin của người sử dụng.
Các thành phần lưu trữ: UserID, Email, Password, FirstName, LastName, DateOfBirth, RoleID, Avatar, DateOfRegister, CoverImage. Khóa chính là: UserID
3.10.2.3.Menus
Mô tả: Lưu trữ quản lý thông tin menu.
Các thành phần lưu trữ: MenuID, Name, Url, ParentID, Status. Khóa chính là: MenuID
3.10.2.4.Likes
Mô tả: Lưu trữ quản lý thông tin đánh giá, bình luận.
Các thành phần lưu trữ: ID, UserID, PhotoID, CreateDate. Khóa chính là: ID
3.10.2.5.Albums
Mô tả: Lưu trữ quản lý album ảnh, video.
Các thành phần lưu trữ: AlbumID, AlbumName, CreatedDate, UserID, Description, Permission. Khóa chính là: AlbumID
3.10.2.6.Comments
Mô tả: Lưu trữ quản lý bình luận của người dùng.
Các thành phần lưu trữ: CommentID, Contents, UserID, PhotoID, CreatedDate. Khóa chính là: CommentID
3.10.2.7.PhotoAlbum
Mô tả: Lưu trữ liên kết album ảnh và ảnh.
Các thành phần lưu trữ: ID, PhotoID, AlbumID. Khóa chính là: IDCommentID
3.10.2.8.Photos
Mô tả: Lưu trữ quản lý ảnh/video.
Các thành phần lưu trữ: PhotoID, Title, Description, KeyWord, Permission, Url, DateOfUpload, CategoryID, UserID, MediaType. Khóa chính là: PhotoID
3.10.2.9.Categories
Mô tả: Lưu trữ quản lý categories.
Các thành phần lưu trữ: CategoryID, CategoryName, Created, ParentID. Khóa chính là: CategoryID
3.10.2.10. SearchCategory
Các thành phần lưu trữ: ID, CategoryId, CategoryName, CreateDate. Khóa chính là: ID
3.10.2.11. SearchKeyword
Mô tả: Lưu trữ thông tin về ảnh giúp tối ưu việc tìm kiếm.
Các thành phần lưu trữ: ID, Keyword, CreateDate. Khóa chính là: ID
3.10.2.12. Views
Mô tả: Lưu trữ quản lý việc xem ảnh của người dùng. Giúp người quản trị có thể thống kê được loại ảnh nào được xem nhiều để phán đoán xu hướng người dùng.
Các thành phần lưu trữ: ID, UserID, PhotoID, CreatedDate. Khóa chính là: ID
3.10.3. Danh sách các thành phần của lược đồ dữ liệu
Bảng 3.64: Danh sách các thành phần của lược đồ dữ liệu
STT Tên Loại Ý nghĩa Ghi chú
1 Roles Tham số Phân quyền user hoặc admin.
2 User Đối tượng Danh sách các user đăng ký trong hệ thống.
3 Likes Tham số Lưu trữ số lượng yêu thích.
4 Menus Đối tượng Quản lý các menus trên hệ thống website
5 Albums Đối tượng Các album ảnh, video
6 Comments Đối tượng Quản lý comment của các bức ảnh, video.
7 PhotoAlbum Đối tượng Liên kết ảnh và album.
8 Photos Đối tượng Thông tin chi tiết của mỗi bức ảnh, video.
9 Categories Tham số Phân loại ảnh, video.
10 SearchCategory Tham số Tìm kiếm ảnh theo loại ảnh
11 SearchKeyword Tham số Tìm kiếm ảnh theo từ khóa
12 Views Tham số Thống kê số lượng người xem
3.10.4. Danh sách các thuộc tính của từng thành phần
Về thuộc tính của từng thành phần dữ liệu xin xem chi tiết tại Phụ lục 2.