You are on page 1of 41

AKSUM UNIVERSITY

COLLEGE OF ENGNERRING AND TECHNOLOGY


SUBMITED TO: DEPARTMENT OF COMPUTING TECHNOLOGY
PROGRAM OF COMPUTER SCIENCE
FINAL YEAR PROJCET
TIGRIGNA WEB BROWSER

In a partial fulfilment for the BSc Degree in Computer Science

Prepared by:

Student Name ID No
Yemane Birhane………………………………………………………AKUR/2744/04
Tsehayou Sieley………………………………………………………..AKUR/2741/04
Marta Amanuel………………………………………………………..AKUR/2672/04

Advisor Name: Mr.Abdulbasit.M


Aksum, Ethiopia
Feb 9/ 2015
Acknowledgement
First and foremost and above all our biggest thanks would be to Almighty God because nothing
could be possible without his free will and the completion of this project is supported by him.
And secondly we give a great thanks to our advisor Mr.Abdulbasit.M (Msc.) who tells us
different referential sites, advises us by killing his golden time, guides and motivates us that
everything can be done if it is in willingness and love. Next, we give thanks to Mr.Yitbarek who
gives us C# programming tutorials for one week and suggests our project title. And we also want
to say thank you for our department head Mr.Hailay Beyene for his advices to work on the
project effectively and schedule the project based on time planned manner abstract.
Finally we would like to thank for all computing technology instructors and students who
contribute an important role in sharing ideas and experiences.

i
Examiners

Name Signature

1. ________________________________________ _________________

2. ________________________________________ _________________

3. ________________________________________ _________________

4. ________________________________________ _________________

5. ________________________________________ _________________

6. ________________________________________ _________________

Advisor Name Sign. Date:

Mr. Abdulbasit.M _________________ ________

ii
Acronyms and Abbreviation
URL Uniform Resource Locator
URI Uniform Resource Identifier
WWW World Wide Web
HTTPHyper Text Transfer Protocol
OOAObject Oriented Analysis
OODObject Oriented Design
CDCompact Disk
GBGiga Byte
CPUCentral Processing Unit
RAMRandom Access Memory
UMLUnified Modeling Language
SRSSoftware Requirement Specification
UIUser Interface
XML Extensible Mark-up Language
SI System Interface
OSOperating 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.
Documentationis material that provides official information or evidence or that serves as a
record.
Operating Systemis the low level software that supports computer basic functions such as
scheduling tasks and controlling peripherals.

iv
List of Figures
Figures Name pages

Figure 3. 1: use case diagram for Tigrigna browse ....................................................................... 13


Figure 3. 2: sequence diagram for browse address ....................................................................... 19
Figure 3. 3: sequence diagram for download file ......................................................................... 20
Figure 3. 4:sequence diagram for manage history ........................................................................ 21
Figure 3. 5: sequence diagram for speed dial. .............................................................................. 22
Figure 3. 6: sequence diagrams for manage tabs. ......................................................................... 22
Figure 3. 7: class diagram for Tigrigna browser ........................................................................... 23
Figure 4. 1: system decomposition of the proposed system ......................................................... 25
Figure 4. 2: System architecture of the web browser.................................................................... 26
Figure 4. 3: Deployment diagram for Tigrigna browser ............................................................... 28
Figure 4. 4: Persistence Data Management for Tigrigna browser ................................................ 28
Figure 4. 5: adding new tabs ......................................................................................................... 29
Figure 4. 6: opening new window browser ................................................................................... 30

v
List of Tables
Table Name pages

Table 3. 1: Actor Specification ..................................................................................................... 12


Table 3. 2: Use case Description for browse address ................................................................... 14
Table 3. 3: Use case Description for Download file ..................................................................... 15
Table 3. 4: Use case Description for Download file ..................................................................... 16
Table 3. 5: Use case Description show speed dial ........................................................................ 17
Table 3. 6: Use case Description for Manage history ................................................................... 18
Table4. 1: Description system architecture ................................................................................... 27
Table4. 2: control access ............................................................................................................... 29

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.2 Statement of the Problem


 Most of the existing browsers are in English so that local users cannot understand
correctly.
 The system is not equalizing to all users.
 Not feasible to all users.
 The existing browsers do not contribute in the development of the local language.

1
 It would be a waste of time and error prone when users who can’t understand English
language use the existing system.

1.3 Objective of the Project


1.3.1 General objective
The general objective of this project is to develop localized Tigrigna web browser for desktop
application.
1.3.2 Specific objective
 To analysing the existing system
 Identify the problems of the existing system.
 Prepare problem solving mechanisms for those processes.
 Analysis the proposed system.
 Design the proposed or new system.
 Implementing the new or proposed system.
 Testing the new system.

1.4 Purpose of the project


.
 The main purpose of this project is to create an enjoyable, non-confusing browsing
experience for the end users by paying heed to their specific cultural context.
 We will create a desktop application web browser which user’s use in retrieving,
presenting and traversing the information from one place to another by their native
language interface.
 Facilitate and encourage international users to use localized products.
 Establish channels of communication among localization contributors.
 Keep track of the status of various localization projects.
 To improve productivity.
 To initiate other developers to build other application by their language.
 Error, cost and time can be minimized because the system is adopted in the local
language and easy to use for users.

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.

1.6. Methodology for the project


1.6.1 Data gathering techniques
For this project to develop the web browser we selected unstructured interview and onsite
observations.
 Observation- observing is a method that used without asking any question or without
giving any question to organization but a means of gathering information by perceiving
data through the senses: sight, hearing, taste, touch and smell. From these the sense of
sight is the most important and widely used for our proposed system in which it observes
on how it works. During our observation we understand on some common existing web
browsers like Google chrome, Mozilla Firefox, opera and internet explorer i.e. how they
work, what problems or drawbacks are found on them when used by local users.
 Interviewing- An interview is a conversation between two people (the interviewer and
the interviewee) where questions are asked by the interviewer to obtain information from
the interviewee. Accordingly, to understand how to work the web browser, we make
interview and ask for some end users. From the end user we gain some information on
existing browser i.e. Only available for users who have the English language skills.

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.

1.6.3 Implementation Methodology


1.6.3.1 Hardware Requirements:-
 Processor: Intel(R) core(TM) i3-3220 CPU @ 3.30 GHZ 3.3
 RAM Capacity : 2.00GB (1.88GB usable)
 Keyboard: Standard keyboard.
 Mouse :to control all activities of the computer
 230GB hard disk : to store the data
 Flash disk : to transfer data from one computer to another
 CD : also to transfer data from one computer to another
 Printer: For printing some document files

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.

1.6.4 Testing Methodology


Unit testing
Unit test is a way of testing each of the system functionality independently. Accordingly the
team has done and tested each one of major activities and the rest accompanying activities
independently using different user input and any technique of fault finding so that an incorrect
functioning of the activities was corrected at the right time.
Integration testing
The team will be test by combining individual functionality together and test is made as a whole.
This means combining each individual form and designs test is made by giving imputing general
data.
System testing
System Testing enables us to test, validate and verify both the Application Architecture and
Business requirements.
At the end, the team will be test the system by giving different inputs. The team will be testing
the behavior of a complete and fully integrated software product based on the software
requirements specification (SRS) document. The main focus of this testing is to
evaluate Business / Functional / End-user requirements. In this step of testing the team checks if
system meets functional requirement or not.

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

1.7 limitation of the project


 It is not suitable for all illiterate native users.
 It is difficult for foreigners who don’t have any skills of the Tigrigna language.
 Since this desktop software application includes Tigrigna language, so it is language
dependent not include other language.
 The browser doesn’t remember passwords,
 It doesn’t have page inspector.

6
CHAPTER TWO

REQUIREMENT ANALYSIS DESCRIPTIONS


In this chapter we are focusing on the Requirement Analysis of the system which includes
Overview of the existing system, Problem of Existing System and also we analysis the overview
of the proposed system (i.e. functional requirement, non-functional requirement, system
requirement) in the proposed system.

2.1 Overview of the existing system


A web browser is used to navigate and move around on the Web. Web pages are displayed in a
browser on a computer and also many portable devices, such as cell phones.
There are several web browsers available (and in the early days of the Web, there was one that
was text-only). Internet Explorer, Firefox, Safari, Google Chrome, and Opera are just some
examples of browsers.
You view a web page with in a web browser. You can have several web pages open at once in a
single window using multiple tabs or you can have several different browser windows open
(some people even have different web browser types open at the same time!).
In addition to retrieving and displaying web documents, web browsers typically provide the user
with other useful features. For example, most browsers keep track of recently visited web pages
and provide a mechanism for “bookmarking” pages of interest.

2.1.1 Activities of the system


A browser lets you visit websites and do activities within them like browse, view multimedia,
link from one site to another, visit one page from another and print are among many other
activities.
Also the existing system is used to request for webpages from a web server, it is used to present
documents over the internet, it is used for send and receive email, it is used for downloading and
uploading files, it is used for streaming video content over the internet.

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.

2.1.2 Problem of Existing System


 The existing system is in English. So that users who don’t have English skills face
difficulty in using the system.
 The system is not equalizing to all users.
 The system is not feasible to all users.
 The old system doesn’t contribute for developing the local language.
 It would be wastage of time and errors vulnerable to if users who don’t have the
skills of English language use the existed system.
 The existing system can’t use to create an enjoyable or it makes confusing in
browsing experience for the end user who can’t tolerate the language.

2.1.3 Business Rule

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

2.2 Overview of the proposed system


The overview of the proposed system is to create opportunities for Tigrigna speaker use browser
by their language. The browser will have downloader which can download files from internet,
and it shows speed dial and history to use the recently used webpages. You can have several
web pages open at once in a single window using multiple tabs or you can have several different

8
browser windows open (some people even have different web browser types open at the same
time).

2.2.1 Functional Requirement


The main functionalities of the browser are listed below:-
 Downloader: the downloader on this web browser downloads file from different sites
of internet. Users can download different kind files freely.
 Browse address: the user writes the correct URL on the address bar and the browser
browses the required web pages to the user if it is found.
 Speed dial: this is used to display the recently used web pages in a rectangular form
(box) which are selected or taken from the history.
 Tabbed browser interface:-the user can add a new tab to access different web pages
in on a one single open window and also to close the un wanted or used web pages in
order to protection from busy and redundancy of the browser.
 Manage history: this is used to store recently used webpages which enables to use
these webpages.

2.2.2 Non-Functional Requirement


In addition to the obvious features and functions that we will provide in the system, there are
other requirements that don't actually do anything, but are important characteristics nevertheless.
Here are some examples of non-functional requirements of our proposed system:

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

2.2.3 Systems Requirement (Hardware and Software requirement)


Systems Requirement means what are the hard ware and software requirement for this project
when after fnished.Then the hard ware and software are listed here below.

2.2.3.1 Hardware Requirements:-


 Processor : Intel(R) core(TM) i3-3220 CPU @ 3.30 GHZ 3.3
 RAM Capacity : 2.00GB (1.88GB usable)
 Keyboard: Standard keyboard.
 Mouse :to control all activities of the computer
 230GB hard disk : to store the data
 Flash disk : to transfer data from one computer to another
 CD : also to transfer data from one computer to another

2.2.3.2 Software Requirements:-


 Windows operating system
 Unicode font to render the Tigrigna text e.g. Nyala

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.

3.1 Use case Model


This model shows the interaction between the system (i.e. web browser) and the users. It is
useful for the developer of the system in which it enables the main functionalities of the web
browser.

3.1.1 Actor Specification


The table below describes about the actors who participate in the web browser and their
descriptions. The actor who participates in this application is only user.
Table 3. 1: Actor Specification

Actor(s) Use case Use case description

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

show speed dial

manage tabs

Figure 3. 1: use case diagram for Tigrigna browser

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

Use Case Name browse address


Actor User
Description To write the correct URL on the address bar and access the required
webpages.
Precondition Open the browser by double clicking or right clicking on installed
browser software.
Flow of Events Actor action System response

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.

Optional flow Actor System action

3.1 If the actor enter The system will show a message.


incorrect URL or spelling ”Make sure that all words are spelled
correctly “
“The requested URL could not be
retrieved”

3.2 If the actor does not No result on web browser.


write on the search engine.

14
The table below describes the Download file use case description with its participating actor,
description, precondition, flow of event, and post condition.

Table 3. 3: Use case Description for Download file

Use Case Name Download files

Actor User

Description To down load files that are necessary for user.

Precondition There is an available of files and user wants to download files.

Flow of Events Actor action System response

Step 1. The actor goes to the Step 2.Display the required pages
page he/she requires which contains downloading links.

Step 3. Click any link that Step 4. Display start download


would be downloaded. button page.
Step 5.Click the start Step 6. Downloading file.
download button.
Post conditions The downloaded files will be putted in the preferable location.

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

Use Case Name Manage tabs

Actor User

Precondition Open the browser by double clicking or right clicking on installed


browser software.

Description To add or delete many tabs of web pages.

Flow of Events Actor action System response

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

Use Case Name 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

Flow of Events Actor action System response


Step 1.The actor is in the home Step 2.Display speed dial item page
page(i.e. interface) it contains
Step 3. Access and use the show Step 4. Display the on clicked speed
speed dial dial or web page
Post conditions Finally user will gain knowledge or the required information from that.

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

Use Case Name 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.

Figure 3. 2: sequence diagram for browse address

19
The figure below shows how users down load files sequence diagram which are found in our
proposed system.

Figure 3. 3: sequence diagram for download file

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.

Figure 3. 4: sequence diagram for manage history

21
The figure below shows how users show speed dial sequence diagram which are found in our
proposed system.

Figure 3. 5: sequence diagram for speed dial.


The figure below shows how users manage tabs (add new tab in order to display different
webpages or to close the pages) sequence diagram which are found in our proposed system.

Figure 3. 6: sequence diagrams for manage tabs.

22
3.3 Class diagram
The class diagram below shows the relationship of objects, which are found in our proposed
system (web browser).

Figure 3. 7: class diagram for Tigrigna 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.

4.1 Design goal


The new system is considered as a successful system if it meets the following sets of criteria’s.

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

Figure 4. 1: system decomposition of the proposed system

25
4.3 System architecture

Figure 4. 2: System architecture of the web browser

26
Table4. 1: Description system architecture

Layer Description

Interface This layer uses access to the logic of our system


There are two categories of interface class – user interface (UI)
classes that provide people access to our system and system
interface (SI) classes that provide access to external systems of
our system.
Process The process layer implements business logic that involves
collaborating with several domain classes or even other process
classes in the system.

System System classes provide operating-system-specific functionality


for the applications, isolating our software from the operating
system (OS) by wrapping OS-specific features, increasing the
portability of our application.

Xml data It stores data i.e. used as database storage for history.

4.4 Deployment Diagram


A deployment diagram is used to show the relationship between run-time components and
hardware nodes and it is also used to show the hardware of the system, the software that is
installed in the hardware.i.e how the software and the hardware components work together.

27
Figure 4. 3: Deployment diagram for Tigrigna browser

4.5 Persistence Data Management

Figure 4. 4: Persistence Data Management 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 

4.7 User Interface Design

Figure 4. 5: adding new tabs

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