You are on page 1of 19

ĐẠI HỌC CẦN THƠ

TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYÊN LÝ XÂY DỰNG PHẦN MỀM

Mã môn: CT240

ĐỀ TÀI

PHẦN MỀM CHAT- APP BANBAN

Giảng viên hướng dẫn:  Trương Minh Thái


Mã lớp học phần: CT240-02
Sinh viên thực hiện: Nhóm 01

-Thành Viên:

+ Nguyễn Hồ Phước Vinh, MSSV: B2003936, Mã Lớp: DI2096A2 (Nhóm trưởng)


+ Trương Trung Vĩnh, MSSV: B2012283, Mã Lớp: DI2096A4
+ Lê Nhựt Tiến, MSSV: B2003929, Mã Lớp: DI2096A2
+ Nguyễn Công Đạt, MSSV: B2012076, Mã Lớp: DI2096A3
+ Hà Phan Khải, MSSV: B2012103, Mã Lớp: DI2096A3
Học kì II, 2022-2023
NHẬN XÉT CỦA GIẢNG VIÊN

...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................

...........................................................................................
...........................................................................................
...........................................................................................
...........................................................................................
Đặc tả yêu cầu phần mềm Trang iv

Mục Lục
1. GIỚI THIỆU ĐỀ TÀI................................................................................................................ 1
2. MÔ TẢ YÊU CẦU CHỨC NĂNG.............................................................................................. 1
2.1. Đăng nhập và đăng ký tài khoản:...................................................................................1
2.2. Gửi và nhận tin nhắn văn bản:........................................................................................3
2.3 Gọi thoại và video:............................................................................................................3
2.4 Chia sẻ file:........................................................................................................................4
2.5 Tìm kiếm người dùng và nhóm:.........................................................................................4
2.6 Thông báo:.........................................................................................................................5
3. MÔ TẢ YÊU CẦU PHI CHỨC NĂNG ........................................................................................ 5
3.1 Hiệu suất:.........................................................................................................................5
3.2 Bảo mật:...........................................................................................................................5
3.3. Độ tin cậy:........................................................................................................................5
4. MÔ TẢ YÊU CẦU LIÊN QUAN ĐẾN PHẦN MỀM BÊN NGOÀI.....................................................6
4.1 Phần cứng:.......................................................................................................................6
4.2 Hệ điều hành:....................................................................................................................6
4.3 Phần mềm hỗ trợ:..............................................................................................................7
4.4 Các yêu cầu khác:..............................................................................................................7
5. ĐỊNH NGHĨA, THUẬT NGỮ VÀ CHỮ VIẾT TẮT........................................................................7
5.1 Định nghĩa:........................................................................................................................7
5.2 Thuật ngữ:.........................................................................................................................8
5.3 Chữ viết tắt:......................................................................................................................8
6. YÊU CẦU PHI CHỨC NĂNG................................................................................................... 8
6.1 Bảo mật:...........................................................................................................................8
6.2 Hiệu suất:.........................................................................................................................9
6.3 Hệ thống:..........................................................................................................................9
6.4 Khả năng mở rộng:...........................................................................................................9
9. SƠ ĐỒ USE CASE................................................................................................................ 10
9.1 Xây dựng biểu đồ use case..............................................................................................10
9.2 Mô tả các use case...........................................................................................................10
10. BIỂU ĐỒ LỚP.................................................................................................................... 13
11. BIỂU ĐỒ ER...................................................................................................................... 13
Tài liệu tham khảo.....................................................................................................................14

Mục lục hình

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang v

Hình 1: Giao diện đăng nhập...............................................................................................2


Hình 2: Giao diện đăng kí....................................................................................................2
Hình 3: giao diện Gửi và nhận tin nhắn..............................................................................3
Hình 4: giao diện gọi thoại..................................................................................................4
Hình 5: Sơ đồ UseCase......................................................................................................10
Hình 6: Sơ đồ lớp...............................................................................................................13
Hình 7: Biểu đồ ER...........................................................................................................13

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 1

1. Giới thiệu đề tài

Mục đích của phần mềm Chat-App BANBAN là cung cấp cho người dùng một
ứng dụng trò chuyện trực tuyến, cho phép họ giao tiếp với nhau qua tin nhắn văn bản,
âm thanh và video. Chat-App BANBAN sẽ được phát triển nhằm cung cấp một trải
nghiệm trò chuyện trực tuyến tốt hơn cho người dùng, bao gồm tính năng nhanh, tiện
lợi, an toàn và bảo mật.

Các độc giả mục tiêu của đặc tả SRS cho Chat-App BANBAN bao gồm các
nhà phát triển phần mềm, kiến trúc sư, nhà thiết kế giao diện người dùng, quản lý dự
án, nhân viên kiểm thử phần mềm, nhà đầu tư và khách hàng.

Mục tiêu của tài liệu này là cung cấp cho đội ngũ phát triển và các độc giả một
cái nhìn tổng quan về các yêu cầu chức năng và phi chức năng của phần mềm Chat-
App BANBAN, giúp họ phát triển phần mềm một cách chính xác và đáp ứng yêu cầu
của khách hàng.

2. Mô tả Yêu cầu Chức năng


Dưới đây là mô tả chi tiết về các yêu cầu chức năng của phần mềm Chat-App
BANBAN:

2.1. Đăng nhập và đăng ký tài khoản:


 Tác nhân: Người dùng

 Hoạt động: Người dùng có thể đăng ký tài khoản mới hoặc đăng nhập vào tài
khoản hiện có

 Kết quả dự kiến: Người dùng sẽ được đăng nhập và có thể truy cập các tính
năng của Chat-App BANBAN.

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 2

Hình 1: Giao diện đăng nhập

Hình 2: Giao diện đăng kí

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 3

2.2. Gửi và nhận tin nhắn văn bản:


 Tác nhân: Người dùng

 Hoạt động: Người dùng có thể gửi và nhận tin nhắn văn bản với người dùng
khác trong ứng dụng.

 Kết quả dự kiến: Người dùng có thể trò chuyện với nhau qua tin nhắn văn bản.

Hình 3: giao diện Gửi và nhận tin nhắn

2.3 Gọi thoại và video:


 Tác nhân: Người dùng

 Hoạt động: Người dùng có thể gọi thoại hoặc video với người dùng khác trong
ứng dụng.

 Kết quả dự kiến: Người dùng có thể giao tiếp với nhau qua cuộc gọi thoại hoặc
video.

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 4

Hình 4: giao diện gọi thoại

2.4 Chia sẻ file:


 Tác nhân: Người dùng

 Hoạt động: Người dùng có thể chia sẻ các file (hình ảnh, video, tài liệu...) với
người dùng khác trong ứng dụng.

 Kết quả dự kiến: Người dùng có thể chia sẻ file với nhau qua ứng dụng.

2.5 Tìm kiếm người dùng và nhóm:


 Tác nhân: Người dùng

 Hoạt động: Người dùng có thể tìm kiếm người dùng hoặc nhóm trò chuyện
trong ứng dụng.

 Kết quả dự kiến: Người dùng có thể tìm kiếm và kết nối với những người dùng
hoặc nhóm mà họ quan tâm.S

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 5

2.6 Thông báo:


 Tác nhân: Hệ thống

 Hoạt động: Hệ thống sẽ thông báo cho người dùng khi có tin nhắn mới, cuộc
gọi đến, hoặc thông báo từ nhóm.

 Kết quả dự kiến: Người dùng sẽ nhận

3. Mô tả Yêu cầu phi Chức năng

Dưới đây là mô tả chi tiết về các yêu cầu phi chức năng của phần mềm Chat-App
BANBAN:

3.1 Hiệu suất:


 Yêu cầu: Phần mềm Chat-App BANBAN phải có khả năng xử lý và truyền tải
dữ liệu nhanh chóng và hiệu quả, đảm bảo tính khả dụng và đáp ứng nhu cầu
của người dùng.

 Kết quả dự kiến: Phần mềm Chat-App BANBAN sẽ có thời gian phản hồi
nhanh, độ trễ thấp và không bị gián đoạn khi sử dụng.

3.2 Bảo mật:


 Yêu cầu: Phần mềm Chat-App BANBAN phải đảm bảo tính bảo mật và sự
riêng tư của người dùng, bao gồm bảo vệ thông tin đăng nhập, dữ liệu cá nhân
và các cuộc trò chuyện.

 Kết quả dự kiến: Phần mềm Chat-App BANBAN sẽ có các tính năng bảo mật
như mã hóa tin nhắn, xác thực người dùng, quản lý quyền truy cập và bảo vệ
dữ liệu người dùng.

3.3. Độ tin cậy:


 Yêu cầu: Phần mềm Chat-App BANBAN phải đảm bảo độ tin cậy và sẵn sàng
hoạt động mọi lúc mọi nơi, đặc biệt trong trường hợp có sự cố xảy ra.

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 6

 Kết quả dự kiến: Phần mềm Chat-App BANBAN sẽ có khả năng khôi phục lại
dữ liệu trong trường hợp mất kết nối hoặc sự cố xảy ra, đồng thời cung cấp các
tính năng sao lưu và phục hồi dữ liệu. Ngoài ra, phần mềm cũng phải đảm bảo
sự tương thích với các nền tảng khác nhau để đáp ứng nhu cầu của người dùng.

4. Mô tả Yêu cầu liên quan đến phần mềm bên ngoài

Dưới đây là mô tả chi tiết về các yêu cầu liên quan đến phần mềm bên ngoài của phần
mềm Chat-App BANBAN:

4.1 Phần cứng:

 Yêu cầu: Phần mềm Chat-App BANBAN sẽ hoạt động trên các thiết bị có cấu
hình tối thiểu:

CPU: Intel Pentium 4 @ 3.0 GHz

RAM: 2 GB

Dung lượng bộ nhớ trống: 8 GB


 Kết quả dự kiến: Phần mềm Chat-App BANBAN sẽ có thể hoạt động trên các
thiết bị có cấu hình tối thiểu.

4.2 Hệ điều hành:


 Yêu cầu: Phần mềm Chat-App BANBAN sẽ hoạt động trên các hệ điều hành:

 Windows XP trở lên.


 OS X 10.3 Panther (Pinot) trở lên.
 Ubuntu 12.02 trở lên
 Kết quả dự kiến: Phần mềm Chat-App BANBAN sẽ hoạt động trên các hệ điều
hành được bao gồm Windows, Mac OS, Linux.

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 7

4.3 Phần mềm hỗ trợ:


 Yêu cầu: Phần mềm Chat-App BANBAN sẽ sử dụng các phần mềm hỗ trợ
trình duyệt web như: Chorme, Edge, Safari…

 Kết quả dự kiến: Chat-App BANBAN được chạy trên nền trình duyệt web.

4.4 Các yêu cầu khác:


 Yêu cầu: Phần mềm Chat-App BANBAN sẽ đáp ứng các yêu cầu quy định của
các quy chuẩn và tiêu chuẩn, bao gồm độ tin cậy, an toàn và bảo mật.

 Kết quả dự kiến: Phần mềm Chat-App BANBAN sẽ đáp ứng các yêu cầu quy
định của các quy chuẩn và tiêu chuẩn, bao gồm độ tin cậy, an toàn và bảo mật.
Ngoài ra, phần mềm cũng phải đáp ứng các quy định về sử dụng tài nguyên,
tiêu thụ năng lượng và quản lý mạng.

5. Định nghĩa, thuật ngữ và chữ viết tắt

Dưới đây là một số định nghĩa, thuật ngữ và chữ viết tắt được sử dụng trong tài liệu
về Chat-App BANBAN:

5.1 Định nghĩa:


 Phần mềm Chat-App BANBAN: một ứng dụng trò chuyện trực tuyến cho phép
người dùng trao đổi tin nhắn, hình ảnh, video và tệp đính kèm.

 Người dùng: một cá nhân sử dụng phần mềm Chat-App BANBAN để gửi và
nhận tin nhắn.

 Tài khoản người dùng: một tài khoản được tạo bởi người dùng để sử dụng phần
mềm Chat-App BANBAN, bao gồm tên đăng nhập, mật khẩu và thông tin cá
nhân.

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 8

 Nhóm trò chuyện: một nhóm các người dùng có thể gửi và nhận tin nhắn
chung.

5.2 Thuật ngữ:


 Gửi tin nhắn: hành động gửi một tin nhắn đến một người dùng hoặc một nhóm
trò chuyện.

 Nhận tin nhắn: hành động nhận một tin nhắn từ một người dùng hoặc một
nhóm trò chuyện.

 Đọc tin nhắn: hành động đọc một tin nhắn đã nhận từ một người dùng hoặc
một nhóm trò chuyện.

 Đánh dấu là đã đọc: hành động đánh dấu một tin nhắn đã được đọc bởi người
dùng.

 Đăng nhập: hành động nhập thông tin đăng nhập để truy cập vào tài khoản
người dùng.

 Đăng xuất: hành động thoát khỏi tài khoản người dùng.

5.3 Chữ viết tắt:


 SRS: Software Requirements Specification - Đặc tả yêu cầu phần mềm.

 UI: User Interface - Giao diện người dùng.

 API: Application Programming Interface - Giao diện lập trình ứng dụng.

 MVP: Minimum Viable Product - Sản phẩm tối thiểu phù hợp.

6. Yêu cầu Phi chức năng


Dưới đây là một số yêu cầu phi chức năng của phần mềm Chat-App BANBAN:

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 9

6.1 Bảo mật:


 Yêu cầu đăng nhập: Người dùng phải đăng nhập để sử dụng phần mềm và chỉ
được truy cập vào tài khoản của mình.

 Bảo mật mật khẩu: Tài khoản người dùng phải được bảo mật bằng mật khẩu và
được mã hóa trong cơ sở dữ liệu.

 Mã hóa dữ liệu: Tất cả các thông tin gửi và nhận qua Chat-App BANBAN phải
được mã hóa để đảm bảo tính bảo mật.

6.2 Hiệu suất:


 Tốc độ phản hồi: Phần mềm phải có thể xử lý nhanh chóng các yêu cầu của
người dùng, bao gồm gửi và nhận tin nhắn.

 Thời gian hoạt động: Phần mềm phải hoạt động liên tục và không bị gián đoạn
trong quá trình sử dụng.

 Tương thích với nhiều thiết bị: Phần mềm phải có thể hoạt động trên nhiều loại
thiết bị và hệ điều hành khác nhau.

6.3 Hệ thống:
 Độ tin cậy: Phần mềm phải đảm bảo tính ổn định và không gặp sự cố khi sử
dụng.

 Dễ cài đặt và sử dụng: Phần mềm phải có hướng dẫn cài đặt và sử dụng rõ
ràng, dễ hiểu và không quá phức tạp.

 Hỗ trợ ngôn ngữ: Phần mềm phải hỗ trợ nhiều ngôn ngữ khác nhau để đáp ứng
nhu cầu của người dùng từ các quốc gia khác nhau.

6.4 Khả năng mở rộng:


 Dễ dàng mở rộng: Phần mềm phải được thiết kế để dễ dàng mở rộng, đáp ứng
nhu cầu mở rộng của người dùng và công ty.

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 10

 Tính linh hoạt: Phần mềm phải được thiết kế để dễ dàng thay đổi và cập nhật
các tính năng mới một cách linh hoạt.

Tất cả các yêu cầu phi chức năng này đều là rất quan trọng để đảm bảo tính bảo mật,
hiệu suất và hệ thống của phần mềm Chat-App BANBAN.

9. Sơ đồ Use Case

9.1 Xây dựng biểu đồ use case

H
ì
n
h

5: Sơ đồ UseCase

9.2 Mô tả các use case


Use case Mô tả Các bước thực hiện
Đăng nhập Mô tả các bước đăng Hệ thống yêu cầu người dùng cung
nhập của người dùng cấp thông tin đăng nhập gồm tên
đăng nhâp,mật khẩu.
Nhập xong bấm nút đăng nhập

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 11

Hệ thống kiểm tra thông tin và gửi


thông báo thành công/thất bại.
Nếu thành công, chuyển qua trang
chính. Nếu thất bại, yêu cầu đăng
nhập lại.
Đăng xuất Mô tả việc đăng xuất Người dùng thực hiện chức năng
khỏi hệ thống đăng xuất khỏi hệ thống.
Hệ thống hiện thị yêu cầu xác nhận
từ người dùng
Người dùng xác nhận
Hệ thống đăng xuất tài khoản khỏi
hệ thống. Nếu người dùng không
xác nhận thì hệ thống sẽ giữ
nguyên hiện trạng.
Gọi video Mô tả việc gọi video Người dùng đăng nhập vào hệ
với người dùng, thống.
nhóm Chọn đối tượng hoặc nhóm cần gọi
Bấm vào biểu tượng call video
Hệ thống tự động kết nối người
dùng với nhau.
Nếu có người nhận thì cuộc gọi
được kết nối thành công.
Nếu thất bại, hệ thống hiển thị
không kết nối được
Chỉnh sửa hồ sơ Mô tả việc sửa thông Người dùng đăng nhập vào hệ
tin, hồ sơ cá nhân thống.
Vào mục hồ sơ cá nhân
Chọn mục cần chỉnh sửa
Thực hiện chỉnh sửa vào bấm nút
lưu
Hệ thống kiểm tra thông tin và lưu
thông tin vào cơ sở dữ liệu
Tìm kiếm người Mô tả việc tìm kiếm Người dùng đăng nhập vào hệ
dùng người dùng thống

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 12

Vào mục tìm kiếm


Nhập tên hoặc các thông tin nhận
dạng người dùng và bấm nút tìm
kiếm
Hệ thống đối chiếu thông tin vừa
nhập với cơ sở dữ liệu
Nếu tìm được thì hiển thị danh
sách phù hợp với thông tin được
nhập
Nếu thất bại thì hiện thông báo
không có kết quả nào phù hợp
Gửi tin nhắn Mô tả việc gửi tin Người dùng đăng nhập vào hệ
nhắn cho người dùng thống
hoặc nhóm Tìm kiếm người dùng hoặc nhóm
cần liên hệ và bấm vào
Hệ thống hiển thị trang chat
Người dùng nhập đoạn tin nhắn
vào text box phía dưới và nhấn nút
gửi
Hệ thống xử lý thông tin và lưu
thông tin
Nếu thành công, hiển thị thông báo
đã gửi
Nếu thất bại, hiển thị thông báo lỗi
Gửi video-ảnh Mô tả các bước gửi Người dùng đăng nhập hệ thống
video hoặc ảnh cho Tìm kiếm người dùng hoặc nhóm
người dùng cần liên hệ và bấm vào
Hệ thống hiển thị trang chat

Xem tin nhắn Mô tả việc xem tin Người dùng đăng nhập vào hệ
nhắn thống
Tìm kiếm người dùng hoặc nhóm
cần liên hệ và bấm vào
Hệ thống hiển thị trang chat

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 13

10. Biểu đồ lớp

Hình 6: Sơ đồ lớp

11. Biểu đồ ER

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 14

Hình 7: Biểu đồ ER

Tài liệu tham khảo

[1] Firebase Login and Registration, truy cập 13/4/2023 từ https://viblo.asia/p/firebase-login-and-


registration-authentication-aWj53VWol6m
[2] How to build a real-time Chat App with ReactJS and Firebase, truy cập 14/4/2023 từ
https://www.freecodecamp.org/news/building-a-real-time-chat-app-with-reactjs-and-firebase/
[3] FoveIT Official (2021), Đồ án Chat Java (Socket), truy cập 10/9/2022 từ
https://www.youtube.com/watch?v=wDG8m4dnPZw

Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ

You might also like