Professional Documents
Culture Documents
Software Requirement Specification For Webrtc Saas: January 2014
Software Requirement Specification For Webrtc Saas: January 2014
net/publication/306263946
CITATIONS READS
0 1,758
1 author:
Altanai Bisht
Seattle University
6 PUBLICATIONS 5 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
Hybrid Micro Grid for Solar Renewable Energy with IOT and ML View project
All content following this page was uploaded by Altanai Bisht on 18 August 2016.
Software Requirements
Specification
for
Unified Communication &
Collaboration (UC&C)
Version 1.0
Prepared by Altanai ( tara181989@gmail.com )
8 July 2015
SRS for UC&C service Suite Altanai Bisht
Table of Contents
1. Introduction
1.1 Purpose
1.2 Document Conventions
1.3 Intended Audience
1.4 Project Scope
1.5 References
2. Overall Description
2.1 Product Perspective
2.2 Product Features
2.3 Classes and Characteristics
2.4 Operating Environment
2.5 Design and Implementation Constraints
2.6 User Documentation
2.7 Assumptions and Dependencies
2.8 Timelines
2.9 Future Road Map
3. System Features
3.1 Session and Policy controller
3.1.1 Description and Priority
3.1.2 Sequences
3.1.3 Functional Requirements
3.2 Widget and widget's Dev API
3.1.1 Description and Priority
3.1.2 Sequences
3.1.3 Functional Requirements
3.1.2 Sequences
3.1.3 Functional Requirements
3.4 Calendar
3.1.1 Description and Priority
3.1.2 Sequences
3.1.3 Functional Requirements
3.5 Authentication
SRS for UC&C service Suite Altanai Bisht
3.1.1 Description and Priority
3.1.2 Sequences
3.1.3 Functional Requirements
3.6 Presence
3.1.1 Description and Priority
3.1.2 Sequences
3.1.3 Functional Requirements
3.7 Real Time Analytics
3.1.1 Description and Priority
3.1.2 Sequences
3.1.3 Functional Requirements
3.1.1 Description and Priority
3.1.2 Sequences
3.1.3 Functional Requirements
4. External Interface Requirements
4.1 User Interfaces
4.2 Hardware Interfaces
4.3 Software Interfaces
4.4 Communications Interfaces
5. Other Nonfunctional Requirements
5.1 Performance Requirements
5.2 Security Requirements
5.3 Software Quality Attributes
6.1 Legal , Copyright and other notices
Revision History
Name Date Changes Version
SRS for UC&C service Suite Altanai Bisht
1. Introduction
1.1 Purpose
TFX service suite is set of components required to build an endtoend efficient and powerful
communication solution. It encompses of the followinng :
Signalling layer
1. Signalling server
2. Sessions database
Core components :
1. TFX conf webpage
2. Embeddable TFX Conf iframe
Widget Layer Components :
1. Real Time analytics
2. Code
3. Draw
4. context share
5. Screensharing
6. File sharing
7. Recording
8. Rich group / private Messaging
9. Auto Notes
10. Slideshare widget
Session Layer components :
1. Policy controller
2. Calendar
3. Notifications
4. Authentications
5. Address Book
6. Presence
SRS for UC&C service Suite Altanai Bisht
7. Session analytics
1.2 Document Conventions
The document describes the software requirements for the process of building TFX
suite . TFX is the brand name and suite refers to the suite of services that it contains .
All components described as part of suite in this document are modular in nature and
need not be necessarily integrated to overall platform for it to work .
1.3 Intended Audience
1. Developers
2. Project managers
3. Marketing
4. Users
5. Testers
1.4 Project Scope
A unified communication , collaboration , conferencing solution . It should be marketed as
WebRTC SaaS ( software as a solution ). Enterprises should be able to host the solution in their
premises using our provided software components including servers . gateways and clients that
might be made as part of TFXconf.
1.5 References
http://socket.io/
http://www.webrtc.org/
https://simplewebrtc.com/
http://redis.io/
https://cisco.webex.com
http://www.webex.com/ciscospark/
http://en.wikipedia.org/wiki/Secure_Realtime_Transport_Protocol
http://tools.ietf.org/id/draftnandakumarrtcwebsdp01.html
2. Overall Description
SRS for UC&C service Suite Altanai Bisht
2.1 Product Perspective
This product is composed of the following components :
Signalling layer
1. Signalling server :
Provided socketio based signalling . Handles offer , answer and SDP transactions between peers
.
2. Sessions database :
Stores the mapping of users to sessions and their privileges and services .
Core components
1. TFX conf : Client product which actually enables users to join a session
2. embeddable TFX Conf iframe : lightweight client embeddable like an iframe
Widget Layer Components
1. Direct Calls : User should be able to directly call anybody else on his network
2. Code : Users in a meeting should be able to
3. Draw :
4. Context Awareness : Use techniques like Text to speech , Message sniffing , page
detection , public profile of members etc to find out the context of communication and
share with admin .
5. Screensharing
6. File sharing
7. Recording with save option
8. Group Messaging : n : n messaging
9. Private Messaging : 1 to 1 messaging
10. Auto Notes : Store session summary
11. Real Time Analytics : Use webrtc stats , network
12. Slideshare widget
Session Layer components :
SRS for UC&C service Suite Altanai Bisht
1. Session analytics :
Collect information from network status and client webrtc stats and sessions DB to show ,
currents number of sessions and their quality .
2. Policy controller :
Controls the policies for sessions . Admin portal is used to manage the services , sessions and
users .
3. Calendar :
Based on authentication Third party API to control the session dates and timings
4. Notifications :
Based on authentication Third party API to control the process of sending notifications to users
either in form of Email or message on social networking platforms.
5. Authentications :
Third party API to control the user authentication process to join a session
6. Address Book :
Keep a list of contacts for user . Can also import through other social networking accounts using
XMPP .
7. Presence :
Keepalive heartbeat signals to facilitate publish , subscribe and notify automatically .
2.2 Product Features
1. Easy to manage and schedule web calls
2. Admin , host , guest privileges control
3. Generic platform to fit for all scenarios like group discussions , webinars , eclassrooms ,
interviews , presentations etc .
4. To be marketed as SaaS ( Software as a Services ) and PaaS ( Platform as a service )
5. Provided with prebuilt features like screen sharing , recording ,Whiteboard ,
collaborative programming , multi language chat . More services can be also be added .
6. Session and Policy Management
7. Extra Security
8. Rich set of configurable widgets recording , screen sharing , media control more ..
9. Browser to Browser / Browser to Device / Device to Device communication
10. Layered and Modular setup of components
11. Context Enabled , Immersive Experience
12. Developer friendly APIs and SDK
SRS for UC&C service Suite Altanai Bisht
2.3 Classes and Characteristics
Sessions id ,date, time , purpose , admin , host , guests
2.4 Operating Environment
All WebRTC supported desktop and mobile browsers
2.5 Design and Implementation Constraints
1. Anti webrtc corporate or regulatory policies
2. hardware limitations ie no mic or camera
3. software limitations ie no or unsuitable chrome browser
4. RAM and memory requirements
5. organization has blocked access to TFX signalling server or TURN server
2.6 User Documentation
1. user manuals
2. online help
3. dev API tutorials
4. delivery formats and standards
2.7 Assumptions and Dependencies
● The users should have webrtc supported browser and allow VOIP communication in
enterprise policies .
● User must gave media permission for the camera and microphone access for video
sessions .
● Permissions should be given to share screen when asked by screen sharing widget.
2.8 Timelines
Milestone 1 : Signalling server , Sessions database , TFX conf
SRS for UC&C service Suite Altanai Bisht
Milestone 2 : Authentication, Policy controller , calendar , Real time Analytics , more widgets
SRS for UC&C service Suite Altanai Bisht
Milestone 3 : Presence Notification , Context sharing
2.9 Future Road Map
Road Map : Telco SIP Integration through protocol adapters
SRS for UC&C service Suite Altanai Bisht
3. System Features
3.1 Session and Policy controllers
3.1.1 Description and Priority
A lightweight , very customizable clientside solutions to specify rules for various kinds of web
based meetings such as social meetup , classroom , business demo , presenterviewer scenarios
etc called WebRTC sessions .
Sample screens for Admin console as part of Session and Policy controller :
Sample Output JSON file to be shared among all peers:
{
"meeting" : {
"meeting_esssential":{
"meeting_name" : "officemeeting" ,
"description" : " offical meeting to discuss next year goals" ,
"password" : "kjwsgdkx"
},
"date_time": {
"date" : "12may2015",
"start": "16:00",
"end" : "21:00"
SRS for UC&C service Suite Altanai Bisht
},
"meeting_settings":{
"meeting_type": "n:n audio only"
},
"invite_attendees":{
"host": "altanai.bisht@above-inc.com",
“aletrnative_host”:””,
"attendees":"nirbhay.kundan@abovee-inc.com"
},
"meeting_options":{
"chat_private": "y",
"chat_group": "y",
"video_hd":"y",
"file_transfer":"n",
"screen_sharig":"n",
"context_aware":"n"
},
"attendees_privileges":{
"save_print_chat":"n",
"view_participants_list":"y",
"record_session":"n"
}
}
}
3.1.2 Sequences
SRS for UC&C service Suite Altanai Bisht
3.1.3 Functional Requirements
Policy controller will control the behaviour , privileges and properties of every session
created on WebRTC communication platform.
Client side session controller
Roles and Privileges are maintained in JSON format
Sessions parameters can also change dynamically
3.2 Widget and widget's Dev API
3.1.1 Description and Priority
A lightweight , very customizable clientside solutions to specify rules for various kinds of
web based meetings such as social meetup , classroom , business demo ,
presenterviewer scenarios etc called WebRTC sessions .
SRS for UC&C service Suite Altanai Bisht
3.1.2 Sequences
3.1.3 Functional Requirements
Following types of widgets are required
1. Unique URL based session management
2. Direct Calls
3. Instant messaging ( public chat and private chat )
4. Audio Conferencing
5. Presenterviewer based video Streaming
6. Whiteboard
7. filesharing
8. screen sharing
9. calendar
10. Invitation alarms and notifications
11. Meeting Recorder
12. slideshare widget
3.3 TFX conf Web/Mobile Page and Embeddable iframe
3.1.1 Description and Priority
SRS for UC&C service Suite Altanai Bisht
A lightweight , very customizable clientside solutions to specify rules for various kinds
of web based meetings such as social meetup , classroom , business demo ,
presenterviewer scenarios etc called WebRTC sessions .
3.1.2 Sequences
3.1.3 Functional Requirements
unified communication , collaboration , conferencing , calling solution.
3.4 Calendar
3.1.1 Description and Priority
A lightweight , very customizable clientside solutions to specify rules for various kinds of
web based meetings such as social meetup , classroom , business demo ,
presenterviewer scenarios etc called WebRTC sessions .
SRS for UC&C service Suite Altanai Bisht
3.1.2 Sequences
3.1.3 Functional Requirements
Hold Scheduled and past calls for every authenticated user
sync with work calendar
3.5 Authentication
3.1.1 Description and Priority
A lightweight , very customizable clientside solutions to specify rules for various kinds
of web based meetings such as social meetup , classroom , business demo ,
presenterviewer scenarios etc called WebRTC sessions .
SRS for UC&C service Suite Altanai Bisht
3.1.2 Sequences
3.1.3 Functional Requirements
Oauth 2.0 based
Open ID
support for third party authentication like google , Linkedin
3.6 Presence
3.1.1 Description and Priority
A lightweight , very customizable clientside solutions to specify rules for various kinds of
web based meetings such as social meetup , classroom , business demo ,
presenterviewer scenarios etc called WebRTC sessions .
SRS for UC&C service Suite Altanai Bisht
3.1.2 Sequences
3.1.3 Functional Requirements
heartbeat keepalive signals
followed by answer by clients till they are in session
3.7 Real Time Analytics
3.1.1 Description and Priority
Collects data to represent based on WebRTC stats of peers , sessions DB , network report
user connecting , disconnecting a session , location etc .
3.1.2 Sequences
3.1.3 Functional Requirements
Use webrtc stats to get real time stats
Store vital stats in DB for every session for future reference
Algorithm to calculate other graphs based on values stored in session DB
SRS for UC&C service Suite Altanai Bisht
3.8 Context Awareness
3.1.1 Description and Priority
Use algorithms and pattern to deduce context of communication from ongoing sessions
and share with admin in real time .
3.1.2 Sequences
3.1.3 Functional Requirements
Use frequently used words , location , user profile , session description etc to
share the context of communication with Admin .
3.9 User Profile Management
3.1.1 Description and Priority
3.1.2 Sequences
3.1.3 Functional Requirements
SRS for UC&C service Suite Altanai Bisht
3.9 Contacts
3.1.1 Description and Priority
3.1.2 Sequences
3.1.3 Functional Requirements
4. External Interface Requirements
4.1 User Interfaces
Admin portal
Manage users
Manage Widgets and Session Modules
Check Sessions Analytics
SRS for UC&C service Suite Altanai Bisht
User TFX conf
Login screen
SRS for UC&C service Suite Altanai Bisht
Meeting screen as a Host
Create a meeting
Add purpose
Add date , time , duration
Add email for host and guests
Set alarm / notification settings
SRS for UC&C service Suite Altanai Bisht
SRS for UC&C service Suite Altanai Bisht
Meeting screen as an Attendee
Join a Meeting with email and password
SRS for UC&C service Suite Altanai Bisht
Call screen
Meeting screen
4.2 Hardware Interfaces
microphone access to web page
camera access to web page
4.3 Software Interfaces
4.4 Communications Interfaces
1. Signalling server communications protocol socketo.io
2. Media transmission protocol SRTP
5. Other Nonfunctional Requirements
5.1 Performance Requirements
1. User Accounts Management
2. Peer to peer communication
3. Plugins / external resources required
4. Contacts Management
SRS for UC&C service Suite Altanai Bisht
5. Calendar and Event Management
6. Third party integration
7. Conferencing
8. Customization
9. Embedding and Compressibility
10. Pushing updates
11. Device Dependence
12. Standards compliance
13. Developer support
14. Bandwidth Quality Adaption
15. Page load Time ( irrespective of time to login )
16. Time between Call initiation and connection Browsers supported
17. OS Compatibility
5.2 Security Requirements
1. session security and privacy
2. user identity authentication
3. policies or regulations infringement
4. security or privacy certifications
5.3 Software Quality Attributes
1. adaptability
2. availability
3. correctness
4. flexibility
5. interoperability
6. maintainability
7. portability
8. reliability
9. reusability
10. robustness
11. testability
12. usability
SRS for UC&C service Suite Altanai Bisht
View publication stats
6. Licensing
6.1 Legal , Copyright and other notices
All products under TFX suite will be property of Above Solutions .
Appendix A: Glossary
WSC WebRTC Session Controller
IP Internet protocol
VOIP Voice over IP
WebRTC Web based Real Time Communication .
Appendix B: Analysis Models
Appendix C: Issues List
SRS for UC&C service Suite Altanai Bisht