You are on page 1of 105

COMSATS Institute of Information Technology,

Park Road, Chak Shahzad, Islamabad Pakistan

Business Advisor
By
Muhammad Usman Iqbal
Muhammad Yasir Moin

CIIT/SP12-BCS-153/ISB
CIIT/SP09-BCS-159/ISB

Supervisor
Dr. Majid Iqbal Khan

Bachelor of Science in Computer Science (200x-20xx)

The candidate confirms that the work submitted is their own and appropriate
credit has been given where reference has been made to the work of others.

COMSATS Institute of Information Technology,


Park Road, Chak Shahzad, Islamabad Pakistan

Business Advisor
By
Muhammad Usman Iqbal
Muhammad Yasir Moin

CIIT/SP12-BCS-153/ISB
CIIT/SP12-BCS-159/ISB

Supervisor
Dr. Majid Iqbal Khan

Bachelor of Science in Computer Science (2012-2016)

The candidate confirms that the work submitted is their own and appropriate
credit has been given where reference has been made to the work of others.

COMSATS Institute of Information Technology,


Park Road, Chak Shahzad, Islamabad Pakistan

Business Advisor

A project presented to

COMSATS Institute of Information Technology, Islamabad

In partial fulfillment
of the requirement for the degree of

Bachelors of Science in Computer Science (2012-2016)


By
Muhammad Usman Iqbal

CIIT/SP12-BCS-153/ISB

Muhammad Yasir Moin CIIT/SP12-BCS-159/ISB

DECLARATION
We hereby declare that this software, neither whole nor as a part has been copied out from any
source. It is further declared that we have developed this software and accompanied report
entirely on the basis of our personal efforts. If any part of this project is proved to be copied out
from any source or found to be reproduction of some other. We will stand by the consequences.
No Portion of the work presented has been submitted of any application for any other degree or
qualification of this or any other university or institute of learning.

Muhammad Yasir Moin


---------------------------

Muhammad Usman Iqbal


---------------------------

CERTIFICATE OF APPROVAL
It is to certify that the final year project of BS (CS) Business Advisor was developed by
Muhamad Usman Iqbal (CIIT/SP12-BCS-153) and Muhammad Yasir Moin CIIT/SP12BCS-159) under the supervision of Dr. Majid Iqbal Khan that in his opinion; it is fully
adequate, in scope and quality for the degree of Bachelors of Science in Computer Sciences.

--------------------------------------Supervisor

--------------------------------------External Examiner

--------------------------------------Head of Department
(Department of Computer Science)

Executive Summary
In this modern world of technology where everything is available on internet, it is still an
arduous task to gather information of different running businesses. People feel comfortable to
find the information on a single place. For a user who wants to find out information about
different businesses, he has to go through different websites and after spending hours he might
be able to find the information, which is much time consuming. People who loves to share their
experience with a business always finds a place to give their valuable rating and reviews to that
particular business or any of their product. Owners who really wants to listen their reviewers
thoughts and wants to interact them does not find a place to do so. Challenging and tiring job for
those users who are seeking packages related to a particular event, but they find very little bit of
information on the internet.
To overcome all of the above problems, Business advisor is being developed. The first step was
to understand all the requirement and come up with a better solution which tackles our end users
problem. The overall theme of the project is to make a web based application as well as an
android application that should fulfil the requirement of a user such as, he can find information
on a single platform, give rating and reviews to a business or to any of his product, would be able
to search packages related to a particular event and where owners can interact with the reviewers
and manage their own business page.
The software we are developing is for everyone, anyone who use computer or an android phone.
Anyone who wants to know about businesses he can access our system. In short our system is all
about businesses.

Acknowledgement
All praise is to Almighty Allah who bestowed upon us a minute portion of His boundless
knowledge by virtue of which we were able to accomplish this challenging task.
We are greatly indebted to our project supervisor Dr. Majid Iqbal Khan. Without his personal
supervision, advice and valuable guidance, completion of this project would have been doubtful.
We are deeply indebted to him for his encouragement and continual help during this work.
And we are also thankful to our parents and family who have been a constant source of
encouragement for us and brought us the values of honesty & hard work.

Muhammad Yasir Moin


---------------------------

Muhammad Usman Iqbal


---------------------------

Abbreviations
SRS

Software Require Specification

NetBeans

Software

Table of Content

1. Chapter 1: Introduction............................................................................................13
1.1.Brief.........................................................................................................................................13
1.2.Relevance to Course Modules.................................................................................................13
1.3.Project Background..................................................................................................................13
1.4.Literature Review.....................................................................................................................14
1.5.Analysis from Literature Review (in the context of your project)...........................................14
1.6.Methodology and Software Lifecycle for This Project............................................................14
1.6.1.
RationalebehindSelectedMethodology.......................................................................15
2. Chapter2:ProblemDefinition.............................................................................................16
2.1.Problem Statement...................................................................................................................16
2.2.Deliverables and Development Requirements.........................................................................16
3. Chapter 3: Requirement Analysis.......................................................................17
3.1.Use Cases.................................................................................................................................17
3.1.1.
Signup............................................................................................................................17
3.1.2.
Login..............................................................................................................................18
3.1.3.
Forgotpassword.............................................................................................................18
3.1.4.
Updateprofile................................................................................................................20
3.1.5.
Searchbusiness..............................................................................................................20
3.1.6.
Viewbusiness................................................................................................................21
3.1.7.
Readreviews..................................................................................................................22
3.1.8.
Writereview...................................................................................................................22
3.1.9.
UpdateReview...............................................................................................................24
3.1.10. DeleteReview................................................................................................................24
3.1.11. Reportreview.................................................................................................................25
3.1.12. Addphotos.....................................................................................................................26
3.1.13. Deletephotos.................................................................................................................27
3.1.14. Makereservation............................................................................................................27
3.1.15. Searchpackages.............................................................................................................29
3.1.16. viewmessages................................................................................................................30
3.1.17. Deactivateaccount.........................................................................................................31
3.1.18. Addbusinesspage..........................................................................................................32
3.1.19. Claimbusiness...............................................................................................................32
3.1.20. Searchuser.....................................................................................................................33
3.1.21. Adduser.........................................................................................................................34
3.1.22. Updateuser....................................................................................................................35
3.1.23. Viewuser.......................................................................................................................36
3.1.24. Deleteuser.....................................................................................................................36
3.1.25. Receivenotifications......................................................................................................37
3.1.26. Viewnotifications..........................................................................................................38
3.1.27. Updatebusinessinformation..........................................................................................38
3.1.28. Addschedule..................................................................................................................39
3.1.29. Addproduct...................................................................................................................40
3.1.30. Viewproducts................................................................................................................41
3.1.31. Updateproductdetail.....................................................................................................42

3.1.32. Deleteproduct................................................................................................................43
3.1.33. Addpackage...................................................................................................................43
3.1.34. Respondtoreviews........................................................................................................44
3.1.35. Viewbusinessstatistics..................................................................................................45
3.1.36. Viewpage......................................................................................................................46
3.1.37. logout.............................................................................................................................47
3.2.Functional Requirements.........................................................................................................48
3.2.1.
Signup(User/Businessowner)......................................................................................48
3.2.2.
Login(User/Admin/Businessowner).........................................................................48
3.2.3.
Forgotpassword(User/Businessowner)......................................................................48
3.2.4.
Updateprofile(User).....................................................................................................49
3.2.5.
Searchbusiness(User/Businessowner).........................................................................49
3.2.6.
Viewbusinesspage(User).............................................................................................49
3.2.7.
Readreview(User/Businessowner)..............................................................................50
3.2.8.
Writereview(User).......................................................................................................50
3.2.9.
Editreview(User)..........................................................................................................51
3.2.10. Deletereview(User/Admin).........................................................................................51
3.2.11. Reportreview(User)......................................................................................................51
3.2.12. Addphotos(User/Businessowner)..............................................................................52
3.2.13. Deletephotos(User/Businessowner)...........................................................................52
3.2.14. Makereservation(User)................................................................................................52
3.2.15. Addbusinesspage(User)..............................................................................................53
3.2.16. ViewMessages(User)...................................................................................................53
3.2.17. DeactivateAccount(User/Businessowner).................................................................53
3.2.18. Adduser(Admin)..........................................................................................................54
3.2.19. Claimbusinesspage(User)...........................................................................................54
3.2.20. Searchuser(Admin)......................................................................................................54
3.2.21. Edituserinformation(Admin).......................................................................................55
3.2.22. DeleteUserAccount(Admin).......................................................................................55
3.2.23. Deletereview(Admin,Businessowner).......................................................................55
3.2.24. Editbusinessinformation(Businessowner)..................................................................56
3.2.25. Receivenotifications(Admin).......................................................................................56
3.2.26. Viewnotifications(Admin)...........................................................................................56
3.2.27. Addschedule(Businessowner).....................................................................................57
3.2.28. Addproducts(Businessowner).....................................................................................57
3.2.29. Edit/updateproductdetails(Businessowner)................................................................57
3.2.30. Deleteproduct(Businessowner)...................................................................................58
3.2.31. Viewproducts(User,Businessowner)..........................................................................58
3.2.32. Addpackages(Businessowner)....................................................................................58
3.2.33. Respondtoreviews(Businessowner)...........................................................................59
3.2.34. Viewbusinessstatistics(Businessowner).....................................................................59
3.2.35. Viewpage(Businessowner).........................................................................................59
3.2.36. SearchPackages(User)..................................................................................................60
3.2.37. Logout(User,Businessowner,Admin).......................................................................60
3.3.Non-Functional Requirements.................................................................................................61
3.3.1.
Usability.........................................................................................................................61

3.3.2.
Reliability.......................................................................................................................61
3.3.3.
Performance...................................................................................................................62
3.3.4.
Supportability.................................................................................................................62
3.3.5.
DesignConstraints.........................................................................................................62
4. Chapter 4: Design and Architecture..................................................................63
4.1.System Architecture.................................................................................................................63
4.2.System Design.........................................................................................................................64
5.2.1
5.2.2
5.2.3
5.2.4

ActivityDiagram(Web).......................................................................................................64
ClassDiagram......................................................................................................................83
SequenceDiagram................................................................................................................84
EntityRelationshipDiagram................................................................................................98

6. References........................................................................................................................99

List of Figures
Fig 1.1 Usecases............................................................................................................................17
Fig 2.1 Activity diagramm............................................................................................................64
Fig 2.1 Class diagram....................................................................................................................83
Fig 2.1 Sequence diagramm..........................................................................................................84
Fig 2.1 Entity relationship diagram............................................ ..................................................98

1.
1.1.

Chapter 1: Introduction

Brief

This chapter includes all the requirements for Business Advisor which will be a single platform
where businesses are arranged in a categorized fashion and each business will have its own page.
Where a user can submit a review to a business or to its products and will be able to make a
customize package for a particular event. Moreover, Business Owner can claim a business page
and after that he can manage his business page through the business owner portal. This project
will be made in NetBeans and MySQL workbench. This Software Design Document provides a
complete description of all the functions and specifications of Business Advisor system. This
document provides the description of all the features that are being performed by the system. In
addition to this, the document provides information regarding design constraints, use case
models, system design and software requirements mainly the functional and non-functional
requirements. Also this document states who the users of the system are and how these end users
will interact with the system through the interfaces. We used Waterfall approach for our
development cycle.

1.2.

Relevance to Course Modules

1.3.

Object Oriented Programming: It provided us with the basic programming language


skills necessary to develop our web application.
Human Computer Interaction: It helped us to design the GUI of the Web Application.
Software Engineering: It helped us in the documentation.
Database System: It helped us in the project to build the databases

Project Background

As far as the background of this project is concerned, we were offered this project by Centangle
Interactive (PVT) Ltd. After discussing their idea with our supervisor, he agreed to supervise us.
After reviewing our proposal Project Committee assigned this project to us. After the acceptance
of this proposal we analyzed the scope of the project and finally got the solution and this product
came into existence.
The core idea behind this project is to develop a web based as well as android application for end
users. Where they can view different businesses information of an area on a single platform and
user can give ratings and reviews to businesses. Where Business owners can claim their
businesses page and once they claimed an owners portal would be provided to them.
Furthermore event organizers would be able to view deals or offers of claimed pages in
searching utility and would be able to make a customize package.

1.4.

Literature Review

We have visited and looked for the systems that are related to our project, some of them are as
follows:
http://www.yelp.com/
https://foursquare.com/
http://www.local.com/
https://foursquare.com/
www.merchantcircle.com

1.5.

Analysis from Literature Review (in the context of your project)

The system which we have mentioned earlier are performing the same functionality just like our
system, for instance, yelp is connecting people with great local businesses, in addition to that
people also gives reviews to businesses. But none of the above systems provide three most
important functionalities, which our system would provide.
1. Ability to give rating and review to business product also.
2. Ability to search packages related to particular event, we called this functionality as
utility finder.
Ability to make a customize package for a particular event in which a user can select multiple
packages and get services from multiple businesses by contacting their business owners at a
time. For example, if a user search packages related to an event like marriage, then all
packages from different business would be displayed to him, among those packages, he can get
best decoration package from one business, catering package from another business, music
band package from another business and so on, and then he can get the services from these
businesses by contacting their owners at a time.

1.6.

Methodology and Software Lifecycle for This Project

We have adopted Waterfall Process Model for the development of our system. It is a sequential
design processused in the software development processes; it has different phases

Figure1SoftwarelifeCycle

1.6.1. Rationale behind Selected Methodology

The waterfall model provides a structured approach; the model itself progresses linearly
through discrete, easily understandable and explainable phases and thus is easy to
understand; it also provides easily identifiable milestones in the development process.
As we know our requirements in advance and we also know that they will not change in
future, so we thought it would be good to get all the requirements at once and then
proceed. So Waterfall life cycle is the most appropriate methodology we found.Perhaps
for this reason we choose Waterfall process model.

2.Chapter 2: Problem Definition

2.1.

Problem Statement

Hundreds of businesses are currently running around us. For a user who wants to find out
information about different businesses, he has to go through different websites and after
spending hours he might be able to find the information, which is much time consuming. In
addition to that, what people think about a business they usually share their experience by giving
their valuable ratings and reviews. Similarly for an event organizer who wants to organize an
event he seeks suitable deals. Our real client wants us to make a web application plus an android
application to fulfill this need.

2.2.

Deliverables and Development Requirements

Deliverables are mentioned below:


Scope document
Software requirement specification document
Software design document Development requirements are mentioned below:
NetBeans
MySQL Workbench

3.

Chapter 3: Requirement Analysis

3.1.

Use Cases

Signup
Use Case UC-1
ID:
Use Case Sign up
Name:
Actors:
User /Business owner
Description:
Usercan enter name, email address, password and phone number.
Trigger:
User click the sign up button
Preconditions:
1. User can access the web application.
2. User has already account on Gmail or yahoo.
Post conditions:

Message displayed Account successfully created

Normal Flow:
1. User open the web application
2. User click on sign up button.
3. User enters his/ her first name, last name, email address, password,
and phone number.
4. User click on sign up button again.
5. System Validate the information.
6. Message displayed Account successfully created
Alternative
Flows:

None

Exceptions:
3a. In step 3 of the normal flow, If user enters invalid name, email
address, password and phone number or does not fill all the fields.
1. Application shows alert box Invalid.
2. Resumes from step 3 of normal flow.
3b. In step 3 of the normal flow, If user enter does not fill all the
fields.
1. Application shows alert box Please fill all the fields
2. Resumes from step 3 of normal flow.
Includes:

None

Special
Requirements:
Assumptions:
Notes and
Issues:

None
User knows English
None

1.6.2. Login
Use Case UC-2
ID:
Use Case Login to System
Name:
Actors: User/admin/business owner
Description: User must enter username and password and login to system
successfully
Trigger: User access the login panel of website
Preconditions: 1. User must exist in database
2. User should have a registered and activated account
3. User already have existing password and user name
Post conditions: 1. User login successfully
2. The Customer logged in to the system and access the resources of
website
Normal Flow: 1. User launches the login screen
2. User enters a combination of username and password and submit
3.System validates the log-in information against account information
in database
4.If User is authorized; the system displays the personal homepage
Alternative None
Flows:
Exceptions: 2a. In step 2 of normal flow, If the User enter invalid password
1. Login disapproved
2. Message to customer to re-enter username or password
3. User enters correct details
Includes: UC-1
Special None
Requirements:
Assumptions: None
1.6.3. Forgot password
Use Case UC-3
ID:

Use Case Forgot password


Name:
Actors: User/business owner
Description: User needs to retrieve their password in case of forgetting.
Trigger: User forgot password.
Preconditions: Useraccount exist in database.
Post conditions: Password retrieved successfully.
Normal Flow: 1. User select forgot password option from the login panel.
2. User provide his email address in the textbox.
3. System checks for the data against provided email address in
database.
4. System generates an email with reset link against the provided email
address.
5. System prompt user that resetting detail have been sent to the
account.
6. User open the reset link from their email.
7. System prompt for new password.
8. User enter the data.
9. User click on the submit button.
10. System validates the form
11. System stores data in database.
12. System shows dialog box notifying user that password has been
changed successfully.
Alternative None
Flows:
Exceptions: 9a. In step 9 of the normal flow, If user enters invalid data.
1. System compares password fields.
2. If data is incorrect system prompts the user to re-enter data.
3. Use case resumes from step 10.
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

UC-1
None
User account already exist in database.
None

1.6.4. Update profile


Use Case ID:
Use Case Name:
Actors:
Description:
Trigger:
Preconditions:

UC-4
Update profile
User
Usercan update his/her profile.
User click update profile.
User must login in order to update the profile.

Post conditions:

Profile will be updated.

Normal Flow:

1. User login the application.


2. User click on the button Update your profile.
3. User re-enter his/her password.
4. User update the profile.
5. User press the button Save changes.

Alternative
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
None
UC-2
None
None
None

1.6.5. Search business


Use Case UC-5
ID:
Use Case Search business
Name:
Actors: User
Description: Usercan search particular business
Trigger: User press the search button.
Preconditions: Useris already on the home page of web application
Post conditions: Search displayed.
Normal Flow: 1. User is already on the home page.
2. User enters business name in the search box.
3. System searches the business in the database.
4. Press the search button.

5. Businesses displayed.
Alternative None
Flows:
Exceptions: If the User enter invalid Business
1a. Message displayed Not exist, Do you want to add your business
page??
2. If user press yes, user moved to Add business page
1b. Message displayed Not exist, Do you want to add your business
page??
2. If user press No, user moved to home page.
Includes: None
Special None
Requirements:
Assumptions: None
Notes and None
Issues:
1.6.6. View business
Use Case UC-6
ID:
Use Case View business page
Name:
Actors: User
Description: Usercan view business page
Trigger: User click on business page
Preconditions: Useris already on the home page of web application
Post conditions: Business page displayed
Normal Flow: 1. User is already on the home page.
2. User clicks on one of the business page which is listed in categorized
fashion.
3. User moves to business page.
Alternative None
Flows:
Exceptions: None
Includes: None
Special None
Requirements:

Assumptions: None
Notes and None
Issues:
1.6.7. Read reviews

Use Case UC-7


ID:
Use Case Read reviews
Name:
Actors: User/business owner/Admin
Description: Usercan read reviews about a particular business
Trigger: User click on review
Preconditions: Useris already on the home page of web application
Post conditions: Reviews displayed
Normal Flow: 1. User is already on the business page.
2. User clicks on reviews button
3. Reviews displayed to user.
Alternative None
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
None
None
None
None

1.6.8. Write review

Use Case UC-8


ID:
Use Case Write review
Name:
Actors:
User
Description:
User can write review and give rating too.

Trigger:
Preconditions:

User click the write a review button


User is log in.

Post conditions:

Review successfully posted.

Normal Flow:

1. User is already log in.


2. User press the write a review button.
3. User find or search the business.
4. User click over it.
5. Business page opens.
6. User press the write a review button again.
7. New page opens, showing two boxes. One for giving five-star rating
and second one for review.
8. User write the review.
9. If User post the review.
10. Message displayed review posted

Alternative
Flows:

5a. In step 5 of the normal flow, if user press write a review for a
product
1. User click on View product page.
2. Page opens.
3. Products along with their description displayed to user.
4. User click on a product.
5. Public reviews displayed to user.
6. User press Write a review button, Below public reviews.
7. Window opens, containing two text boxes, One for giving five-star
rating and second one for review.
8. Resumes from step 8 of normal flow.
10a. In step 10 of the normal flow, if the user cancel the review.
1. Business page opens again.

Exceptions:
8a. In step 8 of the normal flow, If user does not give rating
1. Application shows alert box Please complete the review
9a. In step 9 of the normal flow, If user does not write a review
1. Application shows alert box Please complete the review
Includes:
Special
Requirements:
Assumptions:
Notes and

UC-2
None
None
None

Issues:

1.6.9. Update Review


Use Case UC-9
ID:
Use Case Edit/Update review
Name:
Actors: User
Description: Review can be edited by user which is added before.
Trigger: User click on edit review
Preconditions: 1. User must be authorized
2.User must login to website
Post conditions: 1.Review edited successfully
Normal Flow: 1. User click on Edit review button
2. System will move user to next page
3. User edit review.
4. User click on OK button
5. Changes will be made into database about review
6. System show message to user that review is edited successfully
Alternative 6a. In step 6 of normal flow if user press cancel button.
Flows: 1. user home page (dashboard) opens
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
UC-2, UC-8
None
None
None

1.6.10. Delete Review


Use Case UC-10
ID:
Use Case Delete review
Name:
Actors: User/Admin
Description: Review can be deleted by user which is added before.

Trigger: User click ondelete review button


Preconditions: 1. User must be authorized
2.User must login to website
Post conditions: 1.Review deleted successfully
Normal Flow: 1. User click on delete review button
2. System will move user to next page
3. Text displayed Are you sure you want to delete this review
4. User click on confirm button
5. System show message to user that review is deleted successfully
6. User move to his home page (dashboard).
Alternative 4a. In step 4 of normal flow if user press cancel button.
Flows: 1. user home page(dashboard) opens
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

UC-2, UC-8
None
None
None
None

1.6.11. Report review


Use Case UC-11
ID:
Use Case Report review
Name:
Actors:
User/Business owner
Description:
User can report review
Trigger:
Click at report review
Preconditions:
User is log in
Post conditions:

Message displayed Thanks! We will evaluate this review and get


back to you shortly.

Normal Flow:

1. User click on report.


2. System prompt why do you want to report this review? Select an
option.
3. User select any option.
4. Text box appears, please provide additional information.
5. User writes in textbox.
6. Press report button
7. Message displayed Thanks! We will evaluate this review and get

back to you shortly.


8. User press Ok
9. Home page (dashboard) appears.
Alternative
Flows:

2a. In step 2 of normal flow, if user does not select an option and press
cancel button
1. Home page (dashboard) appears.
4a. In step 4 of normal flow, if user does not write in text box.
1. Alert message A required field was not filled.
2. Resumes from step 4

Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

6a. In step 6 of normal flow, if user press cancel button.


1. Home page (dashboard) appears.
None
UC-2
None
None
None

1.6.12. Add photos


Use Case UC-12
ID:
Use Case Add photos
Name:
Actors:
User/business owner
Description:
Usercan add the photos related to particular business.
Trigger:
Click at Add photos
Preconditions:
User login before adding the photos.
Post conditions:
Normal Flow:

1. Show alert message photo is added.


1. User click on add photos.
2. Select the photos from the system or from the gallery saved in
mobile.
3. User press the button save.

Alternative
Flows:

2a.If image is not present in the gallery.


1. User takes photos using mobile camera.
Continue to step 2
None

Exceptions:

Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

UC-2
None
None
None

1.6.13. Delete photos


Use Case UC-13
ID:
Use Case Delete photos
Name:
Actors:
User/business owner
Description:
User can delete the selected photo.
Trigger:
Click at Delete photo.
Preconditions:
Image should exist in database.
Post conditions:

Show alert message Photo is deleted.

Normal Flow:

1. Userselect the photo to be deleted.


2. Click on the button delete photo.
3. Press the button Remove.

Alternative
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
User cannot delete without selecting the photo.
UC-2, UC-12
None
User can delete the record.
None

1.6.14. Make reservation


Use Case
ID:
Use Case
Name:
Actors:

UC-14
Make - reservation
User

Description:
Trigger:
Preconditions:

User can make a reservation.


User press Find a table button.
User is already log in.

Post conditions:

Message displayed Reservation confirmed

Normal Flow:

1. Clicks a business page.


2. Visits the Make a reservation section.
3. Select day, time, and number of persons.
4. Press the find the table button.
5. System checks in database
6. If available, Confirm reservation box appears.
7. User view reservation details.
8. Enter his email address, and his phone number.
9. If user Press confirm reservation button.
10. Message displayed reservation confirmed.
11. User press the Done button
3a. In step 3 of normal flow, if user does not select day or time or
number of persons
1. Message displayed Please complete the information

Alternate flows:

6a. In step 6 of normal flow, if table is not available


1. Message displayed sorry, the table is already reserved

Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

8a. In step 8 of normal flow, if user enter invalid email or phone


number
1. Message displayed Invalid email or phone number
2. Resumes from step 8 of normal flow.
None
UC-2
None
Only for restaurants
None

1.6.15. Search packages


Use Case UC-15
ID:
Use Case Search Packages

Name:
Actors:
Description:
Trigger:
Preconditions:

User
Usercan search packages of businesses
User click on Utility finder
Useris already log in and viewing his Home page (dashboard).

Post conditions: Package created successfully


Normal Flow: 1. User is already log in.
2. User clicks on Utility finder.
3. Next page opens where a search box is given.
4. User enter the type of event and does not use filters.
5. Packages offered by different business displayed to user.
6. User select packages, from the search.
7. After selecting particular packages, user press Next button
8. Next page opens, customized package details displayed to user.
9. User press Proceed button.
10. System prompts Do you want to contact the business.
11. If user press yes, email sent to business and user about the selected
package along with the details of user.
12. Message displayed Package created successfully
Alternative
Flows: 4a. In step 4 of normal flow, if user enters type of event and use price
filter
1. Packages displayed according to low price package to high rice
package.
2. Resumes form step 6.
7a. In step 7 of normal flow, if user press cancel button
1. Resumes from step 3.
9a. In step 9 of normal flow, if user press cancel button
1. Resumes from step 3.
10a. In step 10 of normal flow, if user press cancel button
1. Resumes from step 3.
11a. In step 11 of normal flow, if user press No button
1. Resumes from step 3.

Exceptions: 4a. In step 4 of normal flow, if user enters invalid business event
1. Message displayed Invalid event
2. Resume from step 4 of normal flow

4b. In step 4 of alternate flow, if user enters invalid business event


1. Message displayed Invalid event
2. Resume from step 4 of normal flow
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

UC-2
None
None
None

1.6.16. view messages


Use Case UC-16
ID:
Use Case View messages
Name:
Actors: User
Description: User can view messages send by business owner.
Trigger: User press the Message button
Preconditions: User is already log in.
Post conditions: Messages displayed
Normal Flow: 1. User is already log in.
2. Userviews his Home page (dashboard).
3. Click the message page.
4. Message page opens.
5. User view messages.
6. Press Home button.
7. Home page (dashboard) appears.
Alternative None
Flows:
Exceptions:
None
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

UC-2
None
None
None

1.6.17. Deactivate account


Use Case UC-17
ID:
Use Case Deactivate account
Name:
Actors: User/ Business owner
Description: User can deactivate his account if he is not satisfied with the system
Trigger: User press Deactivate account button.
Preconditions: User is already log in.
Post conditions: Account deleted.
Normal Flow: 1. User is already log in.
2. Userviews his Home page (dashboard).
3. Press Deactivate account button.
4. System prompt Are you sure you want to deactivate your account.
5. User press Yes.
6. Message displayed Account deactivated.
7. User log out
8. Home page of web application opens.
Alternative 4a. In step 4 of normal flow, if user press No
Flows: 1. Home page (Dashboard) opens.
Exceptions:
None
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

UC-2
None
None
None

1.6.18. Add business page


Use Case UC-18
ID:
Use Case Add business page

Name:
Actors:
Description:
Trigger:
Preconditions:

User
Usercan add his own business page
User press add business button
Useris already on the home page of web application

Post conditions: Page created.


Normal Flow: 1. User is already on the home page of web application.
2. User click on add business.
3. User enters business name.
4. System searches the business in the database.
5. Press the search button.
6. Search displayed.
7. If business does not exist in the system, user press Add business
button and move to next page.
8. User fill the form (Name of business, Address, phone number) and
press the add business button.
9. Message displayed This business page will not appear in search
results until it has been approved by Admin
Alternative None
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
None
None
None
None

1.6.19. Claim business


Use Case UC-19
ID:
Use Case Claim business page
Name:
Actors: User
Description: User claim his business page.
Trigger: User press the claim business button
Preconditions: User is log in.
Post conditions: Text appears Notification sent to Admin, our team shall meet you in
two days

Normal Flow: 1. User finds his business page.


2. After finding it, click over it.
3. View business information.
4. Press the claim this business button on business page.
5. New page opens.
6. User enter his first name, last name, email address and password,
phone number.
7. User press Verify button.
8. Message displayed Notification sent to Admin, our team shall meet
you in two days
9. User press Ok button.
Alternative 7a. In step 7 of the normal flow, If the user press cancel button
Flows: 1. Business page opens again
Exceptions:
None
Includes: None
Special None
Requirements:
Assumptions: Already have business phone number.
1.6.20. Search user
Use Case UC-20
ID:
Use Case Search User
Name:
Actors: Admin
Description: Admincan search user
Trigger: Admin press the search button.
Preconditions: Admin is already log in.
Post conditions: Search displayed.
Normal Flow: 1. Admin is already log in.
2. Admin enters the username in the text box field.
3. Press the search button.
4. System checks in database.
5. Search displayed.

Alternative None
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
UC-2
None
User already exist in system.
None

1.6.21. Add user


Use Case UC-21
ID:
Use Case Add user
Name:
Actors:
Admin
Description:
Admin can add user.
Trigger:
Admin click on add user button.
Preconditions:
1. An admin must login in order to add the users.
Post conditions:

Message displayed User added.

Normal Flow:

1. Admin select the user to be add.


2. Admin click the button Add user.
3. Admin press the button Confirm.
4. Message displayed User added.

Alternative
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
None
UC-2
None
None
None

1.6.22. Update user


Use Case UC-22
ID:
Use Case Edit User Information
Name:
Actors:
Admin
Description:
Admin can edit the information of any user if required.
Trigger:
To Edit the information of a User.
Preconditions:
1. An admin must login in order to edit user information.
2. User must have account in an application.
Post conditions:

User will be updated.

Normal Flow:

1. Admin search the user from the search bar.


2. Admin select the user.
3. Admin click at the button Edit information.
4. Admin press the button Confirm.

Alternative
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
None
UC-2
None
None
None

1.6.23. View user


Use Case UC-23
ID:
Use Case View User
Name:
Actors:
Admin
Description:
Admin can view users as well as see their profile details.
Trigger:
Admin click on View user
Preconditions:
1. An admin must login in order to users.
2. User must have account in an application.
Post conditions:

The information of the user will be shown to the admin.

Normal Flow:

1. Admin search the user in the search bar.


2. Admin select the user.
3. Admin click the button View user.
4. Information displayed to admin about user.

Alternative
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
None
UC-2
None
None
None

1.6.24. Delete user


Use Case UC-24
ID:
Use Case Delete user
Name:
Actors:
Admin
ThesystemshallallowtheAdministratortodeleteaccountofanyuser
Description:
fromthesystemifrequired.
Trigger:
Click at Delete user page.
Preconditions:
An admin must login in order to delete specific user.
Post conditions:

Show alert message Deleted.

Normal Flow:

1. Admin can click on Delete user page


2. In the textbox, admin can search the user to be deleted.
3. Click on the button Delete user.
4. Press the button Confirm.

Alternative
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
None
UC-2
None
None
None

1.6.25. Receive notifications


Use Case UC-25
ID:
Use Case Receive Notifications
Name:
Actors:
Admin
Administratorcanreceivenotifications.
Description:
Trigger:
When user press verify button.
Preconditions:
Admin is log in.
Post conditions:
Normal Flow:

Notification received by admin.


1. User finds his business page.
2. After finding it, click over it.
3. View business information.
4. Press the claim this business button on business page.
5. New page opens.
6. User enter his first name, last name, email address and password,
phone number.
7. User press Verify button.
8. Message displayed Notification sent to Admin, our team shall meet
you in two days
9. User press Ok button.
10. Notification received by Admin.

Alternative
Flows:

7a. In step 7 of the normal flow, If the user press cancel button
1. Business page opens again

Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
UC-2
None
None
None

1.6.26. View notifications


Use Case UC-26
ID:
Use Case View Notifications
Name:
Actors:
Admin
Administratorcanviewnotifications.
Description:
Trigger:
Admin click on Notification image
Preconditions:
Admin is log in.
Admin received notification
Post conditions:
Normal Flow:

Admin view notification image.


1. Admin click on notification.
2. Notifications opened.
3. Admin select a notification and click over it.
4. Notification details open.

Alternative
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
None
UC-2,UC-25
None
None
None

1.6.27. Update business information


Use Case UC-27
ID:
Use Case Edit business information
Name:
Actors: Business owner

Description: Business owner can update business information


Trigger: Business owner click the update business information page
Preconditions: Business owner is already log in.
Post conditions: Message displayed Business information changes successfully
Normal Flow: 1. Business owner is already log in.
2. Business owner views his Home page (dashboard).
3. Click the update business information page.
4. Edit the particular field. .
5. Press publish button.
6. Information successfully changes.
Alternative 5a. In step 5 of the normal flow, if the owner wants to cancel the
Flows: changes
1. Press the cancel button.
2. Resumes from step 2 of normal flow.
Exceptions:
4a. In step 4 of the alternative flow, If any field in the description is
empty
1. Application shows alert box Please fill all the fields
Includes: UC-2, UC-19
Special None
Requirements:
Assumptions: Business dashboard is provided to owner.
Notes and None
Issues:

1.6.28. Add schedule


Use Case UC-28
ID:
Use Case Add schedule
Name:
Actors: Business owner
Description: Business owner can add schedule.
Trigger: Business owner click the Add schedule button
Preconditions: Business owner is already log in.

Post conditions: Business owner successfully add his business hours.


Normal Flow: 1. Business owner is already log in.
2. Business owner views his Home page (dashboard) page.
3. Business owner click business information page.
4. Press the add schedule button.
5. User select specific days, select opening hours and closing hours.
6. User Press the publish button.
Alternative 5a. In step 5 of the normal flow, if the user tick all days box.
Flows: 1. All days selected.
6a. In step 6 of the normal flow, if the user press cancel.
1. Business page opens again.
Exceptions:
5a. In step 5 of the normal flow, If the user choose the day and
opening hour but does not choose closing hours
1. Application shows alert box Please complete information
5b. In step 5 of the normal flow, If the user choose the day and
closing hours but does not choose opening hours
1. Application shows alert box Please complete the information
5c. In step 5 of the normal flow, If the user choose the opening hours
and closing hours but does not choose specific day
1. Application shows alert box Please complete the information
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

UC-2, UC-19
None
Business dashboard is provided to owner.
None

1.6.29. Add product

Use Case UC-29


ID:
Use Case Add product
Name:
Actors: Business owner
Description: Business owner can add products.

Trigger: Business owner click Add product page


Preconditions: Business owner is already log in.
Post conditions: Message displayed product added.
Normal Flow: 1. Business owner is already log in.
2. Business owner views his Home page (dashboard).
3. Press the add product button.
4. Write name of product
5. Select the price of the product.
6. Write a description of the product.
7. Owner Press the save button.
8. Message displayed Product added
Alternative 7a. In step 7 of the normal flow, if the owner wants to cancel it.
Flows: 1. Add product page opens again.
Exceptions:
5a. In step 5 of the normal flow, If the user does not select the price
1. Application shows alert box Please complete information
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

UC-2, UC-19
None
Business dashboard is provided to owner.
None

1.6.30. View products


Use Case UC-30
ID:
Use Case View Products
Name:
Actors: User/Admin/Business owner
Description: Product will be view to Use with detail of the product
Trigger: User click on view Product button
Preconditions: 1. User must be authorized
2. User must login to website
Post conditions: 1.Product will be view with full details
Normal Flow: 1. Userclick on View product page

2. Page opens
3. Products along with their description displayed to user.
4. Session end
Alternative None
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
UC-2,UC-19
None
Business dashboard is provided to owner.
None

1.6.31. Update product detail


Use Case UC-31
ID:
Use Case Edit/Update Product details
Name:
Actors: Business owner
Description: Product can be edit by Business owner which is added before.
Trigger: Business owner click on edit Product button
Preconditions: 1. Business owneris login to website
Post conditions: 1.Product edited successfully
Normal Flow: 1. Business owner click on Edit product button
2. System will move Business owner to next page
3. Business owner edit product details (price description)
4. Business owner click on OK button
5. Changes be made into database about product
6. Message displayed Product edited successfully
Alternative None
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:

None
UC-12, UC-19
None
Business dashboard is provided to owner.

Notes and None


Issues:

1.6.32. Delete product


Use Case UC-32
ID:
Use Case Delete Product
Name:
Actors: Business owner
Description: Product can deleted by Business owner which is added before.
Trigger: Business owner click on delete Product button
Preconditions: 1. Business owneris login to website
Post conditions: 1. Message displayed Product deleted successfully"
Normal Flow: 1. Business owner will click on Delete Product button
2. System will confirm from Business owner about deleting product
3. Business owner will click on OK button
4. Product deleted successfully"
Alternative None
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
UC-2,UC-19
None
Business dashboard is provided to owner.
None

1.6.33. Add package


Use Case UC-33
ID:
Use Case AddPackage
Name:
Actors: Business owner
Description: Business owner can add packages.
Trigger: Business owner click Create package page

Preconditions: Business owner is already log in.


Post conditions: Message displayed Package successfully created and posted
Normal Flow: 1. Business owner is already log in.
2. Business owner views his Home page (dashboard).
3. Click the Create package page.
4. Page opens.
5. Business owner select the type of package, write the description of
package, and select the price of package.
6. Press post button.
7. Message displayed Package posted.
8. Home page (dashboard) opens
Alternative 6a. In step 6 of the normal flow, if the owner presscancel button.
Flows: 1. Home page opens again.
Exceptions:
5a. In step 5 of the normal flow, If the user does not write description,
or does not select type of package and price
1. Application shows alert box Please complete information
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

UC-2,UC-19
None
Business dashboard is provided to owner.
None

1.6.34. Respond to reviews


Use Case UC-34
ID:
Use Case Respond to reviews
Name:
Actors: Business owner
Description: Business owner can respond to reviews
Trigger: Business owner click the review button

Preconditions: Business owner is already log in.


Post conditions: Message displayed Successfully responded
Normal Flow: 1. Business owner is already log in.
2. Business owner views his Home page (dashboard).
3. Click the reviews page.
4. Locate the review.
5. If owner click add public comment.
6. Enter the text.
7. Click post comment.
Alternative 5a. In step 5 of the normal flow, if the owner wants to respond
Flows: privately.
1. Click send private message.
2. Enter the text.
3. Click send.
Exceptions:
2a. In step 2 of the alternative flow, If the user does not enter the text
1. Application shows alert box Please write something
3a. In step 3 of the alternative flow, If the user press the cancel button
1. Review page opens again.
5a. In step 5 of the normal flow, If the user does not enter the text
1. Application shows alert box Please write something
7a. In step 7 of the normal flow, If the user press the cancel button
1. Review page opens again.
Includes: UC-2,UC-19
Special None
Requirements:
Assumptions: Business dashboard is provided to owner.
Notes and None
Issues:
1.6.35. View business statistics
Use Case UC-35
ID:
Use Case View business statistics
Name:
Actors: Business owner

Description: Business owner can view business statistics.


Trigger: Business owner click on statistics page.
Preconditions: User must be login
Post conditions:

Business statistics displayed

Normal Flow: 1. Business owner is already log in.


2. Business owner views his Home page (Dashboard).
3. Press statistics page
4. Statistics will be displayed in the form of graph, month wise.
Alternative None
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

None
UC-2,UC19
None
Business dashboard is provided to owner.
None

1.6.36. View page


Use Case UC-36
ID:
Use Case View page
Name:
Actors: Business owner
Description: Business owner is already on the home page (dashboard)
Trigger: Business owner clicks on view page
Preconditions: Owneris already on his home page.
Post conditions: Business page displayed
Normal Flow: 1. Owner is already on the home page.
2. Clicks on View page link.
3. Owner moves to business page.
Alternative None
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:

None
UC-2,UC-19
None
Business dashboard is provided to owner.

Notes and None


Issues:
1.6.37. logout
Use Case UC-37
ID:
Use Case Logout
Name:
Actors:
Description:
Trigger:
Preconditions:

User/Admin/Business owner
It allows User to securely leave the website
User clicks on logout button
1. User must be login

Post conditions: 1. User logout of the website


2. User return to homepage
Normal Flow: 1. Userwill click on logout button
2. User will be logged out by system
3. Session will end
4. User will be moved to home page
Alternative None
Flows:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
Notes and
Issues:

3.2.

None
UC-2
None
None
None

Functional Requirements

1.7.1. Signup (User/ Business owner)


Identifier

FR 1

Title

Sign up

Requirement

System shall allow user to sign up

Source

Team members, Supervisor

Rationale

Dependencies

System needs to maintain profile of every user. So every


user needs a unique account.
This requirement must be fulfilled as only registered users
can access the system.
None

Priority

High

Restrictions and Risk

1.7.2. Log in (User/ Admin/ Business owner)


Identifier

FR 2

Title

Log in

Requirement
Source

System shall allow user to login. System shall verify the


authenticity of the user by verifying email address and
create his/her account on the system
Team members, Supervisor

Rationale

To perform operations user must be log in

Restrictions and Risk


Dependencies

This requirement must be fulfilled because only registered


users can access the system.
FR 1

Priority

High

1.7.3. Forgot password (User/ Business owner)


Identifier

FR 3

Title

Forgot password

Requirement
Source

User needs to retrieve their password in case of forgetting.


Team members, Supervisor

Rationale

Dependencies

User might forget his password, and without password he


cannot use the system
This requirement must be fulfilled because only registered
users can access the system.
FR 2

Priority

High

Restrictions and Risk

1.7.4. Update profile (User)

Identifier

FR 4

Title

update Profile Information

Requirement

System shall allow user to update profile information which


was given during account creation process.
Team members, Supervisor

Source
Rationale
Restrictions and Risk
Dependencies

User might enter wrong data unintentionally. So system


should provide facility of changing data of user.
None
FR 2

Priority

Medium

1.7.5. Search business (User/Business owner)


Identifier

FR 5

Title

Search business

Requirement
Source

System shall allow user to search businesses in the system.


Team members, Supervisor

Rationale
Restrictions and Risk
Dependencies

This requirement is needed as the user might want to search


business in order to view business page
None
FR 2

Priority

Medium

1.7.6. View business page (User)


Identifier

FR 6

Title

View business page

Requirement

System shall allow user to click on the business page and


once it is done, business page shall be open.
Team members, Supervisor

Source
Rationale

Dependencies

This requirement is needed, as user wants to know about a


business, its rating and reviews, its photos.
This requirement must be fulfilled without it user cannot
write a review
None

Priority

High

Restrictions and Risk

1.7.7. Read review (User/Business owner)


Identifier

FR 7

Title

Read review

Requirement
Source

The system shall allow user to read reviews


Team members, Supervisor

Rationale

Dependencies

This requirement is needed, as user wants to read reviews


about a business.
This requirement must be fulfilled without it, user shall not
know have an idea, what public thinks about a particular
business.
None

Priority

High

Restrictions and Risk

1.7.8. Write review (User)


Identifier

FR 8

Title

Write review

Requirement

The system shall allow user to write review and give rating
from five stars
Team members, Supervisor

Source
Rationale
Restrictions and Risk
Dependencies

This requirement is basically the fundamental requirement


of our system.
This requirement must be fulfilled.
FR 2

Priority

High

1.7.9. Edit review (User)


Identifier

FR 9

Title

Edit review

Requirement

The system shall allow user to edit review which is added


before
Team members, Supervisor

Source
Rationale
Restrictions and Risk

This requirement is needed, as user wants to give his review


but want to change his already posted review.
This requirement must be fulfilled as user enter wrong
review unintentionally

Dependencies

FR 2, FR 8

Priority

Medium

1.7.10. Delete review (User/ Admin)


Identifier

FR 10

Title

Delete review

Requirement
Source

The system shall allow user to delete review


Team members, Supervisor

Rationale
Restrictions and Risk
Dependencies

This requirement is needed, as user might want to remove


his review on the business page.
None
FR 2, FR 8

Priority

Medium

1.7.11. Report review (User)


Identifier

FR 11

Title

Report review

Requirement
Source

The system shall allow user to report a review.


Team members, Supervisor

Rationale
Restrictions and Risk
Dependencies

This requirement is neededas in case the review contains


false information about a business
None
FR 2

Priority

Low

1.7.12. Add photos (User/ Business owner)


Identifier

FR 12

Title

Add photos

Requirement

The system shall allow user to add photos related to a


business.
Team members, Supervisor

Source
Rationale

This requirement is neededas people want to see photos of


business.

Restrictions and Risk


Dependencies

None
FR 2

Priority

Medium

1.7.13. Delete photos (User/ Business owner)


Identifier

FR 13

Title

Delete product photos

Requirement
Source

The system shall allow user to delete business photos.


Team members, Supervisor

Rationale
Restrictions and Risk
Dependencies

This requirement is neededas in case the user consider the


uploaded photo as inappropriate.
None
FR 2, FR 11

Priority

Medium

1.7.14. Make reservation (User)


Identifier

FR 14

Title

Make reservation

Requirement
Source

The system shall allow user to reserve a table in advance.


Team members, Supervisor

Rationale
Restrictions and Risk
Dependencies

This requirement is neededas in case the user does not want


to stand in line and prefer online reservation
None
FR 2

Priority

Medium

1.7.15. Add business page (User)


Identifier

FR 15

Title

Add business page

Requirement

The system shall allow user to add his business page if he


does not find it after searching the business.
Team members, Supervisor

Source
Rationale
Restrictions and Risk

This requirement is neededas in case system does not have


business page.
None

Dependencies

FR 2

Priority

Medium

1.7.16. View Messages (User)


Identifier

FR 16

Title

View messages

Requirement

The system shall allow user to message from business


owners.
Team members, Supervisor

Source
Rationale

Restrictions and Risk


Dependencies

This requirement is neededas in case a customer is not


satisfied with the business and he gives a harsh review, so
on the behalf of the business an owner can respond his
review or message the reviewer privately.
None
FR 2, FR 8

Priority

Medium

1.7.17. Deactivate Account (User/ Business owner)


Identifier

FR 17

Title

Deactivate Account

Requirement

The system shall allow the user to deactivate his/her


account from system if he/she is not satisfied with our
system.
None

Source
Rationale
Restrictions and Risk
Dependencies

User might want to deactivate his/her account for any


reason.
None
FR 2

Priority

Medium

1.7.18. Add user (Admin)


Identifier

FR 18

Title

Add User

Requirement

The system shall allow the administrator to add user and


give special privileges to the users if required

Source

Team members, supervisor

Rationale
Restrictions and Risk
Dependencies

This requirement is needed as the admin might want to add


users who can have some special privileges.
None
FR 2

Priority

High

1.7.19. Claim business page (User)


Identifier
Title

FR 19
Claim business page

Requirement

System shall provide a platform where owner can log in after


claiming his business page.

Source
Rationale
Restrictions and Risk

Team members, supervisor


Business owner might want to claim his business.
Requirement must be fulfilled otherwise business owners
cannot use the system.
None
High

Dependencies
Priority

1.7.20. Search user (Admin)


Identifier

FR 20

Title

Search user

Requirement
Source

The system shall allow user to search user in the system


Team members, supervisor

Rationale
Restrictions and Risk
Dependencies

In order to view information about user, this requirement is


needed.
None
FR 2

Priority

Medium

1.7.21. Edit user information (Admin)


Identifier

FR 21

Title

Edit User Information

Requirement
Source
Rationale

The system shall allow the administrator to edit the


information of any user if required.
Team members, supervisor

Restrictions and Risk


Dependencies

This requirement is needed as the admin may give or take


back some special privileges from users.
None
FR 2

Priority

High

1.7.22. Delete User Account (Admin)


Identifier

FR 22

Title

Delete User Account

Requirement

The system shall allow the Administrator to delete account


of any user form the system if required.
Team members, supervisor

Source
Rationale
Restrictions and Risk
Dependencies

This requirement is needed as the admin might want to


delete account of users, if necessary.
None
FR 2

Priority

Medium

1.7.23. Delete review (Admin, Business owner)


Identifier

FR 23

Title
Requirement

Delete review
The system shall allow Admin to delete any false or report
review.
Team members, Supervisor

Source
Rationale

Dependencies

This requirement is neededas in case someone tries to post


fake or unauthentic reviews about a business
This requirement must be fulfilled, without it people can
post threats or hate speech.
FR 2

Priority

High

Restrictions and Risk

1.7.24. Edit business information (Business owner)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk
Dependencies
Priority

FR 24
Edit business information
System shall provide a platform where owner can log in
after claiming his business page and he shall be able to edit
his business information
Team members , supervisor
Business owner might want to change business
information.
Requirement must be fulfilled as it is possible that business
information might be changed in future.
FR 2
High

1.7.25. Receive notifications (Admin)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk
Dependencies
Priority

FR 25
Receive notifications
System should allow the owner to receive notifications
whenever a user claim his business page.
Team members , supervisor
This requirement is necessary without it admin cannot
approve a business owner..
Requirement must be fulfilled otherwise a business owner
could not run his business page.
FR 2
High

1.7.26. View notifications (Admin)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk
Dependencies
Priority

FR 26
View notifications
System should allow the owner to View received
notifications.
Team members , supervisor
This requirement is necessary without it admin cannot
approve a business owner.
Requirement must be fulfilled otherwise a business owner
could not run his business page.
FR 2, FR 25
High

1.7.27. Add schedule (Business owner)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk
Dependencies
Priority

FR 27
Add schedule
System should allow the owner to add schedule of his
business
Team members , supervisor
Users might want to now the opening and closing time of
business.
None
FR 2
Medium

1.7.28. Add products (Business owner)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk
Dependencies
Priority

FR 28
Add product
System should allow the owner to add products from his
business
Team members , supervisor
User always interested in the products ratings and reviews
over them
Without products, user cannot give his review on
businesss products. So this requirement must be fulfilled.
FR 2
Medium

1.7.29. Edit/update product details (Business owner)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk
Dependencies
Priority

FR 29
Edit/ update product
System should allow the owner to edit/ update product in
his business
Team members , supervisor
This requirement is needed as in case the product
description is false.
This requirement must be fulfilled as owner can enter
wrong description unintentionally.
FR 2
Medium

1.7.30. Delete product (Business owner)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk
Dependencies
Priority

FR 30
Delete product
System should allow the owner to delete products from his
business
Team members, supervisor
This requirement is needed as business owner might want
to delete the product
None
FR 2
Med

1.7.31. View products (User, Business owner)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk
Dependencies
Priority

FR 31
View product
System should allow the owner to product along with its
details
Team members, supervisor
This requirement is needed as business owner might want
to have a look at its products or user might want to give a
review on a product.
None
FR 2
Med

1.7.32. Add packages (Business owner)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk

Dependencies
Priority

FR 32
Add packages
System should allow the owner to add packages for users
Team members, supervisor
This requirement is needed as business owner might want
give packages for those users who are seeking it for
organizing a particular event
This requirement must be fulfilled without it user will
spent hours of time on internet about different packages by
different businesses. Plus user shall have choice to choose
the best package according to its rating or his budget.
FR 2
High

1.7.33. Respond to reviews (Business owner)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk
Dependencies
Priority

FR 33
Respond to reviews
System should allow the owner to respond to reviews.
Team members, supervisor
This requirement is needed as business owner might want
to interact with the end user.
This requirement must be fulfilled as it will help the
business owner to improve his business by responding to
reviews personally.
FR 2
High

1.7.34. View business statistics (Business owner)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk
Dependencies
Priority

FR 34
View business statistics
System should allow the owner to view the business
statistics.
Team members, supervisor
This requirement is needed as business owner might want
to view his business performance.
This requirement must be fulfilled without it owner will
not have an idea how successful his business is running
FR 2
High

1.7.35. View page (Business owner)


Identifier

FR 35

Title

View page

Requirement

System shall allow the owner to view his own business page
on a single click on view page link available on his
dashboard.
Team members, Supervisor

Source
Rationale
Restrictions and Risk
Dependencies

This requirement is needed, as owner might want to see the


updated business information on his business page.
None
FR 24

Priority

Low

1.7.36. Search Packages (User)


Identifier

FR 36

Title

Search packages

Requirement
Source

System shall allow user to search packages


Team members, Supervisor

Rationale

Dependencies

This requirement is needed as the user might want to search


packages related to a particular event and contact the owner.
This requirement must be fulfilled as user shall first search
packages and then he shall be able to make a customize
package.
FR 2

Priority

High

Restrictions and Risk

1.7.37. Log out (User, Business owner, Admin)


Identifier
Title
Requirement
Source
Rationale
Restrictions and Risk
Dependencies
Priority

3.3.

FR 37
Logout
System should allow the user to log out from the system
once he done his work.
Team members, supervisor
This requirement is needed in order to end the session.
This requirement must be fulfilled without it user will not
be able to leave the web application.
FR 2
High

Non-Functional Requirements

1.8.1. Usability

Understandability

Graphical User Interface (e.g. menus, buttons, and pages) will be easy to understand because
we will follow Human computer interaction rules of usability (human factors) to develop this
website. The main interface of the website will be easy for user to accomplish their basic task
for first time

Efficiency

Once user has learned about the system through his interaction, he can perform tasks quickly as
Compared to native users who will explore things first.

Operability

The interface of system will be consistent. If error occurs it will notify users about the error by
Popping an error message window. For example in case of invalid username and password
system will give a pop-up error message to user like invalid username or password.

1.8.2. Reliability

This system is available 24/7 unless and until database fails.

If Database fails the system will no more remain operate able but we have a backup of
the database which will not take more than 12-16 hours to link with the system.

Mean time of repairing of system is about 12-16 hours.

Accuracy will be specified with the user points which will be given by them after the
system recommend field on the basis of their input.

Critical bug can be categorized as a complete loss of data which can be done by attackers
as a result of which system will not be operate able unless and until backup database is
linked with the system.

Less than 40 seconds for 90% of all non-database access functions.

Less than 30 seconds for 60% of all database access functions.

In case of an exceptional event Errors will be trapped descriptive error messages will be
conveyed to the user.

1.8.3. Performance

The system shall accommodate unlimited users accounts.

The system shall scale correctly to support high traffic load.

The system shall process major functionalities automatically.

Responses to queries shall take no longer than 2-5 seconds to load onto the screen after
the user submits the query.

1.8.4. Supportability

Supportability will be enhanced by backup database.

We will be using rule engine so even a non-technical person will be able to maintain it.

Rules will be written in a way that even a non-technical person can understand and
modify it.

We will be using standard Java naming conventions which will increase the readability of
our code and make it easier to maintain.

1.8.5. Design Constraints


The design constraints of our system are as follows

SoftwareLanguage

The application will be developed using XML and JAVA language.

DevelopmentTools

Any version of eclipse, NetBeans will be used by using Yii framework as development tool.

Standards

The application will be able to fully functional on all browsers and all android devices

4.
4.1.

Chapter 4: Design and Architecture

System Architecture

The Following Diagram shows the Top view or High level View of the system.

Figure2ArchitectureDiagram

4.2.

System Design

As system design varies from system to system, therefore you are required to explore which
design pattern is suitable for your system. For guidelines an IEEE Recommended Practice for
Software Design Descriptions (section 5 and 6) is provided with this template.
5.2.1

ActivityDiagram(Web)

Figure3SearchUser(Admin)

Figure4DeleteReview(Admin)

Figure5ViewUser(Admin)

Figure6DeleteUser(Admin)

Figure7EditBusinessInformation(Owner)

Figure8AddSchedule(Owner)

Figure9AddProduct(Owner)

Figure10DeleteProduct(Owner)

Figure11AddPackages(Owner)

Figure12SearchBusiness(User)

Figure13WriteReview(User)

Figure14AddPhotos(User)

Figure15ReportReview(User)

Figure16MakeReservation(User)

Figure17Utilityfinder(User)

5.2.1.1.1

Activity diagram (Android)

Figure18login(Login)

Figure19viewbusiness(User)

Figure20viewbusinessdetail(User)

Figure21Categoryselection(User)

5.2.2

ClassDiagram

Figure22ClassdiagramBusinessAdvisor

5.2.3

SequenceDiagram

5.2.3.1 Sequence diagram for web and android application

Figure23UpdateProfile(User)

Figure24SearchBusiness(User)

Figure25ViewBusinessPage(User)

Figure26WriteReview(User)

Figure27Update(user)andDeletereview(user/admin)

Figure28ReportReview(User/businessOwner)

Figure29Managephoto(User/businessOwner)

Figure30Makereservation(User)

Figure31SearchPackage(User)

Figure32ViewMessage(User)

Figure33AddpageandClaimbusiness(User)

Figure34search,add,update,deleteandview(Admin)

Figure35ViewNotification(Admin)

Figure36ManageBusinessPage(BusinessOwner)

Figure37RespondReviews(Businessowner)

5.2.4

EntityRelationshipDiagram

6.

References

1. Yelp,
Chicago
Restaurants,
Dentists,
Bars,
Beauty
Salons,
Doctors,
http://www.yelp.com/chicago, 10/7/2015.
2. Local.com, local.com-search for local businesses, events, and coupons near you,
http://www.local.com/, 10/7/2015.

You might also like