Chính vì vậy nhóm đã xây dựng một website “Hỗ trợ tìm kiếm phòng trọ” thực hiệnbằng công nghệ React js + Node js với mong muốn giúp cho việc hỗ trợ tìm kiếm phòng trọ được dễ dàng, thuận
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP.HCM
Trang 2BÁO CÁO ĐỒ ÁN MÔN HỌC
Trang 3
Trang 4
LỜI MỞ ĐẦU
Công nghệ thông tin đã ngày càng trở lên phổ biến và hữu dụng trong cuộc sống hiệ
n nay Đặc biệt các từ khóa để tìm kiếm kết quả trở nên nhanh chóng Hiện tại trên mạng
có nhiều web hỗ trợ tìm kiếm phòng trọ như chotot, phongtro123.com…, các trang này
đều có chức năng giống nhau tìm kiếm nơi ở, phòng trọ
Chính vì vậy nhóm đã xây dựng một website “Hỗ trợ tìm kiếm phòng trọ” thực hiệnbằng công nghệ React js + Node js với mong muốn giúp cho việc hỗ trợ tìm kiếm phòng
trọ được dễ dàng, thuận tiện hơn
Tuy chúng em đã hết sức cố gắng để có thể hoàn thiện đề tài một cách tốt nhất, như
ng do thời gian có hạn và sự hiểu biết về ngôn ngữ lập trình, đề tài còn hạn chế, do chưa c
ó nhiều kinh nghiệm nên chắc chắn đề tài sẽ không tránh khỏi những thiếu sót, chúng emrất mong nhận được những ý kiến đóng góp của Thầy và những người quan tâm để đề tài
được hoàn thiện hơn Chúng em xin chân thành cảm ơn!
Trang 6Mục Lục
Contents
CHƯƠNG 1 : TỔNG QUAN _101.1 Lý do chọn đề tài _101.2 Mục tiêu đề tài _101.3 Nội dung thực hiện _101.4 Phương pháp thực hiện 111.5 Giới thiệu về công nghệ sử dụng _111.5.1 Ngôn ngữ javascrip 111.5.2 Visual Studio Code(IDE) _121.5.3 Node js _121.5.4 Express framework 131.5.5 Mongodb 141.5.6 Mongoose _141.6 Mục tiêu đề ra _14CHƯƠNG 2 : TÁC PHÂN TÍCH VÀ ĐẶC TẢ YÊU CẦU _152.1 Quá trình phân tích _152.1.1 Phân tích phạm vi dự án 152.1.2 Phân tích mở rộng yêu cầu nghiệp vụ 152.1.3 Phân tích yêu cầu bảo mật 162.1.4 Phân tích yêu cầu tốc độ 162.1.5 Phân tích yêu cầu vận hành _162.1.6 Phân tích yếu tố con người 172.1.7 Phân tích yêu cầu tích hợp 172.1.8 Phân tích thực tiễn nghiệp vụ tồn tại 172.2 Xác định yêu cầu _182.2.1 Yêu cầu và mô tả yêu cầu _182.2.2 Phân loại yêu cầu _182.3 Mô hình hóa yêu cầu 192.3.1 Sơ đồ ngữ cảnh _192.3.2 Sơ đồ Use Case _192.3.3 Sơ đồ chức năng(BFD) _262.3.4 Mô hình sơ đồ lớp _27
Trang 72.4 Xây dựng cơ sở dữ liệu 282.4.1 Bảng Category _282.4.2 Bảng Users 282.4.2 Bảng Room 29CHƯƠNG 3: THIẾT KẾ PHẦN MỀM _303.1 Giao diện chương trình 303.1.1 Giao diện trang chủ 303.1.2 Giao diện danh mục _333.1.3 Giao diện các phòng thuê _333.1.4 Giao diện liên hệ 383.1.5 Giao diện tìm kiếm trên trang chủ 403.1.6 Giao diện chi tiết bài đăng 423.1.7 Giao diện chức năng của người dùng 453.1.8 Giao diện đăng nhập, đăng ký _473.1.9 Giao diện quản lý của Admin 493.1.10 Một số giao diện khác _50CHƯƠNG 4: TỔNG KẾT _524.1 Kết quả đạt được _524.2 Mặt hạn chế _524.3 Hướng phát triển _52
Trang 8Danh Mục Hình Ảnh
Hình 2 1: Biểu đô sơ đồ ngữ cảnh 18
Hình 2 2: Biều đô Use case tổng quát 19
Hình 2 3: Biểu đồ Use case đăng nhập, đăng ký 20
Hình 2 4: Biểu đồ Use case quản lý tài khoản 21
Hình 2 5: Biểu đồ Use case quản lý loại phòng thuê 23
Hình 2 6: Use case quản lý bài đăng 24
Hình 2 7: Biểu đồ sơ đồ ngữ cảnh 26
Hình 2 8: Mô hình sơ đồ lớp 26
Hình 3 1: Giao diện trang chủ 30
Hình 3 2: Chức năng tùy chọn 31
Hình 3 3: Hiển thị trang Admin khi người dùng là admin 31
Hình 3 4: Không hiển thị trang Admin khi người dùng là user 31
Hình 3 5: Giao diện các danh mục 32
Hình 3 6: Giao diện các bài đăng khuyến nghị 32
Hình 3 7: Giao diện danh mục 33
Hình 3 8: Giao diện bài đăng theo danh mục 33
Hình 3 9: Giao diện các phòng thuê 34
Hình 3 10: : Giao diện lọc với 1 tùy chọn 35
Hình 3 11: : Giao diện lọc với 1 tùy chọn 35
Hình 3 12: : Giao diện lọc với 1 tùy chọn 36
Hình 3 13: Giao diện lọc với nhiều tùy chọn 36
Hình 3 14: Giao diện trang đầu 37
Hình 3 15: Giao diện khi chuyển trang 2 38
Hình 3 16: : Giao diện liên hệ, trợ giúp 39
Hình 3 17: Giao diện khi gửi thành conog 39
Hình 3 18: Giao diện khi thông báo đến admin 40
Hình 3 19: Giao diện tìm kiếm 41
Hình 3 20: Giao diện tìm kiếm 41
Hình 3 21: Giao diện tìm kiếm 42
Hình 3 22: Giao diện chi tiết bài đăng 43
Hình 3 23: Giao diện khi đăng xuất không hiển thị cập nhật và xóa 44
Hình 3 24: Giao diện khi đăng nhập có thể cập nhật và xóa 44
Hình 3 25: Giao diện cập nhật bài đăng 45
Hình 3 26: Giao diện yêu cầu người dùng phải đăng nhập 46
Hình 3 27: Giao diện thông tin tài khoản 46
Hình 3 28: Giao diện hiển thị hộp thoại không tìm thấy người dùng 47
Hình 3 29: Giao diện hiển thị hộp thoại nhập sai tài khoản và mật khẩu 47
Hình 3 30: Giao diện đăng ký 48
Hình 3 31: Giao diện đăng ký khi email tồn tại trong database 48
Hình 3 32: Giao diện đăng ký khi username tồn tại trong database 49
Hình 3 33: Giao diện các thông tin user 49
Hình 3 34: Giao diện các danh mục 50
Trang 9Hình 3 35: Giao diện khi người dùng nhập sai điều hướng 50 Hình 3 36: Giao diện không tìm thấy trang 51 Hình 3 37: Giao diện không tìm thấy trang khi user truy cập vào admin 51
Trang 10Danh Mục Bảng
Bảng 2 1: Bảng đặc tả use case quản lý tài khoản 23
Bảng 2 2: Bảng đặc tả use case quản lý tài khoản 24
Bảng 2 3: Bảng đặc tả quản lý bài đăng 26
Bảng 2 4: Bảng Category 28
Bảng 2 5: Bảng Users 29
Bảng 2 6: Bảng Rooms 29
Trang 11CHƯƠNG 1 : TỔNG QUAN
1.1 Lý do chọn đề tài
Trong cuộc sống hiện nay, có một lượng lớn sinh viên, công nhân lao động, gia đình vào các thành phố lớn để học tập và làm việc.Nên nhu cầu tìm kiếm phòng trọ, nơi ở ngày càng tăng
Tránh việc người đi tìm phải tự thân vận động tìm kiếm cho mình một nơi tốt nhất.Thay vào đó chỉ cần ngồi ở nhà, hay chỉ cần một thiết bị điện tử để tìm kiếm đơn giản mà không cần phải đi ra ngoài
Ý thức được vấn đề đó, nhóm em quyết định chọn đề tài:”Xây dựng Website hỗ trọ tìm kiếm phòng trọ ” và áp dụng thí điểm vào mô hình quản lí đó vào việc tìm kiếm
1.2 Mục tiêu đề tài
Tìm hiểu đúng phương pháp làm một đề tài theo đúng quy tắc , đúng chuẩn
Đối tượng hướng đến người dùng
Phạm vi giới hạn: chỉ hỗ trợ tìm kiếm phòng trọ, nhà, văn phòng
Tìm hiểu được cách triển khai và xây dựng một hệ thông
Website phải dễ dàng kiểm tra , cải tiến, nâng cấp khi có những lỗi phát sinh bất ngờ từ hệ thống
1.3 Nội dung thực hiện
Phan Hoàng Hạc(Nhóm trưởng) Thiết kế phần mềm
Tìm hiểu để tài
Lên ý tưởng
Trang 12Tìm hiểu ngôn ngữ, công nghệ , IDE, DB.
Hỗ trợ viết báo cáo
Nguyễn Quốc Dũng Hỗ trợ thiết kế phần mềm
Hỗ trợ thiết kế giao diện
Viết và trình bày báo cáo
Bảng 1 1: Bảng nội dung thực hiện
Là một ngôn ngữ lập trình web rất phổ biến ngày nay Javascript được tích h
ợp đồng thời nhúng vào HTML để hỗ trợ cho website trở nên sống động hơn.Chúng cũng đóng vai trò tương tự như một phần của website, cho phép Client-side Script từ người dùng tương tự máy chủ (Nodejs) để tạo ra những websi
te động
Brendan Eich chính là người đã phát triển Javascript tại Netscape với tiền thâ
n là Mocha Sau đó, Mocha được đổi thành LiveScript và cuối cùng mới đổi thành JavaScript
Trang 13Năm 1998, JavaScript với phiên bản mới nhất là ECMAScript 2 phát hành v
à đến năm 1999 thì ECMAScript 3 được ra mắt
Năm 2016, ứng dụng JavaScript đã đạt kỷ lục lên tới 92% website sử dụng, đ
ồng thời cũng được đánh giá là một công cụ cực kỳ quan trọng đối với lập trì
nh viên
1.5.2 Visual Studio Code(IDE)
Visual Studio Code là một trình soạn thảo mã nguồn được phát triển bởi Microsoft dành cho Windows, Linux và macOS Nó hỗ trợ chức năng debug, đ
i kèm với Git, có chức năng nổi bật cú pháp, tự hoàn thành mã thông minh, snippets, và cải tiến mã nguồn
Visual Studio Code hỗ trợ đa dạng các chức năng Debug, đi kèm với Git, c
ó Syntax Highlighting Đặc biệt là tự hoàn thành mã thông minh, Snippets,
và khả năng cải tiến mã nguồn Nhờ tính năng tùy chỉnh, Visual Studio Cod
e cũng cho phép các lập trình viên thay đổi Theme, phím tắt, và đa dạng cáctùy chọn khác Mặc dù trình soạn thảo Code này tương đối nhẹ, nhưng lại b
ao gồm các tính năng mạnh mẽ
1.5.3 Node js
NodeJS là một nền tảng được xây dựng trên “V8 Javascript engine” được viết bằn
g c++ và Javascript Nền tảng này được phát triển bởi Ryan Lienhart Dahl vào nă
m 2009
Trang 14Node.js ra đời khi các developer đời đầu của JavaScript mở rộng nó từ một thứ bạ
n chỉ chạy được trên trình duyệt thành môi trường mà bạn có thể chạy trên máy củ
Khi nói đến NodeJS thì phải nghĩ tới vấn đề Realtime Realtime ở đây chính là xử
lý giao tiếp từ client tới máy chủ theo thời gian thực Giống như khi bạn lướt Facebook thì mỗi khi bạn comment hay like một topic nào đó thì ngay lập tức chủ topic
và những người đã comment trên đó sẽ nhận được thông báo là bạn đã comment
1.5.4 Express framework
ExpressJS là một trong những framework phổ biến dùng để xây dựng API và Website phổ biến nhất của NodeJS Nó được sử dụng rộng rãi đến mức hầu như mọi dự án Web nào đều bắt đầu bằng việc tích hợp Express Có rất nhiều lý do để chọn ExpressJS:
Có nhiều tính năng hỗ trợ tất cả những gì bạn cần trong việc xây dựng Web
và API
Quản lý các route dễ dàng
Cung cấp một nền tảng phát triển cho các API
Hỗ trợ nhiều thư viện và plugin
Bảo mật và an toàn hơn so với việc code thuần
Hỗ trợ cộng đồng tuyệt vời
Trang 151.5.5 Mongodb
MongoDB là một hệ quản trị cơ sở dữ liệu NoSQL mã nguồn mở đa nền tảng viết bằng C++ Bản ghi trong MongoDB được lưu trữ dạng một dữ liệu văn bản, là mộtcấu trúc dữ liệu bao gồm các cặp giá trị và trường tương tự như các đối tượng JSON
Một bản ghi trong collection MongoDB và đơn vị dữ liệu cơ bản trong MongoDB.Các tài liệu (document) tương tự như các đối tượng JSON nhưng tồn tại trong cơ s
ở dữ liệu ở định dạng có nhiều kiểu dữ liệu hơn được gọi là BSON
Một cặp name-value trong một document Một document có 0 hoặc nhiều trường
(field) Các fileld tương tự như các cột(column) trong cơ sở dữ liệu quan hệ (RDB
MS)
1.5.6 Mongoose
Khi bạn đã xác định các Schemas và Model của mình, Mongoose sẽ bao gồm nhi
ều hàm khác nhau cho phép bạn xác thực, lưu, xóa và truy vấn dữ liệu của bạn bằn
g các hàm MongoDB phổ biến.Để làm việc với Mongoose sau khi thực hiện conn
ection thì chúng ta sẽ bắt đầu với một Schema Mỗi Schemas đều được chỉ định t
ới một collection trong MongoDB và từ đó xác định hình "bộ khung" cho các docu
ment trong collection được chỉ đinh đó Ở đây mình có một Schemas.
Mỗi key trong object truyền vào class new Schema ví dụ như (title, author, body, ) được chỉ định là một thuộc tính của một document, mỗi value trong object ( n
hư trong ví dụ là String, Boolean, Number) sẽ đại diện cho kiểu dữ liệu được sử dụ
ng ( SchemaType )
Model chịu trách nhiệm với các document như việc thêm, sửa, xóa, các câu truy v ấn.
1.6 Mục tiêu đề ra
Trang 16Phần mềm sau khi được hoàn thành sẽ giúp người sử dụng thực hiện các chức năng của trang web:
o Quản lý các bài đăng.
o Thao tác thêm, xóa, sửa nhanh, gọn, dễ dàng, chính xác.
o Thực hiện việc tìm kiếm.
o Cập nhật thông tin cá nhân.
CHƯƠNG 2 : TÁC PHÂN TÍCH VÀ ĐẶC TẢ YÊU CẦU
2.1 Quá trình phân tích
2.1.1 Phân tích phạm vi dự án
Phạm vi : website gồm các chức năng cơ bản.
Phần mền được phát triển và vận hành bởi con người.
2.1.2 Phân tích mở rộng yêu cầu nghiệp vụ
Trang 17Xác định yêu cầu nghiệp vụ: Thu thập yêu cầu của khách hàng và ch
ia nhỏ tác vụ đến mức tối thiểu để mô tả một cách chính xác nhất.Xác định yêu cầu chất lượng: Đáp ứng nhu cầu khách hàng nhanh, chính xác, …
Phân tích cơ sở hạ tầng hiện hành: Nắm bắt cấu hình, hệ điều hành được sử dụng nhiều để nâng cấp phần mềm phù hợp với nhu cầu của khách hàng, tăng mức độ chính xác và hiệu quả
Phân tích ảnh hưởng kỹ thuật: Theo nhu cầu của thời đại, luôn phải nâng cấp và cải thiện hệ thống
2.1.3 Phân tích yêu cầu bảo mật
Xác định môi trường bảo mật phần mềm: Cung cấp đủ thông tin cho người dùng
Xác định mức độ yêu cầu bảo mật: Xác định mức độ rủi ro để bảo m
ật phần mềm
Rà soát bảo mật hiện tại: Tuân thủ yêu cầu bảo mật để đưa ra nhiều giải pháp mang lại lợi ích cao
2.1.4 Phân tích yêu cầu tốc độ
Khi khởi động website, tùy vào cấu hình máy mà thời gian sẽ dao độ
ng từ 3-10 giây
Sau khi đăng nhập, 100% các thao tác xử lý không quá 10 giây - Kh
i có yêu cầu của người dùng, thao tác phản hồi người dùng là nhanh
Có thể thực hiện đăng nhiều bài khác nhau trong một lúc
2.1.5 Phân tích yêu cầu vận hành
Trang 18Hệ thống được xây dựng trên nền Visual Studio Code(IDE) với
ngôn ngữ JavaScrip
Cơ sở dữ liệu của hệ thống sử dụng CSDL Mongodb
Yêu cầu phần cứng: CPU intel core i3 hoặc AMD Ryzen 3 trở lên; R
AM >=1GB; Ổ C trống tối thiểu 1GB; Hệ điều hành Windows 7/8/10
Phần cứng tối ưu: CPU intel core i5 (chíp H hoặc HQ) hoặc AMD Ryzen 5 trở lên; RAM >=4GB; Ổ C trống tối thiểu 1GB; Hệ điều hànhWindows 7/8/10
2.1.6 Phân tích yếu tố con người
Mục đích chính của website là mang đến lợi ích cho con người, nên yếu
tố con người là phần quạn trọng không thể thiếu Bắt đầu với việc định nghĩa mục tiêu người dùng, qua đó xác định được các dạng người dùng với những nhu cầu đặc biệt liên quan, từ đó có thể sửa đổi phần mềm thí
ch ứng với những nhu cầu đó
2.1.7 Phân tích yêu cầu tích hợp
-Khi nhu cầu của người dùng phát sinh lớn thì cơ sở dữ liệu cần được thiết kế lại dựa trên những kỹ thuật thiết kế cơ sở dữ liệu mới
để đáp ứng nhu cầu nâng cấp cơ sở dữ liệu trong hệ thống Việc x
ây dựng các tiện ích chuyển đổi riêng biệt ta có thể dễ dàng thực hiện việc truy xuất cơ sở dữ liệu hiện có, hay chuyển đổi dữ liệu
cũ sang khuôn dạng mới
2.1.8 Phân tích thực tiễn nghiệp vụ tồn tại
Khi hiểu được những nghiệp vụ thực tế liên quan đến website của doanh nghiệp, ta sẽ tránh được sai sót đồng thời và có thể
Trang 19tìm được cách tốt hơn, hiệu quả hơn cho việc hiện thực tiến trình nghiệp vụ và ngăn ngừa các lỗi tầm thường.
Để có được website tốt từ giai đoạn phát triển đến lúc sử dụng,
ta cần biết chi tiết về hệ thống mạng và chính sách hạ tầng củ
a khách hàng
Ta cần tuân thủ nguyên tắc cốt lõi là nhận biết nhu cầu khách hàng và cố gắng thực hiện chúng
2.2 Xác định yêu cầu
2.2.1 Yêu cầu và mô tả yêu cầu
Yêu cầu: Hiển thị kết quả tìm kiếm, Tạo bài đăng
Mô tả yêu cầu:
o Đăng nhập/đăng ký tài khoản Chọn đăng bài Đăng bài Xem lại các bài đã đăng trên giao diện
o Tìm kiếm gõ vào thanh tìm kiếm Kết quả
2.2.2 Phân loại yêu cầu
Yêu cầu chức năng: Đăng bài, thống kê, quản lý thông tin , quản lý thôn
g tin phòng, thay đổi thông tin, tài khoản…
Yêu cầu phi chức năng: Giao diện trực quan thân thiện, dễ sử dụng với người dùng
Yêu cầu chức năng lưu trữ: ghi nhận thông tin người dùng
Yêu cầu chức năng tra cứu: Tìm kiếm các bài đăng
Yêu cầu chức năng phân quyền: Phân quyền cho Admin – người viên
Yêu cầu tính tiện dụng: Báo lỗi khi nhập thiếu/sai , giao diện dễ nhìn/dễ sử dụng
Trang 20-Yêu cầu tính tương thích: Cho nhập thông tin từ bàn phím hoặc chọn theo danh sách cho sẵn.
-Yêu cầu tính bảo trì: Chuyên viên tin học có thể thêm/xóa/sửa cá
c chức năng của hệ thống
2.3 Mô hình hóa yêu cầu
2.3.1 Sơ đồ ngữ cảnh
2.3.2 Sơ đồ Use Case
Biểu đồ use case tổng quát
Admin
Người
Phản hồiYêu cầu
Hình 2 1: Biểu đô sơ đồ ngữ cảnh
Trang 21Hình 2 2: Biều đô Use case tổng quát
Tên usecase: xây dựng website hỗ trợ tìm kiếm phòng trọ
Tên tác nhân: Quản lý, quản trị hệ thống, người dùng
Chức năng use case: Biểu đồ này cho thấy các use case sẽ tương tác với nhau thôn
g qua phần website hỗ trợ tìm kiếm phòng trọ
a Use case đăng nhập, đăng ký
Trang 22Hình 2 3: Biểu đồ Use case đăng nhập, đăng ký
Tên use case: đăng nhập, đăng ký
Tác nhân: quản lý Chức năng use case: cho phép người dùng đăng nhập vào hệ thố
ng
Dòng sự kiện chính:
o Người dùng đăng nhập vào Website
o Hệ thống yêu cầu người dùng đăng nhập
o Người dùng nhập Tên đăng nhập và Mật khẩu
o Người dùng nhập Tên đăng nhập và Mật khẩu và các trường khác để đăng ký
o Hệ thống kiểm tra tính hợp lệ thông tin đăng nhập của người dùng và cho phép người dùng đăng nhập vào hệ thống
o Nếu người dùng mà chưa nhập thông tin đăng nhập mà ấn vào nút đăng nhậ
p, đăng ký thì hệ thống sẽ phản hồi lại là không hợp lệ
Dòng sự kiện phụ:
o Người dùng mà nhập sai tài khoản và mật khẩu thì website sẽ báo lỗi và yê
u cầu người dùng đăng nhập lại
Trang 23o Nếu trong hệ thông đã tồn tại tên người dùng website sẽ báo lỗi và yêu cầu người dùng đăng ký lại.
b Use case quản lý tài khoản
Hình 2 4: Biểu đồ Use case quản lý tài khoản
Trang 24Hoạt động của tác nhân Phản ứng của hệ thống
1 Chọn quản lý người dùng
2 Hiển thị thông tin
3 Thêm mới người dùng
4 Cập nhật người dùng
5.Xóa người dùng
6.Hệ thống kiểm tra và xác nhận
Bảng 2 1: Bảng đặc tả use case quản lý tài khoản
Tên use case: Quản lý tài khoản
Tác nhân: Admin
Chức năng use case: cho phép quản lý thêm, xóa, sửa thông tin tài khoản người dùng
Dòng sự kiện chính:
o Admin chọn quản lý người dùng
o Hệ thống sẽ hiển thị thông tin của các người dùng
o Admin thêm người dùng
o Admin cập nhật người dùng
o Admin xóa người dùng
Dòng sự kiện phụ:
o Xóa người dùng đồng nghĩa với việc là xóa tất cả thông tin của người dùng
c Use case quản lý loại phòng thuê
Trang 25Hình 2 5: Biểu đồ Use case quản lý loại phòng thuê
Hoạt động của tác nhân Phản ứng của hệ thống
1 Chọn quản lý loại phòng
2 Hiển thị thông tin
3 Thêm mới loại phòng
4 Cập nhật loại phòng
5.Xóa loại phòng
6.Hệ thống kiểm tra và xác nhận
Bảng 2 2: Bảng đặc tả use case quản lý tài khoản
Tên use case: Quản lý loại phòng
Tác nhân: Admin
Trang 26Chức năng use case: cho phép quản lý thêm, xóa, sửa thông tin loại phòng.
Dòng sự kiện chính:
o Admin chọn quản lý loại phòng
o Hệ thống sẽ hiển thị thông tin của các loại phòng
o Admin thêm loại phòng
d Use case quản lý bài đăng
Hình 2 6: Use case quản lý bài đăng
Hoạt động của tác nhân Phản ứng của hệ thống
Trang 271 Chọn quản lý bài đăng
2 Hiển thị thông tin
3 Thêm mới bài đăng
4 Cập nhật bài đăng5.Xóa loại bài đăng
6.Hệ thống kiểm tra và xác nhận
Bảng 2 3: Bảng đặc tả quản lý bài đăng
Tên use case: Quản lý bài đăng
Tác nhân: Admin
Chức năng use case: cho phép quản lý thêm, xóa, sửa thông tin bài đăng.Dòng sự kiện chính:
o Admin chọn quản lý bài đăng
o Hệ thống sẽ hiển thị thông tin của các bài đăng
o Admin thêm bài đăng
o Admin cập nhật bài đăng
o Admin xóa bài đăng
Dòng sự kiện phụ:
o Xóa bài đăng đồng nghĩa với việc là xóa tất cả thông tin của loại bài đăng
2.3.3 Sơ đồ chức năng(BFD)