TRƯNG ĐI HC BCH KHOA H NI
VIỆN CÔNG NGHỆ THÔNG TIN V TRUYỀN THÔNG
B MÔN HỆ THỐNG THÔNG TIN
BO CO BI TẬP LỚN TƯƠNG TC NGƯI MY
Đề tài BTL01:
XÂY DỰNG MNG XÃ HI HC TIẾNG ANH TRỰC TUYẾN
Giảng viên hướng dẫn: Cô Vũ Thị Hương Giang
Sinh viên thực hiện : Nhóm HCI09
1. Nguyễn Văn Khải.
2. Nguyễn Đức Long.
3. Lê Sỹ Hạnh.
4. Vũ Hồng Hoan.
5. Phạm Xuân Trường.
Lớp : Hệ Thống Thông Tin K52
Hà Nội, tháng 10 năm 2011
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
LI NÓI ĐẦU 3
2.Biểu đồ lớp tổng quan: 21
1.Thiết kế bằng ký pháp đối thoại 28
2.Giao diện trang chủ: 30
3.Giao diện trang cá nhân của User: 32
4.Giao diện trang quản lí admin: 37
5.Đánh giá tính tương tác của hệ thống: 38
VI. KẾT LUẬN: 39
Tài Liệu Tham Khảo: 40
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 2
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
LI NÓI ĐẦU
Hiện nay, nước ta đang trong giai đoạn hội nhập tăng cường hợp tác với các nước bạn
bè quốc tế để phát triển nền kinh tế. Ngày càng có nhiều công ty, các tổ chức nước ngoài
đầu tư và hợp tác vào nước ta. Khả năng sử dụng ngoại ngữ thành thạo, đặc biệt bằng
Anh ngữ đã trở thành một trong những tiêu chí đánh giá hàng đầu trong các cuộc phỏng
vấn của các công ty. Vì vậy, nhu cầu học rèn luyện tiếng Anh luôn là cấp thiết đối với các
bạn trẻ nói riêng cũng như mọi lứa tuổi người dân nói chung. Trong một vài năm trở lại
đâu, hình thức học tiếng Anh qua mạng đang dần trở nên phổ biến trong xã hội. Khi cần
tìm những khóa học hay hay những bài hội thoại để luyện tập, người học có thể lên một
số trang web tự học tiếng Anh quốc tế như , hay trong nước
như để tự rèn luyện kỹ năng cho mình.
Tuy nhiên, do hình thức học tiếng Anh qua mạng mới được phổ biến rộng rãi trong
một vài năm gần đây, nên hình thức học tập này vẫn tồn tại một số nhược điểm và chưa
phát huy hiệu quả thật sự. Một trong những nguyên nhân chính có thể là do phần lớn
người dân vẫn quen với cách học tập cũ, đó là download các phần mềm luyện thi Toefl,
TOEIC về máy và tự luyện tập.Hơn nữa, người ta vẫn coi một mạng xã hội là nơi để trò
chuyện hơn là để học tập, vì vậy nên những website học tiếng Anh hiện tại vẫn chưa thu
được số lượng bạn học như dự tính.
Với mong muốn xây dựng một website học Anh ngữ giúp mọi người có thể vừa tự
học tiếng Anh vừa có thể trao đổi kiến thức với những bạn học khác, nhóm chúng em đã
quyết định lựa chọn đề tài xây dựng mạng xã hội học Anh ngữ trực tuyến. Khác với
những trang web nổi tiếng như ,cho phép bạn đọc luyện nhiều
ngoại ngữ như tiếng Anh, Ý, Đức… hệ thống mới của nhóm sẽ tập trung vào luyện tập
Anh ngữ qua các bài luận, qua đó nhóm sẽ thực hiện những ý tưởng của mình để làm
mạng xã hội trở nên thân thiện, hữu ích với người dùng hơn.
Trong quá trình phân tích và thiết kế hệ thống và thiết kế giao diện, chúng em đã sử
dụng những kiến thức đã được dạy trong môn học Tương tác người máy do cô Vũ Thị
Hương Giang giảng dạy. Tuy nhiên, do có thể còn thiếu kinh nghiệm, nên chúng em rất
mong được thầy và các bạn góp ý để hoàn thiện hệ thống website hơn trong thời gian tới.
Nhóm chúng em gồm 5 thành viên:
Họ tên MSSV Liên hệ
Phạm Xuân Trường 20073100 01656053368()
Nguyễn Văn Khải 20071562
Lê Sỹ Hạnh 20073647
Vũ Hồng Hoan 20071195
Nguyễn Đức Long 20071768
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 3
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
I. Mô tả bài toán:
• Mục đích: Xây dựng mạng xã hội học tiếng anh trực tuyến.
• Mô tả: Trang web hỗ trợ học tiếng anh thông qua việc người dùng viết các bài luận
theo các chủ đề, đóng góp ý kiến trong các bài luận, chia sẻ tài liệu….
Người dùng truy cập vào hệ thống có thể sử dụng một số tính năng cơ bản như: xem
thông tin, tìm kiếm tài liệu, đọc các topic.
Sau khi đăng kí tài khoản và đăng nhập, người dùng có thể upload tài liệu, download
tài liệu, viết topic và comment ở các topic.
Người dùng phải đạt một level hoạt động nhất định mới có quyền viết bài luận
Tài liệu do người dùng upload lên trang web sẽ được hệ thống lưu lại chờ admin kiểm
duyệt. Nếu tài liệu hợp lệ sẽ được hiển thị, ngược lại admin sẽ xóa.
Ngoài ra người dùng còn có thể kết bạn, gửi tin nhắn với người dùng khác .
• Tham khảo các hệ thống hiện tại:
www.livemocha.com: là website hỗ trợ học ngoại ngữ với nhiều thứ tiếng, cung cấp
các chức năng: kết bạn, các test ngôn ngữ, review các bài tập, hệ thống tính điểm cá
nhân…
• Phạm vi: Sau khi trao đổi đi đến thống nhất, nhóm giới hạn phạm vi hệ thống học
tiếng Anh trực tuyến của nhóm sẽ có những chức năng chính sau:
Quản lý tài khoản cá nhân.
Kết bạn với những thành viên khác tham gia vào mạng xã hội.
Học tập và thực hành các kỹ năng nghe, nói đọc và viết.
Chia sẻ tài liệu và giúp đỡ lẫn nhau khi đánh giá các bài luận.
• Đánh giá hệ thống so với hệ thống cũ:
- Điểm bổ sung:
Hỗ trợ chức năng tùy chỉnh giao diện, tương thích với từng người dùng
Đơn giản hóa giao diện để tiện cho việc thao tác các chức năng
Bổ sung thêm chức năng upload và chia sẻ tài liệu.
- Điểm chưa hoàn thiện:
Hạn chế bớt một số chức năng: các test ngôn ngữ, chỉ hỗ trợ học một ngôn ngữ là
tiếng anh.
II. Kiến trúc tổng thể:
1. Kiến trúc hệ thống theo mô hình phân tầng:
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 4
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
Trong đó:
- Giới thiệu
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 5
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
• Hệ thống xây dựng theo mô hình phân tầng, gồm 3 tầng lớn: Presentation,
Business, Data Access Layer
• Cụ thể
o Presentation Layer
Gồm
User Interface: ứng với các View tương tác với người dùng.
o Business Layer
Gồm
Application Logic: chứa các thành phần thực hiện logic của ứng
dụng; nhận yêu cầu và dữ liệu vào từ Presentation, sơ chế theo các
yêu cầu cụ thể (VD xử lý request, xử lý bảo mật lọc dữ liệu vào); rồi
chuyển tiếp cho bộ phận Business xử lý
Business Logic: chứa các thành phần thực hiện thao tác cụ thể theo
yêu cầu nghiệp vụ của ứng dụng.
o Data Access Layer
Gồm
Data Entity và Entity Framework: chứa các thành phần thực hiện kết
nối database; ánh xạ dữ liệu trong database với các thực thể trong
ứng dụng, phục vụ cho các thao tác của tầng Business
Database: cơ sở dữ liệu vật lý.
- Ý nghĩa
• Kiến trúc phân tầng là kiến trúc truyền thống phù hợp cho mọi loại hình ứng dụng
• Áp dụng kiến trúc phân tầng trong ứng dụng đảm bảo sự độc lập trong quá trình
phát triển, đồng thời giảm chi phí bảo trì các thành phần của ứng dụng.
2. Mô hình các thành phần và cơ chế giao tiếp:
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 6
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
Trong đó
• Hệ thống xây dựng theo kiến trúc MVC, trên ngôn ngữ PHP
• Model
o Gồm các thành phần (class) đại diện cho các domain chính của hệ thống
• View
o Giao diện tương tác người dùng
o Thông tin hiển thị trên View được đặt trong 1 Model cụ thể ứng với View
đó
• Controller
o Là thành phần trung gian giữa Model và View
o Có nhiệm vụ nhận yêu cầu từ View gửi đến, gọi đến các thành phần liên
quan để xử lý yêu cầu, từ đó quyết định kết quả trả lời (bao gồm 1 View và
Model tương ứng)
- Một cách tương đối có thể hình dung các thành phần ứng dụng(component) theo thứ
tự từ trên xuống như sau:
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 7
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
• View
• Controller
• Service
o WebContextService
o DataService
• Repository
• Entity (bao gồm các class Model)
• Entity Framework
• Database
- Cơ chế hoạt động và giao tiếp giữa các thành phần
• Luồng thông tin xuất phát từ mức trên cùng, đi xuống các mức dưới. Trong từng
thành phần mức trên gọi tới các thành phần ở mức dưới để xử lý nghiệp vụ. Các
thành phần mức dưới không cần quan tâm tới mức trên.
• Các thành phần trong ứng dụng giao tiếp thông qua các giao diện (Interface), tạo
sự lỏng lẻo trong liên kết giữa các thành phần
o Controller gọi thành phần Service thông qua các Interface:
ISecurity
IMembership
IDataService
o Service gọi thành phần Data thông qua Interface
IDataRepository
• Các package component lớn phục vụ cho nghiệp vụ của ứng dụng
o Service : gồm các thành phần
WebContextService
Data Service
o Data : gồm các thành phần
DataRepository
DataEntity
Entity Framework
3. Mô hình triển khai:
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 8
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
Trong đó:
• Hệ thống được triển khai trên 3 node chính
o Máy Web Server cài đặt website và các service phục vụ ứng dụng
o Máy Database Server chứa database phục vụ cho ứng dụng, kết nối với web
server sử dụng giao thức bảo mật TLS/SSL
o Máy Client sử dụng trình duyệt truy nhập website, dùng giao thức TCP/IP
III. Phân tích hệ thống:
1. Xây dựng biểu đồ use case:
1.1. Các tác nhân của hệ thống:
Admin
User
Guest
Mô tả:
Hệ thống gốm 3 tác nhân chính, bao gồm khách, thành viên và người quản trị.
- Guest : là người sử dụng bình thường, nhóm này chỉ có các chức năng cơ bản:
xem thông tin, tìm kiếm tài liệu.
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 9
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
- User: nhóm này có tất cả các quyền của khách, ngoài ra còn có quyền tạo topic,
comment, upload và download tài liệu, kết bạn và gửi tin nhắn cho thành viên
khác.
- Admin: Người quản trị hệ thống, có tất cả các quyền của hệ thống (bao gồm tất cả
quyền của hai nhóm trên) ngoài ra còn có thêm quản lí thành viên, quản lí topic,
quản lí tài liệu (resource) …
1.2. Phân tích các use case:
Mô hình Use Case tổng quan của hệ thống:
Registry
Search
View info
Guest
Login
Manage User
<<include>>
Manager Resource
<<include>>
Manage Comment
<<include>>
Manage Topic
<<include>>
Admin
Manage Owner Friend
<<include>>
Download
<<include>>
Upload
<<include>>
Manage Message
<<include>>
Create/Edit Topic
<<include>>
Create Commet
<<include>>
User
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 10
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
1.2.1.Các use case liên quan đến tác nhân guest:
Registry
View info
Search
Guest
1.2.1.1. Use Case Registry :
- Tóm tắt: đây là trường hợp khách đăng kí tài khoản
- Tác nhân: guest
- Liên quan: không có use case liên quan
- Luồng sự kiện:
• Luồng sự kiện chính:
- Người dùng chọn chức năng Registry trên giao diện hệ thống
- Hệ thống hiển thị trang đăng kí
- Người dùng nhập các thông tin yêu cầu để đăng kí: tên đăng nhập,
email, mật khẩu.
- Hệ thống kiểm tra các thông tin nhập vào đã đầy đủ và đúng định dạng
chưa.
- Hệ thống thêm thông tin user mới vào CSDL
- Hiển thị thông báo đăng nhập thành công
- Kết thúc use case
• Luồng sự kiện rẽ nhánh:
Luồng 1:
- Tại giao diện đăng kí, người dùng không muốn tiếp tục, chọn hủy bỏ
- Kết thúc use case
Luồng 2:
- Thông tin nhập vào thiếu hoặc không đúng định dạn
- Hệ thống từ chối đăng kí, hiển thị thông báo
- Kết thúc use case
Luồng 3:
- Hệ thống không thể kết nối cơ sở dữ liệu
- Hiển thị thông báo lỗi, kết thúc use case
1.2.1.2. Use Case Search:
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 11
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
- Tóm tắt: người dùng vào hệ thống có thể tìm kiếm User, Topic, Tài liệu
(resource)
- Tác nhân: guest
- Liên quan: không có
- Luồng sự kiện :
• Luồng sự kiện chính:
- Người dùng nhập từ khóa cần tìm vào ô tìm kiếm trên giao diện và chọn
mục tìm kiếm: User, Topic hoặc Resource
- Hệ thống tìm kiếm trong CSDL từ khóa nhập vào
- Hiển thị kết quả tìm kiếm cho người dùng
- Kết thúc use case
• Luồng sự kiện rẽ nhánh:
- Hệ thống không thể kết nối CSDL
- Hiển thị thông báo lỗi, kết thúc use case.
1.2.2.Các use case liên quan đến tác nhân User:
Login
View Friendlist
Send Friend request
Confirm Friend request
Delete User's Friend
Send Message
Read Message
Delete Message
<<include>>
Manage Owner Friend
<<include>>
<<extend>>
<<extend>>
<<extend>>
<<extend>>
Upload
<<include>>
Download
<<include>>
Manage Message
<<include>>
<<extend>>
<<extend>>
<<extend>>
Create/Edit topic
<<include>>
Create Comment
<<include>>
Change Profile
User
<<include>>
<<include>>
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 12
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
1.2.2.1. Use Case Login:
- Mô tả: đây là trường hợp user đăng nhập vào hệ thống để thực hiện các chức năng
của hệ thống.
- Tác nhân: User
- Use Case liên quan: không có
- Luồng sự kiện:
• Luồng sự kiện chính:
- User chọn đăng nhập trên giao diện chính của hệ thống
- Hệ thống hiển thị hộp thoại đăng nhập
- User nhập username và password đã đăng kí
- Hệ thống xác nhận mật khẩu
- Hiển thị giao diện chức năng của user
- Kết thúc use case
• Luồng sự kiện rẽ nhánh:
Luồng 1:
- User hủy đăng nhập
- Hệ thống bỏ đăng nhập, hiển thị giao diện ban đầu
- Kết thúc use case
Luồng 2 :
- Username và password nhập vào ko chính xác
- Hệ thống từ chối đăng nhập
- Hiển thị thông báo và hộp thoại đăng nhập
- Kết thúc use case
Luồng 3 :
- Hệ thống có lỗi trong quá trình xác nhận tài khoản
- Hiển thị thông báo lỗi
- Kết thúc use case
1.2.2.2. Use Case Change Profile:
- Mô tả: đây là trường hợp người dùng thay đổi thông tin cá nhân
- Tác nhân: user
- Use case liên quan: Use case này phải sử dụng use case login
- Luồng sự kiện:
• Luồng sự kiện chính:
- User chọn xem thông tin cá nhân
- Hệ thống hiển thị trang thông tin cá nhân
- User có thể thay đổi một số thông tin: mật khẩu đăng nhập, thông tin mô
tả …
- User chọn lưu thay đổi
- Hệ thống xác nhận yêu cầu, kiểm tra dữ liệu và cập nhật thông tin mới
- Hiển thị thông báo
- Kết thúc use case
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 13
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
• Luồng sự kiện rẽ nhánh:
Luồng 1 :
- User hủy yêu cầu thay đổi thông tin
- Hệ thống hiển thị thông tin cá nhân như ban đầu
- Kết thúc use case
Luồng 2 :
- Hệ thống có lỗi trong quá trình xử lí
- Hiển thị thông báo lỗi
- Kết thúc use case
1.2.2.3. Use case create/edit topic:
- Mô tả: đây là chức năng cho phép user tạo topic mới hoặc chỉnh sửa topic của
mình. (user chỉ có thể tạo topic khi đạt một số điểm hoạt động nhất định - level
point)
- Tác nhân: User
- Liên kết: use case này cần phải sử dụng use case login
- Luồng sự kiện:
• Luồng sự kiện chính:
- Trong các catagory, User chọn chức năng tạo topic mới hoặc chỉnh sửa
các topic của mình.
- Hệ thống kiểm tra xem user có đủ điều kiện lập topic hay không (nếu
tạo mới)
- Hệ thống hiển thị form tạo topic (nếu tạo mới) hoặc form chỉnh sửa
topic đã chọn.
- User nhập các thông tin: category, nội dung …. (nếu tạo mới) hoặc
chỉnh sửa các nội dung topic. Sau đó chọn chức năng lưu thông tin
- Hệ thống xác nhận lại yêu cầu và dữ liệu vào. Hệ thống lưu dữ thông
tin.
- Hiển thị thông báo
- Kết thúc use case
• Luồng dữ liệu rẽ nhánh:
Luồng 1:
- User hủy yêu câu
- Hệ thống trở lại giao diễn cũ
- Kết thúc use case
Luồng 2:
- User không đủ điều kiện lập topic
- Hệ thống hiển thị thông báo
- Kết thúc use case
Luồng 3:
- Hệ thống có lỗi trong quá trình xử lí
- Hiển thị thông báo lỗi
- Kết thúc use case
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 14
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
1.2.2.4. Use case Send Friend Request:
- Mô tả: trường hợp phép người dùng gửi yêu cầu kết bạn tới người dùng khác
- Tác nhân: user
- Use case liên quan: cần phải thực hiện use case login
- Luồng sự kiện:
• Luồng sự kiện chính:
- Người dùng vào trang thông tin của người dùng khác và chọn chức năng
kết bạn
- Hệ thống xác nhận và lưu yêu cầu kết bạn
- Hiển thị thông báo
- Kết thúc use case
• Luồng sự kiện rẽ nhánh
- Hệ thống gặp lỗi trong quá trình xử lí
- Hiển thị thông báo lỗi
- Kết thúc usecase
1.2.2.5. Use case Confirm Friend Request:
- Mô tả : trường hợp người dùng phản hồi lại yêu cầu kết bạn
- Tác nhân: user
- Use case liên quan: cần phải thực hiện use case login
- Luồng sự kiện:
• Luồng sự kiện chính:
- Người dùng chọn chức năng xem danh sách các yêu cầu kết bạn.
- Hệ thống hiển thị các yêu cầu kết bạn
- Với mỗi yêu cầu, người dùng chọn đồng ý hoặc từ chối.
- Hệ thống xác nhận phản hồi. Nếu người dùng chọn đồng ý, hệ thống sẽ
cập nhật thông tin kết bạn. Nếu người dùng từ chối, hệ thống sẽ xóa
thông tin kết bạn khỏi CSDL.
- Gửi thông báo cho người dùng (bao gồm cả người gửi và người nhận
yêu cầu kết bạn)
- Kết thúc use case
• Luồng sự kiện rẽ nhánh:
- Hệ thống gặp lỗi trong quá trình xử lí
- Hiển thị thông báo lỗi
- Kết thúc use case
1.2.2.6. Use case View Friend list
- Mô tả: trong trang thông tin cá nhân, người dùng có thể xem danh sách bạn bè.
- Tác nhân: user
- Use case liên quan: cần thực hiện use case Login
- Luồng sự kiện:
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 15
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
• Luồng sự kiện chính:
- Tại trang thông tin các nhân, người dùng chọn chức năng view friendlist
- Hệ thống truy cập CSDL và hiển thị danh sách Friend
- Kết thúc use case
• Luồng sự kiện rẽ nhánh:
- Hệ thống gặp lỗi trong quá trình xử lí
- Hiển thị thông báo lỗi
- Kết thúc use case
1.2.2.7. Use case Delete Friend:
- Mô tả: cho phép người dùng có thể xóa Friend trong danh sách Friend
- Tác nhân: user
- Use case liên quan: use case này cần sử dụng use case Login và use case View
Friend list
- Luồng sự kiện:
• Luồng sự kiện chính:
- Tại danh sách Friend, người dụng chọn Friend cần xóa và chọn chức
năng xóa
- Hệ thống xác nhận yêu cầu. Hiển thị thông báo để người dùng xác nhận
xóa.
- Hệ thống xóa thông tin kết bạn trong CSDL
- Hiển thị thông báo xóa thành công
- Kết thúc use case
• Luồng sự kiện rẽ nhánh:
Luồng 1:
- Người dùng hủy yêu cầu xóa
- Hệ thống hiển thị danh sách Friend ban đầu
- Kết thúc use case
Luồng 2:
- Hệ thống gặp lỗi trong quá trình xử lí
- Hiển thị thông báo lỗi
- Kết thúc use case
1.2.3.Các use case liên quan đến tác nhân admin:
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 16
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
Manage User
Manager Resource
Manage Topic
Admin
Manage Comment
Active resource
Delete Resource
View Resource
Delete Topic
Create Comment
Delete Comment
Create/change user
Create/Edit topic
Delete User
Login
<<include>>
<<include>>
<<include>>
<<include>>
Delete User's Friend
<<include>>
Delete User's Comment
Delete User's Topic
Delete User Message
<<include>>
<<include>>
<<include>>
1.2.3.1. Use Case Create/Change User:
- Mô tả: đây là trường hợp admin tạo hoặc thay đổi thông tin user
- Tác nhân: Admin
- Use Case liên quan: cần phải sử dụng use case login
- Luồng sự kiện:
• Luồng sự kiện chính:
- Trên giao diện quản trị user, admin chọn thay đổi thông tin user hoặc
tạo mới user.
- Hệ thống hiển thị giao diện nhập user. Nếu là chức năng thay đổi thông
tin user, hệ thống sẽ hiển thị thông tin user được chọn
- Admin nhập các thông tin: username (nếu tạo mới), password và các
thông tin chi tiết khác sau đó chọn chức năng lưu thông tin.
- Hệ thống xác nhận lại yêu cầu và dữ liệu vào. Hệ thống lưu thông tin
- Hiển thị thông báo
- Kết thúc use case
• Luồng dữ liệu rẽ nhánh:
Luồng 1:
- Admin hủy yêu cầu
- Hệ thống hiển thị giao diện quản lí học sinh
- Kết thúc use case
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 17
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
Luồng 2:
- Thông tin nhập vào không hợp lệ
- Hệ thống từ chối lưu thông tin
- Kết thúc use case
Luồng 3:
- Hệ thống có lỗi trong quá trình xác nhận tài khoản
- Hiển thị thông báo lỗi
- Kết thúc use case
1.2.3.2. Use Case Delete User:
- Mô tả: Đây là trường hợp admin muốn xóa thông tin một user
- Tác nhân: admin
- Use case liên quan: cần sử dụng use case Login , Delete Friend, Delete User’s
Comment, Delete User’s Topic, Delete User’s Message.
- Luồng sự kiện:
• Luồng sự kiện chính:
- Tại giao diện quản lí user, admin chọn xóa thông tin một user
- Hệ thống hiển thị lại giao diện thông tin user
- Admin xác nhận xóa user
- Hệ thống thực hiện xóa thông tin user, thông tin kết bạn, các topic,
comment, message của user.
- Hiển thị thông báo
- Kết thúc use case
• Luồng sự kiện rẽ nhánh:
Luồng 1:
- Admin hủy yêu cầu
- Hệ thống hiển trị giao diện quản lí user
- Kết thúc use case
Luồng 2:
- Hệ thống có lỗi trong quá trình xác nhận tài khoản
- Hiển thị thông báo lỗi
- Kết thúc use case
1.2.3.3. Use case Delete User’s Friend:
- Mô tả: Đây là use case phát sinh khi use case Delete User xảy ra
- Tác nhân: admin
- Use case liên quan: Delete User
- Luồng sự kiện:
• Luồng sự kiện chính:
- Hệ thống xóa toàn bộ thông tin friend của user
- Trả về thông báo
- Kết thúc use case
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 18
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
• Luồng sự kiện rẽ nhánh:
- Hệ thống gặp lỗi trog quá trình xử lí
- Hiển thị thông báo lỗi
- Kết thúc use case
1.2.3.4. Use case View Resource:
- Mô tả: Trường hợp admin xem danh sách các tài liệu
- Tác nhân: Admin
- Use Case liên quan: cần thực hiện use case Login
- Luồng sự kiện
• Luồng sự kiện chính:
- Tại trang quản trị, admin chọn xem danh sách tài liệu.
- Hệ thống xác nhận yêu cầu và kết nối dữ liệu. Hệ thống hiển thị danh
sách tài liệu, ưu tiên hiển thị các tài liệu chưa được duyệt.
- Kết thúc use case
• Luồng dữ liệu rẽ nhánh:
- Hệ thống gặp lỗi trog quá trình xử lí
- Hiển thị thông báo lỗi
- Kết thúc use case
1.2.3.5. Use case Active Resource:
- Mô tả: trường hợp admin kiểm duyệt tài liệu do người dùng upload
- Tác nhân: Admin
- Use case liên quan: cần thực hiện use case Login và use case View Resource
- Luồng sự kiện:
• Luồng sự kiện chính:
- Tại danh sách Resource, Admin chọn xem tài liệu chưa được kiểm
duyệt, nếu tài liệu hợp lệ, admin xác nhận duyệt.
- Hệ thống cập nhật thông tin tài liệu, hiển thị tài liệu trong danh mục đã
kiểm duyệt.
- Hiển thị thông báo
- Kết thúc use case
• Luồng sự kiện rẽ nhánh:
Luồng 1:
- Tài liệu không hợp lệ, admin chọn chức năng hủy
- Hệ thống xóa tài liệu khỏi CSDL
- Hiển thị thông báo
- Kết thúc use case
Luồng 2:
- Hệ thống gặp lỗi trog quá trình xử lí
- Hiển thị thông báo lỗi
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 19
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
- Kết thúc use case
1.2.3.6. Use case Delete Resource :
- Mô tả: trường hợp admin xóa tài liệu
- Tác nhân: Admin
- Use case liên quan: cần sử dụng use case Login và View Resource
- Luồng sự kiện:
• Luồng sự kiện chính:
- Tại danh sách tài liệu, admin chọn các tại liệu cần xóa và xác nhận xóa
- Hệ thống xác nhận yêu cầu
- Hệ thống xóa tài liệu khỏi CSDL
- Hiển thị thông báo
- Kết thúc use case
• Luồng dữ liệu rẽ nhánh:
- Hệ thống gặp lỗi trog quá trình xử lí
- Hiển thị thông báo lỗi
- Kết thúc use case
1.2.3.7. Use case Delete Topic
- Mô tả: trường hợp admin xóa topic
- Tác nhân: admin
- Use case liên quan: cần phải sử dụng use case Login
- Luồng sự kiện:
• Luồng sự kiện chính:
- Tại giao diện quản lí topic, admin chọn topic cần xóa và chọn chức năng
xóa topic
- Hệ thống xác nhận yêu cầu, hệ thống truy cập CSDL, xóa topic và các
comment trong topic.
- Hiển thị thông báo
- Kết thúc use case
• Luồng sự kiện rẽ nhánh:
- Hệ thống gặp lỗi trog quá trình xử lí
- Hiển thị thông báo lỗi
- Kết thúc use case
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 20
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
2. Biểu đồ lớp tổng quan:
3. Xây dựng biểu đồ trình tự:
3.1. Các nhóm chức năng liên quan đến user:
Use Case Login và Change Profile:
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 21
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
Use case Manage Owner Friend:
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 22
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
3.2. Các use case liên quan đến Admin:
Chức năng quản lý User:
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 23
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 24
Bài tập lớn xây dựng mạng xã hội học tiếng Anh trực tuyến
IV. Thiết kế hệ thống:
1. Biểu đồ lớp chi tiết:
1.1. Use case Manage User:
class design for Manage User
UserController
+ editProfile(string) : ViewResult
+ viewProfile(string) : ViewResult
User
- userID: int
- username: string
- password: string
- email: string
«interface»
IUserService
UserServ ice
+ creatUser() : boolean
+ getUserByUserName(string) : User
+ getUser() : List<User>
+ getUserProfile(string) : user profile
+ updateUserProfile() : boolean
«interface»
IUserRepository
UserRepository
+ creatUser() : boolean
+ getUserByUserName(string) : user
+ updateUserProfile() : boolean
«use»
«use»
«use»
«use»
Trong đó
- Mô hình class của use case là 1 trường hợp cụ thể, áp dụng kiến trúc các thành phần và
cơ chế giao tiếp (mục II.2)
- Module Manage User bao gồm các class chính
Entity
o User
Repository
o UserRepository
Service
o UserService
Thực hiện: Nhóm 9 – Hệ Thống Thông Tin K52 25