Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 14

Software Requirements

Specification
for

App FOREST
Version 1.0 approved

Prepared by <author>

<organization>

<date created>

Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

Pageii

TableofContents
TableofContents...........................................................................................................................ii
RevisionHistory.............................................................................................................................ii
1. Introduction..............................................................................................................................1
1.1
1.2
1.3
1.4
1.5

Purpose...........................................................................................................................................1
DocumentConventions..................................................................................................................1
IntendedAudienceandReadingSuggestions.................................................................................1
ProductScope.................................................................................................................................1
References......................................................................................................................................2

OverallDescription..................................................................................................................3

1.6 ProductPerspective........................................................................................................................3
1.7 ProductFunctions...........................................................................................................................3
1.8 UserClassesandCharacteristics....................................................................................................4
1.9 OperatingEnvironment..................................................................................................................4
1.10 DesignandImplementationConstraints.........................................................................................5
1.11 UserDocumentation.......................................................................................................................5
1.12 AssumptionsandDependencies.....................................................................................................5

2. ExternalInterfaceRequirements...........................................................................................6
2.1
2.2
2.3
2.4

UserInterfaces................................................................................................................................6
HardwareInterfaces........................................................................................................................6
SoftwareInterfaces.........................................................................................................................6
CommunicationsInterfaces............................................................................................................6

3. SystemFeatures.......................................................................................................................7
3.1 FuntionalRequiemnts.....................................................................................................................7
3.2 Requirements................................................................................................................................10

4. OtherNonfunctionalRequirements.....................................................................................11
4.1
4.2
4.3
4.4
4.5

PerformanceRequirements...........................................................................................................11
SafetyRequirements.....................................................................................................................11
SecurityRequirements..................................................................................................................11
SoftwareQualityAttributes..........................................................................................................11
BusinessRules..............................................................................................................................11

5. OtherRequirements..............................................................................................................12
AppendixA:AnalysisModels.....................................................................................................14

Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

1.

Page1

Introduction

TheSoftwareRequirementsSpecificationisdesignedtodocumentanddescribetheagreement
betweenthecustomerandthedeveloperregardingthespecificationofthesoftwareproduct
requested.Itsprimarypurposeistoprovideaclearanddescriptivestatementofuserrequirements
thatcanbeusedasareferenceinfurtherdevelopmentofthesoftwaresystem.Thisdocumentis
brokenintoanumberofsectionsusedtologicallyseparatethesoftwarerequirementsintoeasily
referencedparts.ThisSoftwareRequirementsSpecificationaimstodescribetheFunctionality,
ExternalInterfaces,AttributesandDesignConstraintsimposedonImplementationofthesoftware
systemdescribedthroughouttherestofthedocument.Throughoutthedescriptionofthesoftware
system,thelanguageandterminologyusedshouldunambiguousandconsistentthroughoutthe
document.

1.1

Purpose
Defining and describing the functions and specifications of the App Forest is the primary goal
of this Software Requirements Specification (SRS).
This Software Requirements Specification illustrates, in clear terms, the systems primary
uses and required functionality. This document includes a description of the software and its
subsystems. Throughout this document, Appforest will sometimes be referred to as "this
software" or "our software system".

1.2

DocumentConventions
ThisSRSwaswrittenusingfontfamilyTimesNewRomanandusingfontsize12.
Headingaregivenfontsizeof14andareassignedintegervalues.

1.3

IntendedAudienceandReadingSuggestions
Individuals that are responsible for reviewing proposals for this system. This may include
Advisors, Teachers and DB Administrators of the company that may be interested in our
software.

1.4

ProductScope
The software system being produced is called App Forest. It is being produced for a customer
interested in selling app designs via the Internet. This system is designed to provide
automation support for the process of placing app designs for sale on the Internet and
facilitating the actual sale. This system is largely cross-platform and is available to anyone
using internet. The system will be run on a central server with each user having a remote user
interface through a web browser to interact with it. The main function of the software will be
to provide app designs for customers and designers. The system will be therefore designed to
allow a user to perform the following functions:

Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

Page2

1.4.1 The user will be able to register as a member and be a part


of our virtual community.
1.4.1.1 This system could be accessible from anywhere
over the Internet.
1.4.1.2 The user should be able to provide positive
Identification and a valid e-mail address
1.4.1.3The system will verify users e-mail address.
1.4.1.4 The user should be able to provide a unique user
name and password for a positive identification
during subsequent visits to the site.
1.4.1.5 There will be a user agreement and a privacy
policy that the user will have to agree to upon
registering.
1.4.2

Upon registering member will be able to buy items posted by other


members of our community

1.4.3 The user will be able to search for items posted by other members
1.4.3.1 The user will be able to search item by category.

1.5

1.4.4

The system will provide members with a shopping cart subsystem


for the ease of shopping online.

1.4.5

The user will be provided with an interface to view and modify


his/her account information.

1.4.6

The system will have an administrative interface.

References

[1]http://www.scribd.com/doc/85697205/SrsofEcommerceOnlineBookShopping
[2]www.cse.msu.edu/~chengb/RE-491/Papers/ SRS-BECS-2007.pdf
[3] csis.pace.edu/.../new_Software%20Requirements%20Specification.pdf
[4]http://www.onlinedemoprojects.com/Functional%20and%20Solution%20Flow%20for%20Cloud%20based
%20E-Commerce%20System%20like%20Tictail.pdf

Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

Page3

OverallDescription
ThissectionincludesdetailsaboutwhatisandisnotexpectedoftheAppForestsysteminaddition
towhichcasesareintentionallyunsupportedandassumptionsthatwillbeusedinthecreationofthe
AppForestsystem.

1.6

ProductPerspective
The App Forest system would be one of the first systems of its type. App Forest is a
system that will provide an affordable e-commerce solution for designers who want to
receive revenue from the current Internet boom. It also provides and creates a virtual store
front for end users to buy items. App Forest e-commerce solution will give businesses an
environment to generate revenue without offering of in-house or physical products. App
Forest is an independent system. After installation, it will be self-contained. It does not
require external information, although it does require a system administrator to maintain the
system. The principle external interfaces that will be used include a Register Screen, Login
Screen, Shopping Cart Screen, Administrator Screen, Add Item Screen, Account Status
Screen and Search Screen. The website must be available to anyone using the internet and as
such must work correctly on all browsers and devices. As stated, there are no hardware or
software requirements beyond these including, but not limited to, memory or specific
software packages that need to be utilized nor software packages that need not be utilized.

1.7

ProductFunctions

This syatem will provide a number of functions; each is listed below.

Maintain data associated with the inventory (a collection of app designs)

A design has a title, author and price


The inventory also keep track of the stock/quantity of each design

Maintain records for many customers

A customer can be either a member or non-member.


A customer has a username (unique across all users), password (no
restrictions), email address (no restrictions).
Anyone may sign up for a customer account.

Allow any customer to become a member.

Show a listing of available app designs

Allow customers and managers to log in and out of the system.

Shopping cart
Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

Checkout is only available to logged-in customers. A user that is not logged in as


a customer is given a chance to log in.

Allow manager to update stock quantities

1.8

Anyone is able to add one or more designs to the shopping cart.


The shopping cart does not need to allow multiple copies of any designs.

Checkout

Page4

Allow manager to change any design's price


Allow manager to view transaction logs

UserClassesandCharacteristics

The users of the App Forest include the public and an administrator. The users are required to have
basic knowledge and experience using a web browser. However, the GUI and online help should
provide enough guidance to an average user. Administrator of this system should have knowledge of
the specifics of hardware, operating system and software environment of the host system. It is
assumed that the user is familiar enough with a computer to operate the browser, keyboard and
mouse and is capable of browsing to, from and within simple websites.

1.9

OperatingEnvironment

1.9.1

WebServer
ThissystemcanworkwithalmostallWebServerssoftware,includingMicrosoftsInternet
InformationServer(IIS)howeverwewillbeusingApacheServer.

1.9.2

Database
ThissystemworkswithalmosteverydatabasesoftwarethatincludesOracle,MSSQL
Server,andSybasebutwewillbeusingMySQLdatabase.

1.9.3

PHPParser
TobeabletoprocessPHPscriptcode,aparserhastobeinstalledtogenerateHTMLoutput.
ThiswillbesenttotheWebBrowser.

Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

Page5

1.10 DesignandImplementationConstraints
1.10.1 This software system should be engineered to be as platform independent as possible,
thus excluding the proprietary technologies. Preferably the development technology would be
open-source, making it easy to understand particular features and shortcomings.
1.10.2 This software system should be easily installable by a System Administrator who
possesses only knowledge about the system that he/she is working on.
1.10.3 This software system should run in conjunction with all the Web Server
Software that is popular during the time of this writing. For the initial revision this set can be
restricted to such web servers as Apache (version 1.3 and above) and Microsoft IIS
(version 4.0 and above). In the future revisions this software should be able to support such
web servers as Netscape Enterprise, and Zeus.
1.10.4 This software system should be designed to easily interface with most of the modern
SQL databases that are ANSI SQL compliant. For the initial revision this set can be restricted
to such RDBMSs as MySQL (version 3.23 and above), and Oracle8i. For future revisions of
the product it should have support for IBMs DB2 database, Microsoft SQL server and other
databases.
1.10.5 This system should be designed to run on a variety of hardware/OS platforms that are
POSIX compliant, however it does NOT have to run on such platforms as IBM AS/400, any
mainframe, or VAX systems. There are numerous other exotic operating systems that are not
mentioned here that this product does not have to function under.

1.11 UserDocumentation
AlongwiththissystemusermanualwithbeprovidedintheFAQsectionandSupportsection.

1.12 AssumptionsandDependencies
Client:
We have assumed that all of the computer systems are in proper working condition and that the user
is capable of operating these system's basic functions including but not limited to being able to power
on the system, login and open either Internet Explorer or Mozilla Firefox, and navigate the browser
to the address of this system website.
Provider:
We have assumed that the system will be running on a properly working web server and database
system with an Internet connection that allows this system to perform all communications with
clients.
Assumptions:
There is no need for anyone to be able to order more than a single copy of a design
Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

Page6

(or any item) in a single transaction.


The manager accounts username and password maybe hard coded.
Any user cannot edit their account information.

2.

ExternalInterfaceRequirements

2.1

UserInterfaces

Any modern web browser including, but not limited to Microsoft Internet Explorer Version 7.0 and
above and Netscape Navigator Version 4.0 and above, using display resolution of 800x600 pixels or
greater. This system will be developed using custom fonts and font size will remain consistent.
NOTE: Our web application has a responsive design so it can be viewed on any web browser

2.2

HardwareInterfaces

App Forest system will not have a direct hardware access, all hardware interfacing will be done
through the documented operating system routines. As this system will be hosted on GODADDYs
server thats why it wont have any physical access.

2.3

SoftwareInterfaces

App Forest system will interface with the web server and RDBMS software using APIs provided
by the implementation language. This software system should run in conjunction with all the Web
Server Software that is popular during the time of this writing. This software system should be
designed to easily interface with most of the modern SQL databases that are ANSI SQL compliant.
This system should be designed to run on a variety of hardware/OS platforms

2.4

CommunicationsInterfaces

All of the communication between client and server computers will be handled by the Web Server
software that may include, but is not limited to the protocols documented by the following:
RFC1939
RFC2920
RFC1867

3.

SystemFeatures
Inthissectionallthefunctionalrequirementsarelisted.
Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

3.1

Page7

LOGINfunctionalrequirements

3.1.1 Introduction
The login function provides the means for the user to access App Forest functions, which require
users identification.
3.1.2 Inputs
Username
Password
3.1.3 Processing
The login function takes in a username and a password. It runs a check against the database to verify
this information. If the check is successful then it will write a cookie on the users computer for
subsequent access to the system during the current session.
3.1.4 Outputs
user.u_key in a cookie format

3.2

REGISTERfunctionalrequirements

3.2.1 Introduction
The register function takes a users information and creates a user account for that person on the
system.
3.2.2 Inputs
User Information
3.2.3 Processing
This function takes a users information and creates an account on the system for that user.
3.2.4 Output
An e-mail confirmation is sent to the user.
User Record.

3.3 SHOPPING CART functional requirements


3.3.1 Introduction
The shopping cart function allows a member to purchase items from the App Forest system. It also
provides easy item tracking for the customer.
Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

Page8

3.3.2 Inputs
user.u_key
item.i_key(s)
Item Quantity
3.3.3 Processing
The shopping cart takes the user.u_key and the item.i_key(s) of the items that the user wants to
purchase and creates a transaction record. It may inactivate the item and remove it from the search
table. It also decreases the item.qty_current.
3.3.4 Outputs
Transaction Record

3.4 SEARCH functional requirements


3.4.1 Introduction
This function searches the index for the keywords identifying the items
3.4.2 Inputs
Search String
3.4.3 Processing
This function takes search parameters from the user, parses them. It then searches the index for
item.i_key that match the search strings and displays it to the user
3.4.4 Outputs
item.i_key

3.5 DISPLAY functional requirements


3.5.1 Introduction
This function is called from other functions to display listings of items in a formatted output.

3.5.2 Inputs
item.i_key(s)
Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

Page9

category.c_key(s)

3.5.3 Processing
This function takes the item.i_keys fetches item records and prints out the listing in a formatted way

3.6 PRODUCT ADD functional requirements


3.6.1 Introduction
This function allows the user of the system to add products for sale.
3.6.2 Inputs
user.u_key
category.c_key
Item Info
3.6.3 Processing
This function takes the user.u_key and retrieves the user record from the user table. It also gets item
information from the user. It then saves this new item in the items table, it also saves image of the
item if any, and sends an email to the user notifying him of his actions.
3.6.4 Outputs
Item Record
Image file
Email

3.7 ADMINISTRATOR functional requirements


3.7.1 Introduction
This function is a whole interface for the administrator. This is from where the App Forest
administrator will maintain the system.
3.7.2 Inputs
user.u_key
user.passwd
3.7.3 Processing
This function provides the System Administrator with an interface to manage/maintain system. The
system admin has access to all the tables in the database and may change/update/delete/add users,
items and properties of these entities. He/she will also have system administration options.
Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

Page10

3.7.4 Outputs
Modifications to any/all tables in the DB

4.

OtherNonfunctionalRequirements

4.1

PerformanceRequirements

The host computer hardware and operating system should be able to handle minimum number of
simultaneous users utilizing our system, which at this time is limited to 50, without significant
performance degradation. This requires that with the minimum number of users accessing the system,
load average of the system over 1 minute period should not be more than 1.00, where load average is
defined as the average number of processes waiting in the job queue.

4.2

SafetyRequirements

Where there is money involved, safety is of prime importance. Implementing secure socket layer
(SSL) for the monetary transactions is one of such step. Privacy policy will also be displayed and
user agreement will also be signed by the registered user.

4.3

SecurityRequirements

All transactions at the App Forest require a valid user


ID and password.
4.3.1 Secure data transfer over the Internet could be provided using SSL encryption that will be
configured by the host system administrator.
4.3.2 The IP addresses where the transaction was made from will be logged.
4.3.3 User passwords will be stored in the database in an encrypted format.
4.3.4 During the registration process, users e-mail account will be verified for validity by contacting
their e-mail server.

4.4

SoftwareQualityAttributes
4.4.1 Usability. User will feel comfortable using this system. System will be designed fancy but also
usable. Usability also relate to the overall impression of security, e.g. the email that I receive to
confirm a registration can give me a better or worse impression of the system, or the the way my
credit card is shown (usually only the last digit), etc. all these usability details can increase my trust
in the system.
Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

Page11

4.4.2 Availability. This system will be available to the user 24/7. It will have an uptime of 99.9%

4.5

BusinessRules
4.5.1 Rule #1: Empowerment
The first new rule is that the customer should be in charge of his experience, which
is just a re-emphasis of the most tried-and-true business strategy throughout
history: The customer is always right. But there is a very useful twist to this old
axiom. Self-service by your customers will help your business by reducing your cost
of operations. When you let customers serve themselves from your Web site, you
do not need to employ as many sales and customer service representatives. Better
yet, your sales and service representatives can focus on the more important
aspects of their work.
The side benefit is that your customers will feel more in control of their relationship
with your company. Customers will value the opportunity to help themselves.
Customers will feel like they are in better control of their experience with you, and
they feel grateful to you for giving them this power.
4.5.2 Rule #2: Personalization
Information and personalization are the key empowering attributes of a marketing
business strategy on the Internet. The more customer intelligence you can build
into your Web site, the better youll be able to personalize it for specific customers.

5.

OtherRequirements

5.1 Interfaces with other 3rd party software


The App Forest system should not need any external 3rd party software to operate,
excluding web server and any tools for the language of implementation (i.e. if the system was
designed to utilize interpreted language, interpreter for that language should be available on
the host system.) However, if the system were designed to utilize native binaries for the host
system, those precompiled binaries would be provided to the customer. Source code for the
system may also be provided for the customer, depending on the licensing mode that we may
chose.

5.2 Licensing
At the time of this writing it is our intension as developers of this software to provide it under
the extended GPL licensing, for non-commercial use. However, for commercial use of this
application a commercial license will be required.

Copyright2014bySOFTIZON

SoftwareRequirementsSpecificationforAppforest

AppendixA:AnalysisModels
Diagramsincludedlikeusecase,classetc.

Copyright2014bySOFTIZON

Page12

You might also like