software requirements specification

21
Software Requirements Specification for Bharath Version 1.0 approved Prepared by <author> Speridian Technologies 20 July 2010

Upload: sandeepv710

Post on 19-Nov-2014

769 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Software Requirements Specification

Software Requirements Specification

for

Bharath

Version 1.0 approved

Prepared by <author>

Speridian Technologies

20 July 2010

Page 2: Software Requirements Specification

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.

1.2 Document Conventions

Definitions

HTML-HTML is a type of computer language that is primarily used for

files that are posted on the internet and viewed by web browsers.

WWW-The WWW is the universe of network-accessible information,

an embodiment of human knowledge.

SRS-A SRS is a complete description of the behavior of the system to

be developed.

DBMS-DBMS is a computer software program that is designed as the

means of managing all databases.

Page 3: Software Requirements Specification

Internet-Internet is network of networks that consists of millions ofprivate and public,

academic, business, and governmentnetworks of local to global scope that are linked by a

broad arrayof electronic and optical networking technologies.

Protocol-A protocol is a set of rules which is used by computers to

communicate with each other across a network.

Datagram-A datagram is a self-contained, independent entity of datacarrying sufficient

information to be routed from the source tothe destination computer without reliance on

earlier exchangesbetween this source and destination computer and thetransporting

network.

URL-URL is a set that specifies where an identified resource is

available and the mechanism for retrieving it.

Acronyms and Abbreviations

HTML-Hyper Text Markup Language

IEEE-Institute for Electrical and Electronic Engineers

WWW-World Wide Web

SRS-Software Requirements Specification

DBMS-Database Management System

NMS-Network Management Systems

Arch.- Architecture

XML-Extensible Markup Language

LAN-Local Area Network

URL-Uniform Resource Locato

1.3 Intended Audience and Reading Suggestions

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

Page 4: Software Requirements Specification

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.

1.4 Project Scope

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

IEEE Recommended Practice for Software Requirements Specifications – IEEE Std 830-

1993

www.epicbrowser.com -for epicbrowser

1.6 Overview

The rest of this SRS document describes the various system requirements, interfaces,

features and functionalities in detail

Page 5: Software Requirements Specification

2. Overall Description

2.1 Product Perspective

The application will be a window-based, self-contained and independent software product.

2.2 System Interfaces

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.

Browser http Server

Page 6: Software Requirements Specification

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.

Page 7: Software Requirements Specification

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..

2.4 User Classes and Characteristics

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.

2.5 Operating Environment

<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.>

Page 8: Software Requirements Specification

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).>

2.7 User Documentation

<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.>

2.8 Assumptions and Dependencies

<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 Multi Language Support

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.

Page 9: Software Requirements Specification

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

Input :User selects a desired skin,ie background or theme.

Process :The browser processes and applies the selected background and

theme to the header, footer and sidebar.

Output :The browser is displayed with the selected background and

theme.

3.3 One Touch Access to Facebook and Twitter.

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 Other Social Networking sites popular in India

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

Page 10: Software Requirements Specification

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 Displaying You Tube like videos.

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.5.2 Input Process Output

Input :User selects the video to be played.

Process :The browser adds the selected video to playlist and loads it to the

video player.

Output :The requested video is diplayed on the side tab even while the

user is using the browser

3.6 Stock market news from BSE and NSE

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.6.2 Input Process Output

Input :User checks the finance portfolio button.

Process :The browser collects and tabulates the stock market updates.

Output :The Stock market status is displayed on the tabspace.

3.7 Tabbed Browsing

3.7.1 Description

Page 11: Software Requirements Specification

It enables users to quickly switch between several open web pages within the browser window by clicking on tabs.

3.7.2 Input Process Output

Input :User clicks the desired tabs.

Process :The browser identifies the active and inactive tabs.

Output :The desired tab is actively diplayed on the browser.

3.8 App Store (third party apps)

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.8.2 Input Process Output

Input :User browses the desired applications.

Process :Identify and load the selected applications.

Output :Display the downloads in the apps store.

3.9 Ability to browse on mobiles

3.9.1 Description

It provides a mobile version for browsing using the WAP.

3.9.2 Input Process Output

Input :User browses for websites on mobiles.

Process :The browsers redirects to the requested webpage.

Output :The requested page is displayed on the browser.

3.10 Antivirus Support:

3.10.1 Description

Page 12: Software Requirements Specification

The browser provides an embedded anti virus software that automatically

scans all the downloaded files.

3.10.2 Input Process Output

Input :The user downloads a desired file or webpage

Process :The browser scans all the downloaded files.

Output : The threats are filtered and displayed.

3.11 Travel:

3.11.1 Description

The travel application is the gateway of popular domestic international

travel booking sites. Users can book the flight tickets, hotels and

cars through top travel vendors like Yatra.com and Cleartrip.com

3.11.2 Input Process Output

Input :The user selects the required locations.

Process :The browser redirects to the popular travel support sites.

Output : The travel solutions are displayed to the user.

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.

3.12.2 Input Process Output

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.

Page 13: Software Requirements Specification

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.13.2 Input Process Output

Input :The user requests a backup of their documents.

Process :The browser collects the documents and redirects them to the

user’s Gmail account.

Output : The user gets the backup of the documents in his Gmail account.

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.14.2 Input Process Output

Input :The user selects a particular game.

Process :The browser loads the game from the library.

Output : The game gets loaded in the browser and the user accesses it.

3.15 Maps :

3.15.1 DescriptionThe 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

Page 14: Software Requirements Specification

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.>

4.2 Hardware Interfaces

<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.>

4.3 Software Interfaces

<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.>

4.4 Communications Interfaces

<Describe the requirements associated with any communications functions required by this product, including e-mail, web browser, network server communications protocols, electronic forms, and so on. Define any pertinent message formatting. Identify any communication standards that will be used, such as FTP or HTTP. Specify any communication security or encryption issues, data transfer rates, and synchronization mechanisms.>

5. Other Nonfunctional Requirements

5.1 Performance Requirements

<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.

Page 15: Software Requirements Specification

Make such requirements as specific as possible. You may need to state performance requirements for individual functional requirements or features.>

5.2 Safety Requirements

<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.>

5.3 Security Requirements

<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.>

5.4 Software Quality Attributes

<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.>

Appendix B: Analysis Models

<Optionally, include any pertinent analysis models, such as data flow diagrams, class diagrams, state-transition diagrams, or entity-relationship diagrams.>

Page 16: Software Requirements Specification

Appendix C: Issues List

< This is a dynamic list of the open requirements issues that remain to be resolved, including TBDs, pending decisions, information that is needed, conflicts awaiting resolution, and the like.>