Bookmark Backup
Requirements Specification
Raymond Frey
Dr. Bi
September 17, 2010
Submitted in partial fulfillment
of the requirements of
CMPS 490 – Computer Projects
Table of Contents
1. Introduction 1
2. Overall Description 2
3. Requirements Specification 6
4. Gantt Chart 8
1.Introduction 1.1Purpose
The purpose of this document is to provide a description of the features and funtionality that will be provided in the system. The scope and enviroment of this system will be provided in the document. The user will be able to use this document to view the use case situations. The goal of this document is to outline the system in simple and easy to understand terms and to show the functionality of the system.
1.2Project Scope
This software is created to provide and easy way of sharing bookmarks between multiple devices. The Android Application market has millions of customers and thousands of new customers every day. There is not currently a product that offers to synchronize bookmarks with Firefox. Only Google Chrome is supported at this point. Many users have the need to store their bookmarks in a remote location and retrieve them later. This program would allow for the downloaded of bookmarks to the clients bookmark tab in their browser.
The Java Application would be able to be obtained from a web address at the time of release. Consiquently the Android Application would be able to be retrieved using the Android MarketPlace via the Android Operating System. The application is designed to be simple to install and simple to run. The user only needs a few clicks to get the program up and running. The background of the program is designed to gather the bookmarks and upload them to a server. Easy of use is the main focus of this program. The fewer clicks a user has to perform the easier the system will be to use.
1.3References
Frey, Raymond. “Bookmark Backup Extended Abstract.”
University of Scranton. 27 August 2010.
Frey, Raymond. “Bookmark Backup Justification and
Feasibility.” University of Scranton. 3 September 2010.
1.4Glossary
FTP Server
|
A file server used to host the SQLite files
|
Database
|
An organized collection of data.
|
Database Management System
|
Also known as a DBMS. This is a program/suite used to manage a database and run operations on this database as indicated by the end user of the system.
|
PostgreSQL
|
A Database Management System that is free open source. The system makes use of SQL to query the database and returns the results to the server as requested.
|
SQL
|
Structured Query Language – A widely used computer language to create, edit, and retrieve data from a database.
|
SQLite
|
A Database Management System that is free and open source. It is run on a local machine and is for storing local information into a database.
|
2.Overall Description 2.1System Overview
Figure 1 - System Environment
The System is designed to work with multiple users over multiple platforms. The only parts of the system that are dependent on the number of people are the servers which would have to handle each user. The Java Application and Android application are independent of the number of users. Each user must have the Java Application, but each user does not have to have the Android Application. The Android Application will also have the exact same use cases. The programs are designed to have the same buttons and functions.
2.2Functional Requirements
Functional requirements are services that are going to be provided to the user. The main type of user is the regular user. Administrators are not needed in this system because it should be self sufficient by the regular user/customer
-
Brief Description:
-
User goes to the New User login screen.
-
The user enters desired Username and Password into form boxes.
-
The user will be redirected to the User Login Screen if successful.
User Use Case #2: Login
Brief Description:
Enter Username and Password into the Login Screen
Click Send
User will be presented with the homepage.
User Use Case #3: Logout
Brief Description:
-
Click Exit or Switch Users on the Home screen.
User Use Case #4: Manual Update Bookmarks
Brief Description:
-
Users Clicks Sync Bookmarks
-
Bookmarks are automatically downloaded and copied to the
local bookmark folder.
User Use Case #5: Automatically Update Bookmarks
Brief Description:
-
User clicks “Automatically Update Bookmarks”
-
The Bookmarks will be automatically updated at a certain interval.
User Use Case #5: Stop Automatically Update Bookmarks
Brief Description:
-
User clicks “Stop Automatic Update Bookmarks”
-
The Bookmarks will not be automatically updated at a certain interval.
The users using this system need only minimum computer knowledge. The system is designed to be an easy to use application for anyone that uses the Firefox internet browser and Android Operating system on a mobile device.
2.4Non-functional Requirements
This section of the document will cover those requirements that are not the functional requirements of the system. Such requirements are the constraints of the system as it pertains to performance relative to a given system.
2.4.1. Product Non-functional Requirements
The performance of the application will rely heavily on the system on which the system is used. Older computers and Android phones may take long in processing the bookmark files and setting the files in the bookmark folder.
. The hardware involved includes a database server, CS Dept Server 8 – PostgreSQL DBMS. The server is constantly running and should not be a problem in this application. The server could because full bu the PostgreSQL database only uses one table for login information. The FTP server is more likely to fill because it holds the current file for bookmarks. These files are substantially bigger than the login records.
2.4.2 Process Non-functional Requirements
Currently, the system is being developed using the Eclipse IDE. This Application is built with the Java Programming Language. Both Android and the Java Application are constructed using Java. JDBC will be used to interact with the PostgreSQL database server.
2.5System Evolution
Over time the FTP server will fill with users. Some of these users may not want to use the system anymore but their data will remain. A “delete account” feature may be added at a future date to allow for accounts to be deleted that meet certain idle time requirements. These accounts require minimum space but depending of the amount of users the server could fill up quickly.
3.Requirements Specification
3.2Functional Requirements 3.2.1 User’s Functional Requirements
3.2.1.1 Create “Account” User
Use Case Name
|
Create “Account” User
|
Priority
|
Essential
|
Trigger
|
None
|
Precondition
|
The user is at the “New User” screen
|
Basic Path
|
Click “New User” button on Login screen
|
Alternative Path
|
None
|
Postcondition
|
The user will be able to login to the system
|
Exception Paths
|
None
|
3.2.1.2 Login
Use Case Name
|
Login
|
Priority
|
Essential
|
Trigger
|
None
|
Precondition
|
The user is at the login page
|
Basic Path
|
Open Java file or Android Application
|
Alternative Path
|
None
|
Postcondition
|
The user will be logged in to the system
|
Exception Paths
|
None
|
3.2.1.3 Logout
Use Case Name
|
Logout
|
Priority
|
Essential
|
Trigger
|
None
|
Precondition
|
The user is logged into the system
|
Basic Path
|
Click “Exit ” button
|
Alternative Path
|
None
|
Postcondition
|
The user will be logged out of the system
|
Exception Paths
|
None
|
3.2.1.4 Manual “Update” Bookmarks
Use Case Name
|
Manual “Update” Bookmarks
|
Priority
|
Essential
|
Trigger
|
None
|
Precondition
|
The user is logged into the system
|
Basic Path
|
Click “Manual Update” button
|
Alternative Path
|
None
|
Postcondition
|
The bookmarks will be updated.
|
Exception Paths
|
None
|
3.2.1.5 Automatic “Update” Bookmarks
Use Case Name
|
Automatic “Update” Bookmarks
|
Priority
|
Essential
|
Trigger
|
None
|
Precondition
|
The user is logged into the system
|
Basic Path
|
Click “Automatic Update” button
|
Alternative Path
|
None
|
Postcondition
|
The bookmarks will be updated at the time interval
|
Exception Paths
|
None
|
3.2.1.5 Stop Automatic “Update” Bookmarks
Use Case Name
|
Stop Automatic “Update” Bookmarks
|
Priority
|
Essential
|
Trigger
|
None
|
Precondition
|
The user is logged into the system
|
Basic Path
|
Click “Stop Automatic Update” button
|
Alternative Path
|
None
|
Postcondition
|
The bookmarks will not be updated at the time interval
|
Exception Paths
|
None
|
3.3Detailed Non-functional Requirements
Hardware:
-
Client computers that have access to the web via the Internet/Network connections
-
Android Phones that have access to Internet/WiFi connections
Software:
-
The FTP server is platform dependant but is running FreeBSD on server 8.
-
PostgreSQL database must be running and currently is on CS Department’s Server 8.
-
Client computers must have the newest package of Java Installed.
-
Android phones need this application in order to synchronize bookmarks
Network interface:
-
Internet/Network connectivity will be needed to access the PostgreSQL DBMS.
4.Gantt Chart
Activity
|
Complete
|
Status
|
9/3
|
9/17
|
9/24
|
10/1
|
|
10/22
|
|
11/6
|
|
11/29
|
|
|
12/9
|
Proposal
|
100%
|
A
|
SSSSS
|
|
|
|
|
|
|
|
|
|
|
|
|
Analysis
|
95%
|
S
|
SSS
|
SSSSS
|
|
|
|
|
|
|
|
|
|
|
|
Specification
|
95%
|
S
|
|
BSSSS
|
SSSSS
|
|
|
|
|
|
|
|
|
|
|
High-level Design
|
40%
|
S
|
|
SSS
|
SSSSS
|
|
SSS
|
|
|
|
|
|
|
|
|
System Design
|
40%
|
S
|
|
SS
|
SSSSS
|
|
SSSSS
|
|
SS
|
|
|
|
|
|
|
Implementation
|
10%
|
S
|
|
|
SSSSS
|
|
SSSSS
|
|
SSSSS
|
|
SSSSS
|
|
SS
|
|
|
Module Testing
|
0%
|
S
|
|
|
|
|
SSSSS
|
|
SSSSS
|
|
SSSSS
|
|
SSSS
|
|
|
Integration Testing
|
0%
|
S
|
|
|
|
|
SSS
|
|
SSSSS
|
|
SSSSS
|
|
SSSSS
|
SS
|
|
Project Status Symbols
S Scheduled
A Satisfactory
C Caution
F Critical
Planning/Progress Symbols
B Work Before Scheduled Time
S Scheduled Activity Time
A Work After Scheduled Time
Share with your friends: |