The problem at hand is to develop a comprehensive online communication platform that supports real-time interaction with a wide range of features, including text chat, audio, video, fil
Trang 1TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢIKHOA CÔNG NGHỆ THÔNG TIN
****************
Software Requirement Specification – SRS
Topic: Online chat web
Group 5
Member:Vũ Minh Thiện - 212606017Nguyễn Tài Anh Quân - 212611136Nguyễn Thành Hưng - 212640183
Đỗ Hoài Nam - 212610096Bùi Giang Sơn - 212613776
Trang 2VI Entity Relationship Diagram 10
VII Activity diagram 10
1 Edit user information: 10
2 Login and registration 12
3 Create server/channel 12
4 Voice, video call, text chat 14
Trang 3I Introduction
In the digital age, the demand for fast and efficient communication tools has become a critical factor across various fields, from education and business to entertainment and social interactions.With the continuous advancement of technology and the increasing trend of remote work, organizations and individuals are seeking flexible and robust communication solutions to maintain connectivity and effective collaboration In this context, developing a real-time communication platform that meets the growing complexity of user demands is both a challenging and necessary endeavor
The problem at hand is to develop a comprehensive online communication platform that
supports real-time interaction with a wide range of features, including text chat, audio, video, filesharing, and group management The system must provide an easy-to-use, secure, and scalable communication environment, allowing users to interact seamlessly and naturally Ensuring high performance and the ability to handle multiple concurrent requests is crucial, requiring the integration of modern technologies such as WebSocket, advanced data transmission protocols, and stringent security measures
Additionally, the platform should offer flexible management and customization tools, enabling users to set up private or public communication channels, manage access rights, and organize online meetings Supplementary features like file sharing, instant notifications, and chat history should be effectively integrated to enhance the user experience Moreover, building an intuitive and user-friendly interface that supports multiple devices and is easy to use is a key requirement to ensure that the platform can serve a wide range of users
II Term
III Survey1 Interview
Survey Respondent Order
Number
Question AnswerGeneral Users 1 What tool do you usually
use for online communication (such as text, voice, or video)? Why?
I usually use Zoom for video calls when working remotely and WhatsApp for texting Zoom has good sound and image quality, while WhatsApp is convenient for quick messaging
2 What difficulties do you
encounter when using your
Some tools like Zoom occasionally have connectivity
Trang 4current communication tools? issues, leading to interruptions in meetings Additionally, the
screen sharing feature of some apps is not smooth
3 What do you think about the
interface and features of communication platforms? Is there anything you wouldlike to change or improve?
The interface should be simplerand more intuitive I would like additional features like easy screen sharing and the ability to edit sent messages.4 Which factor (security,
speed, interface) is the most important to you when using online communicationtools?
For me, security is the most important factor because I often exchange sensitive information through these platforms
5 Would you be willing to try
a new website that provides communication services? If so, what would convince you to use it?
I would try it if the new website offers standout features that current platforms lack, such as better
connectivity and enhanced security
Business Users 1 What does your business
expect from a communication platform? What features would best support your work?
We need a platform that supports large group meetings and project management Features like document sharingand integration with project management tools are very important
2 What communication
platforms has your business used? What do you feel needs improvement?
We use Microsoft Teams but have issues with user
management and integration We need more flexible featuresand a more user-friendly interface
3 Does your business have
any specific requirements for the interface and features of the communication platform?
The interface needs to be friendly and customizable Features like performance reporting and usage analytics will help with management.4 How important are factors
user-such as security, integration,and user management in your choice of
communication tools for your business?
Security is extremely important, especially for protecting sensitive business information Integration with other business tools and ease ofuser management are also crucial for ensuring efficient workflows and reducing
Trang 5administrative overhead.5 What kind of support does
your business need to ensure the platform operatessmoothly?
We need 24/7 technical supportand consulting services to ensure smooth implementation and use of the platform
2 QuestionnairePersonal Information (Optional)
1 Age
Under 18 18-24 25-34 35-44 45 and above
2 Gender
Nam Nữ Khác
Text Communication1 Do you frequently use text chat applications?
Yes No
2 What features do you consider important in a text chat application? (Select all that apply)
Group messaging File attachments Message search New message notifications Customizable interface
3 Do you experience any issues when using current text chat applications? (If yes, please describe)
4 Are there any features you would like to see in a new text chat application?Voice Communication
1 Do you frequently use voice call applications?
Yes No
Trang 62 What factors are most important when using voice call features? (Select all that apply)
Sound quality Connection stability Call recording Mute/unmute functionality Video call feature
3 Do you experience any issues with the sound quality when using current voice call applications? (If yes, please describe)
4 Are there any features you would like to see in a new voice call application?Video Communication
1 Do you frequently use video call applications?
Yes No
2 What factors are most important when using video call features? (Select all that apply)
Video quality Connection stability Screen sharing Video recording Virtual backgrounds
3 Do you experience any issues with the video quality when using current video call applications? (If yes, please describe)
4 Are there any features you would like to see in a new video call application?
General Requirements and Additional Features1 What features do you think are essential for a communication application to have?
(Select all that apply)
User-friendly interface Security and privacy Easy integration with other tools Scalability and customization Multi-platform support (web, mobile, desktop)
2 Do you have any suggestions to improve the user experience?3 Do you have any additional comments or requirements related to communication
features?
Trang 73 Survey Form4 SynthesisIV Function requirements
1 Login- Allows users to access their Discord account by entering their username and password It
supports two-factor authentication (2FA) to enhance account security
2 Register- Allows new users to create an account on Discord by providing basic information such as
email, username, and password After registering, users can start joining various servers and communities
3 Voice and Video Call-Screen Sharing: Users can share their screen with others during video or voice calls,
making it easy to present or share content
-Camera Filter: Discord provides filters that allow users to change the appearance of
their camera feed during video calls, offering a fun and creative experience
-Voice Filter: This feature allows users to alter their voice when participating in voice
calls, creating different sound effects
4 Text Chat
Users can send text messages, images, videos, files, and emojis in server chat channels orin private conversations It supports features like voice messages, tags, and markdown formessage formatting
-Upload File: Users can upload files such as documents, audio, video, or any other file
format to share with others in the same channel
Trang 8-Upload Picture: Users can upload pictures to share directly in the chat channel.-Send Emoji: Allows users to insert emojis into messages to express emotions.-Edit Text: Users can edit the content of messages they have sent These edits can be
displayed with an "edited" notification
-Delete Text: Allows users to delete messages they have sent Once deleted, the messages
will no longer be visible in the channel
5 Manage Server-Create Server: Users can create a new server, name the server, and configure basic
settings such as the server's avatar and region
-Delete Server: Allows users to completely delete a server This will remove all channels,
messages, and members associated with it
-Edit Server: Users can edit the server's information, such as the server name, avatar, and
other related settings
6 Manage Channel-Create Channel: Users can create new channels within a server, choose the type of
channel (text, voice), name the channel, and configure access permissions
-Delete Channel: Allows users to delete a channel within a server, which will also delete
all content related to that channel
-Edit Channel: Users can edit the channel's information, such as the channel name,
description, and other settings
7 Manage User-Edit Information: Users can edit their personal information such as display name, email,
avatar, and other details
-Change Password: Allows users to change their current password to improve account
security
V Non-functional requirements 1 Performance
- Quick response time, ensuring that text messages are sent and received instantly, and voice or video calls do not experience latency
- Support a large number of users without a decline in performance, especially during large events or when many users are active simultaneously
Trang 94 Security
- The system must protect user information from cybersecurity threats such as DDoS attacks, unauthorized access, and data theft Additionally, sensitive data should be encrypted during storage and transmission
5 Reliability
- Discord needs to ensure high reliability, with the ability to recover quickly from failures This includes regular data backups and efficient system recovery after an incident
- Maintain consistent performance across different environments and conditions, ensuring
that the user experience remains smooth even under high load or during peak usage times
6 Compatibility
- Compatible with various platforms such as Windows, macOS, iOS, Android, and the web version The system should operate smoothly on any device and operating system that users may use
Trang 10VI Entity Relationship Diagram
VII Activity diagram
1 Edit user information:
Trang 122 Login and registration
Trang 133 Create server/channel
Trang 144 Voice, video call, text chat