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

ĐỀ TÀI XÂY DỰNG ỨNG DỤNG WEBSITE TỔNG HỢP VÀ TÓM TẮT TIN TỨC

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.16 MB, 57 trang )

HỌC VIỆN KỸ THUẬT MẬT MÃ

KHOA CÔNG NGHỆ THÔNG TIN

ĐỀ TÀI:
XÂY DỰNG ỨNG DỤNG WEBSITE TỔNG HỢP
VÀ TÓM TẮT TIN TỨC
Sinh viên thực hiện:

TRẦN CAO MINH BÁCH AT150204
VŨ THỊ ÁNH AT150504
TRẦN THỊ DUNG AT150310
Nhóm 8

Giảng viên hướng dẫn:

ThS. LÊ ĐỨC THUẬN


LỜI NÓI ĐẦU

Ngày nay, với sự phát triển mạnh mẽ của khoa học công nghệ. Công nghệ
Thông tin là một trong những ngành có vị thế dẫn đầu và có vai trị rất lớn trong sự
phát triển chung đó. Các ứng dụng của công nghệ thông tin được áp dụng trong mọi
lĩnh vực nghiên cứu khoa học cũng như trong mọi lĩnh vực của đời sống. Là một phần
của Công nghệ Thơng tin, Cơng nghệ web đang có được sự phát triển mạnh mẽ và phổ
biến rất nhanh bởi những lợi ích mà nó mang lại cho cộng đồng là rất lớn.
Nhận thức được nhu cầu tìm hiểu thơng tin, giải trí của xã hội, là sự ra đời của
hàng loạt website cho các mục đích thương mại, giải trí, tin tức... Để đáp ứng với việc
cập nhật thông tin hàng ngày, tình hình xã hội, chính trị, thời sự... thì website tin tức ra
đời là một nhu cầu tất yếu.


Vì thời gian ngày càng ít, nhưng thơng tin thì lại rất nhiều. Nên đôi khi, chúng
ta không thể bao trọn được hết các thông tin mà chúng ta cần. Khiến cho việc nắm bắt
thông tin bị hạn chế. Do đó, từ vấn đề trên chúng em đã vận dụng ngôn ngữ Python,
Java, MySQL và công cụ Visual Studio Code để xây dựng ứng dụng Website Tổng hợp
và Tóm tắt Tin tức.
Với các công nghệ phát triển hiện nay, việc học máy là vấn đề khơng cịn q
khó khăn, nó cho phép chúng ta có thể dạy cho một cỗ máy có thể học hỏi và tự làm
được với yêu cầu đã được đề ra. Trong đề tài này, mô hình học máy mà bọn em muốn
sử dụng đó là mơ hình xử lý dữ liệu ngơn ngữ ở mức độ văn bản. Sau khi được thu
thập và phân loại, văn bản sẽ được xử lý và trả về kết quả ở dạng những tin vắn tắt,
mang đầy đủ ý nghĩa và nội dung của bản tin gốc. Trong đó, yếu tố mang tính ảnh
hưởng đó chính là mơ hình được hướng đến nhằm xử lý dữ liệu ngôn ngữ tự nhiên
NLP. Với mơ hình này, các thư viện đã sẽ được đề cập ở phần sau, chúng em sẽ triển
khai và phát triển thêm những tính năng phù hợp hơn, tăng độ chính xác cũng như độ
tin cậy khi sử dụng mơ hình. Bên cạnh đó là xử lý bản tin từ văn bản thành giọng nói,
giúp cho người dùng tiện lợi hơn rất nhiều trong việc cập nhật tin tức. Phát triển xa


hơn đó là áp dụng mơ hình vào để có thể phát triển và xử lý các khối dữ liệu văn bản
lớn hơn như: sách, tài liệu hay các loại truyện, tiểu thuyết. Phần nào cho người đọc có
cái hình dung rõ hơn về tác phẩm mà mình muốn trải nghiệm. Cũng như giúp cho
người dùng được tiếp cận một cách nhanh chóng và khái qt vấn đề mình cần tìm
hiểu.
Nội dung tiếp theo của đề cương này được chia làm 03 phần như sau:
Chương 1: Tổng quan về ngôn ngữ, các công cụ hỗ trợ và tổng quan về
đề tài. Chương này sẽ giới thiệu nền tảng được ứng dụng và phát triển đề tài của chúng
em. Cách mà bọn em kết nối và tạo ra hệ thống để đem đến bản tin vắn tắt và gọn. Bên
cạnh đó là các định nghĩa các nguồn tin. Đem lại cái nhìn khát quát nhất của đề tài.
Chương 2: Áp dụng phương pháp học máy trong xử lý ngôn ngữ.
Chương này trình bày về các giải pháp và kỹ thuật được sử dụng cho đề tài. Với đề tài

là việc thu thập, phân tích và rút gọn các bản tin thành những tin vắn. Việc trọng tâm
phải để ý đó là áp dụng thuật toán để sử lý câu chữ, sao cho sau khi được rút gọn, bản
tin vẫn mang lại đúng nội dung và ý nghĩa.
Chương 3: Trình bày về quá trình thực nghiệm và đánh giá các kết quả
thu được trong thực nghiệm. So sánh các kết quả này với các tập mẫu được chọn ra
ban đầu. Từ đó đánh giá và cải thiện thuật toán.


LỜI CAM ĐOAN

Lời cam đoan được viết tại đây. Xem cách viết lời cam đoan tại Mục Error:
Reference source not found.


MỤC LỤC


DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT

Xem Mục

6


DANH MỤC HÌNH VẼ

Xem thêm Mục Error: Reference source not found)

7



DANH MỤC BẢNG BIỂU

Xem thêm Mục Error: Reference source not found)

8


TĨM TẮT ĐỒ ÁN

Tóm tắt đồ án, có độ dài 1-2 trang, được trình bày tại đây. Chi tiết xem Mục Error:
Reference source not found.

9


CHƯƠNG 1. CƠ SỞ LÝ THUYẾT

Tóm tắt nội dung Chương 1 được trình bày tại đây, dài khoảng từ 5 đến 10 dịng.

1.1 Tổng quan về ngơn ngữ và các cơng cụ hỗ trợ
1.1.1 Tổng quan về lập trình Python và Laravel
Python là ngơn ngữ lập trình hướng đối tượng, cấp cao, mạnh mẽ, được tạo ra
bởi Guido van Rossum. Nó dễ dàng để tìm hiểu, Python hồn tồn tạo kiểu động và sử
dụng cơ chế cấp phát bộ nhớ tự động. Python có cấu trúc dữ liệu cấp cao mạnh mẽ và
cách tiếp cận đơn giản nhưng hiệu quả đối với lập trình hướng đối tượng. Cú pháp
lệnh của Python là điểm cộng vơ cùng lớn vì sự rõ ràng, dễ hiểu và cách gõ linh động
làm cho nó nhanh chóng trở thành một ngơn ngữ lý tưởng để viết script và phát triển
ứng dụng trong nhiều lĩnh vực, ở hầu hết các nền tảng.
Laravel là một PHP framework mã nguồn mở hồn tồn miễn phí, được phát

triển bởi Taylor Otwell, phiên bản đầu tiên được cho ra mắt vào năm 2011. Laravel ra
đời với mục đích hỗ trợ phát triển các ứng dụng web dựa trên mơ hình Model – View –
Controller (MVC).
1.1.2 Các công cụ hỗ trợ
Hiện tại có rất nhiều các trình hỗ trợ soạn thảo mã nguồn, cho phép mọi người
lập trình và chạy các mã nguồn. Visual Studio Code là một trong số đó. Với những
extention có thể tích hợp dễ dàng, giúp cho việc lập trình và thực thi mã nguồn tiện lợi,
hiệu quả. Đó là cơng cụ mạnh mẽ mà chúng em sẽ sử dụng xuyên suốt đề tài.

1.2 Tổng quan về các nội dung thông tin được sử dụng
Với các thông tin hiện tại, chúng ta đang có q nhiều thơng tin để phải chọn
lọc. Bên cạnh đó là nguồn thơng tin cần phải được xác thực từ các bên chính thống. Vì
vậy, để phát triển bước đầu cho hệ thống, các nguồn thông tin được cung cấp đầu vào
10


sẵn từ trước, đến từ các báo có độ uy tín cao, thơng tin xác thực từ các cơ quan có
thẩm quyền như: VnExpress.vn; Zing.vn; thanhnien.vn; Vietnamnet.vn; laodong.vn;
tuoitre.vn; dantri.com.vn.

1.3 Tổng quan về học máy
1.3.1 Giới thiệu học máy
Học máy là một tập con của trí tuệ nhân tạo. Theo định nghĩa của Wikipedia thì,
học máy là một lĩnh vực nhỏ của khoa học máy tính, nó có khả năng tự học hỏi dựa
trên dữ liệu đưa vào mà không cần phải lập trình cụ thể.
Ý tưởng cơ bản của mọi quy trình học máy là xây dựng mơ hình dựa trên một
số thuật toán để thực hiện một nhiệm vụ cụ thể như phân loại, phân lớp, hồi quy... Giai
đoạn huấn luyện được thực hiện dựa trên dữ liệu đầu vào và mơ hình được xây dựng
để dự đốn đầu ra. Kết quả đầu ra phụ thuộc mục tiêu ban đầu và việc thực hiện. Chi
tiết quy trình học máy gồm các bước như sau:


Hình 1.1: Sơ đồ học máy

Quy trình học máy cơ bản được chia làm các giai đoạn sau:


Thu thập dữ liệu (gathering data): Quá trình thu thập dữ liệu phụ thuộc

vào loại dự án mà chúng ta mong muốn xây dựng, ví dụ nếu chúng ta muốn xây dựng
dự án học máy mà sử dụng dữ liệu thực để chúng ta có thể xây dựng một hệ thống IoT
11


từ các dữ liệu cảm biến khác nhau. Dữ liệu chúng ta có thể thu thập từ các nguồn dữ
liệu khác nhau như một tập tin, cơ sở dữ liệu, cảm biến ...


Tiền xử lý dữ liệu (data pre-processing): Tiền xử lý dữ liệu là một trong

những giai đoạn quan trọng trong học máy, nó giúp xây dựng mơ hình học máy chính
xác. Tiền xử lý dữ liệu là một q trình làm sạch dữ liệu thơ, dữ liệu được thu thập từ
nhiều nguồn trong thế giới thực và được chuyển thành một tập dữ liệu sạch. Dữ liệu
thô ban đầu có một số đặc điểm như dữ liệu bị thiếu sót, khơng nhất qn, nhiễu vì vậy
dữ liệu này phải được xử lý trước khi đưa vào học máy.


Xây dựng mơ hình phù hợp cho loại dữ liệu (researching model): Mục

tiêu chính của chúng ta là xây dựng mơ hình thực hiện tốt nhất dựa trên một số thuật
tốn phân loại và phân lớp.



Huấn luyện và kiểm thử mô hình trên dữ liệu (training and testing

model): để huấn luyện một mơ hình, ban đầu chúng ta chia mơ hình thành 03 giai đoạn
bao gồm: dữ liệu huấn luyện (training data), dữ liệu xác nhận (validation data) và dữ
liệu kiểm thử (testing data). Để huấn luyện bộ phân lớp ta sử dụng tập hợp dữ liệu
huấn luyện (training data set), để tinh chỉnh các tham số ta sử dụng tập hợp xác nhận
(validation set) và sau đó kiểm tra hiệu suất của bộ phân loại chưa biết sử dụng tập hợp
dữ liệu kiểm thử (test data set). Một lưu ý quan trọng là trong quá trình huấn luyện bộ
phân lớp là dữ liệu kiểm thử không được sử dụng để huấn luyện.


Đánh giá (evaluation): Đánh giá mơ hình là một phần quan trọng

trong quy trình phát triển mơ hình, nó giúp tìm ra mơ hình tốt nhất để đại diện cho dữ
liệu của chúng ta và mơ hình được chọn sẽ hoạt động tốt như thế nào trong tương lai.
1.3.2 Giới thiệu về NLP
Natural Language Processing (NLP) – Xử lý ngơn ngữ tự nhiên là lĩnh vực
Khoa học máy tính kết hợp giữa Trí tuệ nhân tạo (Artificial Intelligence) và Ngơn ngữ
học tính tốn (Computational Linguistics) nhằm tập trung xử lý tương tác giữa con
người và máy tính sao cho máy tính có thể hiểu hay bắt chước được ngơn ngữ của con
người. Các ứng dụng thường thấy như hiện nay là Siri, Cortana và Google Now.

12


1.3.3 Giới thiệu về NLTK
NLTK hay Natural Language Toolkit - Bộ công cụ ngôn ngữ tự nhiên, là một
thư viện được viết bằng Python hỗ trợ xử lý ngôn ngữ tự nhiên. Bằng cách cung cấp

các cơ chế và kỹ thuật xử lý ngơn ngữ phổ biến, nó giúp cho việc xử lý ngôn ngữ tự
nhiên trở lên dễ dàng và nhanh chóng hơn. Được viết bởi Steven Bird và Edward
Loper, làm việc tại Khoa Máy Tính, Đại Học Pennsylvania, Hoa Kỳ và năm 2001.
Ngoài việc hỗ trợ xử lý ngơn ngữ, NLTK cịn có các mơ phỏng đồ hoạ và dữ liệu mẫu
hữu ích. NLTK cung cấp các xử lý như classification, tokenization, stemming, tagging,
parsing, và semantic reasoning... Những ứng dụng này chúng ta sẽ dần được tìm hiểu ở
những bài viết sau. Ngoài việc phục vụ xử lý ngơn ngữ tự nhiên, NLTK cịn được sử
dụng trong Machine Learning với tác dụng làm sạch dữ liệu, xử lý dữ liệu đầu vào cho
các thuật toán Machine Learning.

1.4 Quy trình xử lý và tóm tắt văn bản
− Tiền xử lý văn bản: Văn bản đầu vào của có thể chứa nhiều ký tự thừa, dấu câu thừa,
khoảng trắng thừa, các từ viết tắt, viết hoa, ... điều này có thể làm ảnh hưởng tới các
bước ở sau, nên cần biến đổi hết về các chữ cái thường và loại bỏ các khoảng trắng
thừa, các từ không mang ý nghĩa hay không ảnh hương ý nghĩa trong câu nếu loại bỏ.
− Tách câu trong văn bản: Ở bước này, sẽ tách 1 đoạn văn bản cần tóm tắt đã qua xử lý
thành 1 danh sách các câu của văn bản.
− Chuyển các câu sang dạng vector số thực: Để phục vụ cho phương pháp tóm tắt ở
bước tiếp theo, cần chuyển các câu văn (độ dài ngắn khác nhau) thành các vector số
thực có độ dài cố định, sao cho vẫn phải đảm bảo được "độ khác nhau" về ý nghĩa giữa
2 câu cũng tương tự như độ sai khác giữa 2 vector tạo ra.
− Xử lý văn bản: Sử dụng các thuật toán K-Means Clustering, LSA và Text Rank sẽ
giúp phân tích ra những cụm câu có ý nghĩa giống nhau, để từ đó chọn lọc và loại bỏ
bớt các câu có cùng ý nghĩa.
− Xây dựng đoạn văn bản tóm tắt: Sau khi đã có các cụm, trong mỗi cụm (phân loại
theo ý nghĩa), sẽ chọn ra 1 câu duy nhất trong cụm đó để tạo nên văn bản được tóm
tắt.Danh mục ký hiệu và chữ viết tắt

13



1.5 Tổng quan về thuật tốn sử dụng tóm tắt văn bản
1.5.1 Thuật toán K-Means Clustering
1.5.1.1 Cơ sở thuật toán
Kmeans là một thuật tốn học máy khơng giám sát – Unsupervised Learning.
Đầu vào của thuật tốn phân cụm nói chung là các điểm dữ liệu và đầu ra là các điểm
với cụm tương ứng của nó sao cho các điểm thuộc cùng một cụm có nhiều mối quan
hệ, liên kết với nhau hơn nhiều so với các điểm khác cụm.
Với thuật toán Kmeans ta cần truyền thêm tham số là số cụm. Kmeans sử dụng
Euclid để xác định sự giống nhau giữa hai điểm dữ liệu, hai điểm càng gần nhau thì độ
tương tự giữa hai điểm này càng cao.
Dựa trên ý tưởng như vậy, Kmeans sử dụng hàm để tính tổng khoảng cách từ 1
điểm tới tâm cụm tương ứng của nó và tối ưu dựa trên thuật tốn lặp. Với ý tưởng đơn
giản, dễ triển khai nhưng lại đem lại kết quả tốt trên nhiều bài toán. Hiện tại Kmeans
vẫn ln nằm trong top những thuật tốn Machine Learning phổ biến nhất.
1.5.1.2 Ý tưởng áp dụng thuật toán
Sau khi xử lý và chuẩn hoá dữ liệu đầu vào, việc chọn số cụm là việc khó khăn.
Với khả năng xử lý và tối ưu nhất cho một bài báo, thì số cụm được sử dụng trong hệ
thống là 5 cụm tương đương với bài báo sau khi được tóm tắt có độ dài là 5 câu.
Các bước thực hiện:
Bước 1: Khởi tạo 5 điểm dữ liệu trong bộ dữ liệu và tạm thời coi nó là tâm của
các cụm dữ liệu của chúng ta.
Bước 2: Với mỗi điểm dữ liệu trong bộ dữ liệu, tâm cụm của nó sẽ được xác
định là 1 trong 5 tâm cụm gần nó nhất.
Bước 3: Sau khi tất cả các điểm dữ liệu đã có tâm, tính tốn lại vị trí của tâm
cụm để đảm bảo tâm của cụm nằm ở chính giữa cụm.
14


Bước 4: Bước 2 và bước 3 sẽ được lặp đi lặp lại cho tới khi vị trí của tâm cụm

không thay đổi hoặc tâm của tất cả các điểm dữ liệu khơng thay đổi.
1.5.2 Thuật tốn LSA (Latent Semantic Analysis)
1.5.2.1 Cơ sở thuật toán
LSA là một trong những kỹ thuật Xử lý Ngôn ngữ Tự nhiên (NLP) phổ biến
nhất, nó sẽ cố gắng xác định các chủ đề trong văn bản bằng cách phân tích các thành
phần trong văn bản bằng toán học. LSA là một kỹ thuật học tập khơng giám sát dựa
trên hai yếu tố chính:
-

Giả thuyết phân bố, cho rằng các từ có nghĩa giống nhau thường xuyên
xuất hiện cùng nhau.
Phân rã giá trị đơn lẻ.

LSA lấy các tài liệu văn bản có ý nghĩa và tái tạo chúng thành n phần khác
nhau, trong đó mỗi phần thể hiện một cách khác nhau để so sánh ý nghĩa của chúng
trong văn bản. Như việc biểu đạt một câu nói: “Hơm nay tơi khơng khoẻ!” bằng một
câu nói với ý nghĩa hồn tồn giống nó những cách nói khác là: “Hơm nay tơi cảm
thấy mệt!”. Thuật tốn LSA sẽ phân chia các từ của văn bản thành một bảng gồm các ý
nghĩa tiềm ẩn của từ trong văn bản gốc.
1.5.2.2 Ý tưởng áp dụng thuật toán
LSA là một thuật tốn thuộc mơ hình chủ đề, phân loại topic. Ý tưởng của thuật
tốn dựa trên phép phân tích suy biến ma trận biểu diễn văn bản đầu vào (A) để xác
định khơng gian tuyến tính con của A mà vẫn giữ được hầu hết những biến động của
ma trận A. Nói cách khác, thuật tốn này đi giảm chiều ma trận dữ liệu đầu vào sử
dụng phép phân tích ma trận.
Giả sử ma trận biểu diễn mối quan hệ giữa document-word là A mn∈Rm×n. Về cơ
bản phép phân tích suy biến sẽ biến đổi ma trận gốc A thành tích của các ma trận suy
biến trái U, ma trận đường chéo S và ma trận suy biến phải V theo công thức:

15



Hình : Sơ đồ cơng thức LSA

Mỗi dịng của U sẽ biểu diễn phân phối của văn bản và mỗi dòng của V là phân
phối của mỗi từ theo t topics ẩn.
-

Các cột của U và V đại diện cho các topics.

-

Để tìm ra 2 văn bản có giống nhau hoặc 2 từ giống nhau chúng ta sẽ tính

tương quan của các véc tơ dòng tương ứng với các văn bản của ma trận U hoặc các véc
tơ dòng tương ứng với từ của ma trận V.
Phép phân tích này giảm được khá nhiều chiều đối với trường hợp bộ văn bản
lớn. Tuy nhiên nó vẫn tồn tại những nhược điểm đó là:
-

Các tính tốn hồn tồn dựa trên phân tích ma trận.

-

Các topic được xác định dựa trên các phép chiếu tuyến tính nên mối

quan hệ giữa topic-document và topic-term là tuyến tính.
-

Chi phí tinh tốn của mơ hình rất tốn kém nếu kích thước dữ liệu lớn


16


1.5.3 Thuật toán Text Rank
1.5.3.1 Cơ sở thuật toán
TextRank được bắt nguồn từ thuật toán PageRank, thuật toán nhằm xếp hạng
các trang web của Google. Thuật toán này chỉ định giá trị nhất định cho mỗi thành
phần của một tập hợp các văn bản liên kết với nhau, ví dụ như World Wide Web. Mục
đích "đo" tầm quan trọng tương đối của các liên kết trong tập hợp đó. Áp dụng cho bất
kỳ tập hợp văn bản nào có trích dẫn đối ứng và liên kết cụ thể. Giá trị (weight) mà nó
gán cho bất kỳ thành phần E được gọi là PageRank của E và ký hiệu là PR(E).

Hình : Sơ đồ đánh giá giá trị của thuật toán PageRank

Giá trị PageRank hình thành từ thuật tốn tốn học dựa trên webgraph: các
trang world wide web được coi như các đỉnh và các đường link là các cạnh. Khi hình
thành webgraph người ta có tính đến những trang của các cơ quan có thẩm quyền như
cnn.com hay usa.gov. Giá trị xếp hạng cho thấy tầm quan trọng của từng trang cụ thể.
Mỗi đường link tới trang web sẽ được tính như một sự hỗ trợ làm tăng thêm giá trị
Pagerank.

17


Giá trị Pagerank của trang được định nghĩa đệ quy và phụ thuộc vào số lượng
và giá trị của các trang mà có link dẫn đến trang đó (incoming links).Một trang web có
chứa nhiều link liên kết từ các trang web có giá trị PageRank cao thì giá trị PageRank
của trang đó cũng sẽ cao.Có rất nhiều bài viết đã được xuất bản ra công chúng dựa trên
nghiên cứu gốc của Page và Brin.

Dựa trên ý tưởng này, thuật toán TextRank ra đời nhằm xếp hạng các câu trong
một văn bản dựa trên độ tương tự giữa các câu. Mỗi đỉnh sẽ là một câu, cạnh nối là độ
tương tự giữa hai câu. Từ đó xác định được các đỉnh với rank cao nhất - các câu quan
trọng nhất.
1.5.3.2 Ý tưởng áp dụng thuật toán
1.5.3.3

18


CHƯƠNG 2. THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG

Tóm tắt Chương 2 được trình bày tại đây, dài khoảng từ 5 đến 10 dịng.

2.1 Phân tích hệ thống
2.1.1 Biểu đồ phân rã chức năng

Hệ
Hệ thống
thống tổng
tổng hợp
hợp &
& tóm
tóm tắt
tắt thông
thông tin
tin

Quản
Quản lý

lý hệ
hệ thống
thống

Thay
Thay đổi
đổi thông
thông tin
tin

Cập
Cập nhật
nhật thông
thông tin
tin

Xoá
Xoá &
& Sửa
Sửa nội
nội dung
dung bài
bài
viết
viết

Xử
Xử lý
lý dữ
dữ liệu

liệu

Cập
Cập nhật
nhật thành
thành viên
viên

Thu
Thu thập
thập dữ
dữ liệu
liệu

Xử
Xử lý
lý dữ
dữ liệu
liệu

Tạo
Tạo nội
nội dung
dung bài
bài viết
viết

19



2.1.2 Biểu đồ Use Case tổng quát

Hình 2.1: Biểu đồ Use Case tổng quát

20


2.1.3 Xác định actor và chức năng

STT

Tác nhân

Mô tả tác
nhân

Chức năng

1

Guest

Là đối
tượng
chưa có
tài khoản
trong hệ
thống.

Đăng kí, tìm kiếm bài viết,

xem thơng tin trang web.

2

Amin

Là người
hỗ trợ
quản lí
nắm bắt
các
nghiệp vụ
của
website

Đăng nhập, tìm kiếm, quản lí
User, quản lí bình luận và
đánh giá, quản lí bài viết,
thêm, xóa và sửa tài khoản
trong hệ thống.

3

User

Là đối
tượng đã
có tài
khoản
trong hệ

thống

Đăng nhập, tìm kiếm bài
viết, xem thơng tin trên
website, bình luận về bài
viết, lưu thơng tin bài viết,
gợi ý bài viết theo sở thích.

Bảng 2.1: Xác định actor và chức năng

21


2.1.4 Biểu đồ Use case chi tiết
2.1.4.1

Biểu đồ UC User

Hình 2.2: Biểu đồ UC User

2.1.4.2

Biểu đồ UC Guest

Hình 2.3: Biểu đồ UC Guest

22


2.1.4.3


Biểu đồ UC quản lý tin tức

Hình 2.3: Biểu đồ UC quản lý tin tức

2.1.4.4

Biểu đồ UC quản lý User

Hình 2.4: Biểu đồ UC quản lý User

2.1.5 Đặc tả các ca sử dụng
1. Use Case đăng ký của Guest

23


Use Case

Đăng ký

Actor

Guest

Brief Description

Người dùng chưa có tài khoản muốn
đăng ký


Pre-conditions
Basic Flows

Alternative Flows

Chưa có tài khoản
1. Người dùng chọn đăng ký tài khoản
2. Hệ thống hiển thị from đăng kí
3. Điền đầy đủ thông tin vào form
Nếu người dùng điền sai, thiếu thông
tin hệ thống sẽ báo lỗi và gửi lại form
đăng ký

Post-conditions

Nếu thực hiện đăng ký thành công
người dùng có tài khoản trong hệ thống
website

Special Requiements

Chưa tồn tại username trên hệ thống
2. Use Case đăng nhập

Use Case

Đăng nhập

Actor


User, Admin

Brief Description

Người dùng có tài khoản muốn đăng
nhập

Pre-conditions

Đăng ký

24


Basic Flows

Alternative Flows

1. Người dùng chọn đăng nhập tài
khoản
2. Hệ thống hiển thị from đăng nhập
3. Điền đầy đủ thông tin vào form
Nếu người dùng điền sai, thiếu thông
tin hệ thống sẽ báo lỗi và gửi lại form
đăng nhập

Post-conditions

Nếu thực hiện đăng nhập thành cơng
người dùng có thể đăng nhập vào hệ

thống website

Special Requiements

2.1 Use Case quên mật khẩu

Use Case

Quên mật khẩu

Actor

User

Brief Desecription

Khi người dùng quên mật khẩu và
muốn reset lại mật khẩu

Pre-conditions

Đăng ký

25


×