Professional Documents
Culture Documents
Thiết Kế
Thiết Kế
cho
Chat-App BANBAN
Phiên bản 1.0 được phê chuẩn
Thành Viên
Nguyễn Hồ Phước Vinh, MSSV: B2003936
Trương Trung Vĩnh, MSSV: B2012283
Lê Nhựt Tiến, MSSV: B2003929
Nguyễn Công Đạt, MSSV: B2012076
Hà Phan Khải, MSSV: B2012103
Mục Lục
1. Giới thiệu 1
2. Mô tả tổng quan 3
Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm Trang 3
Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm: Chat App BANBAN Trang 1
1. Giới thiệu
Thuật ngữ “chat” không còn xa lạ với người dùng internet ngày nay, đã ảnh hưởng tích cực đến đời sống xã hội, thay đổi cách chúng ta liên lạc giao tiếp giữa các tổ chức
quy mô nhỏ hay nội bộ doanh nghiệp và là một phương tiện giao tiếp không thể thiếu trong thời đại này. Hệ thống Chat-App BANBAN đáp ứng nhu cầu liên lạc từ xa bằng
thời gian thực thông qua kết nối mạng giúp nâng cao năng suất làm việc. Hệ thống Chat-App BANBAN hướng đến những mục đích sau:
● Cung cấp phương tiện để hiển thị các thông tin văn bản trong một mạng LAN
● Đáp ứng nhu cầu trao đổi thông tin đơn giản và hiệu quả
Đối tượng sử dụng bao gồm những cá nhân tổ chức có hoạt động trao đổi thông tin bằng văn bản thông qua kết nối mạng máy tính như:
● Các nhân viên, quản lý, bộ phận làm việc trong một tổ chức doanh nghiệp
● Học sinh, sinh viên có thể giao tiếp liên lạc với nhau hoặc với giảng viên ở phòng máy của các trường Trung học phổ thông và Đại học, ...
Trò chuyện trực tuyến, liên lạc tin nhắn văn bản qua Internet trong thời gian
1 Chat
thực
SRS là viết tắt của "Software Requirements Specification" - tài liệu mô tả yêu
2 SRS cầu phần mềm. Nó là tài liệu quan trọng trong quá trình phát triển phần mềm,
mô tả chi tiết các yêu cầu và chức năng cần thiết cho phần mềm.
UI là viết tắt của User Interface (giao diện người dùng), đó là phần của một ứng
3 UI dụng hoặc hệ thống mà người dùng tương tác để sử dụng và điều khiển chức
năng của nó.
API là một tập hợp các quy tắc được định nghĩa trước để cho phép các ứng
4 API dụng khác giao tiếp với nhau hoặc truy cập vào một dịch vụ hoặc chức năng
của một hệ thống hoặc ứng dụng khác một cách chuẩn hóa và an toàn.
MVP là sản phẩm tối thiểu có thể đưa ra thị trường để thu thập phản hồi từ
khách hàng và đánh giá tính khả thi của ý tưởng sản phẩm. Nó giúp giảm chi
5 MVP
phí và thời gian phát triển sản phẩm, đồng thời cải tiến và phát triển sản phẩm
tiếp theo dựa trên phản hồi từ thị trường.
Máy trạm, máy khách – là nơi gửi yêu cầu đến Server. Nghĩa là Client sẽ tổ
6 Client
chức giao tiếp với người dùng, Server và môi trường bên ngoài tại trạm làm
Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm: Chat App BANBAN Trang 2
việc. Bên cạnh đó, nó còn tiếp nhận yêu cầu của người dùng và thành lập các
query string nhằm gửi đến Server. Kết quả nhận được từ Server, Client sẽ tổ
chức và trình diễn các kết quả đó.
Máy chủ (Server) là một máy tính được kết nối với mạng máy tính hoặc
Internet, có IP tĩnh, có năng lực xử lý cao. Trên đó người ta cài đặt các phần
7 Server
mềm để phục vụ cho các máy tính khác truy cập để yêu cầu cung cấp các dịch
vụ và tài nguyên.
Tài liệu gồm 5 phần chính: Giới thiệu, Mô tả tổng quan, Các yêu cầu giao tiếp bên ngoài, Các tính năng của hệ thống, Các yêu cầu phi chức năng và Các yêu cầu khác.
- Giới thiệu: Trình bày mục tiêu, phạm vi của sản phẩm, chú thích thuật ngữ và trích dẫn các tài liệu tham khảo.
- Mô tả tổng quan: Trình bày bối cảnh, nguồn gốc của sản phẩm, sơ lược các chức năng và đặc điểm của người dùng cũng như đặc điểm của môi trường vận
hành, các ràng buộc thực thi, thiết kế và các giả định phụ thuộc của hệ thống.
- Các yêu cầu giao tiếp bên ngoài: Trình bày các đặc điểm luận lý và vật lý của từng giao tiếp giữa sản phẩm - người dùng, sản phẩm - phần cứng, sản phẩm - các
phần mềm khác và các yêu cầu liên quan tới bất cứ chức năng truyền thông tin nào của sản phẩm
- Các tính năng của hệ thống: Minh họa việc tổ chức các yêu cầu chức năng cho sản phẩm theo các tính năng của hệ thống, các dịch vụ chính được cung cấp bởi
sản phẩm.
- Các yêu cầu phi chức năng: Trình bày các yêu cầu về thực thi, an toàn, bảo mật, và các đặc điểm chất lượng của sản phẩm.
2. Mô tả tổng quan
Lập trình đồng thời là một trong những kỹ thuật lập trình cấu trúc tiên tiến trong đó một số hoạt động được thực hiện trong cùng một khoảng thời gian. Những
hoạt động này gọi theo nghĩa đen là luồng (Thread). Các chương trình tuần tự thực thi trong một luồng hoạt động duy nhất do một luồng điều khiển trong khi các chương
trình đồng thời có nhiều hơn một luồng điều khiển. Như vậy, các ứng dụng sử dụng kỹ thuật lập trình đa luồng sẽ có thể khai thác tốt tài nguyên của một bộ xử lý.
Phần mềm Chat-App BANBAN được viết ra để ứng dụng kỹ thuật lập trình đa luồng với ngôn ngữ Javascript. Một ứng dụng phòng trò chuyện trong đó mỗi
người dùng tham gia vào bằng cách đặt tên của mình và bắt đầu chia sẻ tin nhắn văn bản với tất cả những người dùng khác có sẵn trong phòng trò chuyện. Người dùng có
thể xem tất cả các tin nhắn có tên người gửi (được cung cấp khi bắt đầu vào phòng trò chuyện) và gửi tin nhắn riêng cho một người dùng cụ thể khác mà những người còn
lại sẽ không hay biết. Khi bất kỳ ai rời khỏi phòng trò chuyện, một tin nhắn sẽ được gửi tới tất cả những người đăng nhập hiện tại có sẵn trong phòng trò chuyện để có thể
thấy người dùng tương ứng đó đã rời đi. Ở đây, ứng dụng sẽ được triển khai giống như một chương trình giao tiếp hai chiều đa luồng với sự đồng bộ hóa cần thiết giữa các
luồng.
Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm: Chat App BANBAN Trang 3
Phần mềm kèm theo Trình duyệt web (Chorme, Edge, Safari...)
RAM 1GB
Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm: Chat App BANBAN Trang 4
STT Loại điều khiển Tên điều khiển Mặc định Nội dung Ghi chú
Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm: Chat App BANBAN Trang 5
STT Loại điều khiển Tên điều khiển Mặc định Nội dung Ghi chú
Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm: Chat App BANBAN Trang 6
Phòng Cho biết phòng người dùng chọn để kết nối với những người khác cùng phòng
Tin nhăns Tin nhắn của người dùng để hiển thị lên khung chat
Tin nhắn Tin nhắn của người dùng đã nhắn để hiển thị lên khung chat
Mô hình Client – Server sử dụng giao thức TCP. Sử dụng SDK để lưu trữ dữ liệu.
Chức năng chat nhóm giúp người dùng có thể nhắn tin với tất cả các thành viên trong nhóm hoặc với một người dùng khác cụ thể
Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ
Đặc tả yêu cầu phần mềm: Chat App BANBAN Trang 7
Lợi ích: 9
Chi phí: 7
(0.) Người dùng nhập username, pasword của mình vào TextFieldUsername, TextFieldPassword để thực hiện đăng nhập. Server sẽ thông báo đến tất cả clients về trạng
thái đăng nhập của người dùng hiện tại.
(1.) Sau khi đăng nhập vào hệ thống, Nếu:
(1.1.) Người dùng muốn nhắn tin, gọi thoại, gửi file tất cả mọi người trên group
(1.1.1.) Người dùng thực hiện việc nhắn tin trên TextFieldInput và nhấn ButtonSend hoặc phím Enter để gửi tin nhắn
(1.1.2) Người dùng gọi thoại nhấn vào nút ButtonCall để thực hiện call.
(1.1.3) Người dùng gửi file nhấn vào nút ButtonSendFile để thực hiện gửi file.
(1.2.) Người dùng muốn nhắn tin, gọi thoại, gửi file mới một người cụ thể
(1.2.1.) Người dùng sẽ nhập username vào TextFieldFind để tìm người muốn gửi tin trong ListUsers (danh sách user)
(1.2.1.1) Người dùng gọi thoại nhấn vào nút ButtonCall để thực hiện call.
(1.2.1.2) Người dùng gửi file nhấn vào nút ButtonSendFile để thực hiện gửi file.
(1.2.1.3.) Người dùng thực hiện việc nhắn tin trên TextFieldInput và nhấn ButtonSend hoặc phím Enter để gửi tin nhắn
(3.) Người dùng chọn vào nút ButtonLogout để thực hiện đăng xuất. Server sẽ thông báo tình trạng đăng xuất của người dùng trên các clients khác.
Khoa CNPM, Trường CNTT & TT, Đại học Cần Thơ