Professional Documents
Culture Documents
IT A THOUSAND TIMES.”
By
Submitted To
User can sign up or login to the application. While signing up users must specify
themselves as service providers or tourists.
If a user sign up as tourist, he/she can view and post pictures and videos in gallery, can
share and read blog posts, explore the services provided at various tourist spots, avail
these services, pay online for them, and book them ahead of time. Users can contact
service providers, they are provided facilities to send text messages, make voice and video
call, schedule meeting and send emails within the application. They don’t need to use third
party applications for above mentioned operations. Users can also cancel or modify any
bookings and payment they made. They can rate the reliability and quality of the services
of a specific service provider.
If a user sign up as service provider, he must sign a contract to work with our application.
After sign up he/she can offer different services. To add a service, different categories
are provided. User first select a specific category and then provide all the required
information to add service successfully. User have the capability to contact tourists, send
auto-generated emails, and offer special discounts to particular tourists. They can also
utilize gallery and blog post features.
Application contains a hierarchy of the UI. All the services are categorized by the
tourism spots they belong to. All the services related to a specific spot are further
categorized based on their nature. For example hotels and restaurants are hospitality
services. All the extra information about each spot and service is listed under know-how
section. Know-how section of a spot may contain road maps, details of petrol pumps and toll
plazas on the way. And know-how section of a hotel may contain information about the
number of rooms and availability of rooms in that hotel.
SUPPLEMENTARY SPECIFICATIONS
Usability
Application must be user friendly, and have an aesthetic look and feel.
Color choice must be user friendly to special users too. Like color blind users.
Screen reader facility must be provided to aid users who are blind.
Application must support different languages recognized globally to facilitate all type of
users and serve across the globe.
Proper documentation and 24/7 active help must be provided to all users at the comfort of
their couch.
Simple, elegant and consistent software design must be used in the application following a
rule “What you see is what you get.”
Reliability
Application must be reliable and respond in time.
Users must be able to recover or reset their password after proper authentication.
User must be able to recover their account in case of failure and back up their data.
Service providers provided information must be verified and reliable. All the information
must be verified before posting and sharing in gallery and blog posts.
There must be policy to avoid scams in domain rules which all the tourists and service
providers must abide by.
Good error handling is essential part of reliability. All possible errors must be handled
properly.
There must be systematic way to handle the failure of the system on which our application
depend.
Performance
Application response time, recovery time and throughput must be optimal.
Application memory consumption and RAM utilization must be limited and optimized. It
must consume the system resources efficiently.
Application must be able to work with unstable connection and less memory and other
resources.
Application speed must be efficient enough to boost the user experience. It should not lag
behind or become unresponsive.
Application must be implemented with efficient algorithms to facilitate fast searches and
large data volume handling.
Supportability
Application must be able to accommodate all the changes that may occur in future and
adapt with the need of hour.
Application must handle the growing demand and traffic with the passage of time.
Application must me maintainable product, all standard and best practices must be
followed while production.
Application must be configurable, user must be able to easily personalize and modify
application features according to their choice.
Application must be easily installable in all environment. I.e. desktop, iOS and android
Other Requirements (+)
Implementation
Application must support all the operating systems including windows, Linux, android and
iOS etc.
Application use cloud based Microsoft Azure database for storing and managing
information.
Hardware interfaces
Application must be useable without interact but user can interact with other only via
network.
Software interfaces
Application uses following different API to facilitate online payments and communication.
Both tourists and service providers can customize UI. They can change theme, look
and feel, and color scheme of the UI.
DOMAIN RULES
RISK ANALYSIS
SECURITY
Our system will deal with personal user data such as Name, ID card number,
address, nationality, bank account details, transactions details etc. The system
must ensure the ongoing safe and secure use of private data while minimizing
exposure risk. Our system must be secure enough to protect that data from any
unauthorized source/user. Also system must be ready to deal with unwanted
cyberattacks.
RELIABLITY
The system must be designed in such a way that in case of crash, it must be
recovered as soon as possible else it would cause great discomfort for the users.
The wait and uncertainly will cost us the confidence of our users.
MAINTENANCE
During maintenance of our system, the users must not be affected. It would cause
distress and users would want to move to alternatives. We need to address this
risk as well.
MARKET COMPETITON
When a software has a monopoly, everyone would be, kind of, forced to use that
one. But once it has competitors, users would have options. Then the software will
need to have something to attract users. As the competitors increase, it becomes
more and more difficult. In the inception phase, we need to address this factor.
Our software gives services for tour management as well as has features of a
social media application, such as posting and sharing blog, videos, pictures etc. This
distinguishes our product from that of our competitors.
FEASIBILITY ANALYSIS
Organization
We have a sufficient commitment to this project (including management, testers,
QA, and other external but involved parties) team.
This is the largest project we have ever attempted.
We will follow a blend of Scrum and XP as unified process modeling. That is a well-
defined process for software engineering. To capture and manage requirements, we
plan to have a public survey.
Funding/Financial
We have the funding in place to complete project.
We have allocated funds for training and mentoring.
There are no budget limitations such that the system must be delivered at a fixed
cost or be subject to cancellation.
We have accurate cost estimates.
People
Enough people are available.
We have appropriate skills and experience.
We have worked together before.
We believe the project can succeed.
We have user representatives available for reviews.
We have domain experts available for assistance.
Time
The schedule is realistic.
Functionality can be scope-managed to meet schedules.
Delivery date is of intermediated criticality. We have a bit flexibility for it and can
manage our project well.
We have the time to "do it right". We have proper time and everything scheduled
well. So, we can do a proper design and analysis. There is no need for rush to code.
Technological risks
We have planned to use kotlin, which is currently, one of the most popular the
language for android development.
The transaction volumes in the requirements are reasonable. If the application
turns out to be successful the transaction volume may increase drastic
We have transaction rate credible estimates, which are quite optimistic?
The data volumes for application are reasonable. They can be held on currently
available systems.
We have some unusual and challenging technical requirements that require the
project team to tackle problems with which they are unfamiliar. These include the
development of the auto monitoring system of information and content according to
the standard criteria and rules.
Success is dependent on few relatively new products like monitoring system, but it
uses most of the existing services or technologies, existing proven hardware,
software, and techniques like audio video calling APIs and scrum, etc.
There are external dependencies on interfaces to other systems, including audio,
video calling APIs, online meet APIs and auto email. Most of the required interfaces
already exists.
There are some availability and security requirements which are extremely
inflexible. System must not be unavailable or unresponsive for a bit larger span of
time. i.e. few hours. System security is highly inflexible. It must be very rigid and
reliable.
There may be users of the system that are inexperienced with the type of system
being developed. But a help & support feature can cop up with this problem.
There is a minor chance of increased risk due to the size or complexity of the
application that may occur due to the increasing requirements.
There is an important requirement for national language support. Also, some famous
languages must be supported by application to facilitate internationalization of
application.
This system is possible to design, implement, and run. Unlike Some systems which
are just too huge or complex to ever work properly, it can operate smoothly.
Users can sign up for service provider or tourist category. Service provider’s signup a
contract while signing up.
Users can ask for help any time. A documentation and 24/7 online support is provided to
users.
Service providers can add their services, modify them, offer special discounts to
particular users, and communicate with users via audio, video calls, emails and online
meeting. They can schedule meetings ahead of time.
Service providers can send auto generated emails to users. They can share photos and
videos in gallery and post in blogposts section.
Tourists can sign up and login to the system to avail different service. They can explore
the services provided, book them, rate them, leave a feedback, cancel the booking, pay
online, and communicate with the service providers at comfort of their couch.
Tourists can view pictures and videos, read blog posts and share their own content too.
Admins and moderators provide online help and supports to all sort of users. They validate
and monitor the pictures, videos and all sort of content shared on the application.
Users can reset and recover their passwords and their accounts in case of any failure.
Users can personalize appearance, customize look and feel, and change the language
according to their own ease.
Screen reader facility is provided for blind users and color theme is used keeping in view
the ease of color blind users too.
Third party APIs are used to provide services like audio and video calling, scheduling and
organizing online meetings, send auto generated emails and online payment authorizations.
Know-how section must contain all worth mentioning information about a particular spot or
service. It must be maintained well and updated regularly.
USE CASES
Black box use cases:
Service providers also have major concern with sign up and login. They have to sign up successfully to
offer their services after signing the contract.
Admins & moderators monitor the contract signing process of service providers at the time of sign up.
They negotiate with service providers about contract if service providers have any reservations.
User authentication system verifies the user is not a scammer via captcha and password
authentications. If a user is found suspicious it notify to admins & moderators panel.
Pre Conditions:
For login, user must have signed up before.
For sign up, user must be an eligible person having complete knowledge of his role. Either he wants to
sign up as tourists or service provider.
User must agree to provide all required information and sign contract in case if he is a service provider.
To sign up users are required to provide an email, password, username and specify whether he is tourist
or service provider.
If user is a tourist he can sign up successfully by specifying a unique email id, username and valid
password.
If user is a service provider a contact is presented to the user. User have to agree with it and sign the
agreement to continue.
If user signs the agreement, he can sign up by specifying a unique email id, username and password.
Before sign up, captcha verification is carried out to prevent cyber scams.
If user already have an account, he can log in by providing password and email or username.
If user reenters an email validate it and allow sign up if email is unique else generate an error message
again.
Ask user to login with that username if user have an existing account. Direct him to login page if he
selects to login.
Otherwise suggest some suitable available usernames to user. And ask to reenter username.
Revalidate the username, generate error if invalid. Allow signup if unique username is entered.
If user enters a strong password or use a suggested password allow sign up else generate error.
2d: Service provider don’t agree with contract and wants to negotiate
If a service provider don’t agree with contract he can call for help. Admins and moderators negotiate
with them to resolve their concerns.
They can provide customizations to service provider in contract. If they agree upon a contract, service
provider sign the contract and sign up the application.
On reset request, an auto generated email is sent to user to reset the password.
User can go to that link and reset password. If once link is opened it expires immediately as it is closed.
User can’t again use that link to reset password.
Ask user to reset password or request recovery of account if user forgets his username.
If user specifies a registered email, send an auto generated email for account recover or password reset.
Special Requirements:
Special features for blind user and illiterate users.
Captcha verification
Emails auto generation system
Frequency of occurrence:
Every time a new user come to the application sign up is required if he wants to continue with it.
Existing users are required to sign up if they haven’t logged in before, logged out or if they are using
from new device.
Open Issues:
What are parameters for strong password?
Service providers can also view photos, videos and blog posts without login and share their content after
logging in.
Admins & moderators monitor and control the content being shared. They allow only relevant content
to be shared. They also monitor modification and deletion request for the content shared. Only the
owner of content can request for deletion. Every user can request for modification of content. But their
request is processes by the admins with the consent of content owner.
Pre Conditions:
User must be verified and logged in before sharing photos, videos via gallery or post in blogposts.
If user is new to application he can only view photos and videos in gallery and read blog posts. He can’t
post new blog or share his own content.
If user is already have an account he can login to application to share his content.
If user wants to share his content, he can generate a request to share his content. He must specify his
content, a detailed description, and copy rights of the content while requesting to share it.
Admins process that request based on the content quality, relevancy and authenticity they decide either
to accept or deny the request.
If admins approve the content it is shared to relevant section with all copy rights reserved to the owner
of content.
Other users can view and request for modifications in that content. Only owner of content can request
deletion of the content.
If modification is requested content owner is requested to permits the modification of the content.
Unverified content can be any content whose source is not mentioned or authentic. If copy rights are
not mentioned clearly content lies under unverified too.
On modification request, the owner of content is notified for permission. If owner allows within 7 days
modification is validated and published.
If owner don’t allow modification is rejected.
If owner don’t respond back in 7 days outdated content is removed from the application.
Special Requirements:
Special features for blind user and illiterate users.
Content validation carried out before publishing the content and modifications.
Support sharing of content from and to well know social media platforms like Facebook, Instagram and
linkden.
Frequency of occurrence:
Every time a new user come to the application he/she must be able to view gallery and blogposts
content.
If user have signed up is, he/she must be able to share content in gallery and blogposts.
Open Issues:
What are parameters for testing plagiarism in content?
What type of copy right and licensing is demanded for content publication?
Is there any content which is intended to be private for signed up users only?
Service providers can also have direct impact in management of services. They are providers and source
of these services and they can offer services. And they can also apply all crud operations on the services
provided via this platform.
Admins & moderators monitor and control the services provided, their authenticity and strive to
prevent from being used for scams. They allow only relevant and authentic services to be offered and
monitor the system for a clear dealing of demand and supply of services.
Online payment verification system interact with the system to provide a fast and secure system for
online payments management.
Audio, Video calling, online Meet, Emailing API helps in the communication and connection building of
the service providers and users of these services.
Government tax agency decides the tax percentages for different fields of business dealing. These taxes
are enforced on all the dealings carried out via our application.
Pre Conditions:
Service provider must have logged in to the system and authenticated.
Service provider provide authentic services that are verified and trusted for being offered on
application.
Service provider provide relevant services which are related and beneficial for promotion of tourism
industry.
Service providers intend to do a clear business and don’t work in a way that is against business rules or
harmful for compotators. For example, no one is trying to exploit system and generate monopoly.
Users can visit them, book them, pay for them, and connect with service providers.
Service providers can perform crud operations for all of the services provided by them.
Logged in service providers can offer their services. To offer a service they must specify the category and
location of service at first.
They must provide the mandatory information for the service they are offering like copyright, price,
type, contact information and special discounts if any, etc.
They can also add different sections to the service as per their requirements.
Admin & moderators panel look if there is any flaw or fallacy in the information provided. If there is any
service provider is updated about that and asked for correction within 7 days.
If the user respond back in 7 days information is revalidated and published if authenticated else service
provider is notified again and so on.
To publish, a page is generated with the all information of user interest relevant to the service displayed
on it.
Service provider can edit, update and delete the information provided by him/her.
Service are published in a hierarchy of places at first, all the provinces are separate categories, in a
specific province at first are the cities of that province and tourism spots in a particular city are
presented.
For each tourism spot hotels, restaurants, guides travel agents are displayed as distinct categories.
Service provider is issued a warning message to abide by the rules and regulations of the application and
contract.
If any service provider attempts to exploit the system twice, he/she is marked as suspicious and all other
services offered by that service provider are verified and re authenticated.
On third such attempts, service provider is black listed and his account is banned permanently.
Content publication is denied and service provider is notified with terms and conditions and relevancy
parameters of the service via email.
If service provider respond back in 7 days information and re validated to be published or denied.
If user doesn’t respond back in 7 days information is discarded and publication is denied permanently.
Service provider is issued a warning message to abide by the rules and regulations of the application and
contract in edits and updates too.
If any service provider attempts to exploit the system twice, he/she is marked as suspicious and all other
services offered by that service provider are verified and re authenticated.
On third such attempts, service provider is black listed and his account is banned permanently.
Special Requirements:
Special features for blind user and illiterate users.
Support sharing of service from and to well know social media platforms like Facebook, Instagram and
linkden.
Auto generation of distinct and interactive page for each service offered and accepted for publication.
Support for different and trending communication Medias like audio video calls and online meeting API
etc.
Frequency of occurrence:
Every time a service provider comes to application he/she can add, delete modify and update the
services on application.
Open Issues:
What are parameters for testing information for a service to be complete and correct? What type of
modifications and updated are allowed?
Glossary
Vision: An executive summary that briefly describes the project
Features List: Provides a succinct summary of the functionality, irrespective of the
use case view
SORT-BY PRICE: A list format that shows elements in ascending or descending
order with respect to their price
FRUPS+: Functionality, Reliability, Usability, Performance, Supportability
+: Requirements Other than FRUPS
Xplore: Explore
Sign up: Create Account
Login: Open an already created and verified account
Account Authentication: verification of user credentials from database
Actors: The users that interact with the application
Gallery: Containing Pictures and Videos
Blogposts: A writing published on a blog
StakeHolder: A person associated with the application, can either affect or
affected by the application
Tourist: A person who wants to travel a place for pleasure
Tourist guide: A person that guides/helps tourists
Service providers: The people or systems that provide services, in our case they
are the tourist guides, hotel managers, airline management, travel agencies etc
Know-how: Expertise knowledge
NCOC: National Command and Operation Center
NTCB: National Tourism Coordination Board
PTDC: Pakistan Tourism Development Corporation
Feedback: The reaction/ reviews about our app
Contract: A promise signed after setting some rules
Fully dressed format: In which all steps are written in detail
Agreement: something like a contract
Artifacts: Documents that are related to the project
Domain rules: Generic rules related to the application
Risks: Factors that can cause loss to the application
Feasibility: The practical extent of how successful the project can be.
______________
PA CK AGE D I AGR A M S
EX PL OR E PA K I ST A N
M anage hom e page L ogin/Sign Up M anage gallery and blogposts M anage Ser vices
M anage and facilit ate Content m onitor ing and M anage U I and Custom isation
M anage help and suppor t control m anagem ent
searches
L ogin
Sign up L ogin/Sign up as Tour ist
Pictures D isplay
V iew Blogposts
L ogin/Sign up as A dm in
V iew roles
M anage Ser vices
M anage Gallery and BlogPosts
A dd N ew Ser vices
Post Picture, V ideos
W r ite R eview s
Update a ser vice
Cash D eposit
O nline Paym ent
Cash R etur n
O nline booking of
hotels
Validit y Check for
full paym ent
O nline Booking of
Calculating dues transpor ts
Change T hem e
Contract duration Check
Change Background
H ierarchy of cities,areas
I nfor m users about D isplay infor m ation of
dist ances guides
H ierarchy of T raspor ts
D isplay
infor m ation about toll D isplay I nfor m ation H ierarchy of ser vices
plazas about T ranspor ts and
airlines and their st aff
BU SI N ESS LEV EL U SE CA SE D I AGR A M
System
M anage and
facilit ate searches
M anage Em ailing A PI
hom e page
A dm ins & m oderators
M anage help
& suppor t
M anage content
m onitor ing and
control
User authentication system
M anage U I and
custom ization
M anage hierarchy of
the application U I
BU SI N ESS LEV EL U SE CA SE D I AGR A M
USER AUTHENTICATION
SYSTEM
manage
homepage ONLINE PAYMENT
AUTHENTICATION
Explore
application
without signu[
or login
Avail services
Manage
gallery and
TOURIST blogposts
Manage and
sign contract
Negotaite on
contract
ServiceProvider
Manage Ui &
Customization
Customiziing
the contract
ADMINS PANEL
manage
communication
and
interactions
content
monitoring Manage GOOGLE MAP API
and control hierarchy of
managment the
application UI
USER AUTHENTICATION
SYSTEM
login as
admin <<extend>>
ONLINE PAYMENT
AUTHENTICATION
Explore <<include>>
application <<include>>
without signu[
or login
View gallary
Avail services phots,videos
and blogposts
Manage
gallery and <<include>>
blogposts
TOURIST NOTE: Arrows without text
shows generalization.
Negotaite on
<<extend>>
contract
Manage and
sign contract
<<extend>>
Customiziing
the contract
Change color
ServiceProvider theme
Manage Ui & rearrange
Customization sections
add a service
edit or update
Manage a service ONLINE MEET API
services
ADMINS PANEL
delete a
service
manage
communication emailing manage &
and facilitate
interactions searches
EMAILING API
sort by rating
content sort by mostly
monitoring Manage visited GOOGLE MAP API
and control hierarchy of
managment the
application UI
sort by price