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

tài liệu phân tích thiết kế đồ án các hệ thống thông tin

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 (1.4 MB, 23 trang )

hfff

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

THIẾT KẾ HỆ THỐNG

IT4424 – ĐỒ ÁN CÁC CÔNG NGHỆ XÂY DỰNG HTTT
ĐỀ TÀI: HỆ THỐNG TỔNG HỢP ĐÁNH GIÁ SẢN PHẨM
CÔNG NGHỆ
Giảng viên hướng dẫn

: TS. Nguyễn Bình Minh

Nhóm sinh viên

: Vũ Minh Tú
Trần Huy Hiệp
Nguyễn Vạn Nhã
Nguyễn Văn Trình
Nguyễn Văn Phương

Lớp

: HTTT-KSCLC-K58

HÀ NỘI 2017
1



MÔ HÌNH HOẠT ĐỘNG CỦA HỆ THỐNG

Hệ thống được xây dựng trên nền tảng một trang web, khách truy cập vào trang web có
thể xem, tìm kiếm thông tin sản phẩm mình mong muốn. Sau khi đăng nhập, người sử
dụng có thể để lại đánh giá, bình luận về bài viết. Hệ thống có bao gồm một bộ crawler
thực hiện việc thu dữ liệu từ các nguồn khác nhau đưa về cơ sở dữ liệu hệ thống. Người
quản trị có thể quản lý việc crawl, thêm mới chỉnh sửa các nội dụng bài viết trên hệ
thống.

MÔ HÌNH HÓA HÀNH VI
Mô hình sử dụng
Hệ thống được xây dựng trên mô hình client-server, giao tiếp thông qua các API được
định nghĩa bởi server. Client có nhiệm vụ truy vấn dữ liệu để hiển thị và tương tác với
người dùng.
2


Cấu tạo của hệ thống gồm 3 phần:
-

-

-

Backend:
+ Cài đặt các API giao tiếp với front-end bằng dữ liệu JSON
+ Bao gồm Models để giao tiếp với cơ sở dữ liệu
+ Routes đóng vai trò Controllers để thực hiện chuyển hướng cho API
Web:
+ Định nghĩa giao diện frontend, các event tương tác của người sử dụng với hệ

thống, gửi request tới backend để thực hiện các tương tác
+ Bao gồm Actions nơi định nghĩa các hành động của người dùng tương tác với hệ
thống
+ Components định nghĩa các thành phần hiển thị giao diện
+ Reducers xử lý việc thay đổi trạng thái dữ liệu trên giao diện khi xảy ra các
Actions
Crawler:
+ Chứa script thực hiện crawl dữ liệu
+ Data Model

Biểu đồ trình tự của các use-case
-

Biểu đồ trình tự use-case xem review sản phẩm

Mô tả:
Khi người sử dụng muốn xem review sản phẩm, đầu tiên người sử dụng sẽ truy cập trang
chủ của hệ thống, sau đó người sử dụng sẽ thực hiện việc yêu cầu tìm kiếm sản phẩm
thông qua giao diện trang chủ. Sau đó người sử dụng sẽ gửi yêu cầu đến lớp Controller
người sử dụng, lớp này sẽ MaSP gửi đến Moderm để lấy thông tin sản phẩm Controller sẽ
gửi lại sản phẩm mà người sử dụng muốn xem review.
3


-

Biểu đồ trình tự use-case comment

Mô tả:
Trên trang của sản phẩm review, người sử dụng muốn bình luận thì đầu tiên người sử

dụng sẽ click nút Comment, giao diện người sử dụng sẽ hiển thị rõ ràng ô để comment,
người sử dụng nhập comment và enter. View sẽ gửi Add(comment) đến cho Conntroller
và Controller xử lý lấy comment, ID sản phẩm rồi đến lớp Moderm sẽ thêm comment vào
trả lại kết quả thông qua Controller. Comment sẽ được update lên giao diện của người
dùng.
-

Biểu đồ trình tự use-case tìm kiếm theo keyword

4


Mô tả:
Để có thể tìm kiếm theo keyword được, người dùng sẽ vào giao diện và nhập vào ô tìm
kiếm, lớp View sẽ lấy keyword bởi getKeyWord() rồi gửi đến Controller điều hướng
search() sang lớp Database lấy dữ liệu trả lại list bài liên quan đến key word hiển thị lên
View. Người dùng sẽ click vào sản phẩm mà người dùng mong muốn, lớp Cotroller sẽ lấy
ID sản phẩm và gửi đến Database trả lại kết quả sản phẩm.
-

Biểu đồ trình tự use-case tìm kiếm danh mục

5


Mô tả:
Tương tự với tìm kiếm theo Keyword thì người dùng sẽ click vào danh mục hệ thống sẽ
làm các tác vụ tương tự và cũng trả lại kết quả.
-


Biểu đồ trình tự use-case đăng nhập

6


Mô tả:
Người sử dụng nhập vào username và password của mình ở ViewLogin và Cotroller lấy
các thông tin đó rồi check thông tin Database sẽ trả lại kết quả cho lớp Cotroller và hiển
thị kết quả là trang chủ của hệ thống.
-

Biểu đồ trình tự use-case đánh giá

7


Người sử dụng vào một sản phẩm chọn sao đánh giá và chọn đánh giá để save hệ thống
lấy thông tin và save trong database rồi trả lại là số sao mà người dùng đã chọn trên màn
hình được hiển thị trên màn hình.
-

Biểu đồ trình tự use-case thêm review sản phẩm

Mô tả:
Admin muốn thêm một sản phẩm, admin click vào form của admin tiếp tục vào form sản
phẩm, hệ thống sẽ hiển thị cho admin là form sản phẩm. Admin nhập thông tin của sản
phẩm. Lớp Controller lấy thông tin để Database chèn thêm vào rồi trả lại là một sản phẩm
mới.

-


Biểu đồ trình tự use-case xóa review sản phẩm
8


Mô tả:
Cũng như thêm admin vào một form sản phẩm và lựa chọn xóa Controller sẽ nhận lệnh
getdelete() và trong lớp Database sẽ xóa sản phẩm đó và trả lại cho admin.
-

Biểu đồ trình tự use-case sửa review

9


Mô tả:
Admin cũng vào form một sản phẩm và lựa chọn edit Controller lấy thống tin- getedit(),
trong lớp Database sẽ cập nhật lại sản phẩm- update(), rồi trả lại kết quả.
-

Biểu đồ trình tự use-case thống kê

10


Mô tả:
Admin lựa chọn thống kế, hệ thống xử lý và trả lại cho admin Form Thống Kê, tiếp theo
Admin lựa chọn thời gian mà mình muốn thống kê. Lớp controller lấy thời giangettime(), Database sẽ lấy thông tin trong thời gian đó- queryDataonTime() rồi trả lại kết
quả.
Biểu đồ trình tự quản lý crawler


11


Mô tả:
Admin lựa chọn quản lý crawler, hệ thống gọi api lấy dữ liệu từ backend và thay đổi hiển
thị dữ liệu trên màn hình.
Biểu đồ trình tự chạy mới crawler

Mô tả:
Admin chọn tạo mới crawler, hệ thống trả về form nhập thông tin, sau khi nhập thông tin
admin nhận submit để tiến hành chạy crawl, hệ thống chạy crawl và thêm mới các danh
mục vào cơ sở dữ liệu. Sau khi chạy thành công lưu lịch sử crawl vào cơ sở dữ liệu, kết
thúc thông báo cho admin.
Biểu đồ trình tự xem cửa hàng bán sản phẩm

12


Mô tả:
Khách click vào nút xem cửa hàng bán sản phẩm tại bài review, lớp controller lấy thông
tin cửa hàng từ database và trả về dữ liệu render ra màn hình
Biểu đồ trình tự xem sản phẩm tốt trong tầm giá

Mô tả:
Khách hàng nhấn vào tùy chọn tìm kiếm nâng cao trên thanh search, hệ thống sẽ trả về
form tìm kiếm, người dùng có thể truyền vào các thông số như khoảng giá trên, dưới, tên
hãng sản xuất, mức đánh giá… Hệ thống sẽ tìm kiếm sản phẩm phù hợp và trả về màn
hình.


BIỂU ĐỒ LỚP
Hệ thống bao gồm 3 biểu đồ lớp của lớp view, controller và lớp model.
13


Lớp view bao gồm các lớp: CommentItem_View, UserComments_View, StarBar_View,
ProductReview_View, ProductNotFound_View, ProductMiniDetails_View,
ProductItem_View, ProductDetail_View, Header_View, Home_View,
ProductSearchList_View, SearchBar_View, SomethingWentWrong_View.

Với lớp controller gồm 3 lớp là : auth_controller, product_controller và lớp
comment_controller.
14


Và lớp model bao gồm các lớp là: admins, comments, parameter_categories, parameters,
producers, product_categories, productsreview_categories, reviews, users.

THIẾT KẾ CƠ SỞ DỮ LIỆU
Trong phần này ta sẽ thiết kế cơ sở dữ liệu cho hệ thống. Sau đây là mô hình thực thể liên
kết:
Danh sách các bảng:
-

Producers: các hãng sản xuất
Comments: bình luận của người dùng
Users: thông tin người dùng
Parameter_categories: các lớp thông số sản phẩm
Parameters: thông số chi tiết sản phẩm
Products: thông tin sản phẩm

Product_ categories: phân loại lớp sản phẩm (điện thoại, laptop)
Reviews: nội dung các bài review
Review_categories: phân loại lớp bài review
Access: lưu lượt truy cập của người dùng vào bài viết
Stores: lưu thông tin cửa hàng bán sản phẩm
Store_products: lưu thông tin quan hệ của sản phẩm và cửa hàng, giá của sản
phẩm tại cửa hàng
15


DATA MODEL
Data Model cài đặt trước các trường dữ liệu trong việc crawl dữ liệu đưa vào cơ sở
dữ liệu, ở đây là dữ liệu về review sản phẩm, bao gồm thông tin cơ bản, bài viết
review, thông số sản phẩm, ưu nhược điểm và các comment của người dùng trên
trang web crawl. Tất cả các trường dữ liệu đều dưới dạng text.

16


THIẾT KẾ GIAO DIỆN
-

Giao diện trang chủ

17


-

Giao diện xem review sản phẩm và comment


18


-

Giao diện tạo mới và chỉnh sửa review sản phẩn tương tự

-

Giao diện thống kê lượt truy cập, lượt comment

19


-

Giao diện quản lý crawler

-

Giao diện thêm mới crawler

20


-

Giao diện tìm kiếm nâng cao


-

Giao diện tìm cửa hàng bán sản phẩm

21


22



×