Software Requirements Specification
Software Requirements Specification
Software Requirements Specification
Specification
for
Bharath
Prepared by <author>
Speridian Technologies
20 July 2010
1. Introduction
This document aims at defining the overall software requirements for an Indian-based
Web Browser-Bharat. Efforts have been made to define the requirements exhaustively
and accurately.
1.1 Purpose
This specification document describes the capabilities that will be provided by the
software application. Its purpose is to display the information on the website in a net and
organized way; it also helps to navigate the web easily. It focuses upon regional features
that will tend to lure the Indian web surfers. These programs interpret code (HTML) and
display information from WWW. It also states the various required constraints by which
the system will abide.
Definitions
The intended audiences for this document are the development team, testing team and
end users of the product. This document aims at defining the overall software
requirements for application Bharat-The Indian –based web browser. The final product
will have only features/functionalities mentioned in this document and assumptions for
any additional functionality/feature should not be made by any of the parties involved in
developing/testing/implementing/using this product. In case if it is required to have some
additional features, a formal change request will need to be raised and subsequently a
new release of this document and/or product will be produced.
Bharat is a software application which enables a user to display and interact with text,
images, videos,music, games and other information typically located on a web page at a
website on the World or a local area network according to his regional interest. It taps
into several services to serve content which is useful and relevant to Indian users.This
application enables the user to interact in almost 12 Indian Languages. This browser
allows a user to quickly and easily access facilities provided on the side bar and to
follow pages at many web sites by traversing the links provided therein.
1.5 References
1.6 Overview
The rest of this SRS document describes the various system requirements, interfaces,
features and functionalities in detail
2. Overall Description
2.1 Product Perspective
The user system will send a request (an address by using web browser) to the server. On
the basis of this request, the server gives a response (a web page accessed through web
browser) to the user.
2.3 Product Features
Bharath is an Indian-based Web Browser which focuses on the regional & cultural
interests of users. The following feature are included in this application:
1. Multi Language support: It supports a total of 12+ different Indian languages and
related services.
2. Skins: It provides access to 1500+ Themes and Backgrounds from Skin tab in
Applications sidebar .It also provides users an alternative ability to create custom
themes by adding a wallpaper of their choice.
3. One touch access to Facebook and Twitter: The browser provides simple one
click access to popular sites like Facebook ,Twitter which could be displayed in a
separate side tab.
4. Other Social Networking sites popular in India: The browser provides single click
access to the Social Networking Sites like Orkut,Hi5 etc.
5. You Tube like videos from IBN Live etc: Partnered with IBN live,
this browser provides You Tube like videos in an easier way.The downladed
videos are displayed in a sidetab which can be diplayed while browsing.
6. Stock market news from BSE and NSE: Tracks stocks from many exchanges
including BSE and NSE.
7. Tabbed Browsing: It provides the use of multiple tabs for the users.
8. App Store (third party apps): It enables the user to click on any icon and the App
opens next to the sidebar taking some space off the actual web page.
9. Ability to browse on mobiles using WAP: The browser also provides mobile
access to the internet using WAP.
10. Antivirus: The browser provides inbuilt antivirus check using powerful
antiviruses like Nod32.
11. Travel: The browser facilitates direct access to the travel booking websites like
Yatra, ClearTrip, Indian Railways etc.
12. Jobs : Provides a direct search box to find jobs and add them under your
preferences.
13. BackUp: This helps the user to get the Backup of their documents from the
computer to their Gmail account.
14. Games: The browser provides gaming facilities in the side tab for the users which
enables them to game as well as browse simultaneously.
15. Maps :The Maps provided in the browser enables to search and find locations
with a single mouse click. Regional & cultural places of importance are
highlighted in the map.
16. Mail: The apps tab provides a quick access to the leading mail servers like
Yahoo!, Gmail etc..
The browser is developed in such a way that even not much an expert can use the
browser with ease. The only requirement with the browser is that user should be familiar
with the computer and the basic Internet technology.
Educational Level: User should be comfortable with English language and general
computer and internet related terms.
Technical Expertise: User should be comfortable using special as well as general-
purpose applications on a computer. He/she should know the security aspects of the web
pages and the files present over the internet.
<Describe the environment in which the software will operate, including the hardware
platform, operating system and versions, and any other software components or
applications with which it must peacefully coexist.>
2.6 Design and Implementation Constraints
<Describe any items or issues that will limit the options available to the developers.
These might include: corporate or regulatory policies; hardware limitations (timing
requirements, memory requirements); interfaces to other applications; specific
technologies, tools, and databases to be used; parallel operations; language
requirements; communications protocols; security considerations; design conventions or
programming standards (for example, if the customer’s organization will be responsible
for maintaining the delivered software).>
<List the user documentation components (such as user manuals, on-line help, and
tutorials) that will be delivered along with the software. Identify any known user
documentation delivery formats or standards.>
<List any assumed factors (as opposed to known facts) that could affect the
requirements stated in the SRS. These could include third-party or commercial
components that you plan to use, issues around the development or operating
environment, or constraints. The project could be affected if these assumptions are
incorrect, are not shared, or change. Also identify any dependencies the project has on
external factors, such as software components that you intend to reuse from another
project, unless they are already documented elsewhere (for example, in the vision and
scope document or the project plan).>
3. System Features
The System features of Bharath are described in the following section:
3.1.1 Description
This application facilitates users to write 12 Indian languages by using
regular keyboard. The User can either use English as the default language
or can select a regional language of his choice.
3.1.2 Input-Process-Output
Input :User selects a Regional Language of his choice.
Process :The System use translators of the corresponding language.
Output :The screen elements are displayed in the selected language.
3.2 Skins
3.2.1 Description
The browser offers a wide collection of over 1,500 Indian wallpapers and
themes which helps the users to customize the browser.
3.2.2 Input-Process-Output
3.3.1 Description
Through different buttons provided the user can have easy access to the
popular social sites like Twitter, Facebook ,etc..
3.3.2 Input-Process-Output
Input :User selects the button for Facebook or Twitter on the sidebar.
Process :The browser transfers control to the corresponding website.
Output :The requested webpage is loaded in the browser or the
side tab.
3.4.1 Description
The browser provides single click access to the Social Networking Sites
like Orkut, Hi5 etc.
3.4.2 Input Process Output
Input :User selects the button for Orkut ,Hi5 or other social networking
sites.
Process :The browser transfers control to the corresponding website.
Output :The requested webpage is loaded in the browser or the
side tab.
3.5.1 Description
Through this application users can watch videos while browsing. The
videos can be downloaded to the playlist provided in the browser.
3.6.1 Description
The browser provides financial updates and stock market updates from
over 30 stock exchanges across the world including BSE,NSE
etc...
3.7.1 Description
It enables users to quickly switch between several open web pages within
the browser window by clicking on tabs.
3.8.1 Description
It allows users to browse and download applications from the iTunes Store
directly to target device, or onto a computer .
3.9.1 Description
3.10.1 Description
The browser provides an embedded anti virus software that automatically
scans all the downloaded files.
3.11 Travel:
3.11.1 Description
3.12 Jobs
3.12.1 Description
The instant job search function provides the latest jobs from thousands of
employers and job sites to the users.
Input :The user searches for appropriate job by clicking the job link.
Process :The browser collects the latest job updates from leading job sites.
Output : The job updates are displayed on the browser.
3.13 BackUp:
3.13.1 Description
This helps the user to get the Backup of documents from their computer to the
user’s Gmail.
3.14 Games:
3.14.1 Description
The browser provides gaming facilities in the side tab for the users which
enables them to game as well as browse simultaneously.
3.15 Maps :
3.15.1 Description
The Maps provided in the browser enables to search and find locations with
a single mouse click. Regional & cultural places of importance are
highlighted in the map
4. External Interface Requirements
4.1 User Interfaces
<Describe the logical characteristics of each interface between the software product and
the users. This may include sample screen images, any GUI standards or product family
style guides that are to be followed, screen layout constraints, standard buttons and
functions (e.g., help) that will appear on every screen, keyboard shortcuts, error
message display standards, and so on. Define the software components for which a
user interface is needed. Details of the user interface design should be documented in a
separate user interface specification.>
<Describe the logical and physical characteristics of each interface between the
software product and the hardware components of the system. This may include the
supported device types, the nature of the data and control interactions between the
software and the hardware, and communication protocols to be used.>
<Describe the connections between this product and other specific software
components (name and version), including databases, operating systems, tools,
libraries, and integrated commercial components. Identify the data items or messages
coming into the system and going out and describe the purpose of each. Describe the
services needed and the nature of communications. Refer to documents that describe
detailed application programming interface protocols. Identify data that will be shared
across software components. If the data sharing mechanism must be implemented in a
specific way (for example, use of a global data area in a multitasking operating system),
specify this as an implementation constraint.>
<If there are performance requirements for the product under various circumstances,
state them here and explain their rationale, to help the developers understand the intent
and make suitable design choices. Specify the timing relationships for real time systems.
Make such requirements as specific as possible. You may need to state performance
requirements for individual functional requirements or features.>
<Specify those requirements that are concerned with possible loss, damage, or harm
that could result from the use of the product. Define any safeguards or actions that must
be taken, as well as actions that must be prevented. Refer to any external policies or
regulations that state safety issues that affect the product’s design or use. Define any
safety certifications that must be satisfied.>
<Specify any requirements regarding security or privacy issues surrounding use of the
product or protection of the data used or created by the product. Define any user identity
authentication requirements. Refer to any external policies or regulations containing
security issues that affect the product. Define any security or privacy certifications that
must be satisfied.>
<Specify any additional quality characteristics for the product that will be important to
either the customers or the developers. Some to consider are: adaptability, availability,
correctness, flexibility, interoperability, maintainability, portability, reliability, reusability,
robustness, testability, and usability. Write these to be specific, quantitative, and
verifiable when possible. At the least, clarify the relative preferences for various
attributes, such as ease of use over ease of learning.>
6. Other Requirements
<Define any other requirements not covered elsewhere in the SRS. This might include
database requirements, internationalization requirements, legal requirements, reuse
objectives for the project, and so on. Add any new sections that are pertinent to the
project.>
Appendix A: Glossary
<Define all the terms necessary to properly interpret the SRS, including acronyms and
abbreviations. You may wish to build a separate glossary that spans multiple projects or
the entire organization, and just include terms specific to a single project in each SRS.>