1. If there are images in this attachment, they will not be displayed. Download the
original attachment
Collaboration Platform for Academics Software Requirements Specification
Software Requirement Specification (SRS)
For
The ExtraEdge
Version: 1.0
Date: 04-Oct-2012
Submitted to:
TheExtraEdge
Submitted by:
TyamJoli Interactive
2. TyamJoli submits this Software Requirements Specification to TEE on the understanding that the contents may not be
divulged to any third party without prior mutual written consent.
Project Code: TEE (TEE-001)
Project Name: Collaboration Portal for Academics
Account: TEE
Vertical: Content Publishing
Location: Pune
Customer Name: Sushilji Mundada / Abhishekhji B
Project Director / Email ID: Shraddha Baldota
info@TyamJoli.com
+91-9822864567
Mr. Sushilji Mundada
Customer Contact Information: sushilm@theextraaedge.com
9850811825
Revision History
Version Date of Description of Change Reason for Change Affected Approved By
(x.yy) Revision Sections
1.0 Initial First Release Initial
List of Reference Documents
1.
3. Conventions
While describing different screens the red star in front of control indicates that it is a compulsory field.
User word in the below context will represent end-user (student), Admin word will represent TEE Administrator.
Table of Contents
1 Introduction 5
1.1 Background 5
1.2 Purpose 6
1.3 Scope & Functionality 6
1.4 In Scope Non-Functional Requirements 8
1.5 Out of Scope 8
2 Systems Overview 9
2.1 System Objective 9
2.2 System Description 9
2.3 External Interfaces 9
2.4 Environment 10
3 Functional Requirements 13
FR 1.1 Post a content / Article 13
FR 1.1.1 Post a Comment for article 15
4 Installation & Configuration Issues 16
5 Acceptance Criteria 16
6 Standard Inputs Data 16
4. 6.1 Document Templates 16
7 Acronyms and Glossary 16
8 Constraints 17
9 Assumptions 17
1. Introduction
1. Background
The ExtraA Edge (henceforth referred as TEE) is conceptualized as an Online Web 2.0
platform for Sharing, Collaboration and bridging the gap in the Academic space in India.
TEE wants to create portal for academics users to share/publish academic content/documents etc.TEE‟s (hereinafter
referred as “customer”) main objective is to create a user-friendly self-serve Collaboration Portal for Academics that‟s:
Integrated with Facebook, Twitter, LinkedInto share content from TEE platform to Social Network and
has functionality to manage/publish/sharecontent on TEE platform via Article/Forum/Events
Search Engine Optimized (SEO friendly URL’s, appropriate dynamic content specific Meta Tags generation, Sitemap
Generation and submission to Google.
Classified space to exchange academics goods
Simple Job listing portal for Employee and Employer
Google Custom Search Integrated
TyamJoli has shown interest to create the above mentioned system as understood by TyamJoli, the primary business
objectives of the customer for development of the system include:
2. Purpose
The purpose of this document is to describe all the functional requirements after analysis of the individual
requirements. This document will be used as a baseline for further design and development of the Collaboration
Portal for Academics.
3. Scope & Functionality
5. This section gives an overview of our understanding of Collaboration Portal for Academics Requirements, and defines
the scope of services. This is based on the high level requirements provided by customer in form of „TEE-Detailed
Requirements v0.3‟ document, as well as clarification received during personal discussion with customer. Our
understanding of requirements is as below:
The following activities are in scope for the system to be developed by TyamJoli:
1. Development of web based application including requirement analysis, high level design, coding, unit testing,
integration and system testing, support during user acceptance testing, production rollout and 30 days warranty for
bug fixing post production.
2. Customer would provide detailed inputs for system in standard defined format as and when required.
3. Customer should provide the necessary UAT environment during UAT support period.
The following sections provide additional information on requirements.
Customer wants to develop a Collaboration Portal for Academics which includes the following modules:
1. Content Management for User
a. Article(Blog/content) Management Interface for User
b. Forum Management Interface for User
c. Events Management Interface for User
d. Private Messaging Interface for User
e. Document Management Interface for User
f. Groups Management Interface for User
g. Classified Management Interface for User
h. Jobs Management Interface for User
i. User Profile Management interface for User
j. Admission Application Interface for User
k. Social Network Integration Interface for User
l. Financial Aid & Scholarships
m. Refer a Book
n. Chat Rooms
2. Site Search
a. Google Custom Search will be used for Site search
3. Admin Interface
a. User Management
b. User Access List Management
c. Masters for University, Branch, College, Castes
d. Article(Blog/content) Management
e. Forum Management
f. Events Management
6. g. Document Management (Magazines & Publications/Project/Journal/Practical)
h. Groups Management
i. Classified Management
j. Jobs Management
k. User Profile Management
l. Admission Application Management
m. Social Network Integration
n. Global Settings Management
o. Email Accounts Management
p. Advertisement management
q. Payment Gateway (Timesmoney)
r. Site Pages Management
s. Simple Opinion poll Management for Forum
t. Loyalty Point System
u. Google Adsense code management
4. Reports
5. Notification Services
a. Email Notification Service
4. In Scope Non-Functional Requirements
The following non-functional requirements are considered for this application depending on the inputs received from
customer as well as kind of functionality being provided.
1. Security – Forms based authentication will be used along with SSL layer for payment related functionality. Additional
security is considered as a part of hardware by having firewall which is not in scope of this project.
2. Performance – Most of the web pages should have response time less than 10 seconds except those having complex
functionality or retrieving large chunk of data from the server to browser. However, the performance of system will
depend on the following parameters and may vary in certain cases:
User desktop/laptop browser and configuration
Server configuration
Database tuning parameters
Network speed/latency
Number of Database instances on the server
3. Availability – Code will be developed using Exception handling and object lifecycle management through efficient
handing of memory across the application. This will help to avoid application crashing scenario.
7. 4. Modularity – Application will be designed and developed in such a way that adding new modules and functions
should be possible without making much change in the overall design.
5. Out of Scope
Following activities are considered out of scope for this project:
1. Any regulatory requirements which are not specifically mentioned in the requirement document
2. Any functional changes in the application after signing off the requirements document during requirement analysis
phase of the project.
3. Any documentation except SRS of this proposal.
4. Supply of any software other than the code and installable for the system
5. Delivery of unit test scripts or test results
6. Supply of any hardware
7. Load or stress testing of application
2. Systems Overview
1. System Objective
The aim of this project is to develop a web based application for the business requirements of Collaboration Portal for
Academics for TEE. This web application will be used by various users and members worldwide.
2. System Description
Collaboration Portal for Academics is a web-based application hosted and supported by TEE.
Users of the application:
1. Admin
2. Registered User
a. Students
b. Faculties
c. Experts
d. Business Associates (Advertisers)
Collaboration Portal for Academics will have three modulesas below:
8. 1. Ad Management interface for Business Associates
2. Admin Module
3. TEE Portal
3. External Interfaces
There will be integration with following external interfaces.
Facebook and Gmail for Authentication and Invite Contacts via DotNetOpenAuth Plugin.
Sharethis plugin will be used to share the article URL and message to around 100 Social Networking sites.
4. Environment
As per current setup, there are 2 servers, one dedicated and another shared server.
The dedicated server specifications are as below:
Supermicro minichassie
Supermicro X8SIL‐F, socket 1156, max 32GB RAM (with 8GB sticks)
Intel Xeon X3430, Quadcore, 2.4Ghz
16 GB RAM ECC/REG (4 x 4GB)
Raid card 3ware 9650SE‐2LP
2 x 250GB SATA 7k
The Shared server specifications are as below:
The shared server account has a limit of Unlimited traffic/month. It has 10 GB of disk space. It has 10GB of SQL
Server Db facility.
The server provider is ZnetIndia/Godaddy. Once the test environment is finalized, necessary access and set up of the
accounts at Znetindia/Godaddy vendor will be done.
1. Development Environment
The following platform is recommended for the Collaboration Portal for Academics:
Component Suggested Software Components
Language & Framework .NET 4.0, MVC3/4, ASP.Net, OpenAuth, Log4Net, GData
Operating System Windows 2008 Std/Web/Ent R2 Server
Web Server IIS 7.0
9. Database Server SQL Server 2008 R2
Client Machine Web Browser Firefox 5 and above
Internet Explorer - 8 and Above
Google chrome - 10 and above
Payment Gateway Times Money
2. Production Environment
The production environment will be same as development environment and may be changed during design phase.
Proposed System Architecture
The analysis for the selection of platform from the various platforms available for development of web based application
was based on desired functionality and customer preferences.
Depending on various parameters and customer preference, it has been recommended to use .Net 4.0 with MVC3 and
SQL Server 2008 R2 technologies for development of the system. The following parameters are considered while arriving
at decision to go for platform:
Fully customizable
Ease of custom Development
Relatively less maintenance cost considering availability of resources
Customer Preference
The application will be developed considering the three tiered architecture on MVC framework as described below.
However, depending on the detailed requirements elaborated during requirements analysis phase, platform and
architecture will be finalized during design phase.
Three- tiered Architecture
The following points are considered while deciding to go for Three-Tiered Architecture:
10. The load on the database may be significant enough in future and will need a dedicated server for the database.
Security policy suggests that database must not be hosted on servers that are directly connected to the Internet. Each
tier can operate within its own security context.
The three tiers will be as described below:
Client Tier - The client tier interacts with the users of the system and consists of the user workstations, the devices
that host a Web browser.
Application Tier - The servers in the application tier are responsible for hosting the application‟s business service
interface, business and data access components. For practical purpose, all the components of this tier can reside on the
same physical server.
Data Tier - The server in the data tier will host the database used by the system.
The following diagram depicts the proposed Three-Tiered Architecture:
3. Functional Requirements
1. Post a content / Article
Functional Description
This page is used for allowing user to post a content (article) on Collaboration Portal.
User can come to this page by clicking on Dashboard >> Articles >> Add New Article link on the website
http://theextraedge.com/Article/Create
Page Details
The input fields displayed on the page below are described in the table below:
SEO Settings for Blog Post
No UI Element / Control Description Editable/ Default UI Rules Error Message and Edits Rule Help Text
Label Selectable
1 Title Textbox This textbox captures title Editable - 255 characters, Title should be Enter Post
of the article. Alphanumeric, alphanumeric and can title related
Mandatory have maximum of 255 to content.
characters.
2 Content Rich This textbox captures Editable - 2^31 + 2bytes of
Textbox entire content of the data,
article. Any type of
text/images
11. 3 Tags Textbox This textbox captures tags Editable - 2^31 + 2bytes of Tags should be
of the article. data, alphanumeric and
Alphanumeric, comma separated.
Comma separated
4 Categories Checkboxes Member can choose Selectable -
appropriate pre-defined
categories.
6 Mode Dropdown This dropdown allows Selectable - Mandatory -
user to select
publish/draft the article
7 Meta Textbox This textbox captures Editable -
Keywords keywords to be used for
SEO related to the
content.
8 Meta Textbox This textbox captures Editable - -
description description to be used for
SEO related to the
content.
9 Attachment(s) File Upload This captures associated Selectable - Pre-defined format Please choose valid file
files for the article. only (JPG/DOC type and file size.
etc),
Maximum size
500KB (configured
by Admin)
10 Submit Button Click of this button saves Clickable - - -
the entered data of the
user into database.
Business Rules
User should be able to complete article by entering valid title, content, selecting multiple categories, entering
valid meta keywords (comma separated), meta description, choosing files & specifying comma separated
tags
Numeric auto increment unique Post ID should be generated for the Article in BlogPost data table. Along
with above details, Created Date, Logged in users Id will be stored in same data table.
Before adding content, title/ description will undergo for offensive word check. If found, post will marked as
Inactive and email will be send to admin for moderation. User will be able to see message “Your article is
under moderation due to offensive words. Please be patient till it gets approved”.
If user clicks on Submit button, all the data entered on the page will be saved into database table BlogPost
and auto email will send to user and admin about publish of article. Also message should be displayed on
the page as below:
“Article published successfully"
FR 1.1.1 Post a Comment for article
Functional Description
This page is used for allowing user to post a comment on any content (article).
User can come to this page by Searching, navigation links etc.
No UI Element / Control Description Editable/ Default UI Rules Error Message Help
Label Selectable/ and Edits Rule Text
Clickable
1 Add Textbox This textbox captures comment text for the Editable - 2^31 + 2bytes of data, Enter
12. Comment article. Alphanumeric, Mandatory Comment
text.
2 Comment Link This button shows comment textbox at Clickable -
Button bottom of comment thread.
3 Delete Button Click of this button deletes comment and Clickable - - -
Comment related data to comments (Likes etc) from
the database.
Business Rules
User will be able to read complete article followed by all existing comments in facebook style. That means there will
be only one parent comment for all replies to all sub comments.
Only logged in members can post comments, Like/Unlike Comments.
All comments will be posted via simple text area which only accepts standard emotions e.g. :-) :-( etc.
All comments and like counts to the comments will be stored under BlogComment datatable. All like/unlike data will
be ContentLike datatable which capture logged in user id, date time, content id and type of content (article, article
comment, forum etc)
FR 1.1.2 Read a article
Functional Description
This page is used for reading article content on TEE Portal.
User can come to this page by Searching, navigation links etc.
Business Rules
User will be able to read complete article followed by all existing comments in facebook style comments.
Non-Registered users/registered users can share content(URL + custom message) to the Social Networks (Facebook,
Twitter, Google, Linkedin, Yahoo) as supported by this plug-in.
Article can be shared as Email will be sent by same sharethis plugin
4. Installation & Configuration Issues
The implementation of the application in production after user acceptance testing will be carried out by TyamJoli from
offshore. TyamJoli will provide the necessary support during implementation of the application in production and TEE
will provide all the necessary support at onsite including connectivity to production server over network, software and
hardware for production rollout.
5. Acceptance Criteria
The user acceptance criteria for the system will be developed during high level design phase. The user acceptance plan
along with the test criteria will be base-lined after TEE and TyamJoli mutually agrees to the same.
13. High Level Acceptance Criteria:
1. All project deliverables should be approved by TEEsingle point of contact prior to being considered accepted
(“Acceptance”). If the acceptance is not received with 2 business days from the date of delivery, the deliverable will
be deemed as accepted by TEE.
2. All the requirements should be implemented in the developed web application and user should be able to use the
system to execute the functionality mentioned in this document.
3. All the defects raised by TEE during User Acceptance Testing (UAT) will be fixed by TyamJoli team except the
defects which could not be fixed due to limitations/constraints of the underlying hardware or software.
4. The response time for most of the web pages in the application should be less than or equal to 10 seconds. The response
time for some of the web pages may be more than 10 seconds depending on complexity of backend queries executed
for displaying those pages, the amount of data carried to and for by the pages, etc. The response time for all the web
pages will be dependent upon the hardware configuration, complexity of the backend queries involved, network
bandwidth, number of concurrent users, etc and may vary from 10 seconds.
6. Standard Inputs Data
1. Document Templates
The following document templates should be used for generating various forms, certificates and other documents.
<Details>
7. Acronyms and Glossary
The various acronyms, abbreviations, definitions and glossary used in this document as listed below:
8. Constraints
The functional specification document has been prepared with certain following constraints wherever either functional detail
were not available or could not be confirmed at this stage and could be revealed as we go ahead in the project:
14. 9. Assumptions
The functional specification document has been prepared with certain following assumptions wherever either functional detail
were not available or could not be confirmed at this stage and could be revealed as we go ahead in the project:
All images/screenshots used in the SRS are imaginary. Do not consider it as final design.