You are on page 1of 23

Software Requirement Specifications

Tourist Buddy

Version: [1]

Project Code C 01
Supervisor Sir Abul-Rahman
Co Supervisor Sir Muhammad Nadeem

Project Team Yousuf Tanvir Kazi


Junaid
Ammar Muhammad Ghazali

Submission Date
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

[Instructions]
- No section of template should be deleted. You can write ‘Not applicable’ if a
section is not applicable to your project. But all sections must exist in the final
document.
- All comments/examples mentioned in square brackets ([]) are in the template for
explanation purposes and must be replaced / removed in final document.
- This’ Instruction’ section should also be removed in final document.
- MS-Word Reviewing feature must be used to get the document reviewed by
supervisors or co-supervisors.

Page 2 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

Document History
[Revision history will be maintained to keep a track of changes done by anyone in the document.]
Version Name of Person Date Description of change
Yousuf 22/09/2017 Document Created
Yousuf 22/10/2017 Document Revised
Ammar,Yousuf 23/10/2017 Document Edited
Ammar,Junaid 24/10/2017 Document Revised
Junaid 24/10/2017 Use cases added and Document
Revised.

Page 3 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

Distribution List
[Following table will contain list of people whom the document will be distributed after every sign-off]

Name Role
Sir Abul-Rahman Supervisor
Sir Muhammad Nadeem Co- Supervisor

Page 4 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

Document Sign-Off
[Following table will contain sign-off details of document. Once the document is prepared and revised, this
should be signed-off by the sign-off authority.
Any subsequent changes in the document after the first sign-off should again get a formal sign-off by the
authorities.]

Version Sign-off Authority Sign-off Date


1.1 Sir Muhammad Nadeem
1.2
1.3
1.4
1.5

Page 5 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

Table of Contents

1. INTRODUCTION ...................................................................................................................................... 7
1.1. Purpose of Document .............................................................................................................. 7
1.2. Intended Audience .................................................................................................................. 7
1.3 Abbreviations ………………………………………………………………………………………...7
1.4. Document Convention ............................................................................................................. 7
2. OVERALL SYSTEM DESCRIPTION ............................................................................................................ 8
2.1. Project Background ................................................................................................................. 8
2.2. Project Scope .......................................................................................................................... 8
2.3. Not In Scope ............................................................................................................................ 8
2.4. Project Objectives ................................................................................................................... 8
2.5. Stakeholders............................................................................................................................ 8
2.6. Operating Environment ........................................................................................................... 8
2.7. System Constraints ................................................................................................................. 9
2.8. Assumptions & Dependencies ................................................................................................ 9
3. EXTERNAL INTERFACE REQUIREMENTS ................................................................................................. 10
3.1. Hardware Interfaces .............................................................................................................. 10
3.2. Software Interfaces ............................................................................................................... 10
3.3. Communications Interfaces ..................................................... Error! Bookmark not defined.
4. FUNCTIONAL REQUIREMENTS ............................................................................................................... 11
4.1. FUNCTIONAL HIERARCHY .............................................................................................................. 11
4.2. Use Cases ............................................................................................................................. 13
4.2.1. [Title of use case] .................................................................... Error! Bookmark not defined.
5. NON-FUNCTIONAL REQUIREMENTS ....................................................................................................... 21
5.1. Performance Requirements .................................................................................................. 21
5.2. Safety Requirements ............................................................................................................. 21
5.3. Security Requirements .......................................................................................................... 21
5.4. User Documentation .............................................................................................................. 21
6. REFERENCES ...................................................................................................................................... 22
7. APPENDICES ....................................................................................................................................... 23

Page 6 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

1. Introduction
1.1 Purpose of Document
This SRS is for our project Tourist Management system version 1.0. This SRS shall discuss
about all the major and minor system requirements. Software requirements specification permits
a rigorous assessment of requirements before design can begin and reduces later redesign. It also
provides a realistic basis for estimating product costs, risks, and schedules. Used appropriately,
software requirements specifications can help prevent software project failure.

1.2 Intended Audience


This document is intended for developers, project supervisors, testers, users and documentation
writers. The SRS contains all the description and requirements of software before the actual
software is implemented. The document should be read in a sequence to fully understand the
project requirements. Developers can ignore the Introduction as they deem fit.

1.3 Abbreviations
ML=Machine Learning
Strax = Swift Transaction.

1.4 Document Convention


Font: - Times New Roman
Heading Font Size: - 16 with Bold
Subheading Font Size: - 12 with Bold
Paragraph Font Size: - 12

Page 7 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

2 Overall System Description


2.1 Project Background
We looked at the way the current tourist M.S system is implemented and thought in what ways it
could be different that’s why we strived to came up with this idea since many tourist would find a
meaning less experience after their booking but we want them to keep remembering of us
whenever they think of a vacation.

2.2 Project Scope


The system contains two views and a separate subsystem. One of the view is for the
authorized staff i.e. management and the other is for the user/customer one for end users.
The boundaries of the system are:
a. User must have installed application on the pc/laptop.
b. User must be a either customer or employee of the tourist company to have the
android app installed.
c. User must sign-up before using services.
d. User must follow the instruction guide before using the application, instruction guide
will be helpful.
The features of the system are:
Refer to section 4.1, it describes the functionalities of the system in detail.

2.3 Not In Scope


The system is only limited to the tourist management field strictly and will not work with any
other,
2.4 Project Objectives
The objective of project is to provide ease to the tourist company in their management of all
the customers and their booking etc. Furthermore, providing customers with a utility app to
enjoy their trip to the fullest.

2.5 Stakeholders
Primary: Developers of the system, the tourist company and the customers.
Secondary: Administrator, Income Tax(on the firm).

2.6 Operating Environment


The system requires a Mobile Handset (Android) for the standalone app and will may require
internet connection at times.
The main system will compatible with Windows 7 and onwards.

Page 8 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

2.7 System Constraints


Software constraints
Python dependencies must be supported and configured in the target system.

Hardware constraints
Programmer must at least have a normal usage pc for the main desktop app and a android
smartphone for the standalone app.
Cultural constraints (includes language etc.)
N/A.

Legal constraints
Tourist’s personal information should be handled carefully without any leaks

Environmental constraints: N/A

User constraints
The user should have basic knowledge of how to use the system’s database and knowledge
on how to use smartphone for the standalone app.

2.8 Assumptions & Dependencies


Basic password authentication based security mechanism will be used to protect application
from unauthorized access; database will be maintained to prevent from redundant data.
Furthermore, ML features of the app is dependent upon the memory of the smartphone so may
or may not work correctly on some old phone. Moreover, our translator feature is highly
difficult and may not be work as expected sometimes.

Page 9 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

3 External Interface Requirements


3.1 Hardware Interfaces
We need two physical devices i) Andriod phone ii) laptop/pc. The purpose of using mobile
device is login to account after booking any tourist package .User have multiple options to
select like shazam for images, styling of image, tag and captioning generator. Laptop/pc will
use by admin. The purpose of using Laptop/pc is to booking, adding hotel and etc.
Required devices are: An Android Handset on which user will use application and one
Laptops/PCs required for admin.

3.2 Software Interfaces


For Android Application development Android Studio and tensor flow (machine learning
library by Google) will be required. For the pc process IDLE (PythonGUI) and anaconda will
be needed. QT will also be required for the GUI.
3.3 Communication Interfaces
The Android Mobile device is required to be connected with Wifi/Data Package for some
features.

Page 10 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

4 Functional Requirements
4.1 Functional Hierarchy
The Tourist Buddy system is decomposed into main three modules/components.
a. Customer Side (User Application)
b. Administration Side
c. Stand-Alone mobile app

Following part of the section briefly describe the above listed modules.
Customer Side - Friendly Environment (Android App):
Login (User Authentication)
After booking for the tour the tour buddy will provide them an account for signing into the
App. After user Authentication user can have multiple options for checking their trip, places
etc.

Sign In to Application
User will be able to sign in to the application via authorized User ID and Password provided
given by Administration of Tour Buddy.

Status of My Trip
User will be able to view the of his trip after login into the application provided by the tour
buddy. User can check their Hotels reservation, next spot to visits and can be able to edit the
trip.

Packages/Promotions
User can be able to view all the packages provided by the tour buddy and also different
promotions on the Visa cards so that Customer can have a Trip at a low price.

Views
User can be able to see the different views.
Reviews, Facilities provided, Tour Availability, locations etc.

Others
User will be able to view other details containing Reviews aboyt Tour Buddy, complain,
Reviews and Ratings etc.
Page 11 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

Administration Side:
Management
Admin will manage everything for the Customer Records. Admin will also take care of the
reservations, Add or delete Trips, FAQ’s etc.
Add Trip
Once Customer want to have a tour. Admin will Add a trip for him according to the Customers
demand and plan the whole trip according to their requirements.
Add Hotel
Once Adding the trip, Admin will Add the hotel to Customers Trip. And later on Admin can
also update the list according to the Customers requirement.
View Trips
Admin can manage and view the whole trip of the Customer. Admin use View trip for the
updates about the trip.
Add new Service
Admin has the option to add the new services for the customers. And to manage their trips
providing the new Services about the Query’s, Help, Receiving complains etc.

Mobile App:
This part is basically machine learning part and it is somewhat new because we are
providing some tools or services to our booked customers so that they could enjoy
their Traveling with free mind. Which includes

 Search historical and famous places by image

 Edit your image by neural style

 Generate captions for social media

 Translate one language to another language by taking picture.

Page 12 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

4.2 Use Cases

Page 13 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

4.2.1 Use Case :- User-Authentication


Use case Id 01: User-Authentication
Use case Id: 01
Actors: User
Feature:Sign-In
Pre-condition: User must have travel agent’s id and password
Scenarios
Step# Action Software Reaction
1. User will fill login credentials. User will be redirected to main screen.
2.

Alternate Scenarios:
1a: User will asked to re-enter fields.

2a: User will asked to re-set for password.

Post Conditions
Step# Description
01 After successfully login to the system user will be able to use application.

Use Case Cross referenced UC-01

Page 14 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

4.2.2 Use Case: - Makes booking


Use case Id 02: Makes booking
Use case Id: 02
Actors: User/Customer
Feature: booking
Pre-condition: User must be successfully logged in to the application.

Scenarios
Step# Action Software Reaction
1. User ask about information
regarding booking
2. User enter information regarding
customer
3. system shows booking types
4. Customer select booking type

5. User shows price and other


information
6. Customer choose one of the given
package
7. User book that package
Alternate Scenarios:
1a: if system failed to show any booking type , shows booking type manually

2a: if user could not book any package contact administrator.

Post Conditions
Step# Description
01 Customer will be able to access mobile app.

Use Case Cross referenced UC-02

Page 15 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

4.2.3 Use Case: -Add trip


Use case Id 03: Add trip
Use case Id: 03
Actors: User
Feature: adding trips
Pre-condition: User must be logged in system
Scenarios
Step# Action Software Reaction
1. User select option add trip
2. Enter information related trip
3. Updates database
Alternate Scenarios:
1a:if add trip does not work, then refresh the pages or contact administrator

2a: if information is invalid ,raise error

Post Conditions
Step# Description
01 New trip successfully added

Use Case Cross referenced

Page 16 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

4.2.4 Use Case: -Neural style


Use case Id 04: Neural style
Use case Id: 04
Actors: Customer
Feature: add new styles to pictures
Pre-condition: Customer must logged in
Scenarios
Step# Action
1. Customer select option of neural style
2. Customer choose upload option or take option
3. Customer select style to apply
4. Customer select apply option

Alternate Scenarios:
1a: if user don’t have any pictures in gallery, open camera.

2a:if style takes too much time, then terminate the process

Post Conditions
Step# Description
01 A style will successfully apply on picture

Use Case Cross referenced

Page 17 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

4.2.5 Use Case: - Shazam for images


Use case Id 05: shazam for images
Use case Id: 05
Actors: Customer
Feature: search about images
Pre-condition: User must be logged in to the application.
Scenarios
Step# Action
1. Customer open shazam for images
2. Customer select images
3. App will show information related to images
Alternate Scenarios:
1a:if app fails to show any information ,then show no result found

Post Conditions
Step# Description
01 Information related images shown to images

Use Case Cross referenced

Page 18 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

4.2.6 Use Case: - Customer information


Use case Id 06: Customer information
Use case Id: 06
Actors: User
Feature: shows Customer information
Pre-condition: User must be logged in system
Scenarios
Step# Action
1. User enter regarding information about Customer
2. System shows information about Customer

Alternate Scenarios
1a: if system does not find any information related customer ,show Customer does not exist

2a:

Post Conditions
Step# Description
01 User check previous records and current statistics of customer

Use Case Cross referenced

Page 19 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

4.2.7 Use Case: -ADD BOOKING PACKAGE


Use case Id 07: add booking package
Use case Id: 07
Actors: user
Feature: add new package of hotel ,complete trips and etc
Pre-condition: User must be logged into application.
Scenarios
Step# Action
1. User select option of updating
2. User will select the add type option such as add hotel package, add combo pacakeg
3. User enter information related booking package
4. User select update option
Alternate Scenarios:
1a: if system does not show any option , contact administrator

Post Conditions
Step# Description
01 A new booking package will successfully add

Use Case Cross referenced

Page 20 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

5 Non-functional Requirements
5.1 Performance Requirements
The desktop app shall take initial load time depending on the hardware of the laptop/pc.
The performance of the android application shall also depend upon the hardware of the smartphone.

5.2 Safety Requirements


Critical Data
The information contained in the database will be critical since it belongs to the customer hence
must be properly protected
Server Crash/Failed/Overwhelmed
Too many request from the desktop at one time might cause the system to be failed, the o.s
should behave accordingly with the error.
Database Error
The system should generate error, if error occurred.
Application might failed to respond
Application update should be checked at monthly based, or the system should generate
notification if there is any update about application.

5.3 Security Requirements


The main security concern for end users is user authentication, hence system will use login-
authentication mechanism for security purpose.
The administrator of this system register each user by allotting username and password.

5.4 User Documentation


User guide will be provided to the end user for ease of the usage of application.

Page 21 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

6 References
[1]. https://www.qt.io/
[2]. https://www.tensorflow.org/
[3]. http://pandas.pydata.org/pandas-docs/stable/cookbook.html

Page 22 of 23
<CS491 Project-I> Software Requirements Specifications <Version 1.5>

6 Appendices
Appendix A: Project proposal (signed by supervisor)

Page 23 of 23

You might also like