Академический Документы
Профессиональный Документы
Культура Документы
CSC 404
Software Engineering
Design Document
Version <1.0>
GROUP MEMBERS
Name Student ID
MADI WAMBA GILLES SC08A738
TCHAMDOU TCHATAT JULES AUDREY SC08A800
TONKEU NENDA FRANCE CYNTICHE SC08A810
NDANGANG YAMPA HAROLD SC08A757
Revision History
Date Version Description Author
Table of Contents
1. Introduction
1.1 Purpose
1.2 References
1.5 Overview
2. Architectural Design
2.1 Patriott Web Brower Operations Diagram
2.2 Patriott Web Browser flow Chart
Design Document
1. Introduction
The model presented in this document is intended to serve as a guideline to the reimplementation of Patriott Web
Browser.
1. Purpose
This document provides an overview of the design of the Patriott Browser. It is a living document
that is expected to evolve throughout the design process. During conceptual design it provides a 'broadbrush'
perspective of the design with detail to be added during subsequent design phases. The focus
during conceptual design is on describing enough of the design to allow an examination of the design's
suitability in meeting the system requirements. In this fashion, the document presents many conceptual
design concepts as design requirements.
2. References
1.5 Overview
2. Architectural Design
A TOOLBAR
Address field
This area is where the URL (web page address) for the web page is displayed or
entered.
Back Button
Use this button to go back to the previous page opened in this particular browser
window.
Close Box
This button in the upper right corner of the window will close the browser window.
Forward Button
Like the Back button, the Forward button takes you to pages that you have previously
seen in a particular browser window.
Home Button
This button takes you to the page that has been designated as your "home" page.
Maximize Button
In Windows you can use this button to make the browser's window enlarge to full
screen.
Menu bar
In Windows the Menu bar is a part of each browser window. Choices include File, Edit,
View, History, Favorites or Bookmarks and Help. On the Macintosh, these Menus are
always at the top of the screen.
Minimize Button
In Windows you can use this button to make the browser's window disappear from
the screen.
Save as PDF Button
You can save any web page as a PDF file by clicking this button.
Reload or Refresh Button
If you suspect the contents of a browser's window may have changed
since the last time you viewed it, you should click the Reload or
Refresh button to update the page.
Status Bar
The bar along the bottom of the browser's window shows the percentage of the
loading and the URL of the link your mouse is over
Use this button if you want
Window Title
The title of the web page appears in the browser window's title.
Sometimes pages don't have titles.
In other to render the web content correctly, some pages require additional plugins and codecs, such as html5 based
web pages, or pages that contain multimedia flash video or audio components.
Here is the interface diagram showing how other software systems interact with Patriott.
User
Use the available codec or plugin to decode and display the web content
Check for plugins and codec availability on the system
● Webkit Module.
As the Web Motor, Webkit is one of the most important modules of Patriott!
When the user issues a request for a web content, Patriott handles the request, ensures that it is a valid
request, and that there is some network accessibility and then transmits the request to the Webkit Module.
Webkit’s role is fundamental, since all the contents on the internet are coded, it is responsible to decode
the content. When Webkit receives the request, it fetches and decodes the corresponding content from the
internet and transmits it back to Patriott, and the content is displayed to the user.
Patriott
Request
User
Patriott
Webkit
Here we describe the two most important Classes of Patriott, the Page widget and the Tabulation widget.
● Class Page.
The class page manages the content that is displayed after a request is send by the user, following are its
attributes and mathods.
Attributes:
● Name
This attribute holds the name of and istance of page.
● Webview
This is an attribute inherited from the Webkit module, it is the decoded content that is displayed to the user.
● Back
It is a button, it will emit a signal to the slot responsible for the display of the previous item in the webview
history.
● Forward
It is a button, it will emit a signal to the slot responsible for the display of the next item in the webview
history.
● Reload
It is a button, it will emit a signal to the slot responsible for the reload of the current item displayed by the
webview .
● Stop
It is a button, it will emit a signal to the slot responsible for the stopping the loading of a webview item.
● Home
It is a button, it will emit a signal to the slot responsible for the display of the home item.
Methods/Slots
● load(url)
This is the method that loads and display the webview item with address url
● home(void)
This is the slot that loads and display the home item.
● back(void)
This is the slot that loads and display of the previous item in the webview history.
● forward(void)
This is the slot that loads and display of the next item in the webview history.
● reload(void)
This is the slot that reloads and redisplay of the current item displayed by the webview .
● stop(void)
This is the slot that stops the loading of a webview item.
● Class Tabulations.
Patriott is a tabbed-browsing web browser, there comes the necessity os a structure to handle the
differents tabulations.
Attributes:
● Name
This attribute holds the name of the instance of the tabulation object used in Patriott.
● Page
This attributes hold an instace of the page object in each tab.
● addTab
It is a button, it will emit a signal to the slot responsible for adding a new tab to the tabulations widget.
● closeTab
It is a button, it will emit a signal to the slot responsible for removing a tab from the tabulations widget.
Methods/Slots
● addTab(void)
This slot adds a new empty tab to the tabulations object and create a page for that tab.
● addTab(url)
This slot adds a new tab to the tabulations object and load the item with address url to the page attribute of
that tab.
● closeTab(index)
This slot removes the tab at position index from the tabulations object.
● closeTab(void)
This slot removes the currently viewed tab from the tabulations object
Tabulations object
Attributes
Buttons
*addTab *closeTab *Page
Page
Attributes
*webview,
Methods/Slots
Methods/Slots
*addTab(void) , *addTab(url) , *closeTab(index), *closeTab(void)