Template
FUNCTIONAL SPECIFICATION S DOCUMENT TITLE A functional specifications document as the name suggests details out the functionality information of the system. It includes functional details of the modules, features and the business rules attached. The navigational flow is also explained through this document.
Functional Specification Document
Table Of content
Introduction...................................................................................................4 PURPOSE......................................................................................................................................................................................4 PROJECT OBJECTIVE ......................................................................................................................................................................5
Functional Flow Specifications............................ Specifications.........................................................................6 .............................................6 STRUCTURE
Front
OF THE
PROJECT .........................................................................................................................................................6
End....................................................................................................................................8
A. Authentication ........................ ..................................... ......................... ........................ ......................... ......................... ..............................8 ..................8 A.1 Create Profile (Registration) .................................. .............................................. ......................... ................................8 ...................8 1.1 Diagrammatic Flow for Create Profile............................ Profile......................................... ......................... .......................8 ...........8 1.2 Narrative Use Case for Create Profile...................... Profile.................................. ......................................9 ..........................9 A. 2 Login.................... Login................................ ........................ ......................... ......................... ...................................................... .......................................... 13 1.1 Diagrammatic Flow for Login...................... Login.................................. ......................... ......................... ........................ ................13 ....13 1.2 Narrative Use Case for Login...................... Login................................... ......................... ........................ ............................13 ................13 A. 3 Recovered Password......... Password...................... ......................... ......................... ....................................................14 .......................................14 1.1 Diagrammatic Flow for Recover Password.................... Password............................................... ........................... .......14 1.2 Narrative Use Case for Recover Password.................... Password................................ ......................... .......................14 ..........14 B. Search Module.......................... ........................ ....................... .................... ............ ...... ............ .........17 ...17
B.1 Basic and Advance Search...................... Search.................................. ......................... ..................................... ...........................18 ...18 1.1 Diagrammatic Flow for Basic & Advance Search.............................................18 Search.............................................18 1.2 Narrative Use Case for Basic & Advance Search .........................................21 B.2 Product Details ........................ .................................... ........................ ......................... ......................... .............................. ..................23 23 1.1 Diagrammatic Flow for Product Details............................... Details...........................................................23 ............................23 1.2 Narrative Use Case for Product Details........................................ Details........................................ ........23 C. Categories................... Categories............................... ........................ ......................... ......................... ........................ .................................26 .....................26 1.1 Diagrammatic Flow for Product Details.............................. Details.................................................. ........................26 ....26 1.2 Narrative Use Case for Product Details........................ Details.................................................. .......................... ........27 D. Quick Entry/Add to Shopping Cart/ Buy Now................................ Now.................................................30 .................30 1.1 Diagrammatic Flow for Quick Entry/Add to Shopping Cart/Buy Now..........30 1.2 Narrative Use Case for Quick Entry/Add to Shopping Cart/Buy Now............31 E. Your Cart....................... Cart................................... ......................... ......................... ........................ ................................... ...............................34 ........34 Page 2 | 4
Functional Specification Document
1.1 Diagrammatic Flow for Your Cart.............................. Cart........................................................... ............................. ....34 1.2 Narrative Use Case for Your Cart ......................... ..................................... ......................... ..................34 .....34 E.1 Order History (Order Management)............. Management)......................... ......................... ......................... ......................37 ..........37 1.1 Diagrammatic Flow for Order History........................... History........................................ ..............................37 .................37 1.2 Narrative Use Case for Order History ................................ ............................................................ ............................ 38
Page 3 | 4
Functional Specification Document
Introduction This project outlines the functionality of a complete online store solution (an online shop digital -commerce solution) that contains both catalog front-end and an administration tool backend.
Purpose The purpose of the document is described with r espect to the intended audience of the document. Within the Company Administrator Users: Managing the content on the website Managing the Users/Registered Users Managing the Product Catalog For Development •
•
Software Developers Testers
Reading Suggestion It is recommended that the reader reads the document in the same flow as mentioned in the Document Convention below. Two basic distinctions followed in the document are: •
•
Website/Front-end Administrative Control Panel/Backend
DOCUMENT CONVENTIONS The document flow includes i ncludes functional specifications/ functionalities/ feature details of Digital commerce Front- end and the Administrative Control Panel to manage the Digital commerce website. All the functionalities/features have been explained with the following convention: •
Diagrammatic Flow of the Process or Feature
•
Narrative Use Case
The key given below will assist in understanding the diagrammatic flows:
Page 4 | 4
Functional Specification Document
Project Objective
Expanded Customer Base Increase Visibility through Search Engine Marketing Provide Customers valuable information about your business Build Customer Loyalty
Page 5 | 4
Functional Specification Document
Functional Flow Specifications Structure of the Project
Page 6 | 4
Functional Specification Document
Page 7 | 4
Functional Specification Document
Front End A. Authentication Authentication A.1 Create Profile (Registration) 1.1 Diagrammatic Flow for Create Profile
Page 8 | 4
Functional Specification Document
1.2 Narrative Use Case for Create Profile
Page 9 | 4
Module Name: Create Profile (Registration)
Functional Specification Document Use Case Identification
Use Case Name & Id User
Use Case Type Description
Create Profile (Registration) (UC/D/01)
An unauthenticated u nauthenticated user. This use case describes describ es the registration registrati on functionality. User needs to fill up a small registration form which will be having following sections Personal Information Billing Address Ship to a different address Contact Information Additional Information Username & Password Image Verification
Flow of Events
Preconditions
User must have a valid email address.
Failed End Condition
If not supplied mandatory fields, user will be asked to fill them again.
Mandatory Fields
Personal Information: First Name Last Name Billing Address: Address City Province/ Territory Country Postal Code Contact Information: Phone E-mail User name & Password: User name Password Confirm Password Image Verification: Image Verification
Other Validations Validations
Personal Information: First Name: Textbox (Characters Min{2} Max{20})
Last Name: Name: Textbox (Characters (Characters Min{2} Min{2} Max{20}) Company: Textbox (Characters Min{0} Max{{50})
Page 10 | 4
Functional Specification Document
1.3 Business Rules for Create Profile Authentication >Create Profile 1.1
User needs to provide a genuine and valid email address. Email address should be unique.
Page 11 | 4
Functional Specification Document
Module Name: Login
Use Case Identification
Use Case Name & Id User
Login (UC/D/02)
Registered Registered user of the site.
Use Case Type
This use case describes describ es the login functionalit functi onality y.
Description
This describes the login functionality. functionality. Using this feature, user can authenticate himself and access various other features available on the site.
Flow of Events
Preconditions
User must be registered member of the site.
Failed End Condition
If user provides wrong username or password.
Mandatory Fields
Username Password
Other Validations Validations Flow of Events
Ste p
Action
1.
In the the ‘Au ‘Autthent hentic icat atio ion’ n’ sect sectio ion n of of the the homepage, user needs to fill his login credentials in order to login into his account. (Other modules which are only accessible to the logged in user, will also provide the same login form.)
2.
On click lick of ‘Log ‘Login in’, ’, syste ystem m wi will chec check k whether the user exists in the database or not. If the provided username & password combination exists then it allows user to successfully log into the system. And will be redirected to the homepage.
3.
Additional Information
If the dat data is is inv inval alid id then then a sys syste tem m wil willl throw appropriate error messages.
1. While logging into the system, if user fails thrice then forth time he/she will be redirected to the ‘Recovered Password’ page. (Refer UC/D/03) 2. If user user does does not not have have an an accoun accountt then then ‘Register ‘Register Here’ link will be provided on the same page. On click of the link user will be redirected to the ‘Create Profile’ page. Page 12 | 4 (Refer UC/D/01).
Functional Specification Document
A. 2 Login 1.1 Diagrammatic Flow for Login
1.2 Narrative Use Case for Login
1.3 Business Rules for Login Authentication >Login 1.1
While logging into the system, if user fails to login 2-3 times and still entering the wrong username and password then ‘Image verification’ will be provided in addition to the login form. fo rm.
Page 13 | 4
Functional Specification Document
A. 3 Recovered Password 1.1 Diagrammatic Flow for Recover Password
1.2 Narrative Use Case for Recover Password
Page 14 | 4
Functional Specification Document
Module Name:
Recover Password
Use Case Identification
Use Case Name & Id User
Recover Password (UC/D/03)
Registered Registered user of the site.
Use Case Type
This use case describes describ es the recover password functionality.
Description
User can use this feature to retrieve his/her forgotten password.
Flow of Events
Preconditions
User must be registered member of the site.
Failed End Condition
If user provides wrong email address.
Mandatory Fields
Email Address
Other Validations
This email address should match with the one user has provide at the time of registration.
Flow of Events
Ste p
Action
1.
‘Aut ‘Authe hent ntic icat atio ion’ n’ sect sectio ion n of the the home homepa page ge includes the link ‘Recover Password’. Password’. On click of this link, user will be redirected to the ‘Recover Password’ page. (While logging into the system, if user fails thrice then forth time he/she will be redirected to the ‘Recovered Password’ page.)
2.
On the the ‘R ‘Recov ecover er Passw asswor ord’ d’ page page,, use userr nee needs ds to provide same email address which he has provided at the time of registration. On click of ‘Submit’, system will check whether the email address exists in the database or not. If it exists then it an email notification will be sent to the user and message will be displayed as “An “An email with your account information was mailed to . Use the received data for logging into the shop.”
3.
Additional Information
If the dat data is is inv inval alid id then then a sys syste tem m wil willl throw appropriate error messages.
1. While logging into the system, user fails twice then third time he/she will be redirected to the ‘Recovered Password’ Page 15 | 4 page.
Functional Specification Document
1.3 Business Rules for Recover Password Authentication > Recover Password 1.1
An email notification will be sent to the user. This email will contain the login credentials of the user.
Page 16 | 4
Functional Specification Document
B. Search Module
Page 17 | 4
Functional Specification Document
B.1 Basic and Advance Search 1.1 Diagrammatic Flow for Basic & Advance Search
Page 18 | 4
Functional Specification Document
Page 19 | 4
Functional Specification Document
Page 20 | 4
Functional Specification Document
1.2 Narrative Use Case for Basic & Advance Search
Page 21 | 4
Module Name:
Basic & Advance Search
Functional Specification Document
Use Case Identification
Use Case Name & Id User
Basic & Advance Search (UC/D/04)
An anonymous or registered user.
Use Case Type
Basic and advance search features are available availabl e to find the desired product.
Description
Using the search functionality, user can search for the desired product.
Flow of Events
Preconditions Failed End Condition Mandatory Fields Other Validations Validations
Keyword (Basic) search: Search for Pattern: Textbox(Characters Min{0} Max{120}) (All special characters are allowed) Radio button with values: {All words, Any Any word and Exact Phase} Search in: Checkboxes with values {Product Title, Short Description, Detailed Description and SKU} Advance Search: Search In Category: Dropdown with all values coming from category master Checkboxes Checkboxes with values {Main Category, Additional Category, Also search in sub categories} Price (CA$): Two textboxes separated by hyphen Textbox (Numeric Min{0} Max{15}) (Special character ‘.’ Is allowed)
Flow of Events
Ste p
Action
1.
User ser may may or may may not not ente enterr th the key keywo worrd and and click on ‘Go’. Search result will be displayed (if keyword is provided then result matching with the criteria will be displayed and if it is blank then default listing will be displayed. (Default listing will be displayed )
2.
User ma may so sort th the li listing by by 1. SKU (Product Code) 2. Product (Product Title) 3. Price (Product Price)
3.
On the the sea searc rch h res resul ultt pag page, e, user user can can ent enter er the required quantity and may choose one of the following options: 1. Buy Now 2.
4.
Add to Favorites
Page 22 | 4 If user user clic clicks ks on ‘Buy ‘Buy No Now’ w’ then then user user will will be redirected to ‘Your ‘Your Shopping Cart’ page (if user is logged in’ else he/she will be redirected to the ‘Login’ page. (Refer
Functional Specification Document
1.3 Business Rules for Basic & Advance Search Basic & Advance Search 1.1
1.2
In order to add the product to the shop ping cart, user needs to be logged in user. To To add any of the item to the folder (i.e. to save the favorite item), user needs to create the folder first. (Only added/edited folders will be available in the dropdown)
B.2 Product Details 1.1 Diagrammatic Flow for Product Details
1.2 Narrative Use Case for Product Details
Page 23 | 4
Module Name:
Basic & Advance Search > Product Details
Use Case Identification
Use Case Name & Id User
Functional Specification Document Basic & Advance Search > Product Details (UC/D/05)
An anonymous or registered user.
Use Case Type
Details related to the particular product will include: Product Description Product Code Weight Price Manufacturer Catalog Page Number Recommended Product List
Description
This use case describes various features available on the detailed page: 1. Send end to to fri frien end d 2. Produc oductt Ratin ating g 3. Cust Custom omer er Rev Revie iews ws
Flow of Events
Preconditions Failed End Condition Mandatory Fields
Send to Friend: Your name Your e-mail Recipients Recipients e-mail Customer Feedback: 1) Product Rating: Select your rate 2) Customer Reviews: Your name Your message Image verification
Other Validations Validations
Send to Friend: Your name : Textbox (Characters Min{2} Max{20})
Your e-mail: Textbox(Alphanumeric Min{2} Max{50}) (Special characters like ‘_’, ‘.’ Are Are allowed. ‘.’ and ‘@’ should be present in the provided string.) Recipients e-mail: Textbox(Alphanumeric Min{2} Max{50}) (Special characters like ‘_’, ‘.’ Are Are allowed. ‘.’ and ‘@’ should be present in the provided string.) Customer Feedback: 1) Product Rating: Select your rate Dropdown will have following values {Excellent, very Good, Good, Fair, Poor} 2) Customer Reviews: Your name: Textbox (Characters Min{2} Max{20})
Your message: Textbox (Characters Min{2} Max{200}) Page 24 | 4 (All special characters and white spaces are allowed) Image verification: IImage mage Verification: Random
Functional Specification Document
1.3 Business Rules for Basic & Advance Search > Product Details
Basic & Advance Search > Product Details 1.1
User can vote for any product only once.
1.2
User can add review for any product only once.
Page 25 | 4
Functional Specification Document
C. Categories 1.1 Diagrammatic Flow for Product Details
Page 26 | 4
Functional Specification Document
1.2 Narrative Use Case for Product Details
Page 27 | 4
Module Name:
Categories
Functional Specification Document
Use Case Identification
Use Case Name & Id User
Categories (UC/D/06)
An anonymous or registered user.
Use Case Type
User can browse through various categories available and can buy desired product.
Description
This use case describes product catalog added through back-end. Various categories and sub categories of the product are available.
Flow of Events
Preconditions Failed End Condition Mandatory Fields Other Validations Validations Flow of Events
Step
1.
User ser can can clic click k on any any of the the cat categ egor ory y lis liste ted d under ‘Categories’ module. module. Sub categories categories will be available under that category with the product count.
2.
Use can can eit eithe herr clic click k on sub sub cate catego gory ry or can can view the default listing of the products.
3.
User can browse wse though this produ oduct catalog till the last level. (Level is not defined. Product catalog has nth level.)
4.
When us user co comes on the pr produ oduct lis listing page,
5
User may sort the listing by 1. SKU (Product Code) 2. Product (Product Title) 3. Price (Product Price)
6.
On the sear earch resul esultt page page,, user ser can can ent enter the required quantity and may choose one of the following options: 3. Buy Now 4.
Add to Favorites
7.
If user ser clic clicks ks on ‘Buy Buy No Now’ w’ then then user user will ill be redirected to ‘Your ‘Your Shopping Cart’ page (if user is logged in’ else he/she will be redirected to the ‘Login’ page. (Refer UC/D/07)
8.
If user ser clic clicks ks on ‘Add ‘Add to Fa Favori vorittes’ es’ then then dropdown will be populated which has folder names (General: default folder and28 | 4 Page other (if any) created by the user.) (if user is not logged in then he/she will be redirected to the ‘Login page’)
Functional Specification Document
1.3 Business Rules for Categories Categories 1.1
Product catalog has nth level. This catalog will be handled in the back-end.
Page 29 | 4
Functional Specification Document
D. Quick Entry/Add to Shopping Cart/ Buy Now 1.1 Diagrammatic Flow for Quick Entry/Add to Shopping Cart/Buy Now
Page 30 | 4
Functional Specification Document
1.2 Narrative Use Case for Quick Entry/Add to Shopping Cart/Buy Now
Page 31 | 4
Module Name:
Quick Entry/Add to Shopping Cart/Buy Now
Functional Specification Document
Use Case Identification
Use Case Name & Id User
Quick Entry/Add to Shopping Cart/ Buy Now (UC/D/07)
A registered user of the site.
Use Case Type
User can add items to the shopping shoppi ng cart and make the payment of the product.
Description
This use case describes shopping cart functionality.
Flow of Events
Preconditions
User needs to be logged in.
Failed End Condition
If user does not supply any mandatory details then he/she is asked to fill it again.
Mandatory Fields
Quick Entry Product Code (SKU) Step 1:Your Shopping Cart
Quantity Step2 :Personal Details Personal Information: First Name Last Name Billing Address: Address City Province/ Territory Country Postal Code Contact Information: Phone E-mail User name & Password: Password Confirm Password
Other Validations Validations
Quick Entry Product Code (SKU) : Textbox (Alphanumeric Max{10}) Quantity: Textbox (Numeric Max{3} Step 1:Your Shopping Cart
Quantity: Textbox (Numeric Max{3} Step2 :Personal Details
Customer No: Label (Displays customer number) Personal Information: First Name: Textbox (Characters Min{2} Max{20})
Last Name: Name: Textbox (Characters (Characters Min{2} Min{2} Max{20}) Company: Textbox (Characters Min{0} Max{{50})
Page 32 | 4
Functional Specification Document
1.3 Business Rules for Quick Entry/ Add to Shopping Cart/Buy Now Quick Entry/Add to shopping Cart/ Buy Now 1.1
An order notification will be sent to user’s email address.
1.2
An order will get processed according to the delivery details provided while shopping.
1.3
User can not jump to step 4 (i.e. Place Order) until unless he complete step3 (i.e. Shipping and Payment)
Page 33 | 4
Functional Specification Document
E. Your Cart 1.1 Diagrammatic Flow for Your Cart
1.2 Narrative Use Case for Your Cart
Page 34 | 4
Module Name:
Your Cart
Functional Specification Document
Use Case Identification
Use Case Name & Id User
Your Your Cart (UC/D/08)
Anonymous or registered user of the site.
Use Case Type
User can view the products added to the cart. This module also has quick link for checkout.
Description
Following features are available in this section: 1. View Ca Cart 2. Checkout 3. Modify Profile 4. Dele Delete te Profi rofile le 5. Orde Orderr His Histtory ory
Flow of Events
Preconditions Failed End Condition
If user does not supply any mandatory details then he/she is asked to fill it again.
Mandatory Fields
View Cart
Quantity Modify Profile Personal Information: First Name Last Name Billing Address: Address City Province/ Territory Country Postal Code Contact Information: Phone E-mail User name & Password: Password Confirm Password
Other Validations Validations
View View Cart Ca rt
Quantity: Textbox (Numeric Max{3}) Checkout
Delivery Method: Radio button with value {Delivery } Payment Method: Radio button with values {On account, Purchase Order, Phone Ordering and Fax Ordering} Favorites
Group name: Textbox(Characters Min{2} Max{50}) (By default Group named ‘General’ exists)
Page 35 | 4
Modify Profile
Customer No: Label (Displays customer number) Personal Information:
Functional Specification Document
1.3 Business Rules for Your Cart Your Cart 1.1
At least one product needs to be available in the cart, in order to access checkout feature.
1.2
‘Modify Profile’ and ‘Delete Profile’ features will require authentication.
Page 36 | 4
Functional Specification Document
E.1 Order History History (Order Management) Management) 1.1 Diagrammatic Flow for Order History
Page 37 | 4
Functional Specification Document
1.2 Narrative Use Case for Order History
Page 38 | 4
Module Name:
Order History
Functional Specification Document
Use Case Identification
Use Case Name & Id User
Order History (UC/D/09)
Registered user of the site.
Use Case Type
User can search for the orders to view/process. view/proc ess.
Description
This use case describes the order management functionality.
Flow of Events
Preconditions Failed End Condition Mandatory Fields Other Validations Validations
Basic Bas ic Search Sea rch : Date Period: Radio buttons with values {All dates, This month, This week, Today, Today, Specify the period below}
Following options will be enabled only if user selects option ‘ Specify the period below’: Order date from: Three dropdowns for month, date and year respectively. Order date through: Three dropdowns dropdowns for month, date and year respectively. 1. First irst dropdo dropdown wn will will have have values values from from January to December 2. Second Second dropdo dropdown wn will will have have value values s from from 1 to 31 3. Third Third dropd dropdown own will will have have value values s from from 1999 1999 to 2009 Advance Search
Order ID: Two textboxes First textbox: Characters Max{20} Second Textbox: Characters Max {30} Order Status: Dropdown with values {Not Finished, Queued, Processed, Backordered, Declined, Failed, Complete} Flow of Events
Step Action
1.
User may or may not enter the search criteria and clicks on ‘Search’. Search result will be displayed as per the criteria specified. (By default result for all dates will be displayed.)
2.
Search re result wil willl co contain fo followin wing columns: Order Id Status Customer Date
Page 39 | 4
Total 3.
On click lick of any of the link link except ept cust custom omer er
Functional Specification Document
1.3 Business Rules for Your Cart > Order History (Order Management) Your Cart >Order History (Order Management ) 1.1
Status of the order will get updated as the order will be processed by the admin.
Page 40 | 4