Академический Документы
Профессиональный Документы
Культура Документы
Prepared by:
Student Name ID No
Yemane Birhane………………………………………………………AKUR/2744/04
Tsehayou Sieley………………………………………………………..AKUR/2741/04
Marta Amanuel………………………………………………………..AKUR/2672/04
i
Examiners
Name Signature
1. ________________________________________ _________________
2. ________________________________________ _________________
3. ________________________________________ _________________
4. ________________________________________ _________________
5. ________________________________________ _________________
6. ________________________________________ _________________
ii
Acronyms and Abbreviation
URL Uniform Resource Locator
URI Uniform Resource Identifier
WWW World Wide Web
HTTPHyper Text Transfer Protocol
OOAObject Oriented Analysis
OODObject Oriented Design
CDCompact Disk
GBGiga Byte
CPUCentral Processing Unit
RAMRandom Access Memory
UMLUnified Modeling Language
SRSSoftware Requirement Specification
UIUser Interface
XML Extensible Mark-up Language
SI System Interface
OSOperating System
IE Internet Explorer
iii
Operational Definitions
Observation- observing is a method of gathering information by perceiving data through the
senses.
Interviewing- asking questions for someone face to face to gain information.
Windows: is a series of operating systems developed by Microsoft.
Availability: is Present and ready for use at different locations.
Reliability: is dependability the quality of being dependable or reliable.
Usability: is the measure of a product's potential to accomplish the goals of the user.
Efficiency: is the state or quality of being efficient.
Performance: determine how a system performs in terms of responsiveness and stability under a
particular workload.
Documentationis material that provides official information or evidence or that serves as a
record.
Operating Systemis the low level software that supports computer basic functions such as
scheduling tasks and controlling peripherals.
iv
List of Figures
Figures Name pages
v
List of Tables
Table Name pages
vi
Abstract
Web browser is the main thing for accessing information from the internet. Without web browser
no one cannot browse or access information using computers around the WorldWideWeb.
Currently there are many browsers which are available in all over the world; but most of them
are written in English language. This brings difficulties in using them for those who do not have
English skills. So to solve this problem we try localizing at least the interface in Tigrigna
language which can be simple for the Tigrigna language users because it’s designed in their
language. The Tigrigna web browser contains the basic functionalities of a given browser that
are necessity while accessing an internet services around the web. This project is aimed to use
Tigrigna interface for those of Tigrigna language users, to decrease the error prone that occur by
shortage of English language, to initiate users to develop applications in their language and to
increase productivity, to decrease cost that was used for learning other languages, to increase the
ability understanding, and to download files by default rather than by external download
manager.
vii
Contents
CHAPTER ONE ........................................................................................................................................... 1
INTRODUCTION ........................................................................................................................................ 1
1.1 Background of the project ................................................................................................................... 1
1.2 Statement of the Problem .................................................................................................................. 1
1.3 Objective of the Project ...................................................................................................................... 2
1.3.1 General objective ......................................................................................................................... 2
1.3.2 Specific objective ......................................................................................................................... 2
1.4 Purpose of the project ......................................................................................................................... 2
1.5 Scope of the project ............................................................................................................................ 3
1.6. Methodology for the project .............................................................................................................. 3
1.6.1 Data gathering techniques .......................................................................................................... 3
1.6.2 System analysis and design methodology .................................................................................... 4
1.6.3 Implementation Methodology ...................................................................................................... 4
1.6.4 Testing Methodology ................................................................................................................... 5
1.7 limitation of the project ....................................................................................................................... 6
CHAPTER TWO .......................................................................................................................................... 7
REQUIREMENT ANALYSIS DESCRIPTIONS ........................................................................................ 7
2.1 Overview of the existing system ......................................................................................................... 7
2.1.1 Activities of the system ................................................................................................................ 7
2.1.2 Problem of Existing System ......................................................................................................... 8
2.1.3 Business Rule ............................................................................................................................... 8
2.2 Overview of the proposed system ....................................................................................................... 8
2.2.1 Functional Requirement ............................................................................................................... 9
2.2.2 Non-Functional Requirement ....................................................................................................... 9
2.2.3 Systems Requirement (Hardware and Software requirement) ................................................... 10
2.2.4 Constraints ................................................................................................................................. 11
2.2.5 Assumptions ............................................................................................................................... 11
CHAPTER THREE .................................................................................................................................... 12
SYSTEM MODELING .............................................................................................................................. 12
3.1 Use case Model ............................................................................................................................. 12
3.1.1 Actor Specification .................................................................................................................... 12
viii
3.1.2 Use Case diagram....................................................................................................................... 13
3.1.3 Use case Description .................................................................................................................. 14
3.2 Sequence Diagram ............................................................................................................................ 19
3.3 Class diagram .................................................................................................................................... 23
CHAPTER FOUR....................................................................................................................................... 24
SYSTEM DESIGN ..................................................................................................................................... 24
4.1 Design goal ....................................................................................................................................... 24
4.2 System Decomposition ..................................................................................................................... 25
4.3 System architecture ........................................................................................................................... 26
4.4 Deployment Diagram ........................................................................................................................ 27
4.5 Persistence Data Management .......................................................................................................... 28
4.6 Access Control .................................................................................................................................. 29
4.7 User Interface Design ....................................................................................................................... 29
5 References ................................................................................................................................................ 31
6 Appendix .................................................................................................................................................. 31
ix
CHAPTER ONE
INTRODUCTION
1.1 Background of the project
The first web browser was invented in 1990 by Sir Tim Berners-Lee. It was called
WorldWideWeb and was later renamed Nexus. The first commonly available web browser with
a graphical user interface was Erwise.
Although browsers are primarily intended to use the World Wide Web, they can also be used to
access information provided by web servers in private networks or files in file systems.
A web browser (commonly referred to as a browser) is a software application for retrieving,
presenting and traversing information resources on the World Wide Web. An information
resource is identified by a Uniform Resource Identifier (URI/URL) and may be a web page,
image, video or other piece of content.
The web is a series of pages. Each webpage has a unique address which when entered in to a
Web browser will take it directly to that page. Most web addresses begin with the letters www
(This stands for World Wide Web).
A web browser is a program user uses to access content on the web. There are a variety of
Browsers available but the most popular are:
Internet Explorer or IE (from Microsoft)
Firefox (from Mozilla)
Safari (from Apple)
Chrome (from Google)
1
It would be a waste of time and error prone when users who can’t understand English
language use the existing system.
2
1.5 Scope of the project
The scope of this project is to develop desktop application software for user’s who can
understand Tigrigna language or have Tigrigna skills. Because this web browser is in Tigrigna
interface users who are Tigrigna language literate can access easily and tolerate errors.
The major scopes of our project are listed below:
The system has its own downloader for downloading files.
The system is in Tigrigna Interface so that users can access easily by following the
user guide which is written Tigrigna language.
User can access speed dial and history for the recently used page in the web
browser.
The system contains tabbed browser interface to add or delete the webpages.
3
1.6.2 System analysis and design methodology
We use for this project the object oriented design methodology for the development of the
desktop application system among the different methodologies of software development. We
choose this approach because it is better way to construct, manage and assemble objects that are
necessarily implemented in our system. The two phases of Object oriented design
methodologies:-
Object Oriented Analysis (OOA): During this phase the team will look at the problem domain
and with the aim of producing a conceptual model of the information that exists in the area
which will be analysed. The team select user’s that uses the system & tries to refine how the
users communicate each other. And this model the functions of the system (use case Modeling),
identifying the business objects, organize the objects and also the relationship between them and
finally the behaviour of the objects are modeled
Object Oriented Design (OOD): During this phase the model interactions and behaviour’s that
support the use case scenario, and finally update object model to reflect the implementation
environment. And also transforms the conceptual model produced in object-oriented analysis to
take account of the constraints imposed to our system format, so that we will use this phase to
refine the use case model to reflect the implementation environment.
4
1.6.3.2 Software Requirements:-
Microsoft office 2010
Microsoft visual studio 2012
Window 7 operating system
Start UML for drawing UML diagrams.
Unicode font to render the Tigrigna text e.g.: Nyala
Edraw max 7.8 for drawing design system.
5
The team will test the system in alpha and beta testing.
Alpha testing
When our system is completed it will be tested by potential users/customers or an independent
test team at the developers' site. So in this case customers find failures and errors on the system.
This takes place before our system is released to customers.
Beta testing
After testing the system on the developers' site it will also be tested on customers’ site place.so
customers and developers will see whether the browser is comfortable, suitable, acceptance on
the customers’ place or system (i.e. desktop, laptop).
6
CHAPTER TWO
7
The capabilities of modern web browsers allow web developers to create highly interactive
websites. For example, Ajax enables a browser to dynamically update information on a webpage
without the need to reload the page.
Users must provide the correct URL of the page they want to access.
If the end user cannot enter the correct URL; the system will give the message that the
requested URL could not be retrieved, Server Failure: The server was unable to
process this query.
The end user must fill correct URL to the browser and do not leave blank space in
address box of the browser search engine.
User will install other software i.e. downloader for faster downloading files.
8
browser windows open (some people even have different web browser types open at the same
time).
Availability: users can get the software from anywhere or other computers it
founds freely.
Reliability: The system enables accessing the correct information for users as the
input they provided is available on the internet.
Scalability: the software is scalable in which a number of users use it without any
effect.
User Interface: the system is in Tigrigna interface and it is easy to use by each
users of the system with little training because it is in their language.
Efficiency: our system is efficient in which it utilizes minimum spaces and
immediately access the required information.
9
Flexibility: our system is flexible while we propose to increase or extend the
functionality of the browser after it is deployed.
Portability: our system is portable in which the software can be installed on
different windows by transferring it with different removable storage devices.
Robustness: the system is able to handle error conditions gracefully, without
failure. This includes a tolerance of invalid data, software defects, and unexpected
operating conditions.
Usability: The browser is simple, easy to understand, access users based on their
background of basic computer and language skills.
10
2.2.4 Constraints
Time constraints: In this case the team has a shortage of time because we have other
mini projects, normal class of the whole semester courses, exams of each courses etc.
Resource constraints: in the development of our project there are some shortages of
resources. For example lack of computer (one computer is available for a team), but that
is not enough for us, there is also a problem of internet access and there is some
occurrence of losing of electric power.
2.2.5 Assumptions
Considering the above constraints we assume that the project may not address all the
functionalities of the web browser; but the most necessary tasks that are mandatory for using the
system are included. For the future time we plan to include the complete and detailed
functionalities of the system.
11
CHAPTER THREE
SYSTEM MODELING
System modeling is helpful for the developer of the system in which it describes the main
functionalities of the web browser and the sequence of actions in the system. It is very important
for expressing the interaction between the system (web browser) and customers.
Users Browse address Writing the correct URL and browse what users write on that
address
Download file Downloading different files from the web.
Manage history To show recently used webpages or to clear un necessary
recently used webpages.
Manage tabs To add or delete many tabs of webpages.
Show speed dial To use the recently used webpages which are taken from the
history.
12
3.1.2 Use Case diagram
The figure below shows the interaction between the actors (i.e. users) and the use case
functionalities, which are found in our proposed system (i.e. Tigrigna web browser).
System
browse address
manage history
download file
User
manage tabs
13
3.1.3 Use case Description
The table below describes browse address use case description with its participating actor,
description, and precondition, flow of event and post condition.
Table 3. 2: Use case Description for browse address
Step 1. The actor is in the home Step 2. Display the address bar of
page (i.e. interface). the browser page it contains.
Step 3. Write the correct URL Step 4. Display or retrieve the
on the address bar, search engine required page and files (image,
which are found in the interface. video, document…) from internet.
Post conditions Actor will get the required page, information, resource and
use it effectively.
14
The table below describes the Download file use case description with its participating actor,
description, precondition, flow of event, and post condition.
Actor User
Step 1. The actor goes to the Step 2.Display the required pages
page he/she requires which contains downloading links.
15
The table below describes the Manage tabs use case description with its participating actor,
description, precondition, flow of event and post condition.
Table 3. 4: Use case Description for manage tab
Actor User
Step 1.The actor is in the home Step 2.Display the tab page it
page (i.e. interface) contains
Step 3. Choose the criteria (add Step 4. Display the new tab or
new tab or delete new tab) from
delete the selected tab on the
menu page.
system.
Post conditions Show tabs result.
16
The table below describes the speed dial use case description with its participating actor,
description, precondition, flow of event, and post condition.
Table 3. 5: Use case Description show speed dial
Actor User
Precondition Open the browser by double clicking or right clicking on installed browser
software.
Description To show recently used web pages
17
The table below describes the Manage history use case description with its participating actor,
description, precondition, flow of event, and post condition.
Table 3. 6: Use case Description for Manage history
Actor User
Precondition Open the browser by double clicking or right clicking on installed browser
software.
description To show recently used webpages and to delete un wanted recently used
webpages.
Flow control Actor action System response
Step 1.user is on the home page(i.e. Step 2. Display history item page it
interface) contains
Step 3. choose the criteria(show Step 4. Display the selected recently
history and delete history) from the page from history menu or delete the
history menu selected recently used page from
history menu.
Post condition User will finish his/her task regarding in using history.
18
3.2 Sequence Diagram
A sequence diagram used to display the object interaction arranged in a time sequence.
This diagram used to show the flow of sequence in implementing and using the proposed system.
The figure below shows how users browse address sequence diagram which are found in our
proposed system.
19
The figure below shows how users down load files sequence diagram which are found in our
proposed system.
20
The figure below shows how users manage history sequence diagram which are found in our
proposed system which means how user can show/delete the recently used pages.
21
The figure below shows how users show speed dial sequence diagram which are found in our
proposed system.
22
3.3 Class diagram
The class diagram below shows the relationship of objects, which are found in our proposed
system (web browser).
23
CHAPTER FOUR
SYSTEM DESIGN
In this chapter we are focusing on the system design of our proposed system which includes
design Goal, System Decomposition, System Architecture, Deployment Diagram, Persistence
Data Management, Access Control and User Interface Design depending on the desktop
application of Tigrigna web browser system. The functional requirements are grouped in such a
way that they could be constructed as sub systems and the non-functional requirements defined
in the analysis are transformed into design goals. We will also express how each non-functional
requirement is implemented in the proposed system.
User Interface: the system is in Tigrigna interface and it is easy to use by each users
of the system with little training because it is in their language.
Modifiable: The system should be designed in Object Oriented language so that
modification to some part of the system could not affect other parts.
Efficiency: our system is efficient in which it utilizes minimum spaces and few
minutes of time while in use.
Flexibility: If the system intends to increase or extend the functionality of the
browser after it is deployed, that should be planned from the beginning; it influences
choices made during the design, development, testing, and deployment of the system.
Portability: our system should be portable in which the software can be installed on
different windows by transferring it with different removable storage devices.
24
4.2 System Decomposition
Subsystem decompositions will help reduce the complexity of the system. The subsystems can
be considered as packages holding related classes/objects.
Under the consideration our Tigrigna web browser; it is decomposed into different subsystems as
shown in the figure below.
The major subsystems of Tigrigna web browser are identified as: browse address sub system,
manage tab sub system, downloader sub system, manage history sub system and speed dial sub
system.
Browses address sub system: In our system user enter the correct URL in the address bar or in
search box and click Go to search the on web with the search engine.
Managing tabs sub system: in this sub system user manages the functionalities of tab such as
closing tab and adding new tab in using different sites.
Managing history sub system: user controls or manages the use of history like show and clear
history in the recently used webpages.
Downloader sub system: at this sub system user downloads different files from where it is
available as a link or others forms to download.
Speed dial sub system: in this subsystem there are recently used webpages available as a
rectangular structure in which user can remove or open these pages.
25
4.3 System architecture
26
Table4. 1: Description system architecture
Layer Description
Xml data It stores data i.e. used as database storage for history.
27
Figure 4. 3: Deployment diagram for Tigrigna browser
28
4.6 Access Control
Access control is way of limiting access to a system or to physical or virtual resources. In
computing, access control is a process by which users are granted to access and certain privileges
to systems, resources or information. But in our system there is one actor which can access all
the functionality without creating any account on the system.
Table4. 2: control access
function actor
users
Browse address
Manage tabs
Manage history
Show speed dial
Download file
29
Figure 4. 6: opening new window browser
30
5 References
1. http://en.wikipedia.org/wiki/Web_browser
2. www.codeproject.com
3. http://www.slideshare.net/Gowsalyasri/voice-based-srs
4. http://www.uml-diagrams.org/sequence-diagrams-examples.html
5. www.codeproject.com
6. Windows Forms Programming with C#_2.A practical guide to windows application
development in.NET, Erik Brown.
6 Appendix
Some Interview questions
End users:-we ask some users how they can use the existing browsers and what problems are
encounter while in use.
31