Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

School project Please provide full SRS document, UML diagram of relation between entities: Companies have one app for text chat, one for video chat and

School project
Please provide full SRS document, UML diagram of relation between entities:
Companies have one app for text chat, one for video chat and one for conferences and meetings. "nanaChat" will solve this problem by combining these functionalities in a single application. Customers Customers will be businesses. It will not target the general public. Functionality
- Users must be able to register with corporate LDAP accounts.
- Users should be able to create ad hoc newsgroups comprising sets of users, and send private messages to individual users.
- Users should be able to have text discussions that they can divide into threads.
- The application should be able to handle group video chat for up to 100 users at a time. Platform The app will be developed in React Native to enable the creation of a Web app, an iOS mobile app and an Android mobile app. These applications will connect to a REST API built with . Laravel to store and retrieve data from a MySQL database, and the front end will be developed in React. Authentication will be via an LDAP directory. We'll be using a WAF to protect our application, as traditional firewalls don't take into account all attacks, namely SQL injections. Testing and deployment will be carried out using jenkins (Dev + test + deploy) Development responsibilities The developers on the "nanaChat" team will be responsible for writing all the application code, developing the database and managing versions. User class and features
There will be a user class called administrator who will have permissions to access all the application's features, including:
- Creating channels where multiple users can interact
- Making these channels public for the whole company, or private for a group of people
- Delete these channels
- Archiving these channels Standard users will have access to all application functionalities, with the exception of those listed above. System features Functional requirements
- Users should be able to create ad hoc discussion groups comprising sets of users, and send private messages to other users.
- Users should be able to have text discussions which they can divide into threads.
- Discussions should be able to be archived indefinitely so that users can reference past discussions.
- Users should be able to download files from discussions for reference.
- External interface requirements User interfaces
- Front-end software: React Native
- Back-end software: Laravel
- Database software: MySQL
- LDAP connection: Authentication in an enterprise environment Hardware interfaces
- Mac and Windows operating systems via their default Web browsers
- iPhone
- Android
- Non-functional prerogatives Performance requirements
- Application should load and be usable within 3 seconds
- Application should update interface upon interaction within 2 seconds
- Database must be standardized to avoid redundant data and improve performance
- Database must be distributed to avoid failures Security requirements
- Databases must use partitioning for redundancy to avoid data loss.
- Database backups must be performed every hour and kept for one week. Security requirements
- All keys used for the REST API must be stored securely.
- Only the REST API should be able to connect to the databases.
- The databases must be behind a firewall.
- Use a WAF to protect our web application from any attacks not remediated by the firewall Software quality attributes
- Availability: as this application is essential to business communication, we will have an availability target of four nines (99.99%).
- Accuracy: The application must never allow anyone to read messages or discussions that are not intended for it.
- Maintainability: the application must use continuous integration so that features and bug fixes can be deployed rapidly without downtime.
- User-friendliness: the interface must be easy to learn without tutorials, and enable users to achieve their goals without errors.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Pro SQL Server Wait Statistics

Authors: Enrico Van De Laar

1st Edition

1484211391, 9781484211397

More Books

Students also viewed these Databases questions