Transcript
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
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
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
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
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
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
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
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
Version 2.0
3. Specific Requirements
3.1 Use case Reports
User Use case
Techno Athletes / GVP College of Engineering for Women Page 10
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
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
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
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
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
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
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
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
Version 2.0
3.3.2 Activity for Maintaining History
Techno Athletes / GVP College of Engineering for Women Page 19
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
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
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
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
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
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
top related