Download as pdf or txt
Download as pdf or txt
You are on page 1of 28

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/306263946

Software Requirement specification for WebRTC SaaS

Working Paper · January 2014


DOI: 10.13140/RG.2.2.11966.08005

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:

Multimedia conferencing View project

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.

The user has requested enhancement of the downloaded file.


 

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 

TFX service suite  11 May 2015  First design  1.0 

TFX service suite  8 July 2015  Advanced controls   2.0 


 

SRS for UC&C service Suite  Altanai Bisht  
1.          Introduction 
1.1       Purpose 

TFX service suite is set of components required to build an end­to­end 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_Real­time_Transport_Protocol 
http://tools.ietf.org/id/draft­nandakumar­rtcweb­sdp­01.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 , e­classrooms , 
interviews , presentations etc . 
4. To be marketed as SaaS ( Software as a Services ) and PaaS ( Platform as a service )  
5. Provided with pre­built 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. on­line 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 client­side solutions to specify rules for various kinds of web 
based meetings such as social meetup , classroom , business demo , presenter­viewer 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 client­side solutions to specify rules for various kinds of 
web based meetings such as social meetup , classroom , business demo , 
presenter­viewer 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. Presenter­viewer based video Streaming  
6. White­board 
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 client­side solutions to specify rules for various kinds 
of web based meetings such as social meetup , classroom , business demo , 
presenter­viewer 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 client­side solutions to specify rules for various kinds of 
web based meetings such as social meetup , classroom , business demo , 
presenter­viewer 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 client­side solutions to specify rules for various kinds 
of web based meetings such as social meetup , classroom , business demo , 
presenter­viewer 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 client­side solutions to specify rules for various kinds of 
web based meetings such as social meetup , classroom , business demo , 
presenter­viewer scenarios etc called WebRTC sessions .  
 

SRS for UC&C service Suite  Altanai Bisht  
3.1.2              Sequences 

3.1.3              Functional Requirements 
heartbeat keep­alive 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  

You might also like