Voice Based Web Browser

33

Transcript of Voice Based Web Browser

Page 1: Voice Based Web Browser
Page 2: Voice Based Web Browser

Version 2.0

Table of Contents

1. Introduction

1.1 Methodology 3

1.2 Purpose 4

1.3 Scope 4

1.4 Definitions, Acronyms, Abbreviations 4

1.5 Tools used 5

1.6 References 6

1.7 Technologies Used 6

1.8 Overview 7

2. Overall Description

2.1 Product Perspective 8

2.2 Software Interface 8

2.3 Hardware Interface 9

2.4 Communication Interface 9

2.5 Constraints 9

3. Specific Requirements

3.1 Use Case Reports 10

3.2 Class Diagrams 13

3.3 Activity Diagrams 18

3.3.1 Overall System Activity 18

3.3.2 Activity for maintaining History 19

3.3.3 Browser Navigation Activity 20

3.3.4 Activity for maintaining Bookmarks 21

3.4 Sequence Diagrams 22

4. Appendix 23

Techno Athletes / GVP College of Engineering for Women Page 2

Page 3: Voice Based Web Browser

Version 2.0

1. Introduction

1.1 Methodology

Rational Unified Process

Rational Unified Process (RUP) is an object-oriented and Web-enabled program

development methodology. RUP is like an online mentor that provides guidelines, templates, and

examples for all aspects and stages of program development. RUP is comprehensive software

engineering tool that combine the procedural aspects of development with other components of

development within a unifying framework.

RUP establishes four phases of development, each of which is organized into a number of

separate iterations that must satisfy defined criteria before the next phase is undertaken:

Inception phase : Developers define the scope of the project and its business case

Elaboration phase : Developers analyze the project needs in greater detail and define its

architectural foundation

Construction phase : Developers create the application design and source code

Transition phase : Developers deliver the system to users.

RUP provides a prototype at the completion of each iteration.

Techno Athletes / GVP College of Engineering for Women Page 3

Page 4: Voice Based Web Browser

Version 2.0

1.2 Purpose

The essential purpose of Voice Based Web Browser is to enter from visual paradigm

to voice paradigm -- including Admin and User. Voice browsers allow people to access the Web

using speech synthesis, pre-recorded audio, and speech recognition. Voice interaction can escape

the physical limitations on keypads and displays as mobile devices become ever smaller.

1.3 Scope

There are 2 basic users-Admin and User

User must enter the voice command among the listed commands.

Admin controls the entire access of the user, maintains History and Bookmarks.

1.4 Definitions, Acronyms, Abbreviations

Admin

Administrator, who is mainly responsible for making the browser ready to use,

maintains History and Bookmarks thus providing access to the web browser for user.

WASCE

WebSphere Application Server Community Edition[WASCE] is an Application

Server that runs and supports J2EE and Web Service Applications.

Techno Athletes / GVP College of Engineering for Women Page 4

Page 5: Voice Based Web Browser

Version 2.0

JSP

Java Server Pages [JSP] is used to create dynamic web content.

J2EE

Java2 Enterprise Edition[J2EE] is a programming platform which is a part of java

platform for developing and running distributed java.

UML

Unified Modeling Language is a standard language for writing software blueprints.

The UML may be used to visualize, specify, construct and document.

XML

Extensible Markup Language is a text based format that let developers describe,

deliver and exchange structured data between a range of applications to client for display and

manipulation.

HTTP

Hyper Text Transfer Protocol is a service protocol.

Eclipse

Eclipse is a multi-language software development environment comprising

a workspace and an extensible plug-in system. It is written mostly in Java. It can be used to

develop applications in Java and, by means of various plug-ins, other programming languages.

1.5 Tools Used

Rational Rose

Rational Rose is an object-oriented Unified Modeling Language (UML) software design

tool intended for visual modeling and component construction of enterprise-level software

applications. Rational Rose documents the diagram as it is being constructed and then generates

code in the designer's choice of C++, Visual Basic, Java, Oracle8, Corba or Data Definition

Language.

Techno Athletes / GVP College of Engineering for Women Page 5

Page 6: Voice Based Web Browser

Version 2.0

Eclipse

Eclipse can be used to develop applications in Java and, by means of various plug-ins,

other programming languages. It can also be used to develop packages for the

software Mathematica. Development environments include the Eclipse Java development tools

(JDT) for Java. Eclipse began as an IBM Canada project. The Eclipse Platform uses plug-ins to

provide all functionality within and on top of the runtime system, in contrast to some other

applications, in which functionality is hard coded. The Eclipse Platform's runtime system is

based on Equinox, an implementation of the OSGi core framework specification.

1.6 References

Unified Modeling Language Guide – Grady Booch

Software Engineering, Seventh Edition, Ian Sommerville

IBM TGMC Sample Synopsis

IBM – www.ibm.in/developerworks

Java – www.sun.com

Wikipedia – www.wikipedia.com

Complete Reference - J2EE – Jim Keogh

1.7 Technologies Used

XML

Extensible Markup Language (XML) is a markup language that defines a set of rules for

encoding documents in a format that is both human-readable and machine-readable. It is defined

in the XML 1.0 Specification produced by the W3C, and several other related specifications,

all gratis open standards.

Web Services

A Web service is a method of communication between two electronic devices over the

web. The W3C defines a "Web service" as "a software system designed to support interoperable

machine-to-machine interaction over a network".

Techno Athletes / GVP College of Engineering for Women Page 6

Page 7: Voice Based Web Browser

Version 2.0

UML

Unified Modeling Language (UML) is a standardized general-purpose modeling

language in the field of object-oriented software engineering. The standard is managed, and was

created, by the Object Management Group. UML includes a set of graphic notation techniques to

create visual models of object-oriented software-intensive systems.

J2EE

Java Platform, Enterprise Edition or Java EE is Oracle's enterprise java computing

platform. The platform is primarily used for development of enterprise software, including

network and web services, in the Java programming language.

e-Forms

An e-form (electronic form) is a computer program version of a paper form. Aside from

eliminating the cost of printing, storing, and distributing pre-printed forms and the wastage of

obsolete forms, e-forms can be filled out faster because the programming associated with them

can automatically format, calculate, look up and validate information for the user.

1.8 Overview

Drawbacks

There is restriction on the number of commands.

The user interface language is English only.

Proposed System

Interface provided to the user is a Web Browser.

User- Interacts with the browser by providing voice commands.

Admin – Controls the activities of the user.

Our Plan

Techno Athletes / GVP College of Engineering for Women Page 7

Page 8: Voice Based Web Browser

Version 2.0

Designing an efficient Web Browser.

Allowing the Browser to accept voice commands provided by the user.

To provide desirable voice output to the user.

2. Overall Description

2.1 Product Perspective

2.2 Software Interface

Client on Internet

Web Browser, Operating System (any)

Client in Intranet

Web Browser, operating System (any)

Techno Athletes / GVP College of Engineering for Women Page 8

Page 9: Voice Based Web Browser

Version 2.0

Web Server

WASCE, Operating System (any)

Development End

Eclipse (J2EE, JAVA, JAVA Bean, Servlets, HTML, XML, AJAX), DB2, OS, Web

Sphere (Web Server).

2.3 Hardware Interface:

Operating System: Windows / Linux

Processor Speed: 1.25GHz

Memory Required: 10 GB

2.4 Communication Interface

We are providing the Web Browser as an Interface for the user interaction.

2.5 Constraints

Login and password is used for the identification of users.

Only registered users will be authorized to post and download articles.

Limited to HTTP/HTTPS.

Techno Athletes / GVP College of Engineering for Women Page 9

Page 10: Voice Based Web Browser

Version 2.0

3. Specific Requirements

3.1 Use case Reports

User Use case

Techno Athletes / GVP College of Engineering for Women Page 10

Page 11: Voice Based Web Browser

Version 2.0

User

Goto Homepage

Focus on Menu Items

Maximize / Minimize Browser

Focus on Address Bar

New Tab/ Close Tab

Goto Website

Refresh

Reload

Scroll Up/ Down

Bookmarks

Downloads

Next Page

Clear History

Increase / Decrease Font

Next / Previous

Switch b/w Tabs

Read Page Contents

Read at Grid

Open in a new tab

Close Browser

Use Case Description

Open in a new Tab This opens a particular URL in a new Tab.

Minimize/Maximize Browser This alters the size of the Browser Window.

Goto HomePage Opens the default Page set for the Browser.

Techno Athletes / GVP College of Engineering for Women Page 11

Page 12: Voice Based Web Browser

Version 2.0

Focus on menu items This selects the particular menu item.

Focus on Address bar This places the cursor at the Address Bar.

Close Tab This closes the intended tab

Goto Website Opens the Website referred by the User.

Refresh/Reload This Refreshes or Reloads the Current Page.

Scroll Up/Down This is responsible for the movement in the Page.

Add to Bookmarks This adds a particular Website to the list of already existing mostly

preferred Websites.

View Downloads Displays the list of Downloads.

Go Next/Previous This transitions the current page to the Next/Previous page.

Clear History This deletes the History.

Increase/Decrease Font This is responsible for changing the font size of Page Content.

Switch Between Tabs This is responsible for transition between the Tabs.

Read Page Contents This Outputs the data in the form of Speech.

Read at Grid This is responsible for focusing on a specific Grid location and it

Outputs that content in the form of speech.

Close Browser This closes the Browser.

Admin Use case

Techno Athletes / GVP College of Engineering for Women Page 12

Page 13: Voice Based Web Browser

Version 2.0

Maintains History

Maintains Bookmarks

Controls User AccessAdmin

Make Browser Ready for User

Use Case Descripiton

Maintains History This creates a list of all the viewed Pages.

Maintains Bookmarks This maintains the list of mostly referred Pages.

Controls User Access This provides user the capability to provide the voice

commands

Make Browser Ready for User Admin provides some list of com

mands to user, using which User can communicate with the

browser.

Techno Athletes / GVP College of Engineering for Women Page 13

Page 14: Voice Based Web Browser

Version 2.0

3.2 Class Diagrams

BrowserController

closeBrowser()openNewTab()closeTab()switchBetweenTabs()minimizeBrowser()

PageLoaders

gotoHomepage()gotoURL()refresh()reload()

Navigator

previous()next()

BrowserStorageElements

viewHistory()clearHistory()addToBookmarks()viewBookmarks()

ContentController

scrollUp()scrollDown()increaseFont()decreaseFont()

ElementSelector

focusOnAddressBar()focusOnMenuItems()divideGrid()

CommandProcessor

1

1

1

1

1

1

1

1

1

1

1

1

1

1 1

1

1

1

1

1 1

1

1

1

SpeechRecognizer SpeechSynthesizer

UserInterface

Browser

1

1

1

111

inputs to

11

Outputs to

1 1 1 1

Techno Athletes / GVP College of Engineering for Women Page 14

Page 15: Voice Based Web Browser

Version 2.0

Class Operations Responsibilities

BrowserController

closeBrowser() : It closes the

Browser

openNewTab(): It creates a new tab

in the browser

closeTab(): It closes the intended tab

minimizeBrowser() : It minimizes the

browser

switchBetweenTabs(): It is used to

navigate from one tab to another tab.

These perform the

operations on the

windows and tabs of

the Browser.

PageLoader

gotoHomepage(): Opens the default

Page set for the Browser.

gotoURL(): Opens the Website

referred by the User

refresh(): This refreshes the current

page.

reload(): This reloads the current

page.

This performs all the

operations that are

necessary for loading

a particular page.

Navigator

next(): This transitions the current

page to the Next page.

previous(): This transitions the

current page to the previous page.

These transitions from

current page to the

previous or the next

page.

Techno Athletes / GVP College of Engineering for Women Page 15

Page 16: Voice Based Web Browser

Version 2.0

BrowserStorageElements

viewHistory(): This displays the list

of pages visited by the user.

clearHistory(): This deletes the

History.

addtoBookmarks(): This adds a

particular Website to the list of

already existing mostly preferred

Websites.

viewBookmarks(): This displays the

list of Bookmarks

This stores all the user

related information in

the Browser.

ContentController

scrollUp(): This gives an upward

movement in the window.

scrollDown(): This gives a downward

movement in the Window.

increaseFont(): This increases the

size of the font.

decreaseFont(): This decreases the

size of the font.

This is used to apply

changes in the font

and for moving

up/down in around the

window.

ElementSelector

focusonAddressBar(): This places the

cursor at the Address Bar.

focusonMenuitems(): This selects a

particular menu item

divideGrid(): This divides the entire

page in the grid format of rows and

columns.

This is merely used for

the selection of a

particular element in

the page.

Techno Athletes / GVP College of Engineering for Women Page 16

Page 17: Voice Based Web Browser

Version 2.0

SpeechRecognizer

acceptVoiceCommand(): This

accepts the voice commands given by

the user.

This performs tha

action of accepting the

input.

SpeechSynthesizer

readAtGrid(): This starts reading the

content from a particular position

located in the grid.

readPageContent(): This reads the

page content from the starting

location.

This is responsible for

the Voice Output.

Browser

It interacts with CommandProcessor

and fulfills user requirements

It is used in the

Construction of DOM

Tree.

CommandProcessor

It inherits methods of browserController,

contentController,PageLoader,Navigator

and BrowserStorageElements.

Supports to satisfy

browser requirements.

Techno Athletes / GVP College of Engineering for Women Page 17

Page 18: Voice Based Web Browser

Version 2.0

3.3 Activity Diagrams

3.3.1 Overall System Activity

Open Browser

Accept Voice Commands

Recognize Voice Commands

Command is Present in Grammar File

Process Command

Display appropriate Message

Close Browser

Perform deligated action

Close the Browser

Yes

No

Yes

No

Techno Athletes / GVP College of Engineering for Women Page 18

Page 19: Voice Based Web Browser

Version 2.0

3.3.2 Activity for Maintaining History

Techno Athletes / GVP College of Engineering for Women Page 19

Page 20: Voice Based Web Browser

Version 2.0

3.3.3 Browser Navigation Activity

Add the website/webpage to datastructure

The new page will be prepended to existing datastructure

User Opens some website / web page

user opens other webpage/website in same session

user wants to navigte to previous page

user wants to navigte to next page

any webpages added before this webpage

any webpages added after this webpage

Respective website/webpage will be loaded

Respective webpage/website will be loaded

User ends the session

yes

no

yes yes

Techno Athletes / GVP College of Engineering for Women Page 20

Page 21: Voice Based Web Browser

Version 2.0

3.3.3 Activity for Maintaining Bookmarks

Respective webpage will be added to Bookmarks file

User wants a webpage to be bookmarked

yes

User wants to remove bookmark for a webpage

no

Only respective web page will be removed from bookmarks file

yes

User want to view all bookmark pages

no

List will be shown to user

yes

Techno Athletes / GVP College of Engineering for Women Page 21

Page 22: Voice Based Web Browser

Version 2.0

3.4 Sequence Diagrams

User : User

Speech Recognizer

Command Renderer

Speech Synthesizer

1: Provide Voice Commands

2: Converts into Phenomes

3: Search for the match in digital dictionary

4: Request Command Renderer for Processing

5: Checks what action to be taken using Grammar File

6: If word present, Perform appropriate action

7: If commands action is to output data

9: Generates Prosodic Units

10: Converts into Sound

11: Voice Output

8: Outputs Associated Action

Object Description

Speech Recognizer This recognizes the Voice Commands provided by the User, converts

them into phonemes and searches for a match in the Digital dictionary.

Command renderer This is responsible for performing an appropriate action if the word is

recognized in the Grammar File.

Speech synthesizer This generates prosodic units which are responsible for the Voice

Output.

Techno Athletes / GVP College of Engineering for Women Page 22

Page 23: Voice Based Web Browser

Version 2.0

4. Appendix

A:

Abbreviations - 4

Acronyms – 4

Activity Diagram – 16

Activity for Maintaining Bookmarks - 21

Activity for Maintaining History - 19

Admin - 4

Admin Use case – 12

B:

Browser Navigation Activity - 20

C:

Communication Interface- 9

Class Diagram-13

Constraints – 9

D:

Definitions - 4

Drawbacks – 7

E:

Eclipse - 5

e-forms - 7

H:

Hardware Interface - 9

HTTP – 5

I:

Introduction - 3

J:

J2EE – 4, 7

JSP - 4

M:

Methodology-3

O:

Our Plan – 7

Overview – 7

Overall Description – 8

Overall System Activity-18

P:

Product perspective - 8

Proposed Systems – 7

Purpose - 4

Techno Athletes / GVP College of Engineering for Women Page 23

Page 24: Voice Based Web Browser

Version 2.0

R:

Rational Rose – 5

Rational unified process -3

References - 6

S:

Scope - 4

Sequence Diagrams-22

Software Interface – 8

Specific Requirements - 10

T:

Table of Contents- 2

Technology Used - 6

Tools Used - 5

U:

UML – 4, 6

Use case reports – 10

User Use Case - 10

W:

WASCE – 4,

Web services - 6

X:

XML–5, 6

Techno Athletes / GVP College of Engineering for Women Page 24

Page 25: Voice Based Web Browser

Version 2.0

Special Thanks

We are deeply grateful to our Institution, especially to the Department of Computer

Science and Engineering for their magnificent help along the course of this project. We would

also like to convey our special thanks to all the IBM Software Development Tools and all the

websites which were extremely helpful in the Software Development.

Techno Athletes / GVP College of Engineering for Women Page 25