IEEE Software Requirements Specification Template ĐẠ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[.]
ĐẠI HỌC CẦN THƠ TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THƠNG NGUN 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 Học kì II, 2022-2023 NHẬN XÉT CỦA GIẢNG VIÊN h h Đặc tả yêu cầu phần mềm Trang iv Mục Lục GIỚI THIỆU ĐỀ TÀI MÔ TẢ YÊU CẦU CHỨC NĂNG 2.1 Đăng nhập đăng ký tài khoản: 2.2 Gửi nhận tin nhắn văn bản: 2.3 Gọi thoại video: 2.4 Chia sẻ file: 2.5 Tìm kiếm người dùng nhóm: .4 2.6 Thông báo: .5 MÔ TẢ YÊU CẦU PHI CHỨC NĂNG 3.1 Hiệu suất: .5 3.2 Bảo mật: 3.3 Độ tin cậy: MÔ TẢ YÊU CẦU LIÊN QUAN ĐẾN PHẦN MỀM BÊN NGOÀI 4.1 Phần cứng: .6 4.2 Hệ điều hành: 4.3 Phần mềm hỗ trợ: 4.4 Các yêu cầu khác: ĐỊNH NGHĨA, THUẬT NGỮ VÀ CHỮ VIẾT TẮT 5.1 Định nghĩa: 5.2 Thuật ngữ: .8 5.3 Chữ viết tắt: YÊU CẦU PHI CHỨC NĂNG 6.1 Bảo mật: 6.2 Hiệu suất: .9 6.3 Hệ thống: 6.4 Khả mở rộng: 9 SƠ ĐỒ USE CASE 10 9.1 Xây dựng biểu đồ use case 10 9.2 Mô tả 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ơ h Đặ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í Hình 3: giao diện Gửi nhận tin nhắn Hình 4: giao diện gọi thoại 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ơ h Đặc tả yêu cầu phần mềm Trang 1 Giới thiệu đề tài Mục đích phần mềm Chat-App BANBAN cung cấp cho người dùng ứng dụng trò chuyện trực tuyến, cho phép họ giao tiếp với qua tin nhắn văn bản, âm video Chat-App BANBAN phát triển nhằm cung cấp trải nghiệm trò chuyện trực tuyến tốt cho người dùng, bao gồm tính nhanh, tiện lợi, an toàn bảo mật Các độc giả mục tiêu đặc tả SRS cho Chat-App BANBAN bao gồm 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ư khách hàng Mục tiêu tài liệu cung cấp cho đội ngũ phát triển độc giả nhìn tổng quan yêu cầu chức phi chức phần mềm ChatApp BANBAN, giúp họ phát triển phần mềm cách xác đáp ứng yêu cầu khách hàng Mô tả Yêu cầu Chức Dưới mô tả chi tiết yêu cầu chức phần mềm Chat-App BANBAN: 2.1 Đăng nhập đăng ký tài khoản: Tác nhân: Người dùng Hoạt động: Người dùng đăng ký tài khoản đăng nhập vào tài khoản có Kết dự kiến: Người dùng đăng nhập truy cập tính Chat-App BANBAN Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ h Đặc tả yêu cầu phần mềm Trang 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ơ h Đặc tả yêu cầu phần mềm Trang 2.2 Gửi nhận tin nhắn văn bản: Tác nhân: Người dùng Hoạt động: Người dùng gửi nhận tin nhắn văn với người dùng khác ứng dụng Kết dự kiến: Người dùng trị chuyện với qua tin nhắn văn Hình 3: giao diện Gửi nhận tin nhắn 2.3 Gọi thoại video: Tác nhân: Người dùng Hoạt động: Người dùng gọi thoại video với người dùng khác ứng dụng Kết dự kiến: Người dùng giao tiếp với qua gọi thoại video Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ h Đặc tả yêu cầu phần mềm Trang 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 chia sẻ file (hình ảnh, video, tài liệu ) với người dùng khác ứng dụng Kết dự kiến: Người dùng chia sẻ file với qua ứng dụng 2.5 Tìm kiếm người dùng nhóm: Tác nhân: Người dùng Hoạt động: Người dùng tìm kiếm người dùng nhóm trị chuyện ứng dụng Kết dự kiến: Người dùng tìm kiếm kết nối với người dùng nhóm mà họ quan tâm.S Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ h Đặc tả yêu cầu phần mềm Trang 2.6 Thông báo: Tác nhân: Hệ thống Hoạt động: Hệ thống thông báo cho người dùng có tin nhắn mới, gọi đến, thơng báo từ nhóm Kết dự kiến: Người dùng nhận Mô tả Yêu cầu phi Chức Dưới mô tả chi tiết yêu cầu phi chức 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ả xử lý truyền tải liệu nhanh chóng hiệu quả, đảm bảo tính khả dụng đáp ứng nhu cầu người dùng Kết dự kiến: Phần mềm Chat-App BANBAN có thời gian phản hồi nhanh, độ trễ thấp không bị gián đoạn 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 riêng tư người dùng, bao gồm bảo vệ thông tin đăng nhập, liệu cá nhân trò chuyện Kết dự kiến: Phần mềm Chat-App BANBAN có tính bảo mật mã hóa tin nhắn, xác thực người dùng, quản lý quyền truy cập bảo vệ 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 sẵn sàng hoạt động lúc nơi, đặc biệt trường hợp có cố xảy Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ h Đặc tả yêu cầu phần mềm Trang Kết dự kiến: Phần mềm Chat-App BANBAN có khả khơi phục lại liệu trường hợp kết nối cố xảy ra, đồng thời cung cấp tính lưu phục hồi liệu Ngoài ra, phần mềm phải đảm bảo tương thích với tảng khác để đáp ứng nhu cầu người dùng Mô tả Yêu cầu liên quan đến phần mềm bên ngồi Dưới mơ tả chi tiết yêu cầu liên quan đến phần mềm bên phần mềm Chat-App BANBAN: 4.1 Phần cứng: Yêu cầu: Phần mềm Chat-App BANBAN hoạt động thiết bị có cấu hình tối thiểu: CPU: Intel Pentium @ 3.0 GHz RAM: GB Dung lượng bộ nhớ trống: GB Kết dự kiến: Phần mềm Chat-App BANBAN hoạt động 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 hoạt động 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 dự kiến: Phần mềm Chat-App BANBAN hoạt động hệ điều hành bao gồm Windows, Mac OS, Linux Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ h Đặc tả yêu cầu phần mềm Trang 4.3 Phần mềm hỗ trợ: Yêu cầu: Phần mềm Chat-App BANBAN sử dụng phần mềm hỗ trợ trình duyệt web như: Chorme, Edge, Safari… Kết dự kiến: Chat-App BANBAN chạy 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 đáp ứng yêu cầu quy định quy chuẩn tiêu chuẩn, bao gồm độ tin cậy, an toàn bảo mật Kết dự kiến: Phần mềm Chat-App BANBAN đáp ứng yêu cầu quy định quy chuẩn tiêu chuẩn, bao gồm độ tin cậy, an toàn bảo mật Ngoài ra, phần mềm phải đáp ứng quy định sử dụng tài nguyên, tiêu thụ lượng quản lý mạng Định nghĩa, thuật ngữ chữ viết tắt Dưới số định nghĩa, thuật ngữ chữ viết tắt sử dụng tài liệu Chat-App BANBAN: 5.1 Định nghĩa: Phần mềm Chat-App BANBAN: ứ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 tệp đính kèm Người dùng: cá nhân sử dụng phần mềm Chat-App BANBAN để gửi nhận tin nhắn Tài khoản người dùng: tài khoản tạo người dùng để sử dụng phần mềm Chat-App BANBAN, bao gồm tên đăng nhập, mật thông tin cá nhân Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ h Đặc tả yêu cầu phần mềm Trang Nhóm trị chuyện: nhóm người dùng gửi nhận tin nhắn chung 5.2 Thuật ngữ: Gửi tin nhắn: hành động gửi tin nhắn đến người dùng nhóm trị chuyện Nhận tin nhắn: hành động nhận tin nhắn từ người dùng nhóm trị chuyện Đọc tin nhắn: hành động đọc tin nhắn nhận từ người dùng nhóm trị chuyện Đánh dấu đọc: hành động đánh dấu tin nhắn đọc 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 Yêu cầu Phi chức Dưới số yêu cầu phi chức phần mềm Chat-App BANBAN: Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ h Đặc tả yêu cầu phần mềm Trang 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 truy cập vào tài khoản Bảo mật mật khẩu: Tài khoản người dùng phải bảo mật mật mã hóa sở liệu Mã hóa liệu: Tất thơng tin gửi nhận qua Chat-App BANBAN phải 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 xử lý nhanh chóng yêu cầu người dùng, bao gồm gửi nhận tin nhắn Thời gian hoạt động: Phần mềm phải hoạt động liên tục khơng bị gián đoạn q trình sử dụng Tương thích với nhiều thiết bị: Phần mềm phải hoạt động nhiều loại thiết bị hệ điều hành khác 6.3 Hệ thống: Độ tin cậy: Phần mềm phải đảm bảo tính ổn định không gặp cố sử dụng Dễ cài đặt sử dụng: Phần mềm phải có hướng dẫn cài đặt sử dụng rõ ràng, dễ hiểu không phức tạp Hỗ trợ ngôn ngữ: Phần mềm phải hỗ trợ nhiều ngôn ngữ khác để đáp ứng nhu cầu người dùng từ quốc gia khác 6.4 Khả mở rộng: Dễ dàng mở rộng: Phần mềm phải thiết kế để dễ dàng mở rộng, đáp ứng nhu cầu mở rộng người dùng công ty Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ h Đặc tả yêu cầu phần mềm Trang 10 Tính linh hoạt: Phần mềm phải thiết kế để dễ dàng thay đổi cập nhật tính cách linh hoạt Tất yêu cầu phi chức quan trọng để đảm bảo tính bảo mật, hiệu suất hệ thống phần mềm Chat-App BANBAN Sơ đồ Use Case 9.1 Xây dựng biểu đồ use case H ì n h 5: Sơ đồ UseCase 9.2 Mô tả use case Use case Đăng nhập Mô tả Các bước thực Mô tả bước đăng Hệ thống yêu cầu người dùng cung nhập người dùng cấp thông tin đăng nhập gồm tên đăng nhâp,mật Nhập xong bấm nút đăng nhập Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ h Đặc tả yêu cầu phần mềm Trang 11 Hệ thống kiểm tra thông tin gửi thông báo thành công/thất bại Nếu thành cơng, chuyển qua trang 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 chức khỏi hệ thống đăng xuất khỏi hệ thống Hệ thống 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 hệ thống giữ nguyê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 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 Nếu có người nhận gọi 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 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 chỉnh sửa vào bấm nút lưu Hệ thống kiểm tra thông tin lưu thông tin vào sở 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ơ h Đặc tả yêu cầu phần mềm Gửi tin nhắn Gửi video-ảnh Xem tin nhắn Trang 12 Vào mục tìm kiếm Nhập tên thơng tin nhận dạng người dùng bấm nút tìm kiếm Hệ thống đối chiếu thông tin vừa nhập với sở liệu Nếu tìm hiển thị danh sách phù hợp với thơng tin nhập Nếu thất bại thơng báo khơng có kết phù hợp 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 nhóm Tìm kiếm người dùng nhóm cần liên hệ 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 nhấn nút gửi Hệ thống xử lý thông tin 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 Mô tả bước gửi Người dùng đăng nhập hệ thống video ảnh cho Tìm kiếm người dùng nhóm người dùng cần liên hệ bấm vào Hệ thống hiển thị trang chat Mô tả việc xem tin nhắn Người dùng đăng nhập vào hệ thống Tìm kiếm người dùng nhóm cần liên hệ bấm vào Hệ thống hiển thị trang chat Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ h Đặ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ơ h Đặ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-andregistration-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ơ h