Professional Documents
Culture Documents
C3 - SRS
C3 - SRS
For
FrugalPhone
Submitted by
Blue Team
Advisors
Team Members
Cycle
Date Submitted
Document Template copyright (c) 2005, Gregory W. Hislop. Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation
Minimal
Section(s) missing, not
useful, inconsistent, or
wrong.
Satisfactory
Some problems with
completeness or details
of content
Exemplary
Provides all relevant
information correctly and
with appropriate detail
Grammar, punctuation,
and spelling all correct
Clear and concise. A
pleasure to read
Tone is consistently
professional
All information is easy to
find and important points
stand out
Layout is attractive,
consistent, and helps
guide the reader
10
10
50
10 Many serious mistakes
in grammar or spelling
10 Very difficult to
understand
Tone not appropriate for
technical writing
10 Very hard to find
information
Layout
Late
Submission
Total
Limited
Serious omissions or
problems with content.
100
Score
Table of Content
1
Introduction..................................................................................................................4
1.1
Purpose................................................................................................................4
1.2
Scope....................................................................................................................4
1.3
Definitions, Acronyms, and Abbreviations..........................................................4
1.3.1
System Components....................................................................................4
1.3.2
Data Entities.................................................................................................4
1.4
References............................................................................................................5
1.5
Overview..............................................................................................................6
2
Overall Description......................................................................................................7
2.1
Product Perspective.............................................................................................7
2.2
Product Functions................................................................................................8
2.3
User Characteristics.............................................................................................8
2.3.1
Use Case Overview......................................................................................9
2.4
Constraints.........................................................................................................16
2.5
Assumptions and Dependencies........................................................................16
2.6
Apportioning of Requirements..........................................................................16
2.6.1
Cycle 1.......................................................................................................16
2.6.2
Cycle 2.......................................................................................................16
3
Specific Requirements...............................................................................................17
3.1
External Interfaces.............................................................................................17
3.1.1
Data Interface.............................................................................................17
3.1.2
User Interface.............................................................................................17
3.2
Functions............................................................................................................17
3.2.1
Consumer...................................................................................................18
3.2.2
System Administrator................................................................................20
3.3
Performance Requirements................................................................................24
3.4
Logical Database Requirements........................................................................25
3.5
Design Constraints.............................................................................................25
3.6
Standards Compliance.......................................................................................26
3.7
Software System Attributes...............................................................................26
Table of Contribution
Introduction
1.1
Purpose
1.2
Scope
1.3
Definitions
1.4
References
1.5
Overview
Overall Description
2.1
Product Perspective
2.2
Product Functions
2.3
User Characteristics
2.4
Constraints
2.5
2.6
Apportioning of Requirements
Specific Requirements
3.1
External Interfaces
3.1.1
Data Interface
3.1.2
User Interface
3.2
Functions
3.3
Performance Requirements
3.4
3.5
Design Constraints
3.6
Standards Compliance
3.7
Writing
PGF, KU
Editing
Team
Introduction
1.1
Purpose
The purpose of this SRS document is to provide both the functional and performance
requirements as well as the constraints for the FrugalPhone system. The intended
audience for this document includes potential investors and technical designers.
Additionally, although the intended audience of this document is not the ultimate
consumer, it is intended to be readable by a typical FrugalPhone user.
1.2
Scope
FrugalPhone allows consumers to use a mobile device to check competitors prices for a
specific product. Consumers send product information in the form of UPC Code or
product name to this service using their mobile device. FrugalPhone then returns a list of
product pricing results that includes information such as the store name, physical
location, sale price, and the last time the price was validated. GPS-enabled phones also
display the distance to the store.
FrugalPhone is also responsible for maintaining up-to-date product pricing information.
This information is provided by external retailers.
The objective of this application is to create a more portable version of Internet pricechecking websites. Given this objective, the ideal goal of FrugalPhone is to provide the
ability to compare product prices anytime and anywhere.
1.3
This section provides definitions for common terms used throughout the document. They
are provided here to help minimize ambiguity throughout the document.
1.3.1
System Components
Mobile Device The application allowing the consumer to enter product input
data into the system and view the pricing result data.
FrugalPhone Server The part of the system responsible for gathering the
product pricing data from external retailers, as well as communicating with
the mobile device.
Admin Console The interface to the system that allows the system
administrator to manage the FrugalPhone server.
1.3.2
Data Entities
Product Input Data The data about a specific product that the consumer
inputs into the mobile device that is used to identify the product. Detail on this
data entity can be found in Section 3.4.
Pricing Result Data - The data returned to the consumer that includes
information about the product, locations where it is sold, the prices at those
locations, and the distance to the store (GPS-enabled devices only). Detail on
this data entity can be found in Section 3.4.
1.4
Product Pricing Data The data gathered from external retailers containing
prices and locations for consumer products. It is used to generate the pricing
result data. Detail on this data entity can be found in Section 3.4.
FrugalPhone Server Status Updates The data about the status of the
FrugalPhone server communicated to the system administrator via the admin
console. Detail on this data entity can be found in Section 3.4.
References
1.5
Overview
This SRS document describes the FrugalPhone system. It is divided into three major
sections.
Section 1
Section 2
Section 3
2
2.1
Overall Description
Product Perspective
As stated in Section 1.2, FrugalPhone is a service that allows consumers to use a mobile
device for price checking on specific products. FrugalPhone is a relatively free standing
and self-contained application that is not build into a pre-existing system. However, there
are several external entities with which the system interacts. These are shown in Figure
1.
The specific external interfaces of the system are addressed in section 3.1.
2.2
Product Functions
2.3
User Characteristics
Consumer The consumer uses a mobile device to enter the product input data
and view product pricing data. Consumers can use FrugalPhone anywhere that
their mobile device is connected to a network. Consumers do not need to be
technical experts or possess any specific education level other than the basic
knowledge of mobile device use.
10
11
12
13
14
15
2.4
Constraints
There are several hardware constraints that could prevent operation of some features on
the mobile device. For example, the mobile device must possess some means of
providing a GPS location for FrugalPhone to show the distance to competitor locations.
Also, as mobile devices are not uniform in architecture, the developer is limited by the
operating system on the chosen mobile devices.
2.5
2.6
Apportioning of Requirements
2.6.1 Cycle 1
In Cycle 1, two main components of the system are delivered. These components do not
coincide to specific requirements but rather provide a framework to later implement the
specific requirements.
The first system component that is implemented is communication between the mobile
device and the FrugalPhone server. This provides the framework for transporting the
product input data and the pricing result data as shown in Figure 3.
The second system component implemented in Cycle 1 is divided into two parts. The first
part is the implementation of product pricing data storage on the FrugalPhone server. The
second part is implementing a pilot process for populating the data storage on the
FrugalPhone server.
2.6.2 Cycle 2
In Cycle 2, all requirements in Section 3.2.1 are delivered. This involves the consumer
interacting with the data on the FrugalPhone server via the mobile device.
Also, the first pass at the requirements pertaining to the admin console, specifically all
requirements in Section 3.2.2, is made. This involves the system administrators
interaction with the admin console.
Finally, the product pricing data gathering portion of the system, defined in Section
3.1.1.1, is made more robust from the pilot process developed in Cycle 1.
2.6.3 Cycle 3
In Cycle 3, all remaining requirements in Section 3.2 are delivered. This entails the
completion of a working system.
16
3
3.1
Specific Requirements
External Interfaces
There are three external interfaces to the FrugalPhone system. The external interfaces are
illustrated in Figure 1 and are grouped into data interfaces and user interfaces.
3.1.1
Data Interface
This section describes the data flow that does not directly involve a user.
3.1.1.1 Interface to Retailer Data
The interface to retailer data is the avenue by which the FrugalPhone server gathers the
product pricing data. This interface will refer to a list of locations where a retailer has
posted pricing data. The interface will be responsible for extracting product pricing data
from those locations and loading the data into the FrugalPhone server.
3.1.2
User Interface
3.2
Functions
The functions listed below are required to provide the product features listed in Section
2.2. The functions are divided by the user that provides the functions input. Figure 3
below provides a logical overview of the data flows involved with the FrugalPhone
system.
17
Consumer
The mobile device displays the corresponding product input data entry type
screen.
A future enhancement to this requirement is to add a product input data entry
type that captures an image of a barcode.
18
19
3.2.2
System Administrator
Action
Output
Note
The system administrator then selects the option to create the new system
administrator account.
The admin console validates the following:
The username is between 4 and 16 alphanumeric characters
The password and confirmation password are
o Equal
o Between 4 and 16 characters
o Contain at least one number
o Contain no white space
IF
The username or password standards are not met
THEN
The admin console displays an error message
ELSE
The admin console creates a new system administrator record and displays a
confirmation
By default, the installation includes one system administrator account with:
Username: admin
Password: admin1
20
21
The admin console accepts the username and password information displaying
the password in a human unreadable format. The admin console then validates
the username/password combination against known system administrators.
IF
The username/password combination belongs to a system administrator
THEN
The admin console displays the admin consoles management options.
ELSE
The admin console displays an error message and provides the option to re-enter
the username and password.
Output
The admin console displays the logout screen and sets the users status to
inactive.
22
The admin console deletes the product pricing data location from the
FrugalPhone server management parameter.
The admin console displays the updated management parameter value and logs
the change.
23
24
3.4
As described in Section 1.3.2, there are five main data entities. The following
classification is in no way a suggestion of design but rather a logical classification of
those data entities as well as their attributes.
Data
Attributes
Use
FrugalPhone Server
Management Parameters
25
26