SlideShare a Scribd company logo
1 of 77
Final Documentation
ISTM 6210
Integrated Information Systems Capstone
Dr. Subhasish Dasgupta
Spring 2018
OnRoad Trip Planner
Group D
Jimmy Chen, Renze He, Yuting Liu, Jiahui Wang
2
Table of Contents
List of Figures................................................................................................................................ 5
1. Introduction............................................................................................................................... 6
1.1 System Introduction................................................................................................................6
1.2 Project Charter .......................................................................................................................7
1.2.2 Objectives ..........................................................................................................................8
1.2.3 Key Milestones ...................................................................................................................9
1.2.4 Communication Methods.....................................................................................................9
2. Business Case........................................................................................................................... 11
2.1 Organization Description.......................................................................................................11
2.1.1 Environment.....................................................................................................................11
2.1.2 Business Goals..................................................................................................................12
2.1.3 Competitive Position & Benchmark ...................................................................................12
2.1.4 Summary: Need for the system ..........................................................................................13
2.2 System Description................................................................................................................14
2.2.1 Business or Administrative Problems Addressed.................................................................14
2.2.2 Data Flow Diagrams..........................................................................................................14
2.2.3 Business Assumptions and Risks........................................................................................17
2.2.4 System Cost Targets & ROI Estimates................................................................................19
3. Requirement Specifications and Models............................................................................... 20
3.1 Activity Diagrams..................................................................................................................20
3.2 Use Case ................................................................................................................................22
3.3 Interfaces...............................................................................................................................23
3.3.1 Internal Interfaces .............................................................................................................23
3.3.2 External Interfaces ............................................................................................................24
4. Project Management Documentation: Sprint 1 ................................................................... 24
4.1 User Stories ...........................................................................................................................24
4.1.1 Customer User Story.........................................................................................................25
4.1.2 Administrator User Story...................................................................................................25
4.2 ProductBacklog....................................................................................................................25
5. Detailed Software/Systems Design......................................................................................... 27
5.1 Classes and Methods..............................................................................................................27
5.2 Class Diagram .......................................................................................................................29
5.3 Screens and Screen Flow (Human Computer Interaction).....................................................29
5.3.1 Home page .......................................................................................................................30
5.3.2 Registration page ..............................................................................................................31
5.3.3 Login page........................................................................................................................32
5.3.4 Trip listings search............................................................................................................33
5.3.5 Trip information................................................................................................................34
3
5.3.6 User trip management........................................................................................................35
5.3.7 Requests management.......................................................................................................36
5.3.8 Blog listing.......................................................................................................................37
5.3.9 Blog viewing ....................................................................................................................38
5.3.10 User’s blog management..................................................................................................39
5.3.11 User’s account management.............................................................................................40
5.3.12 Customer service.............................................................................................................41
5.3.13 Screen Flows ..................................................................................................................41
5.4 Report...................................................................................................................................43
5.4.1 Number of Account Creation Diagram ...............................................................................43
5.4.2 Profit Diagram..................................................................................................................44
5.4.3 Number of Trip Created Diagram vs. Number of Trip Posted Diagram.................................45
5.4.4 Number of Blogs Diagram.................................................................................................45
5.4.5 Diagram of Website Traffic ...............................................................................................46
5.5 Business Rules .......................................................................................................................46
6. Behavioral Modeling............................................................................................................... 47
6.1 State Chart............................................................................................................................47
6.2 Sequence Diagram.................................................................................................................48
7. Database Design...................................................................................................................... 50
7.1 Physical Database Schema and Description...........................................................................50
7.1.1 Entity Relationship Diagram for SQL.................................................................................50
7.1.2 Entity Relationship Diagram for MongoDB (NoSQL) .........................................................53
7.2 Data Dictionary .....................................................................................................................54
7.3 Test and Demonstration Data................................................................................................56
8. Security .................................................................................................................................... 59
8.1 Security Identity and Access Management ............................................................................59
8.2 Database Security..................................................................................................................59
8.3 Server Security......................................................................................................................60
8.4 Operation Security ................................................................................................................60
9. Project Management Documentation: Sprint 2 ................................................................... 60
9.1 Sprint and Product Backlogs: Sprint 2..................................................................................61
9.2 Burndown Chart: Sprint 2 ....................................................................................................62
10. User Test Plan & Scenarios.................................................................................................. 63
10.1 User Test Plan......................................................................................................................63
10.1.1 Unit Testing....................................................................................................................64
10.1.2 Integration Testing ..........................................................................................................64
10.1.3 System Testing................................................................................................................64
10.2 Scenarios .............................................................................................................................64
11. System Capacity & Performance......................................................................................... 64
4
11.1 Storage Needs ......................................................................................................................64
11.2 Number & Type of Users.....................................................................................................66
11.3 Transactions ........................................................................................................................67
12. Implementation Stages & Conversion/Installation method.............................................. 68
12.1 Coding.................................................................................................................................68
12.2 Testing.................................................................................................................................69
12.3 Installation...........................................................................................................................69
13. Support & Training .............................................................................................................. 69
13.1 User Training Plan ..............................................................................................................69
13.1.1 Training Goals ................................................................................................................69
13.1.2 Training Methodologies...................................................................................................69
13.2 Help Functions (Tier 4 Support)..........................................................................................70
13.3 Installation & Turn-on Strategies........................................................................................70
13.4 Ongoing Maintenance/Support............................................................................................71
14. Project Management Documentation: Sprint 3 ................................................................. 71
14.1 Sprint and Product Backlogs ...............................................................................................71
14.2 Burndown Chart: Sprint 3...................................................................................................72
14.3 Final Scrum Documentation................................................................................................73
Appendix A .................................................................................................................................. 74
FQAs...........................................................................................................................................74
Appendix B .................................................................................................................................. 76
Website Address:.........................................................................................................................76
References.................................................................................................................................... 77
5
List of Figures
(STATE CHART DIAGRAM: USER CREATES A TRIP PLAN)..........................................................................................................................48
(STATE CHART DIAGRAM: USER COMPOSES ABLOG).............................................................................................................................48
(SEQUENCE DIAGRAM: USER CREATES, SAVES, PUBLISHES AND MANAGES ATRIP PLAN)..........................................................................49
(SEQUENCE DIAGRAM: USER COMPOSES,POSTS AND MODIFIES A TRIP BLOG)........................................................................................49
(SEQUENCE DIAGRAM: USER CONTACTS AND COMMUNICATES WITH CUSTOMER SERVICEREPRESENTATIVE)............................................50
(ONROAD TRIP PLANNER ERD FOR SQL).............................................................................................................................................51
(TABLES OF ONROAD INTERNAL PORTAL).............................................................................................................................................52
(ONROAD TRIP PLANNER ERD FOR MONGODB) .................................................................................................................................54
(TABLES IN DATABASE) ........................................................................................................................................................................57
(TABLE: TRIP PLAN).............................................................................................................................................................................57
(TABLE: ACCOUNT)..............................................................................................................................................................................58
(LOCALHOST:ACCOUNT)......................................................................................................................................................................58
(TABLE:BLOG) ....................................................................................................................................................................................59
(LOCALHOST:BLOG)............................................................................................................................................................................59
(PRODUCT BACKLOGS 1) .....................................................................................................................................................................61
(PRODUCT BACKLOGS 2) .....................................................................................................................................................................62
(BURNDOWN CHART FOR SPRINT 2).....................................................................................................................................................63
6
1. Introduction
1.1 System Introduction
Have you ever had road trip before either individually or with friends or family? Before your trip
starts, do you make the road-trip plan? Where do you search for the trip route information? Do you
agree that making such trip plan is a complicated process? And sometimes people wish there were
an “existing” trip route which has the same interests as them and they just follow this route to start
their trips. OnRoad Trip planning platform is a web-based software application that helps travelers
explore and create their road trip plans, share their road trip plans or participate in other travelers’
plans which have the same interests as them.
Typically, we have defined road trip as people take traveling by car. According to the article
“2017–2018 Portrait of American Travelers Study Released” from MMGY Global, it indicates
that the number of United States travelers taking the road trips has jumped significantly from 22
percent to 39 percent among all the leisure travelers (Blount, 2017). Today, most of Americas,
around 85 percent of travelers have a domestic travelling, with seeking an adventure and enjoying
a flexible schedule, a number of them hitting the road, based on the article “The Great American
Road Trip: Shorter and More Popular Than Ever” published on the New York Times (Rosenbloom,
2018). From a survey report “New Study Reveals When, Where and How Much Motorists Drive,”
Johnson states that “Motorists age 16 years and older drive, on average, 29.2 miles per day or
10,658 miles per year. Women take more driving trips, but men spend 25 percent more time behind
the wheel and drive 35 percent more miles than women. Motorists in the South drive the most
(11,826 miles annually), while those in the Northeast drive the least (8,468 miles annually).”
(Johnson, 2014) As the revival of the economy in the U.S, more and more people is willing to
travel another place to spend their weekend. Taking a trip by car will be an optimize choose for
them in terms of a flexible schedule and a budget consideration.
The most outstanding and unique feature of our OnRoad Trip Planner system is our sharing system.
We are creating an online community for people to find their common interests in traveling. They
can share their plans and find great plans designed by others. They can also share their trips and
help other people to have great tours.
This software is about the road trip, so It will heavily rely on Google Map APIs. Once the traveler
decides the routes, the tourist attractions, hotels, toll stations costs, mileage and gas costs and local
restaurants will be automatically displayed on the map. The trip builders can base on their interests
such as shopping, sport events, food, accommodations, and others to create their trip plans and our
system could use the database it collects from the builders’ set and preference to provide
suggestions for them to optimize the trip route. We are making the most efficient process in the
market for people so that they can complete a trip designing and planning in a few step processes.
Instead of letting people choose what they want, we are picking the best for them. We are making
it simplistic, but not simple-minded.
7
Travelers can use our platform to find where people are heading by looking at published trip plans
and to join the ones that they are interested in. They will see where and when people are traveling
from and to. People can join a full trip, or they can participate trips that they want to join and
decide on their whether they want to join or leave in the middle of the trip. However, they will
need to inform the group about their desired part of the trip and the trip planner publisher can
decided whether to accept the requests. People are always free to join and free to go.
By browsing enormous database which will become larger and larger over time by collecting more
information from trip sharing and reports, OnRoad Trip Planning is in additional providing safety
advice which includes up-to-date road conditions and weather conditions for the route, and
preparation guide. Besides, we require users to click the start button when they start their trips and
click the finish button when they complete the trips in terms of security considerations. In addition,
users will receive a bonus if they provide the feedback for us after they finish the trip. What’s
more, OnRoad Trip Planning allows users to rate, review and read other users’ travel notes or
blogs, providing social network platform for users to communicate.
OnRoad Trip Planning is a totally free platform people can use our services and resources anytime,
anywhere. Travelers can complete their trip plans by booking their hotels and making restaurant
reservation through our website, which will direct the users to the booking website or other
organization websites.
1.2 Project Charter
1.2.1 Project TeamMembers
Name Role Responsibility Contact
Subhasish Dasgupta Project Sponsor -Authorize the project
-provide guidance to
teams when necessary
-monitor the progress
of the project
Email:
dasgupta@gwu.edu
Phone:
(202) 994-7408
8
Jiahui Wang Developer -Create web
application;
-conduct functional
and non-functional
testing;
-troubleshoot and
debug applications;
Email:
jiahuiwang0928@g
wu.edu
Phone:
(571)594-0009
Jinrong Chen Developer -Create web
application;
-conduct functional
and non-functional
testing;
-troubleshoot and
debug applications;
Email.com:
jinrongchen@gwu.
edu
Phone:
(303)882-0324
Runze He Project Manager -Responsible for
project initiation and
planning;
-monitor the project
and deliverables to
schedule;
Email:
herunze@gwu.edu
Phone:
(202) 705-0624
Yuting Liu Business Analyst -Collect information
and data on project
requirements;
-Document technical
and business
requirements;
-provides expertise on
financial returns.
Email:
liuyut@gwu.edu
Phone:
(812) 606-5568
1.2.2Objectives
The main objective of this project is to create a web application which enables users to design road
trip plans, share road trip plans and connect with potential travel partners. The success of this
9
project is contingent upon the successful development of a web application and a successful
business model.
Technical objectives:
● Create a functional and stable web application
● Create a database that accomplishes data storing, querying, and retrieving
● Debug and test at each phase
● Finish the technical portion and publish product in 3 months
Resource objective:
● Google Map APIs
● JIRA
● HTML
Budget objectives:
● The budget of initial stage of web application development is limited to $1300.
1.2.3Key Milestones
Key Milestones Date
Phase 1 – Business Case Completed 2/12/2018
Phase 2 – Analysis Completed 3/5/2018
System Design Completed 3/26/2018
Implementation Completed 4/16/2018
Testing and Modification Completed 5/2/2018
Final Presentations 5/7/2018
1.2.4 Communication Methods
Communication
Type
Purpose Frequency Date Output Channel
10
Kickoff Meeting Initial Review
of project
scope,
organization
and activities
Once 1/29/18 Project scope In person
Team meeting Update of
project progress
and action
Once a week 2/3/18
2/5/18
2/11/18
Updated
deliverable
Email,
Group
chat, in-
person
meeting
and Google
Doc.
Notifications Formal
communication
of new
information
As necessary New
information
and message
Email
and/or
phone call
Technical
Meetings
Discuss
technical topics
such as design,
development,
testing, etc.
As
scheduled
Updated
design or
plan
Email,
Group
chat, in-
person
meeting
and Google
Doc.
Risk Assessment
Meetings
Update
assessment and
response to high
risks
As
scheduled
Risk
management
plan
Email,
Group
chat, in-
person
meeting
and Google
Doc.
Lessons Learned
Session
Review
performances
As
scheduled
Lessons
Learned
Analysis
Report
Email,
Group
chat, in-
person
meeting
and Google
11
Doc.
Closeout session Close project
and publish web
application
formally
As
scheduled
N/A Email,
Group
chat, and
Google
Doc.
2. Business Case
2.1 Organization Description
OnRoad was founded in 2018 by four co-founders Jimmy Chen, Ruize He, Yuting Liu, Jiahui
Wang. It is a web-based travel service platform that allows people from all over the world to build
and share travel plans as well as find travel partners. We are aimed at providing the best travel
planning services to improve your trip quality by guiding people to plan their trip on our
exceptionally efficient trip planner engine, to share their wonderful plans in our social network
platform and invite friends to see and edit, and to find people heading to the same destinations.
In order to maintain our services, OnRoad seeks to make profit by advertising third-party hotels
websites, such as marriot.com and hilton.com, booking websites, such as expedia.com and
booking.com, local restaurants and other local business as well as their websites. Our partners and
sponsors will be recommended accordingly in our system. We advertise them by putting them into
the visible list of recommendations and our users can compare the prices provided by our partners
and sponsors. Total clicks, click through rates and transaction rates will be taken into account for
advertising costs.
OnRoad utilizes all the resources to provide stable services to our users. We properly allocate
physical resources, technical resources and human resources for our service improvement over
time. We ensure that our website needs to be available and functional at any time, which all flow
of information within our system between customers and partners are protected, and which our
information and data are up-to-date and reliable for our customers to explore and use.
2.1.1 Environment
The U.S. is an automobile dominant nation where most people drive for daily lives. Road trips
become part of Americans lifestyle and 31 million people have posted photos of side mirror shot
12
taken on a road trip on Instagram in 2017 (Christoff, 2017). Road trip can be predicted as one of
the most popular travel trends right now in 2018.
Christoff also shows that, from 2016 to 2017, the percentage of road trips taken by Americans rose
from 22 percent to 39 percent. Consumer spending also showed enormous growth. In 2015,
travelers spent $66.6 billion hitting the road, while last year, that number grew to a whopping
$113.7 billion. Another statistic report by Statista(“Annual growth of travel”, 2017) states that the
travel expenditure in the U.S. has grown from 2.1% in 2016 to 3.1% in 2017 and is looking to
grow to 4.1% in 2018 and maintain stable until 2020. The leisure travel industry is growing in
recent years in the U.S. With the recovery of the U.S. economics, people now tend to spend more
than the previous years. We can see the grow in market, and we found the opportunity to provide
great services to people who love road tripping and traveling.
2.1.2 Business Goals
 To become the best travel planning site in the market
 To become profitable in two years
 To help people build their trip plans, share their plans and trips, and find travel partners
 To keep our contents enriched, available, stable and diversified, to keep our system running
stably, and to keep our information updated and reliable
 To create more partnerships with great third-party service sites
 To improve our system and services consistently and sustainably
2.1.3 Competitive Position & Benchmark
Why are we here?
There are two reasons that the market needs us.
First, there is no such a good trip planner or a good find a travel partner platform for travelers.
Because planning a trip is time consuming and your trip quality heavily depends on your plans,
the preparation process, trip planning becomes the key to the succeed of your trip. None of our
competitors is providing an efficient and easy-to-use planning services, making their services less
attractive to travelers. For example, Roadtrippers.com is one of our main competitors and, based
on our research, their trip planner provides more than a hundred options within one page, a painful
process for customers to use. Planning a trip is already complicated, why would I use a complicated
system to plan a trip? Our selling point will be an efficient and easy-to-use trip planner to do the
same excellent and even better jobs that our competitors can do.
Second, there's a gap in the market that no website can currently handle both functions of trip
planning and social networking well. We believe the combination can create great value for
13
travelers to make their trips successful. Other's trip experiences are the most valuable treasure
people can refer to before going out. By sharing your incoming plan or share your own experience,
many plans can be improved, and many people can be helped a lot. Everyone can enjoy the
community in helping others or being helped.
The Target
We are initially targeting at all the roadtrippers who travel leisurely in the U.S. Our trip planners
are mainly focusing on providing best places to visit along routes that people insert, tips including
road conditions, parking information, weather conditions, dining and lodging suggestions and so
on.
2.1.4 Summary: Need for the system
Our business is requiring a completely functional trip planner and social networking platform. All
the requirements will be shown step by step in our diagrams and all our goals are based on the
following factors in order to be successfully achieved:
Functionality: the website is having three main systems including trip planner as our core service,
social networking/sharing platform and find a partner system. The sharing platform is where we
can connect our core service with partner matching service.
Ease of Use: the trip planner is a step-by-step process that leads people to build their people in the
easiest but efficient way. We pick the best options for travelers and they just need to click to choose
their preferable one.
Available Contents: as a travel site, our database not only provides tons of great contents for
travelers, but also keeps improving and expanding by collecting more and more information shared
by our users.
Available external resources: we are partnering with hotels, car rentals, and attraction sites to
provide the most convenient way for people during trip planning. We keep them as various and
available as we can to provide more options.
Security: we tend to provide a basic level of security by tracking their location from a self-
reporting manner. We also require identity examination for registered users to ensure the security
of our users.
The Future: In future, to maintain our competitiveness in the market, we are looking to expand
our services to meet needs for all travelers instead of roadtrippers. Even though our resources and
sharing system are also great for non-road trippers, such as posting and reading trip reports and
14
tips, we continue to create more values for people who tend to fly to travel and other types of
travelers.
2.2 System Description
2.2.1 Business or Administrative Problems Addressed
There are five major problems existing in the current travel planning websites. First of all, it is
very time-consuming for travelers to search information and make travelling plans based on
different resources, such as websites of hotels, websites of mapping, and websites of tickets.
OnRoad Trip Planner integrates all traveling information in one site and helps road trippers make
detailed travelling plans within a short time.
Secondly, some existing travel planning websites only provide simple trip planning services
without detailed information. For example, Roadtrippers provides detailed routes and sites
planning without information of hotels, restaurants, and highway toll stations. OnRoad Trip
Planner will provide road trippers detailed travelling plans with all necessary information which
would be very helpful for road trippers to forecast travelling budgets and prepare luggage.
Thirdly, although social network platforms are very popular these years, there is no professional
and credible social network platform for road trippers to share travelling stories and find travelling
partners. Many trippers strongly expect to start a new journey, but their families and friends are
always busy for lives and works. Except for providing travel planning services, OnRoad Trip
Planner also provides a travelling network platform for road trippers to edit, publish, search, and
participate in travelling plans. In addition, users can also share their previous travelling stories in
the platform, informing and inspiring other trippers with trusted contents and pictures.
Fourthly, there are many road trippers who want to start their journeys, but are stopped by
insufficient budgets. Using OnRoad travelling network platform, road trippers will find credible
partners to share travelling costs. For instance, when an individual road tipper plans to drive from
New York City to Washington DC, he or she would be happy to find trip partners who want to
travel from Jersey City to Washington DC to share transportation costs.
Finally, there are few websites providing the “All in One System” travel planning service. OnRoad
Trip Planner includes all of three features (the trip planning platform, the story-sharing platform,
and the travelling network platform), aiming at providing road trippers in the United States and
Canada the most convenient and the most practical experiences.
2.2.2 Data Flow Diagrams
Context Diagram
15
16
17
2.2.3 Business Assumptions and Risks
Project Assumptions
18
➢ The project team will get enough and correct information and data, such as price of hotels,
restaurant costs, highway charges, fuel costs and ect from external resources to support the
database of OnRoad Trip Planner.
➢ The trip planning platform will be properly developed with Google Map APIs.
➢ OnRoad Company will sign a disclaimer for any security issues happened in trips or
caused by travelling with partners.
➢ The project team will get enough funding for the system setup process.
➢ The project team has appropriate abilities and technical skills to set up the system.
➢ Appropriate and effective information systems and technologies will be used in the project
to support the system setup process.
➢ In the system setup process, the four developers will have no salaries. Other one-time setup
costs will be covered by the four developers, including the cost of information, the cost of
information technologies, and miscellaneous.
Project Risks
➢ It is very expensive and complex to integrate correct information and data from external
resources. There is no enough funding for supporting the system setup process.
➢ The system setup process is too complex and out of the project team’s abilities.
Operational Assumptions
➢ OnRoad company will be able to obtain an initial investment of $300,000.
➢ The cost of information increases by 5% per year.
➢ The cost of information technologies increases by 5% per year.
➢ In the first year of operation, we will have only 500,000 Google Map clicks. Google map
usage increases by 100% per year.
➢ Advertising cost increases by 10% per year.
➢ The discount rate is 10%.
➢ With a conservative estimate, we will get 100 advertisements in the first year of operation.
Most businesses are able to afford $1500/year for each advertisement. The amount of
advertisement increases by 80% per year. The pay per advertisement increases 10% per
year.
➢ With a conservative estimate, we will get 100,000 clicks on external resources in the first
year of operation. Most businesses are able to afford $0.15for each click. Our affiliate
commission percentage is 10% for the first year of operation. The affiliate commission
percentage increases by 5% per year. Clicks on external resources increase by 80% per
year. The pay per click increases 5% per year.
Operational Risks
➢ We cannot get any initial investment or the initial investment is less than $300,000.
➢ There are many security issues happened during our users’ trips, which significantly
influence OnRoad’s operation.
19
➢ Our yearly input in advertising cannot bring a corresponding number of users and
businesses (Details are in the following ROI estimates).
➢ Our yearly input in human resources cannot support OnRoad’s yearly operation (Details
are in the following ROI estimates).
➢ The pay per advertisement is too high for most businesses in the United States and Canada
and we cannot sell enough amount of advertisements each year (Details are in the following
ROI estimates).
➢ The affiliate commission percentage and the pay per click are too high for most businesses
in the United States and Canada and we cannot get enough clicks on external resources
each year (Details are in the following ROI estimates).
2.2.4 System Cost Targets & ROI Estimates
We supposed that OnRoad’s initial investment is $300,000. Based on system setup costs, system
operating costs, and benefits for the first five years, we calculated that the return on investment for
the first year is 8.21% and our payback period is about 1.5 years.
20
3. Requirement Specifications and Models
3.1 Activity Diagrams
The following four activity diagrams represent the different process flows for the different
functions of OnRoad Trip Planner. The first diagrams shows the process flows for trip planning,
user registration, finding partners, and blogs sharing.
21
The second activity diagram shows the function of requesting external links.
22
The third activity diagram shows the function of requesting customer services.
3.2 Use Case
OnRoad trip planning’s Use Case Diagram identifies the principal actors and prominent
interactions with OnRoad trip planning system. The three actors are trip plan builder, trip plan
23
joiner, and the company representatives. The following diagram clearly shows all interactions
between the actors and the system.
3.3 Interfaces
3.3.1 Internal Interfaces
Marketing management interface
Marketing management interface manages the most important revenue source of our website-
advertisement. Administrative functions related to advertisement placed on our websites by
24
outside parties will be available through marketing management interface. Marketing staffs will
be able to manage orders, edit advertisements, post advertisements and etc.
Accounting interface
Accounting interface manages orders, billings, recordings and payment transactions between our
website and our partners. All payments made to our website for advertisement and to other
websites for publicity will be processed through accounting interface.
Customer service interface
Customer service interface is also an important system for our website. It allows customer
representatives to communicate with customers. Customer’s inquiries, request or suggestions will
be delivered and stored through customer service interface.
3.3.2 External Interfaces
Google Maps API
OnRoad Trip Planner will use Google Maps to utilize our functions. We will use the Google Maps
API within our trip planner system to provide users a standardized and easier way to locate travel
routes and points.
Travel Booking Sites
OnRoad Trip Planner will integrate popular traveling booking websites including
www.expedia.com, www. booking.com, etc. We will use their prices within our hotel
recommendation section and then will direct users to the booking sites for further services.
Social Media
OnRoad Trip Planner will use social media API including Facebook, twitter, Instagram, etc. We
will integrate the APIs into our system for users to make connections with other users’ social media
accounts and to post their plans, stories, comments, reviews and recommendations.
4. Project Management Documentation: Sprint 1
4.1 User Stories
User story is designed to describe and clarify the functions and their associated consequences for
each group stakeholders. We create two user stories which are customer user story and
administrator user story. The following sections are providing detailed information for each user
story.
25
4.1.1 Customer User Story
4.1.2 Administrator User Story
4.2 Product Backlog
The preliminary OnRoad Trip Planning Sprint Backlog is comprised of 40 individual tasks which
are associated with 5 overarching categories--Customers, Administrators, Database, Platform and
Documentation. Each one of the tasks delivers a key function that needs to be designed, completed,
or implemented to make sure the overall functionality of our platform can be efficiently run. Each
task is reviewed, prioritized, and assigned to a Sprint by the Scrum Team to ensure that the tasks
can complete in a time manner and the products can be delivered in schedule. The identified tasks
are as follow:
26
27
5. Detailed Software/Systems Design
5.1 Classes and Methods
1. For the web user who has no account in the system, OnRoad trip planning system have
the following classes and methods.
➢ Web User
➢ Account
○ +loginAccount()
○ +logoutAccount()
○ +registerAccount()
○ +updateAccount()
○ +deleteAccount()
➢ Trip Plan
○ +createPlan()
○ +selectPlan()
➢ Blog
○ +readBlog()
○ +searchBlog()
➢ Representative
○ +accessCustomerServices()
➢ External Link
○ +access()
➢ Ad Link
○ +access()
➢ Non-ad Link
○ +access()
2. For the web user who has an account in the system, OnRoad trip planning system have the
following classes and methods.
➢ Web User
➢ Account
○ +loginAccount()
○ +logoutAccount()
○ +registerAccount()
○ +updateAccount()
○ +deleteAccount()
➢ Trip Plan
○ +createPlan()
○ +selectPlan()
○ +editPlan()
○ +updatePlan()
○ +deletePlan()
28
○ +publishPlan()
○ +savePlan()
○ +deletePublishedPlan()
○ +searchPlan()
○ +addComment()
○ +participateinPlan()
○ +approve()
➢ Blog
○ +readBlog()
○ +createBlog()
○ +uploadPic()
○ +deleteBlog()
○ +addComment()
○ +searchBlog()
○ +shareBlog()
➢ Trip Tracking
○ +startTrip()
○ +endTrip()
○ +addFeedback()
➢ Representative
○ +accessCustomerServices()
➢ External Link
○ +access()
➢ Ad Link
○ +access()
➢ Non-ad Link
○ +access()
29
5.2 Class Diagram
Note: Methods in the orange are methods for both the web users who have no account and the web
users who have an account. Methods in the black are methods only for the web users who have an
account.
5.3 Screens and Screen Flow (Human Computer Interaction)
Below are 12 mock screens presenting fundamental functions of our Onroad system. Users are
allowed to create a basic trip plans, read trip listing, and read blogs without creating an account.
However, users need to register and log in to use other functions on the site. Once the user logged
in, there will be additional menu functions appearing on menu bar, enabling users to manage their
own information.
30
5.3.1 Home page
31
5.3.2 Registration page
32
5.3.3 Login page
33
5.3.4 Trip listings search
34
5.3.5 Trip information
35
5.3.6 User trip management
36
5.3.7 Requests management
37
5.3.8 Blog listing
38
5.3.9 Blog viewing
39
5.3.10 User’s blog management
40
5.3.11 User’s account management
41
5.3.12 Customer service
5.3.13 Screen Flows
The below screen flow is for web users who have no account. For web users who have no account,
from the homepage, they are able to access the web page of trip search , the web page of customer
service, the web page of registration, the web page of login, and the web page of blog lists.
42
The below screen flow is for web users who have an account and have logged in their accounts.
For web users who have an account, from the web page of login, they are able to access the web
page of account management, the web page of customer service , the web page of trip search, the
web page of trip management, the web page of blog management, and the web page of blog lists.
43
5.4 Report
5.4.1 Number of Account Creation Diagram
This diagram tracks number of new accounts created in a specific period. During the first 6 months
after launching, we will count the number on monthly basis. After the initial launching period, the
number will be observed on quarterly basis.
44
5.4.2 Profit Diagram
As we are a free website for users, all of the profit will come from advertisement. Financial data
will be collected and profit will be calculated on quarterly basis.
45
5.4.3 Number of Trip Created Diagram vs. Number of Trip Posted Diagram
This diagram shows the number of new trips created comparing to number of trips posted by the
users with an account for each quarter.
5.4.4 Number of Blogs Diagram
This diagram shows the number of new blogs published for each quarter.
46
5.4.5 Diagram of Website Traffic
This website traffic diagram summarizes the number of unique visitors and page views of home
page by month. This information helps us evaluate our performances.
5.5 Business Rules
We identified 32 business rules for our system to ensure the consistency and integrity of our system
and to explain how our system will run during daily operation. We will apply those rules in our
system to ensure that our customers use our system in a stable, secure, and efficient way. Many
features, like browsing our blogs and using our trip planner, are not requiring log-in, giving the
most convenient hands-on experience to our customers, especially first-time users. We will try our
best to balance restrictions and users experience out.
Business Rules
Account
Creation
Users must completely finish the sign-up process to create their accounts
Users must create unique username
Users must create a password that meets the security requirement
Administrators have a separate account creation process
A level-2 account completion process (personal verification) required for partner
matching functions
A level-2 account completion process required phone number, address,personal
identity information, etc.
Once users complete personal verification process,they can have only one account
Login Users must have both username and password to log in
Trip
Planner
Log-in is not required to use trip planner
Users must complete the planning process to create a trip
Users are not allowed to skip steps in the planning process
47
Users can always go back and forth to make changes
Users can save,edit, publish and share their plans once they complete their plans
(require login)
Sharing
Platform
Users must log into their accounts to use platform’s functions except for searching and
browsing
Users can publish, share,edit, delete their plans, posts, blogs, etc.
Users can comment and rate other plans, posts, blogs, etc.
Users can approve or decline others’ invitations of travel plans or blogs
All shared trip plans and blogs must meet the minimum quality requirement and follow
the forum rules to be successfully posted
Trip plans can be edited by multiple users with invitation
A trip plan does not have to be fully complete before sharing with others
A trip plan initial creator has the ultimate right to edit the plan
Users can add companions to their trips
Finding
Partners
Users have to log in and complete level-2 account completion to use this function
Users can send a request on the platform or to specific person with or without a
complete trip plan
Users can accept a request with or without a complete trip plan
Users can view others’ trip plans to help them find interested partners
Users can decline a request at any time
Manage
Profile
Users must log in to access their personal profile page
Users can change their profile information, manage their trip plans, blogs, requests
Users can partially or fully set their information as private or public
Customer
Service
Log-in is not required to use customer service
Users can ask questions by inputting questions or sending emails
6. Behavioral Modeling
6.1 State Chart
Following diagram is a state chart diagram for a trip plan created by user.
48
(State Chart Diagram: User creates a trip plan)
Following is a state chart diagram for a blog composed by user.
(State Chart Diagram: User composes a blog)
Following is a state chart diagram for a user account created by user.
(State Chart Diagram: User creates an account)
6.2 Sequence Diagram
The following Sequence Diagram describes a scenario of a registered user creates, saves,
publishes and manages a trip plan.
49
(Sequence Diagram: User creates, saves, publishes and managesa trip plan)
The Sequence Diagram below shows a registered user composes, posts and modifies a trip blog.
(Sequence Diagram: User composes,posts and modifiesa trip blog)
The Sequence Diagram below shows how a user contacts and communicates with customer
service representative through chat box service.
50
(Sequence Diagram: User contacts and communicates with customer service representative)
7. Database Design
7.1 Physical Database Schema and Description
7.1.1 Entity Relationship Diagram for SQL
The following Entity Relationship Diagram demonstrates the key database entities and the
relationships between entities of OnRoad Trip Planner system using traditional SQL. To capture
data for the basic functions of OnRoad system, the database of OnRoad includes 10 major entities,
including Account, Trip Plan, Published Trip Plan, Comment for Trip Plan, Request for
Participation, Blog, Blog Comment, Customer Service, Representative, and External Link. The
detailed description of each entity is below.
Note: The function of trip tracking is deleted because of its low utility. It is time-consuming and
inconvenient for users to click “Start Trip” and “End Trip” to track their trips. If only a small
portion of users will use trip tracking, it will be insignificant to develop this function. Thus, our
team decides to delete this function (No entity for Trip Tracking).
51
(OnRoad Trip Planner ERD for SQL)
 Account: This table stores the information of user registrations and uses the username as
the primary key. The information of user accounts connects to Trip Plan, Published Trip
Plan, Comment for Trip Plan, Request for Participation, Blog, Blog Comment, and
Customer Service.
 Trip Plan: This table stores the information of trip plans which are generated from Google
API and stored in user accounts. Each trip plan can be used by multiple users and each user
can store multiple trip plans into their account. Each user will provide individual feedback
to his/her initiated or participated plans. Thus, this table uses the combination of trip plan
ID and user ID as the primary key.
52
 Published Trip Plan: This table stores the information of trip plans which will be published
on the trip plan section, and uses the publish ID to identify each publishment.
 Comment for Trip Plan: This table stores the information of comments for trip plans and
uses the trip comment ID to identify each comment.
 Request for Participation: After a trip plan is published, users can glance over the plan and
choose to send a request for participation. This table stores the information of requests and
uses the request ID to identify each request. Please note that when the status of a request is
“approved”, information of the user who sends this request associated with information of
the corresponding trip plan will be added into the “Trip Plan” table.
 Blog: This table stores the information of published blogs and uses the blog ID to identify
each published blog.
 Blog Comment: This table stores the information of blog comments and uses the blog
comment ID to identify each comment.
 Customer Service: This table stores the information for online chat box and uses the record
ID to identify each chat record. Each record connects to one user ID and one Representative
ID.
Note 2: The design of table “Customer Service” is optional. “Customer Service” will be
used for storing the related information of customer service for only further analysis, rather
than supporting the website function of customer service. We did not design the table
“Customer Service” in Sprint 2. We will make adjustments if the table “Customer Service”
is required in future.
(Tables of OnRoad Internal Portal)
Except for the entities used for the user portal of OnRoad Trip Planner system, two entities for the
internal portal are created in the database for supporting the system.
53
 External Link: This table stores the information of external links which will be posted on
trip plans. The table uses the provider ID to identify each link. Please note that the
information of external links connects to Google API, but it captures data from OnRoad
internal portal which is out of scope of this project.
 Representative: This table stores the personal information and account information for
internal representatives, and uses representative ID to identify each representative. Please
note that the information for representative connects to Customer service, but it captures
data from OnRoad internal portal which is out of scope of this project.
7.1.2 Entity Relationship Diagram for MongoDB (NoSQL)
Note: Separate ERDs for SQL and MongoDB are for illustrating how the database design using
MongoDB is different with using traditional SQL.
To create the physical database of OnRoad Trip Planner system, we determined to use MongoDB
which is more flexible and applicable for a database with intricate entities. By using MongoDB,
we focused on designing three major entities, including Account, Trip Plan, and Blog. Trip Plan
ID and Blog ID are added into Account in a format of array. When an user created multiple trip
plans and blogs, the trip plan IDs and blog IDs will be automatically added into these two arrays.
Similarly, Blog Comment with its three attributes (username, comment date, comment) is added
into Blog as an array. Published Trip Plan with its 2 variables (username and publish date),
Comment for Trip Plan with its 3 variables (username, comment date, and comment), Request for
Participation with its 4 variables (username, request date, content, and status), and Feedback with
its 2 variables (username and feedback) are added in Trip Plan in a format of array.
54
(OnRoad Trip Planner ERD for MongoDB)
7.2 Data Dictionary
Table Name Table
Description
Column Name Column Title Data Type Field Size
Account This table stores
users’credentials
and personal
information.
username username varchar 100
Blog ID blog_id array 10
Trip plan ID trip_plan_id array 10
password password varchar 100
first name first_name varchar 100
Last name last-name varchar 100
55
Gender Gender varchar 5
Address address varchar 100
City city char 100
State state char 100
Zip code zip_code integer 10
Identification identification blob 10k
Phone number phone_number varchar 10
Email email varchar 100
Trip
Plan
Main This table stores
trip plans
information.
username username varchar 100
Trip plan ID trip_plan_id integer 10
Trip plan trip_plan blob 10k
Departure departure char 20
Destination destination char 20
Start date start_date timestamp Date
End date end_date timestamp Date
Published
Trip Plan
This table stores
trip plans that are
published
username username varchar 100
Trip plan ID trip_plan_id integer 10
Publish ID publish_id integer 10
Publish date publish_date timestamp date
Request for
Participatio
n
This table stores
partner matching
request sent and
received by users.
username username varchar 100
Trip plan ID trip_plan_id integer 10
Request ID request_id integer 10
Request date request_date timestamp date
Request content request_content varchar 10k
Status Status char 20
Comment
for Trip
Plan
This table stores
comments made
to trip plans.
username username varchar 100
Trip plan ID trip_plan_id integer 10
Trip comment ID trip_comment_id integer 10
Comment date comment_date timestamp date
comment comment varchar 10k
Feedback This table stores
feedbacks made to
trip plans.
username username array 100
feedback feeback varchar 10k
Blog Main This table stores
blogs that are
posted by users.
Blog ID blog_id integer 10
Blog title blog_tittle varchar 100
Blog content blog_content blob 10k
Blog
Comment
This table stores
comment made to
blogs.
username username varchar 100
Comment date comment_date timestamp Date
Comment comment varchar 10k
Customer Service This table stores
questions asked,
and service
requested by
users.
Representative
ID
representative_ID integer 10
username username varchar 100
Record ID record_id integer 10
Service date service_date timestamp date
Question type question_type char 20
Question question varchar 200
56
Chat record chat_record blob 10k
Representative This table stores
representative
employees
information.
Representative
ID
representative_ID integer 10
Representative
firstname
representative_firs
tname
varchar 20
Representative
lastname
representative_las
tname
varchar 20
Employee ID rmployee_id integer 10
Representative
username
representative_use
rname
varchar 100
Representative
password
representative_pas
sword
varchar 100
7.3 Test and Demonstration Data
The following pictures are three major tables with their request methods, data in the database,
and data in the localhost.
57
(Tables in Database)
(Table: Trip Plan)
(Localhost: Trip Plan)
58
(Table: Account)
(localhost: Account)
59
(Table: Blog)
(Localhost: Blog)
8. Security
8.1 Security Identity and Access Management
The system has very detailed and specific access control to ensure the security of our users’ data.
There are two roles in the system: users and administrators. On different platforms, users will be
restricted to have access to specific features, while administrators have privilege authorities to
access the entire system to meet users need. Users and administrators are using different credentials
to log into the system. Specific area of the system may require keys or passcodes to access. While
creating accounts, users must follow the security standard that the system has set up to create
usernames and passwords and every user has unique credentials in order for the user to access
some features.
8.2 Database Security
We are implementing the following ways to protect our MangoDB which is the database we use
for the website (MangoDB):
60
Access Control and authentication - We are enabling access control. When more administrators
and users are created, we define specific needs that the users need to access by following a principle
of least privilege. Users will only be granted restricted rights to their needs. Authentication requires
that all clients and servers must have valid credentials to connect to the system.
Encrypt Communication and Protect Data – we configure our database to use TLS/SSL for
incoming and outgoing connections. TLS/SSL will help encrypt communication between all
components of our database. Our database is encrypted using file-system, device, or physical
encryption.
Limit Network Exposure and run with secure configuration - database users should run the
database in a trusted and secure network and limit the interfaces on which database instances listen
for incoming connections. Users also should configure overall settings on the hardware and
software to ensure the database is run in a secure environment. Related guides can be found on the
MangoDB official websites.
Other – other activities such as run MongoDB with a dedicated user, request a security technical
implementation guide, consider security standards compliance, etc. can also help protect our
database.
8.3 Server Security
Server Security is handled by the Amazon Web Service (AWS). AWS states cloud security is their
highest priority. They maintain a secure environment for us to scale and innovate.
8.4 Operation Security
All website users will be enforced to commit an agreement of privacy policy which protect users
from illegally use of information. All users’ information will never be allowed to unveil to the
public. Some information such as places to visit might be shared with third party websites such
hotels websites in order to provide booking services. Personal information will be secured and will
never be sold to any personnel or organization. All website administrators will be trained
professionally to avoid immoral and incorrect conduct.
9. Project Management Documentation: Sprint 2
We use Jira, a project management tool, to manage our project, with tracking the issues occurred
in the website development process and prioritizing the tasks. Since we did not know this tool
before, we started to use it after we began our project. There are three main steps for developing
the actual OnRoad Trip Planner website, and Jira helps us to capture the team’s development
process. For each Sprint, we add all the required tasks to the product backlog list and each team
member is assigned to the task(s). After the team decides the tasks and each member accepts the
61
tasks, we click the “Start Sprint,” and the Sprint is activated, the associated tasks would be moved
through the following lists: TO DO, IN PROGRESS, DONE.
9.1 Sprint and Product Backlogs: Sprint 2
Sprint 1 was to identify the user stories and to prepare all the software, hardware and management
tools. For Sprint 2, six issues were identified which were Create Database, Database Design: Entity
Diagram, Public Facing Interface Design, Wireframe User Interface, User Sign Up and Account
Page, and Database Documentation. Creating Database stays the highest priority in the Sprint 2.
The product backlogs of the Sprint 2 are shown below:
(Product Backlogs 1)
Sprint 2 was scheduled from April 6th to April 14th, so until April 16th, all the tasks were perfectly
done. In Jira, we can see that the status of six issues was in DONE list:
62
(Product Backlogs 2)
9.2 Burndown Chart: Sprint 2
The Jira could automatically generate the Sprint report and burndown chart after the Sprint is
completed. However, regardless of the time we started using the Jira (we started to use it after we
began our project), for this Sprint, we used Excel to create a clear and understandable burndown
chart.
63
(Burndown Chart for Sprint 2)
The detailed data we have used to create the burndown chart is in the following chart:
Starting from April 6th, the estimated hours the team spent per day is approximately 91/9 =
10hours. The actual hours the team spent per day were depended on every members’ schedule.
From the burndown chart, we can see that after the second day, the April 7th, the team actual
development process was left than the originally predicted, and until the last day, April 14th, the
team almost spent double hours to catch up to meet the schedule.
10. User Test Plan & Scenarios
10.1 User Test Plan
Based on website’s functional requirements, our development team divided our website into 3
modules:
· Trip
· Blog
· Account
64
Each module will be tested in unit testing.
10.1.1 Unit Testing
Unit testing shall be done for each module to ensure that they performed correct actions and fulfill
intended functionalities. Development team will test input values by running them through different
modules and make sure return values are acceptable.
10.1.2 Integration Testing
Integration testing in a large group is necessary as we want to make sure that linkages between
different modules work properly. User interface testing and scenario testing will be combined to
check is there are unexpected incompatibility. Tests are designed for conforming the use case, and
same tests may be repeated for different modules.
10.1.3 System Testing
If our development team is satisfied with the integration test result. Then we will move into system
testing where wen test OnRoad, specifically individual functions, to verify if it meets the system
requirements. More specifically, we want assurance that intended functions such as creating trip
plans from API, updating profiles, deleting posted trips etc. can be fulfilled.
10.2 Scenarios
We identified two user scenarios to help us decide the performance of the website.
As a customer, I want to use the create trip plan function without an account. I would like to create
an account and login to access all functions on the website. I would like to pick point of interests
on the map and add to my trip. I want my trip plan to be posted in the OnRoad community so that
other travelers can reach me. I’d like to both read other user’s blogs and post my own blogs. In
addition, I want to update my account information and delete trip postings and blogs that I no
longer wanted.
As an administrator, I would like to communicate with users through online chat box and emails
regarding problems and concerns.
11. System Capacity & Performance
11.1 Storage Needs
OnRoad will be using Mango DB and AWS as the fundamental services to support our website’s
overall performance. We will estimate our storage based on our website functions which determine
what type data we will storage. We will first use the default size settings for both database and
server during the testing phase and we will increase the capacity accordingly to our estimate
number of users during the first year of operation. As more users use our platforms, more storage
65
will be added. We are showing the storage estimate (first year operation only) by tables as the
following:
 Account table – this table includes all information of users including username, password,
personal information (address, phone number, etc) and so on. We estimated that we will be
reaching 1,000,000 users in our first year of operation and we estimated each row of the
table will take space up to 500 bytes. Therefore, we will expect the total storage we need
for this table will be 500,000,000 bytes, or 500 megabytes.
 Trip Plan table – this table contains six sub-tables:
o Main table: this table includes trip plan information including trip plan cities, times,
and other details. We estimated that we will be reaching 100,000 trip plans in our
first year of operation and we estimated each row of the table will take space up to
1000 bytes. Therefore, we will expect the total storage we need for this table will
be 1,000,000,000 bytes, or 1000 megabytes.
o Published Trip Plan table: this table includes published trip plan information
including trip plan publish ID and time, user name and trip plan ID. We estimated
that we 80% of trip plans will be published in our first year of operation and we
estimated each row of the table will take space up to 100 bytes. Therefore, we will
expect the total storage we need for this table will be 8,000,000 bytes, or 80
megabytes.
o Request for Participation table: this table stores the request sent between users to
join other trip plans. We estimated that we will be receiving at least two requests
will be sent per published trip plan on average, which count up to 160,000 in our
first year of operation and we estimated each row of the table will take space up to
100 bytes. Therefore, we will expect the total storage we need for this table will be
16,000,000 bytes, or 16 megabytes.
o Comment for Trip Plan table: this table includes information like comment content,
date, ID, etc. Since there will be more words to be stored and we estimate there will
be at least five comments on each trip plan in our first year of operation, which
results in 500,000 comments. We estimated the total space we need will be up to
1000 bytes per row and 500,000,000 bytes in total, or 500 megabytes.
o Feedback table: this table includes feedback from users about their trip. We
estimate there will be 50% of users will give feedback on their trip plans in our first
year of operation, which results in 50000 feedbacks. We estimated the total space
we need will be up to 1000 bytes per row and 500,000,000 bytes in total, or 500
megabytes.
 Blog table: this table contains two sub-tables: main table and comment table. Since the
structure of the tables are similar to the trip plan table above, we decided to discuss them
at a time rather than separately. We estimated that we will have both blog and comment
for blog combined as 300000 rows (50000 blogs plus 250000 comments). Since we only
support URL for pictures and videos, meaning that we don’t store images and video clips,
we will not only need space to store writing contents. We estimated there will be up to
5000 bytes per row and the total space we need will be 1,500,000,000 bytes, or 1500
megabytes.
 Customer service table: this table contains all the information generated from customer
support chat. We estimate we will be receiving on average ten live chats daily and each
row will take space up to 2500 bytes. Therefore, the total space we will need will be
66
90,125,000 bytes, or 90 megabytes.
 The last table will be the representative table, which contains our representative employees’
information, which is similar to our user information. We will be having eight
representatives in our first year of operation and each one’s information will use space of
500 bytes. The total will be 4000 bytes.
By summing them up, we will need 3500+ MB of storage for our first year of operation. Mongo
DB offers several options and we will choose their essential plan which offers unlimited storage
but will charge by $0.08/hr of usage and AWS also has a promotion of 5GB Amazon S3 storage
for free for the first year of registration which perfectly fits our need. If there will be more users
than we expected, we will upgrade our storage to paid options and this document will be updated
after one year of free use for the AWS. (quote both AWS and MDB pricing)
https://aws.amazon.com/s3/pricing/?sc_channel=PS&sc_campaign=acquisition_US&sc_publisher=googl
e&sc_medium=s3_b&sc_content=sitelink&sc_detail=%2Baws%20%2Bstorage&sc_category=s3&sc_seg
ment=pricing&sc_matchtype=b&sc_country=US&s_kwcid=AL!4422!3!192085379728!b!!g!!%2Baws%
20%2Bstorage&ef_id=WeprrQAAAHV5QkX5:20180513163300:s
https://www.mongodb.com/cloud/atlas/pricing
11.2 Number & Type of Users
The composition of our users includes customers which will be the majority of the users, customer
representatives who will offer live assistance, and website managers. Because our websites offer
several platforms including trip plans platform, blog platform and find-a-partner platform, we will
divide our users by platforms. As we mentioned in the beginning, long distance road trip business
is growing over the past few years. We expected a hype of one million monthly users at the end of
the first year.
Trip plan users: trip plan users include user who use our trip plan creators as well as trip plan
viewer. As this is our main function, we are expecting that 90% users visiting our website will use
this function for the first year. As more blogs are created over time, more users are attracted by the
blog contents, the percentage could be lower in future. We estimated that there will be 900,000
monthly users at the end of first year.
Blog users: as mentioned above, the blog contents require some time to be fully mature. Therefore,
in the first year, we will not see many people visiting the blog page. But the blog function will be
a main feature that will capture a specific blog fans in future. We estimated that there will be
100,000 users in this category.
Find-A-Partner user: the amount of this group of users is determined by how any users are using
the trip plans creator for themselves only instead of sharing with others. Sharing trip plans with
known friends is also seen as users in this group. We estimated 70% of users will be either sharing
67
their trip plans with friends or find unknown people to travel together. Therefore, we estimate that
there will be 630,000 users in this category.
11.3 Transactions
The following are the transactions that occur from users throughout our platforms. The times are
predicted based on our testing results. The transaction time is relevant in terms of competing with
competitors in the market. Improvement will be made over time.
Transaction Time Needed (Seconds)
Registration 63
Transaction Time Needed (Seconds)
Login 16
Transaction Time Needed (Seconds)
Update Profile 63
Transaction Time Needed (Seconds)
Manage Trip 186
Transaction Time Needed (Seconds)
Manage Requests 6
Transaction Time Needed (Seconds)
Create a trip plan 362
68
Transaction Time Needed (Seconds)
View a trip plan 66
Transaction Time Needed (Seconds)
Send a Request 6
Transaction Time Needed (Seconds)
Post a blog 304
Transaction Time Needed (Seconds)
View a blog 124
Transaction Time Needed (Seconds)
Post a Comment 66
12. Implementation Stages & Conversion/Installation method
There are 3 implementation stages for our website: coding, testing and installation. These stages
are the stepping stones which ultimately build up to our successfully running website.
12.1 Coding
The coding stage was conducted based on business goals, functional requirements, and system
analysis which documented in earlier phases. Our development team built database and core
functions according to our business need. User interface and CSS were developed in the early
stages. Core functions and Mapbox API function were added subsequently.
69
12.2 Testing
Testing helps determining defects in our web applications. Our developers will make corrections
accordingly. We used github to track source code files and file changes. Testing includes unit
testing, integration testing and system testing, which will be discussed later in User test plan &
scenarios section.
12.3 Installation
Installation is the last step in our implementation stage. OnRoad Trip Planner will be launched
through AWS. No additional hardware or software required as all things necessary will be provided
by AWS.
13. Support & Training
13.1 User Training Plan
13.1.1 Training Goals
The website of OnRoad Trip Planner is an online trip planning tool for road trippers all around the world
to create trip plans, find trip partners and surf traveling blogs. The end users of OnRoad are defined as road
trippers. To help our end users get familiar with major functions of OnRoad website, the user training plan
is created with three goals:
 Help the end users get an overall understanding of OnRoad Company and OnRoad website.
 Instruct the end users to use all functions of OnRoad website.
 Instruct the internal employees to use all function of OnRoad website and get familiar with
the website flow, so that they would be able to further develop and support OnRoad website.
13.1.2 Training Methodologies
13.1.2.1 FAQs
The website of OnRoad Trip Planner provides a web page of FAQs which includes general
questions and answers users concerned about the website and our services. FAQs is the simplest
training methodology which can help our end users get familiar with OnRoad website and its major
functions quickly. The content of FAQs is attached in the Appendix A. The web page of FAQs is
created by the product development team and will be maintained and updated by the customer
service department.
13.1.2.2 User Training Video
The homepage of OnRoad Trip Planner will attach a pop-up window on the bottom right corner,
which contains a user training video. The user training video provides visualized instructions on
all functions of OnRoad website and the website flow. The video will be performed automatically
when each end user enters into the homepage. Thanks to OnRoad website’s user-friendly and
intuitive design, a three-minute video will be enough for training the end users. Additionally, the
user training video will be also used as an introductory video of OnRoad Website for internal
employees.
70
13.1.2.3 New Employee Orientation
Once OnRoad website goes public, we will face an issue to hire new employees for the website’s
ongoing maintenance and support. A 3-day new employee orientation, which covers database,
external APIs, hardware, software, web server, web security, the website’s functions, marketing
strategies, OnRoad internal management portal, and customer service, will be conducted in person
to help new employees get familiar with OnRoad Trip Planner and be in professional quickly.
13.2 Help Functions (Tier 4 Support)
Tier 0 Support- Self-help and user retrieved information
As mentioned in the user training methodologies, OnRoad website provides a web page of FAQs
which provides a simple guide about the website and our services. The web page of FAQs is
created by the product development team and will be maintained and updated by the customer
service team.
Tier 1 Support - Basic help desk resolution
The customer service team of OnRoad provides customer services through email, phone, and
online chart. The information of connectable email and phone number is provided on the web page
of Contact Us. Users will expect to receive a reply for email assistance within 48 hours. Phone
assistance would be available from 10 am to 4 pm per weekday (not available on Saturday and
Sunday). Online chat can be accessed through a pop-box on the bottom right corner on the OnRoad
website and it will be provided on a 24*7*365 schedule.
Tier 2 Support - In-depth technical support
The problems, which cannot be solved by the customer service team and which require technical
support, will be thrown out to the technical maintenance team.
Tier 3 Support - Expert product and service support
The problems relating to the product and services will be viewed, analyzed, discussed, and solved
by the website development team.
Tier 4 Support - Outside support for problems not supported by the organization
The problems involving external resources, such as Mapbox Map API and external links, will
require outside supports. The technical maintenance department will be responsible for
collaborating with outside organizations for solving these problems.
13.3 Installation & Turn-on Strategies
The website of OnRoad Trip Planner was first launched to Bitnami Launchpad through Amazon
Elastic Compute Cloud (Amazon EC2) which provides secure, resizable compute capacity in the
web cloud. MongoDB, which is an open-source document-oriented database using dynamic
schemas, is used as the back-end database of OnRoad website. HTML, CSS and JAVASCRIPT
71
are major web development languages used for developing the website. Mapbox Map API with its
related functions, including Directions API, Geocoding API, Optimization API, Datasets API, and
Uploads API, combined with our Points of Interests datasets (including attractions, hotels, and
restaurants) were added into the website to turn on the major functions.
Because of the user-friendly and intuitive design of OnRoad website, after the final test of OnRoad
website and going public, users can explore the website’s major functions based on their previous
online experiences to create accounts, login, create travel plans, send requests for participatio n,
manage travel plans, manage accounts, post and manage blogs. Additionally, users will be able to
seek instructions through a user training video which is launched in a pop-up window on the
bottom right corner of the homepage and online chat box which is available on a 24*7*365
schedule. Users’ problems and comments will be recorded and used for the further improvement
of OnRoad website.
13.4 Ongoing Maintenance/Support
The ongoing maintenance is an important part of OnRoad’s website which will mainly help to fix
problems, support the operation, and upgrade functions. The technical department and the
customer service department of OnRoad will provide ongoing maintenance for OnRoad website.
The areas involved in the ongoing maintenance are the following:
 Website performance analysis, bugs detections and fixing
 Development of new functions and overall website improvement
 Database update and maintenance
 The update and maintenance of Mapbox Map APIs, the integration of OnRoad website and
external platforms
 Maintenance of the hardware, software, and server which used to support OnRoad Website
 Website security and the security of user information
 The update of FAQs and the user training video, customer service through email, phone
call, and online chat box
 Advertising and promotion strategies, marketing performance analysis
 The internal management portal which is used to support the operation of OnRoad website
14. Project Management Documentation: Sprint 3
14.1 Sprint and Product Backlogs
We started our Sprint 3 from April 16th and completed it on May 2nd, taking total 138 hours.
There were many important issues we must have done in order to finish this project as scheduled.
Team members have been assigned different tasks and everyone was in charge of several important
functions. Because the majority of main functions were created and the website was planned to
launch in this sprint, we considered the tasks in this sprint were equally important. The following
two diagrams present the backlog of Sprint 3, the hours we allocated for each task, and the assignee
for each task.
72
14.2 Burndown Chart: Sprint 3
The following diagram shows the burndown chart for our Sprint 3, demonstrating the comparison
of the teams’ actual hours they spent and the scheduled hours the team estimated. As Sprint 2, the
hours we spent on Sprint 3 were behind what we expected starting the first day. But, we finished
all the tasks and meet the schedule on the last day.
73
14.3 Final Scrum Documentation
As we mentioned before, our team have used Jira, a project management tool, to manage our
OnRoad Trip Planner project, with tracking the issues occurred in the website development process
and prioritizing the tasks in each sprint. We decided to make three Sprints along with the website
development process, and spent 290 hours in total to complete this project, with 61 hours for Sprint
1, 91 hours for Sprint 2 and 138 hours for Sprint 3.
In Sprint 1, we identified our user stories both customer and administrator, and prepared the
hardware, software tools for the further use to develop our website such as installing MongoDB,
creating AWS account, and others. In Sprint 2, we have identified six issues which were building
the database, creating the database diagram, wireframing the user interface, designing the public
facing interface, creating user sign-up page and documenting these process. The most important
task in this Sprint 2 was to build the database. In Sprint 3, we completed all the required features
of our websites, tested and debugged the system, and wrote up the final documentation.
74
Appendix A
FQAs
1: What can you expect on OnRoad Trip Planner?
OnRoad Trip Planner is a trip planning website for road trippers all around the world. You can use OnRoad
to create road trip plans, find trip partners, and share travelling blogs!
2: Is OnRoad Trip planner free?
We provide totally free service for all road trippers!
3: I am a newuser ofOnRoad. What should I do to begin my newjourney on OnRoad website?
 Homepage
o Enter your desired departure, destination, trip dates,and then create your unique trip
o Plan.
o Watch the user training video on the bottom corner of OnRoad Homepage for website
o Directions.
 Map Page
o Edit your departure and destination
o Choose your transportation, route, and get a real-time map navigation
o Zoom in, zoom out, and drag the map around to explore the attractions, hotels, and
restaurants (map markers) you are interested in.
o Add your interested attractions, hotels, and restaurants into your customized trip plan
through the “Add to Trip” button
o Save your customized trip plan through “Save Trip” button
o We provide recommendations to you based on your departure, destination, and
route. Please try our recommendation services through the navigation bar on the
map to save your time!
 Trip Plans Section
o View and search others’ published trip plans
o Click “View” to get details of the trip plan you are interested in
o Send request for participation through the “Participate” button
 Blog Section
o Share your trip stories with a blog title, content, and an image URL
o Explore wonderful places in the world and get others’ trip experiences
o Check bloggers’ information
 Account
o Update your account profile
o Edit, publish/unpublish, export, delete, give feedback to your trips and manage your
requests for participation under the section of “Manage Your Trips”
o Delete your posted blogs under the section of “Manage Your Blogs”
o Delete your account permanently
 Contact Us
o Contact us through email, phone, or online chat.
4: Why do I need to create an account?
Without an account, you can only create your trip plans, explore others’ trip plans, and read blogs
on the homepage.
75
With an account, you can save your trip plans, manage your trip plans, find partners, request for
participation, and publish blogs.
5: Can I create and save multiple trip plans?
Yes, of course!
If you have other questions, please feel free to contact us.
Email: onroad_trip@gmail.com *Reply in 48 hours*
Phone: 571-594-0009 *10am-4pm, Mon-Fri*
76
Appendix B
Website Address:
http://34.205.33.33:4444/
77
References
Blount, A. (2017, June 28). 2017–2018 Portrait of American Travelers Study Released. MMGY
Global. Retrieved on May 13, 2018 from https://www.mmgyglobal.com/news/news-
2017%E2%80%932018-portrait-of-american-travelers
Christoff, J. (2017, September 13). US Road Trips on the Rise. Retrieved on February 12, 2018
from https://www.travelpulse.com/news/impacting-travel/us-road-trips-on-the-rise.html
Growth of travel expenditure in the U.S. 2011-2020 | Statistic. (2017, July 01). Retrieved on
February 12, 2018 from https://www.statista.com/statistics/207106/projected-growth-of-
travel-expenditures-in-the-us/
Johnson, T. (2014). New Study Reveals When, Where and How Much Motorists Drive.
NewsRoom. Retrieved on May 13, 2018 from https://newsroom.aaa.com/2015/04/new-
study-reveals-much-motorists-drive/
Rosenbloom, S. (2018, February 16). The Great American Road Trip: Shorter and More Popular
Than Ever. The New York Times. Retrieved on May 13, 2018 from
https://www.nytimes.com/2018/02/16/travel/road-trips-in-the-united-states.html

More Related Content

What's hot

Soa In The Real World
Soa In The Real WorldSoa In The Real World
Soa In The Real Worldssiliveri
 
Final report Jeanne Pigassou: Robotic device for assessing touch sensitivity ...
Final report Jeanne Pigassou: Robotic device for assessing touch sensitivity ...Final report Jeanne Pigassou: Robotic device for assessing touch sensitivity ...
Final report Jeanne Pigassou: Robotic device for assessing touch sensitivity ...jeannejpi
 
ICT SBA final
ICT SBA finalICT SBA final
ICT SBA finalLuke Chen
 
Ship maintenance performance measurement
Ship maintenance performance measurementShip maintenance performance measurement
Ship maintenance performance measurementGopalakrishnan P
 
Gallaghers' i2 guidebook_abridged.
Gallaghers' i2 guidebook_abridged.Gallaghers' i2 guidebook_abridged.
Gallaghers' i2 guidebook_abridged.James Gallagher
 
Instructor utilities guide
Instructor utilities guideInstructor utilities guide
Instructor utilities guideapaezgonzal
 
Understanding Software Development Life Cycle
Understanding Software Development Life CycleUnderstanding Software Development Life Cycle
Understanding Software Development Life CycleKarthik Kastury
 
Handbook for vaccine and cold chain handlers 2015 (26.08.15)
Handbook for vaccine and cold chain  handlers 2015 (26.08.15)Handbook for vaccine and cold chain  handlers 2015 (26.08.15)
Handbook for vaccine and cold chain handlers 2015 (26.08.15)drdduttaM
 
It Sector Risk Assessment Report Final
It Sector Risk Assessment Report FinalIt Sector Risk Assessment Report Final
It Sector Risk Assessment Report FinalHongyang Wang
 
2020 ccaf-3rd-global-cryptoasset-benchmarking-study
2020 ccaf-3rd-global-cryptoasset-benchmarking-study2020 ccaf-3rd-global-cryptoasset-benchmarking-study
2020 ccaf-3rd-global-cryptoasset-benchmarking-studyLoeb Smith Attorneys
 
Production écrite racontez vos vacances
Production écrite racontez vos vacancesProduction écrite racontez vos vacances
Production écrite racontez vos vacancesNitishaHazareesing
 

What's hot (17)

Soa In The Real World
Soa In The Real WorldSoa In The Real World
Soa In The Real World
 
Final report Jeanne Pigassou: Robotic device for assessing touch sensitivity ...
Final report Jeanne Pigassou: Robotic device for assessing touch sensitivity ...Final report Jeanne Pigassou: Robotic device for assessing touch sensitivity ...
Final report Jeanne Pigassou: Robotic device for assessing touch sensitivity ...
 
luan van thac si a study on translation of english terminologies related to ...
luan van thac si a study on translation of english  terminologies related to ...luan van thac si a study on translation of english  terminologies related to ...
luan van thac si a study on translation of english terminologies related to ...
 
Fed lib 2011 competencies
Fed lib 2011 competenciesFed lib 2011 competencies
Fed lib 2011 competencies
 
ICT SBA final
ICT SBA finalICT SBA final
ICT SBA final
 
Ship maintenance performance measurement
Ship maintenance performance measurementShip maintenance performance measurement
Ship maintenance performance measurement
 
Final_Report_12th
Final_Report_12thFinal_Report_12th
Final_Report_12th
 
Gallaghers' i2 guidebook_abridged.
Gallaghers' i2 guidebook_abridged.Gallaghers' i2 guidebook_abridged.
Gallaghers' i2 guidebook_abridged.
 
Instructor utilities guide
Instructor utilities guideInstructor utilities guide
Instructor utilities guide
 
Understanding Software Development Life Cycle
Understanding Software Development Life CycleUnderstanding Software Development Life Cycle
Understanding Software Development Life Cycle
 
Handbook for vaccine and cold chain handlers 2015 (26.08.15)
Handbook for vaccine and cold chain  handlers 2015 (26.08.15)Handbook for vaccine and cold chain  handlers 2015 (26.08.15)
Handbook for vaccine and cold chain handlers 2015 (26.08.15)
 
It Sector Risk Assessment Report Final
It Sector Risk Assessment Report FinalIt Sector Risk Assessment Report Final
It Sector Risk Assessment Report Final
 
2020 ccaf-3rd-global-cryptoasset-benchmarking-study
2020 ccaf-3rd-global-cryptoasset-benchmarking-study2020 ccaf-3rd-global-cryptoasset-benchmarking-study
2020 ccaf-3rd-global-cryptoasset-benchmarking-study
 
Enrollment Management Plan
Enrollment Management PlanEnrollment Management Plan
Enrollment Management Plan
 
Transport Assessment
Transport AssessmentTransport Assessment
Transport Assessment
 
Production écrite racontez vos vacances
Production écrite racontez vos vacancesProduction écrite racontez vos vacances
Production écrite racontez vos vacances
 
Sentrifugo 3.2 User Guide
Sentrifugo 3.2  User GuideSentrifugo 3.2  User Guide
Sentrifugo 3.2 User Guide
 

Similar to OnRoad Website Final documentation

Project Plan And Srs Final
Project Plan And Srs FinalProject Plan And Srs Final
Project Plan And Srs Finalguest24783f
 
Hướng dẫn sử dụng Testo 320
Hướng dẫn sử dụng Testo 320Hướng dẫn sử dụng Testo 320
Hướng dẫn sử dụng Testo 320Tenmars Việt Nam
 
Wireless Geolocation
Wireless GeolocationWireless Geolocation
Wireless GeolocationFatema Zohora
 
Born wills intelligence_oversight_tk_en copia
Born wills intelligence_oversight_tk_en copiaBorn wills intelligence_oversight_tk_en copia
Born wills intelligence_oversight_tk_en copiamag88
 
ZSSS_End of Project Evaluation Report
ZSSS_End of Project Evaluation ReportZSSS_End of Project Evaluation Report
ZSSS_End of Project Evaluation ReportClaudios Hakuna
 
Ict in africa education fullreport
Ict in africa education fullreportIct in africa education fullreport
Ict in africa education fullreportStefano Lariccia
 
Blue Doc User Manual
Blue Doc   User ManualBlue Doc   User Manual
Blue Doc User Manualgueste2804e
 
Introduction to system_administration
Introduction to system_administrationIntroduction to system_administration
Introduction to system_administrationmeoconhs2612
 
Ewrt1A Reader Writing Resources
Ewrt1A Reader Writing ResourcesEwrt1A Reader Writing Resources
Ewrt1A Reader Writing ResourcesKaren Chow
 
Yahoo Web Analytics API Reference Guide
Yahoo Web Analytics API Reference GuideYahoo Web Analytics API Reference Guide
Yahoo Web Analytics API Reference GuideAndrew Talcott
 
Everyone print installatie handleiding 3.3 EN
Everyone print installatie handleiding 3.3  ENEveryone print installatie handleiding 3.3  EN
Everyone print installatie handleiding 3.3 ENEveryonePrint
 
report.doc
report.docreport.doc
report.docbutest
 

Similar to OnRoad Website Final documentation (20)

By d ui_styleguide_2012_fp35
By d ui_styleguide_2012_fp35By d ui_styleguide_2012_fp35
By d ui_styleguide_2012_fp35
 
Gemini Manual
Gemini ManualGemini Manual
Gemini Manual
 
Project Plan And Srs Final
Project Plan And Srs FinalProject Plan And Srs Final
Project Plan And Srs Final
 
Glogster edu-users-guide
Glogster edu-users-guideGlogster edu-users-guide
Glogster edu-users-guide
 
Hướng dẫn sử dụng Testo 320
Hướng dẫn sử dụng Testo 320Hướng dẫn sử dụng Testo 320
Hướng dẫn sử dụng Testo 320
 
Wireless Geolocation
Wireless GeolocationWireless Geolocation
Wireless Geolocation
 
It project development fundamentals
It project development fundamentalsIt project development fundamentals
It project development fundamentals
 
Report1995.pdf
Report1995.pdfReport1995.pdf
Report1995.pdf
 
Born wills intelligence_oversight_tk_en copia
Born wills intelligence_oversight_tk_en copiaBorn wills intelligence_oversight_tk_en copia
Born wills intelligence_oversight_tk_en copia
 
ZSSS_End of Project Evaluation Report
ZSSS_End of Project Evaluation ReportZSSS_End of Project Evaluation Report
ZSSS_End of Project Evaluation Report
 
Ict in africa education fullreport
Ict in africa education fullreportIct in africa education fullreport
Ict in africa education fullreport
 
Blue Doc User Manual
Blue Doc   User ManualBlue Doc   User Manual
Blue Doc User Manual
 
GSUInnovators_v05
GSUInnovators_v05GSUInnovators_v05
GSUInnovators_v05
 
Introduction to system_administration
Introduction to system_administrationIntroduction to system_administration
Introduction to system_administration
 
Ewrt1A Reader Writing Resources
Ewrt1A Reader Writing ResourcesEwrt1A Reader Writing Resources
Ewrt1A Reader Writing Resources
 
Yahoo Web Analytics API Reference Guide
Yahoo Web Analytics API Reference GuideYahoo Web Analytics API Reference Guide
Yahoo Web Analytics API Reference Guide
 
sg248293
sg248293sg248293
sg248293
 
Everyone print installatie handleiding 3.3 EN
Everyone print installatie handleiding 3.3  ENEveryone print installatie handleiding 3.3  EN
Everyone print installatie handleiding 3.3 EN
 
report.doc
report.docreport.doc
report.doc
 
Drools expert-docs
Drools expert-docsDrools expert-docs
Drools expert-docs
 

Recently uploaded

Future Of Sample Report 2024 | Redacted Version
Future Of Sample Report 2024 | Redacted VersionFuture Of Sample Report 2024 | Redacted Version
Future Of Sample Report 2024 | Redacted VersionMintel Group
 
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City GurgaonCall Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaoncallgirls2057
 
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...ictsugar
 
Contemporary Economic Issues Facing the Filipino Entrepreneur (1).pptx
Contemporary Economic Issues Facing the Filipino Entrepreneur (1).pptxContemporary Economic Issues Facing the Filipino Entrepreneur (1).pptx
Contemporary Economic Issues Facing the Filipino Entrepreneur (1).pptxMarkAnthonyAurellano
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCRashishs7044
 
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort ServiceCall US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Servicecallgirls2057
 
Intro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdfIntro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdfpollardmorgan
 
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607dollysharma2066
 
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...lizamodels9
 
Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncr
Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / NcrCall Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncr
Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncrdollysharma2066
 
Organizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessOrganizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessSeta Wicaksana
 
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607dollysharma2066
 
8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCR8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCRashishs7044
 
Kenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby AfricaKenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby Africaictsugar
 
2024 Numerator Consumer Study of Cannabis Usage
2024 Numerator Consumer Study of Cannabis Usage2024 Numerator Consumer Study of Cannabis Usage
2024 Numerator Consumer Study of Cannabis UsageNeil Kimberley
 
Call Girls Miyapur 7001305949 all area service COD available Any Time
Call Girls Miyapur 7001305949 all area service COD available Any TimeCall Girls Miyapur 7001305949 all area service COD available Any Time
Call Girls Miyapur 7001305949 all area service COD available Any Timedelhimodelshub1
 
MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?Olivia Kresic
 
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...lizamodels9
 
Investment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy CheruiyotInvestment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy Cheruiyotictsugar
 
Case study on tata clothing brand zudio in detail
Case study on tata clothing brand zudio in detailCase study on tata clothing brand zudio in detail
Case study on tata clothing brand zudio in detailAriel592675
 

Recently uploaded (20)

Future Of Sample Report 2024 | Redacted Version
Future Of Sample Report 2024 | Redacted VersionFuture Of Sample Report 2024 | Redacted Version
Future Of Sample Report 2024 | Redacted Version
 
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City GurgaonCall Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaon
 
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
 
Contemporary Economic Issues Facing the Filipino Entrepreneur (1).pptx
Contemporary Economic Issues Facing the Filipino Entrepreneur (1).pptxContemporary Economic Issues Facing the Filipino Entrepreneur (1).pptx
Contemporary Economic Issues Facing the Filipino Entrepreneur (1).pptx
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
 
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort ServiceCall US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
 
Intro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdfIntro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdf
 
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
 
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
 
Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncr
Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / NcrCall Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncr
Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncr
 
Organizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessOrganizational Structure Running A Successful Business
Organizational Structure Running A Successful Business
 
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
 
8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCR8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCR
 
Kenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby AfricaKenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby Africa
 
2024 Numerator Consumer Study of Cannabis Usage
2024 Numerator Consumer Study of Cannabis Usage2024 Numerator Consumer Study of Cannabis Usage
2024 Numerator Consumer Study of Cannabis Usage
 
Call Girls Miyapur 7001305949 all area service COD available Any Time
Call Girls Miyapur 7001305949 all area service COD available Any TimeCall Girls Miyapur 7001305949 all area service COD available Any Time
Call Girls Miyapur 7001305949 all area service COD available Any Time
 
MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?
 
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
 
Investment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy CheruiyotInvestment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy Cheruiyot
 
Case study on tata clothing brand zudio in detail
Case study on tata clothing brand zudio in detailCase study on tata clothing brand zudio in detail
Case study on tata clothing brand zudio in detail
 

OnRoad Website Final documentation

  • 1. Final Documentation ISTM 6210 Integrated Information Systems Capstone Dr. Subhasish Dasgupta Spring 2018 OnRoad Trip Planner Group D Jimmy Chen, Renze He, Yuting Liu, Jiahui Wang
  • 2. 2 Table of Contents List of Figures................................................................................................................................ 5 1. Introduction............................................................................................................................... 6 1.1 System Introduction................................................................................................................6 1.2 Project Charter .......................................................................................................................7 1.2.2 Objectives ..........................................................................................................................8 1.2.3 Key Milestones ...................................................................................................................9 1.2.4 Communication Methods.....................................................................................................9 2. Business Case........................................................................................................................... 11 2.1 Organization Description.......................................................................................................11 2.1.1 Environment.....................................................................................................................11 2.1.2 Business Goals..................................................................................................................12 2.1.3 Competitive Position & Benchmark ...................................................................................12 2.1.4 Summary: Need for the system ..........................................................................................13 2.2 System Description................................................................................................................14 2.2.1 Business or Administrative Problems Addressed.................................................................14 2.2.2 Data Flow Diagrams..........................................................................................................14 2.2.3 Business Assumptions and Risks........................................................................................17 2.2.4 System Cost Targets & ROI Estimates................................................................................19 3. Requirement Specifications and Models............................................................................... 20 3.1 Activity Diagrams..................................................................................................................20 3.2 Use Case ................................................................................................................................22 3.3 Interfaces...............................................................................................................................23 3.3.1 Internal Interfaces .............................................................................................................23 3.3.2 External Interfaces ............................................................................................................24 4. Project Management Documentation: Sprint 1 ................................................................... 24 4.1 User Stories ...........................................................................................................................24 4.1.1 Customer User Story.........................................................................................................25 4.1.2 Administrator User Story...................................................................................................25 4.2 ProductBacklog....................................................................................................................25 5. Detailed Software/Systems Design......................................................................................... 27 5.1 Classes and Methods..............................................................................................................27 5.2 Class Diagram .......................................................................................................................29 5.3 Screens and Screen Flow (Human Computer Interaction).....................................................29 5.3.1 Home page .......................................................................................................................30 5.3.2 Registration page ..............................................................................................................31 5.3.3 Login page........................................................................................................................32 5.3.4 Trip listings search............................................................................................................33 5.3.5 Trip information................................................................................................................34
  • 3. 3 5.3.6 User trip management........................................................................................................35 5.3.7 Requests management.......................................................................................................36 5.3.8 Blog listing.......................................................................................................................37 5.3.9 Blog viewing ....................................................................................................................38 5.3.10 User’s blog management..................................................................................................39 5.3.11 User’s account management.............................................................................................40 5.3.12 Customer service.............................................................................................................41 5.3.13 Screen Flows ..................................................................................................................41 5.4 Report...................................................................................................................................43 5.4.1 Number of Account Creation Diagram ...............................................................................43 5.4.2 Profit Diagram..................................................................................................................44 5.4.3 Number of Trip Created Diagram vs. Number of Trip Posted Diagram.................................45 5.4.4 Number of Blogs Diagram.................................................................................................45 5.4.5 Diagram of Website Traffic ...............................................................................................46 5.5 Business Rules .......................................................................................................................46 6. Behavioral Modeling............................................................................................................... 47 6.1 State Chart............................................................................................................................47 6.2 Sequence Diagram.................................................................................................................48 7. Database Design...................................................................................................................... 50 7.1 Physical Database Schema and Description...........................................................................50 7.1.1 Entity Relationship Diagram for SQL.................................................................................50 7.1.2 Entity Relationship Diagram for MongoDB (NoSQL) .........................................................53 7.2 Data Dictionary .....................................................................................................................54 7.3 Test and Demonstration Data................................................................................................56 8. Security .................................................................................................................................... 59 8.1 Security Identity and Access Management ............................................................................59 8.2 Database Security..................................................................................................................59 8.3 Server Security......................................................................................................................60 8.4 Operation Security ................................................................................................................60 9. Project Management Documentation: Sprint 2 ................................................................... 60 9.1 Sprint and Product Backlogs: Sprint 2..................................................................................61 9.2 Burndown Chart: Sprint 2 ....................................................................................................62 10. User Test Plan & Scenarios.................................................................................................. 63 10.1 User Test Plan......................................................................................................................63 10.1.1 Unit Testing....................................................................................................................64 10.1.2 Integration Testing ..........................................................................................................64 10.1.3 System Testing................................................................................................................64 10.2 Scenarios .............................................................................................................................64 11. System Capacity & Performance......................................................................................... 64
  • 4. 4 11.1 Storage Needs ......................................................................................................................64 11.2 Number & Type of Users.....................................................................................................66 11.3 Transactions ........................................................................................................................67 12. Implementation Stages & Conversion/Installation method.............................................. 68 12.1 Coding.................................................................................................................................68 12.2 Testing.................................................................................................................................69 12.3 Installation...........................................................................................................................69 13. Support & Training .............................................................................................................. 69 13.1 User Training Plan ..............................................................................................................69 13.1.1 Training Goals ................................................................................................................69 13.1.2 Training Methodologies...................................................................................................69 13.2 Help Functions (Tier 4 Support)..........................................................................................70 13.3 Installation & Turn-on Strategies........................................................................................70 13.4 Ongoing Maintenance/Support............................................................................................71 14. Project Management Documentation: Sprint 3 ................................................................. 71 14.1 Sprint and Product Backlogs ...............................................................................................71 14.2 Burndown Chart: Sprint 3...................................................................................................72 14.3 Final Scrum Documentation................................................................................................73 Appendix A .................................................................................................................................. 74 FQAs...........................................................................................................................................74 Appendix B .................................................................................................................................. 76 Website Address:.........................................................................................................................76 References.................................................................................................................................... 77
  • 5. 5 List of Figures (STATE CHART DIAGRAM: USER CREATES A TRIP PLAN)..........................................................................................................................48 (STATE CHART DIAGRAM: USER COMPOSES ABLOG).............................................................................................................................48 (SEQUENCE DIAGRAM: USER CREATES, SAVES, PUBLISHES AND MANAGES ATRIP PLAN)..........................................................................49 (SEQUENCE DIAGRAM: USER COMPOSES,POSTS AND MODIFIES A TRIP BLOG)........................................................................................49 (SEQUENCE DIAGRAM: USER CONTACTS AND COMMUNICATES WITH CUSTOMER SERVICEREPRESENTATIVE)............................................50 (ONROAD TRIP PLANNER ERD FOR SQL).............................................................................................................................................51 (TABLES OF ONROAD INTERNAL PORTAL).............................................................................................................................................52 (ONROAD TRIP PLANNER ERD FOR MONGODB) .................................................................................................................................54 (TABLES IN DATABASE) ........................................................................................................................................................................57 (TABLE: TRIP PLAN).............................................................................................................................................................................57 (TABLE: ACCOUNT)..............................................................................................................................................................................58 (LOCALHOST:ACCOUNT)......................................................................................................................................................................58 (TABLE:BLOG) ....................................................................................................................................................................................59 (LOCALHOST:BLOG)............................................................................................................................................................................59 (PRODUCT BACKLOGS 1) .....................................................................................................................................................................61 (PRODUCT BACKLOGS 2) .....................................................................................................................................................................62 (BURNDOWN CHART FOR SPRINT 2).....................................................................................................................................................63
  • 6. 6 1. Introduction 1.1 System Introduction Have you ever had road trip before either individually or with friends or family? Before your trip starts, do you make the road-trip plan? Where do you search for the trip route information? Do you agree that making such trip plan is a complicated process? And sometimes people wish there were an “existing” trip route which has the same interests as them and they just follow this route to start their trips. OnRoad Trip planning platform is a web-based software application that helps travelers explore and create their road trip plans, share their road trip plans or participate in other travelers’ plans which have the same interests as them. Typically, we have defined road trip as people take traveling by car. According to the article “2017–2018 Portrait of American Travelers Study Released” from MMGY Global, it indicates that the number of United States travelers taking the road trips has jumped significantly from 22 percent to 39 percent among all the leisure travelers (Blount, 2017). Today, most of Americas, around 85 percent of travelers have a domestic travelling, with seeking an adventure and enjoying a flexible schedule, a number of them hitting the road, based on the article “The Great American Road Trip: Shorter and More Popular Than Ever” published on the New York Times (Rosenbloom, 2018). From a survey report “New Study Reveals When, Where and How Much Motorists Drive,” Johnson states that “Motorists age 16 years and older drive, on average, 29.2 miles per day or 10,658 miles per year. Women take more driving trips, but men spend 25 percent more time behind the wheel and drive 35 percent more miles than women. Motorists in the South drive the most (11,826 miles annually), while those in the Northeast drive the least (8,468 miles annually).” (Johnson, 2014) As the revival of the economy in the U.S, more and more people is willing to travel another place to spend their weekend. Taking a trip by car will be an optimize choose for them in terms of a flexible schedule and a budget consideration. The most outstanding and unique feature of our OnRoad Trip Planner system is our sharing system. We are creating an online community for people to find their common interests in traveling. They can share their plans and find great plans designed by others. They can also share their trips and help other people to have great tours. This software is about the road trip, so It will heavily rely on Google Map APIs. Once the traveler decides the routes, the tourist attractions, hotels, toll stations costs, mileage and gas costs and local restaurants will be automatically displayed on the map. The trip builders can base on their interests such as shopping, sport events, food, accommodations, and others to create their trip plans and our system could use the database it collects from the builders’ set and preference to provide suggestions for them to optimize the trip route. We are making the most efficient process in the market for people so that they can complete a trip designing and planning in a few step processes. Instead of letting people choose what they want, we are picking the best for them. We are making it simplistic, but not simple-minded.
  • 7. 7 Travelers can use our platform to find where people are heading by looking at published trip plans and to join the ones that they are interested in. They will see where and when people are traveling from and to. People can join a full trip, or they can participate trips that they want to join and decide on their whether they want to join or leave in the middle of the trip. However, they will need to inform the group about their desired part of the trip and the trip planner publisher can decided whether to accept the requests. People are always free to join and free to go. By browsing enormous database which will become larger and larger over time by collecting more information from trip sharing and reports, OnRoad Trip Planning is in additional providing safety advice which includes up-to-date road conditions and weather conditions for the route, and preparation guide. Besides, we require users to click the start button when they start their trips and click the finish button when they complete the trips in terms of security considerations. In addition, users will receive a bonus if they provide the feedback for us after they finish the trip. What’s more, OnRoad Trip Planning allows users to rate, review and read other users’ travel notes or blogs, providing social network platform for users to communicate. OnRoad Trip Planning is a totally free platform people can use our services and resources anytime, anywhere. Travelers can complete their trip plans by booking their hotels and making restaurant reservation through our website, which will direct the users to the booking website or other organization websites. 1.2 Project Charter 1.2.1 Project TeamMembers Name Role Responsibility Contact Subhasish Dasgupta Project Sponsor -Authorize the project -provide guidance to teams when necessary -monitor the progress of the project Email: dasgupta@gwu.edu Phone: (202) 994-7408
  • 8. 8 Jiahui Wang Developer -Create web application; -conduct functional and non-functional testing; -troubleshoot and debug applications; Email: jiahuiwang0928@g wu.edu Phone: (571)594-0009 Jinrong Chen Developer -Create web application; -conduct functional and non-functional testing; -troubleshoot and debug applications; Email.com: jinrongchen@gwu. edu Phone: (303)882-0324 Runze He Project Manager -Responsible for project initiation and planning; -monitor the project and deliverables to schedule; Email: herunze@gwu.edu Phone: (202) 705-0624 Yuting Liu Business Analyst -Collect information and data on project requirements; -Document technical and business requirements; -provides expertise on financial returns. Email: liuyut@gwu.edu Phone: (812) 606-5568 1.2.2Objectives The main objective of this project is to create a web application which enables users to design road trip plans, share road trip plans and connect with potential travel partners. The success of this
  • 9. 9 project is contingent upon the successful development of a web application and a successful business model. Technical objectives: ● Create a functional and stable web application ● Create a database that accomplishes data storing, querying, and retrieving ● Debug and test at each phase ● Finish the technical portion and publish product in 3 months Resource objective: ● Google Map APIs ● JIRA ● HTML Budget objectives: ● The budget of initial stage of web application development is limited to $1300. 1.2.3Key Milestones Key Milestones Date Phase 1 – Business Case Completed 2/12/2018 Phase 2 – Analysis Completed 3/5/2018 System Design Completed 3/26/2018 Implementation Completed 4/16/2018 Testing and Modification Completed 5/2/2018 Final Presentations 5/7/2018 1.2.4 Communication Methods Communication Type Purpose Frequency Date Output Channel
  • 10. 10 Kickoff Meeting Initial Review of project scope, organization and activities Once 1/29/18 Project scope In person Team meeting Update of project progress and action Once a week 2/3/18 2/5/18 2/11/18 Updated deliverable Email, Group chat, in- person meeting and Google Doc. Notifications Formal communication of new information As necessary New information and message Email and/or phone call Technical Meetings Discuss technical topics such as design, development, testing, etc. As scheduled Updated design or plan Email, Group chat, in- person meeting and Google Doc. Risk Assessment Meetings Update assessment and response to high risks As scheduled Risk management plan Email, Group chat, in- person meeting and Google Doc. Lessons Learned Session Review performances As scheduled Lessons Learned Analysis Report Email, Group chat, in- person meeting and Google
  • 11. 11 Doc. Closeout session Close project and publish web application formally As scheduled N/A Email, Group chat, and Google Doc. 2. Business Case 2.1 Organization Description OnRoad was founded in 2018 by four co-founders Jimmy Chen, Ruize He, Yuting Liu, Jiahui Wang. It is a web-based travel service platform that allows people from all over the world to build and share travel plans as well as find travel partners. We are aimed at providing the best travel planning services to improve your trip quality by guiding people to plan their trip on our exceptionally efficient trip planner engine, to share their wonderful plans in our social network platform and invite friends to see and edit, and to find people heading to the same destinations. In order to maintain our services, OnRoad seeks to make profit by advertising third-party hotels websites, such as marriot.com and hilton.com, booking websites, such as expedia.com and booking.com, local restaurants and other local business as well as their websites. Our partners and sponsors will be recommended accordingly in our system. We advertise them by putting them into the visible list of recommendations and our users can compare the prices provided by our partners and sponsors. Total clicks, click through rates and transaction rates will be taken into account for advertising costs. OnRoad utilizes all the resources to provide stable services to our users. We properly allocate physical resources, technical resources and human resources for our service improvement over time. We ensure that our website needs to be available and functional at any time, which all flow of information within our system between customers and partners are protected, and which our information and data are up-to-date and reliable for our customers to explore and use. 2.1.1 Environment The U.S. is an automobile dominant nation where most people drive for daily lives. Road trips become part of Americans lifestyle and 31 million people have posted photos of side mirror shot
  • 12. 12 taken on a road trip on Instagram in 2017 (Christoff, 2017). Road trip can be predicted as one of the most popular travel trends right now in 2018. Christoff also shows that, from 2016 to 2017, the percentage of road trips taken by Americans rose from 22 percent to 39 percent. Consumer spending also showed enormous growth. In 2015, travelers spent $66.6 billion hitting the road, while last year, that number grew to a whopping $113.7 billion. Another statistic report by Statista(“Annual growth of travel”, 2017) states that the travel expenditure in the U.S. has grown from 2.1% in 2016 to 3.1% in 2017 and is looking to grow to 4.1% in 2018 and maintain stable until 2020. The leisure travel industry is growing in recent years in the U.S. With the recovery of the U.S. economics, people now tend to spend more than the previous years. We can see the grow in market, and we found the opportunity to provide great services to people who love road tripping and traveling. 2.1.2 Business Goals  To become the best travel planning site in the market  To become profitable in two years  To help people build their trip plans, share their plans and trips, and find travel partners  To keep our contents enriched, available, stable and diversified, to keep our system running stably, and to keep our information updated and reliable  To create more partnerships with great third-party service sites  To improve our system and services consistently and sustainably 2.1.3 Competitive Position & Benchmark Why are we here? There are two reasons that the market needs us. First, there is no such a good trip planner or a good find a travel partner platform for travelers. Because planning a trip is time consuming and your trip quality heavily depends on your plans, the preparation process, trip planning becomes the key to the succeed of your trip. None of our competitors is providing an efficient and easy-to-use planning services, making their services less attractive to travelers. For example, Roadtrippers.com is one of our main competitors and, based on our research, their trip planner provides more than a hundred options within one page, a painful process for customers to use. Planning a trip is already complicated, why would I use a complicated system to plan a trip? Our selling point will be an efficient and easy-to-use trip planner to do the same excellent and even better jobs that our competitors can do. Second, there's a gap in the market that no website can currently handle both functions of trip planning and social networking well. We believe the combination can create great value for
  • 13. 13 travelers to make their trips successful. Other's trip experiences are the most valuable treasure people can refer to before going out. By sharing your incoming plan or share your own experience, many plans can be improved, and many people can be helped a lot. Everyone can enjoy the community in helping others or being helped. The Target We are initially targeting at all the roadtrippers who travel leisurely in the U.S. Our trip planners are mainly focusing on providing best places to visit along routes that people insert, tips including road conditions, parking information, weather conditions, dining and lodging suggestions and so on. 2.1.4 Summary: Need for the system Our business is requiring a completely functional trip planner and social networking platform. All the requirements will be shown step by step in our diagrams and all our goals are based on the following factors in order to be successfully achieved: Functionality: the website is having three main systems including trip planner as our core service, social networking/sharing platform and find a partner system. The sharing platform is where we can connect our core service with partner matching service. Ease of Use: the trip planner is a step-by-step process that leads people to build their people in the easiest but efficient way. We pick the best options for travelers and they just need to click to choose their preferable one. Available Contents: as a travel site, our database not only provides tons of great contents for travelers, but also keeps improving and expanding by collecting more and more information shared by our users. Available external resources: we are partnering with hotels, car rentals, and attraction sites to provide the most convenient way for people during trip planning. We keep them as various and available as we can to provide more options. Security: we tend to provide a basic level of security by tracking their location from a self- reporting manner. We also require identity examination for registered users to ensure the security of our users. The Future: In future, to maintain our competitiveness in the market, we are looking to expand our services to meet needs for all travelers instead of roadtrippers. Even though our resources and sharing system are also great for non-road trippers, such as posting and reading trip reports and
  • 14. 14 tips, we continue to create more values for people who tend to fly to travel and other types of travelers. 2.2 System Description 2.2.1 Business or Administrative Problems Addressed There are five major problems existing in the current travel planning websites. First of all, it is very time-consuming for travelers to search information and make travelling plans based on different resources, such as websites of hotels, websites of mapping, and websites of tickets. OnRoad Trip Planner integrates all traveling information in one site and helps road trippers make detailed travelling plans within a short time. Secondly, some existing travel planning websites only provide simple trip planning services without detailed information. For example, Roadtrippers provides detailed routes and sites planning without information of hotels, restaurants, and highway toll stations. OnRoad Trip Planner will provide road trippers detailed travelling plans with all necessary information which would be very helpful for road trippers to forecast travelling budgets and prepare luggage. Thirdly, although social network platforms are very popular these years, there is no professional and credible social network platform for road trippers to share travelling stories and find travelling partners. Many trippers strongly expect to start a new journey, but their families and friends are always busy for lives and works. Except for providing travel planning services, OnRoad Trip Planner also provides a travelling network platform for road trippers to edit, publish, search, and participate in travelling plans. In addition, users can also share their previous travelling stories in the platform, informing and inspiring other trippers with trusted contents and pictures. Fourthly, there are many road trippers who want to start their journeys, but are stopped by insufficient budgets. Using OnRoad travelling network platform, road trippers will find credible partners to share travelling costs. For instance, when an individual road tipper plans to drive from New York City to Washington DC, he or she would be happy to find trip partners who want to travel from Jersey City to Washington DC to share transportation costs. Finally, there are few websites providing the “All in One System” travel planning service. OnRoad Trip Planner includes all of three features (the trip planning platform, the story-sharing platform, and the travelling network platform), aiming at providing road trippers in the United States and Canada the most convenient and the most practical experiences. 2.2.2 Data Flow Diagrams Context Diagram
  • 15. 15
  • 16. 16
  • 17. 17 2.2.3 Business Assumptions and Risks Project Assumptions
  • 18. 18 ➢ The project team will get enough and correct information and data, such as price of hotels, restaurant costs, highway charges, fuel costs and ect from external resources to support the database of OnRoad Trip Planner. ➢ The trip planning platform will be properly developed with Google Map APIs. ➢ OnRoad Company will sign a disclaimer for any security issues happened in trips or caused by travelling with partners. ➢ The project team will get enough funding for the system setup process. ➢ The project team has appropriate abilities and technical skills to set up the system. ➢ Appropriate and effective information systems and technologies will be used in the project to support the system setup process. ➢ In the system setup process, the four developers will have no salaries. Other one-time setup costs will be covered by the four developers, including the cost of information, the cost of information technologies, and miscellaneous. Project Risks ➢ It is very expensive and complex to integrate correct information and data from external resources. There is no enough funding for supporting the system setup process. ➢ The system setup process is too complex and out of the project team’s abilities. Operational Assumptions ➢ OnRoad company will be able to obtain an initial investment of $300,000. ➢ The cost of information increases by 5% per year. ➢ The cost of information technologies increases by 5% per year. ➢ In the first year of operation, we will have only 500,000 Google Map clicks. Google map usage increases by 100% per year. ➢ Advertising cost increases by 10% per year. ➢ The discount rate is 10%. ➢ With a conservative estimate, we will get 100 advertisements in the first year of operation. Most businesses are able to afford $1500/year for each advertisement. The amount of advertisement increases by 80% per year. The pay per advertisement increases 10% per year. ➢ With a conservative estimate, we will get 100,000 clicks on external resources in the first year of operation. Most businesses are able to afford $0.15for each click. Our affiliate commission percentage is 10% for the first year of operation. The affiliate commission percentage increases by 5% per year. Clicks on external resources increase by 80% per year. The pay per click increases 5% per year. Operational Risks ➢ We cannot get any initial investment or the initial investment is less than $300,000. ➢ There are many security issues happened during our users’ trips, which significantly influence OnRoad’s operation.
  • 19. 19 ➢ Our yearly input in advertising cannot bring a corresponding number of users and businesses (Details are in the following ROI estimates). ➢ Our yearly input in human resources cannot support OnRoad’s yearly operation (Details are in the following ROI estimates). ➢ The pay per advertisement is too high for most businesses in the United States and Canada and we cannot sell enough amount of advertisements each year (Details are in the following ROI estimates). ➢ The affiliate commission percentage and the pay per click are too high for most businesses in the United States and Canada and we cannot get enough clicks on external resources each year (Details are in the following ROI estimates). 2.2.4 System Cost Targets & ROI Estimates We supposed that OnRoad’s initial investment is $300,000. Based on system setup costs, system operating costs, and benefits for the first five years, we calculated that the return on investment for the first year is 8.21% and our payback period is about 1.5 years.
  • 20. 20 3. Requirement Specifications and Models 3.1 Activity Diagrams The following four activity diagrams represent the different process flows for the different functions of OnRoad Trip Planner. The first diagrams shows the process flows for trip planning, user registration, finding partners, and blogs sharing.
  • 21. 21 The second activity diagram shows the function of requesting external links.
  • 22. 22 The third activity diagram shows the function of requesting customer services. 3.2 Use Case OnRoad trip planning’s Use Case Diagram identifies the principal actors and prominent interactions with OnRoad trip planning system. The three actors are trip plan builder, trip plan
  • 23. 23 joiner, and the company representatives. The following diagram clearly shows all interactions between the actors and the system. 3.3 Interfaces 3.3.1 Internal Interfaces Marketing management interface Marketing management interface manages the most important revenue source of our website- advertisement. Administrative functions related to advertisement placed on our websites by
  • 24. 24 outside parties will be available through marketing management interface. Marketing staffs will be able to manage orders, edit advertisements, post advertisements and etc. Accounting interface Accounting interface manages orders, billings, recordings and payment transactions between our website and our partners. All payments made to our website for advertisement and to other websites for publicity will be processed through accounting interface. Customer service interface Customer service interface is also an important system for our website. It allows customer representatives to communicate with customers. Customer’s inquiries, request or suggestions will be delivered and stored through customer service interface. 3.3.2 External Interfaces Google Maps API OnRoad Trip Planner will use Google Maps to utilize our functions. We will use the Google Maps API within our trip planner system to provide users a standardized and easier way to locate travel routes and points. Travel Booking Sites OnRoad Trip Planner will integrate popular traveling booking websites including www.expedia.com, www. booking.com, etc. We will use their prices within our hotel recommendation section and then will direct users to the booking sites for further services. Social Media OnRoad Trip Planner will use social media API including Facebook, twitter, Instagram, etc. We will integrate the APIs into our system for users to make connections with other users’ social media accounts and to post their plans, stories, comments, reviews and recommendations. 4. Project Management Documentation: Sprint 1 4.1 User Stories User story is designed to describe and clarify the functions and their associated consequences for each group stakeholders. We create two user stories which are customer user story and administrator user story. The following sections are providing detailed information for each user story.
  • 25. 25 4.1.1 Customer User Story 4.1.2 Administrator User Story 4.2 Product Backlog The preliminary OnRoad Trip Planning Sprint Backlog is comprised of 40 individual tasks which are associated with 5 overarching categories--Customers, Administrators, Database, Platform and Documentation. Each one of the tasks delivers a key function that needs to be designed, completed, or implemented to make sure the overall functionality of our platform can be efficiently run. Each task is reviewed, prioritized, and assigned to a Sprint by the Scrum Team to ensure that the tasks can complete in a time manner and the products can be delivered in schedule. The identified tasks are as follow:
  • 26. 26
  • 27. 27 5. Detailed Software/Systems Design 5.1 Classes and Methods 1. For the web user who has no account in the system, OnRoad trip planning system have the following classes and methods. ➢ Web User ➢ Account ○ +loginAccount() ○ +logoutAccount() ○ +registerAccount() ○ +updateAccount() ○ +deleteAccount() ➢ Trip Plan ○ +createPlan() ○ +selectPlan() ➢ Blog ○ +readBlog() ○ +searchBlog() ➢ Representative ○ +accessCustomerServices() ➢ External Link ○ +access() ➢ Ad Link ○ +access() ➢ Non-ad Link ○ +access() 2. For the web user who has an account in the system, OnRoad trip planning system have the following classes and methods. ➢ Web User ➢ Account ○ +loginAccount() ○ +logoutAccount() ○ +registerAccount() ○ +updateAccount() ○ +deleteAccount() ➢ Trip Plan ○ +createPlan() ○ +selectPlan() ○ +editPlan() ○ +updatePlan() ○ +deletePlan()
  • 28. 28 ○ +publishPlan() ○ +savePlan() ○ +deletePublishedPlan() ○ +searchPlan() ○ +addComment() ○ +participateinPlan() ○ +approve() ➢ Blog ○ +readBlog() ○ +createBlog() ○ +uploadPic() ○ +deleteBlog() ○ +addComment() ○ +searchBlog() ○ +shareBlog() ➢ Trip Tracking ○ +startTrip() ○ +endTrip() ○ +addFeedback() ➢ Representative ○ +accessCustomerServices() ➢ External Link ○ +access() ➢ Ad Link ○ +access() ➢ Non-ad Link ○ +access()
  • 29. 29 5.2 Class Diagram Note: Methods in the orange are methods for both the web users who have no account and the web users who have an account. Methods in the black are methods only for the web users who have an account. 5.3 Screens and Screen Flow (Human Computer Interaction) Below are 12 mock screens presenting fundamental functions of our Onroad system. Users are allowed to create a basic trip plans, read trip listing, and read blogs without creating an account. However, users need to register and log in to use other functions on the site. Once the user logged in, there will be additional menu functions appearing on menu bar, enabling users to manage their own information.
  • 35. 35 5.3.6 User trip management
  • 41. 41 5.3.12 Customer service 5.3.13 Screen Flows The below screen flow is for web users who have no account. For web users who have no account, from the homepage, they are able to access the web page of trip search , the web page of customer service, the web page of registration, the web page of login, and the web page of blog lists.
  • 42. 42 The below screen flow is for web users who have an account and have logged in their accounts. For web users who have an account, from the web page of login, they are able to access the web page of account management, the web page of customer service , the web page of trip search, the web page of trip management, the web page of blog management, and the web page of blog lists.
  • 43. 43 5.4 Report 5.4.1 Number of Account Creation Diagram This diagram tracks number of new accounts created in a specific period. During the first 6 months after launching, we will count the number on monthly basis. After the initial launching period, the number will be observed on quarterly basis.
  • 44. 44 5.4.2 Profit Diagram As we are a free website for users, all of the profit will come from advertisement. Financial data will be collected and profit will be calculated on quarterly basis.
  • 45. 45 5.4.3 Number of Trip Created Diagram vs. Number of Trip Posted Diagram This diagram shows the number of new trips created comparing to number of trips posted by the users with an account for each quarter. 5.4.4 Number of Blogs Diagram This diagram shows the number of new blogs published for each quarter.
  • 46. 46 5.4.5 Diagram of Website Traffic This website traffic diagram summarizes the number of unique visitors and page views of home page by month. This information helps us evaluate our performances. 5.5 Business Rules We identified 32 business rules for our system to ensure the consistency and integrity of our system and to explain how our system will run during daily operation. We will apply those rules in our system to ensure that our customers use our system in a stable, secure, and efficient way. Many features, like browsing our blogs and using our trip planner, are not requiring log-in, giving the most convenient hands-on experience to our customers, especially first-time users. We will try our best to balance restrictions and users experience out. Business Rules Account Creation Users must completely finish the sign-up process to create their accounts Users must create unique username Users must create a password that meets the security requirement Administrators have a separate account creation process A level-2 account completion process (personal verification) required for partner matching functions A level-2 account completion process required phone number, address,personal identity information, etc. Once users complete personal verification process,they can have only one account Login Users must have both username and password to log in Trip Planner Log-in is not required to use trip planner Users must complete the planning process to create a trip Users are not allowed to skip steps in the planning process
  • 47. 47 Users can always go back and forth to make changes Users can save,edit, publish and share their plans once they complete their plans (require login) Sharing Platform Users must log into their accounts to use platform’s functions except for searching and browsing Users can publish, share,edit, delete their plans, posts, blogs, etc. Users can comment and rate other plans, posts, blogs, etc. Users can approve or decline others’ invitations of travel plans or blogs All shared trip plans and blogs must meet the minimum quality requirement and follow the forum rules to be successfully posted Trip plans can be edited by multiple users with invitation A trip plan does not have to be fully complete before sharing with others A trip plan initial creator has the ultimate right to edit the plan Users can add companions to their trips Finding Partners Users have to log in and complete level-2 account completion to use this function Users can send a request on the platform or to specific person with or without a complete trip plan Users can accept a request with or without a complete trip plan Users can view others’ trip plans to help them find interested partners Users can decline a request at any time Manage Profile Users must log in to access their personal profile page Users can change their profile information, manage their trip plans, blogs, requests Users can partially or fully set their information as private or public Customer Service Log-in is not required to use customer service Users can ask questions by inputting questions or sending emails 6. Behavioral Modeling 6.1 State Chart Following diagram is a state chart diagram for a trip plan created by user.
  • 48. 48 (State Chart Diagram: User creates a trip plan) Following is a state chart diagram for a blog composed by user. (State Chart Diagram: User composes a blog) Following is a state chart diagram for a user account created by user. (State Chart Diagram: User creates an account) 6.2 Sequence Diagram The following Sequence Diagram describes a scenario of a registered user creates, saves, publishes and manages a trip plan.
  • 49. 49 (Sequence Diagram: User creates, saves, publishes and managesa trip plan) The Sequence Diagram below shows a registered user composes, posts and modifies a trip blog. (Sequence Diagram: User composes,posts and modifiesa trip blog) The Sequence Diagram below shows how a user contacts and communicates with customer service representative through chat box service.
  • 50. 50 (Sequence Diagram: User contacts and communicates with customer service representative) 7. Database Design 7.1 Physical Database Schema and Description 7.1.1 Entity Relationship Diagram for SQL The following Entity Relationship Diagram demonstrates the key database entities and the relationships between entities of OnRoad Trip Planner system using traditional SQL. To capture data for the basic functions of OnRoad system, the database of OnRoad includes 10 major entities, including Account, Trip Plan, Published Trip Plan, Comment for Trip Plan, Request for Participation, Blog, Blog Comment, Customer Service, Representative, and External Link. The detailed description of each entity is below. Note: The function of trip tracking is deleted because of its low utility. It is time-consuming and inconvenient for users to click “Start Trip” and “End Trip” to track their trips. If only a small portion of users will use trip tracking, it will be insignificant to develop this function. Thus, our team decides to delete this function (No entity for Trip Tracking).
  • 51. 51 (OnRoad Trip Planner ERD for SQL)  Account: This table stores the information of user registrations and uses the username as the primary key. The information of user accounts connects to Trip Plan, Published Trip Plan, Comment for Trip Plan, Request for Participation, Blog, Blog Comment, and Customer Service.  Trip Plan: This table stores the information of trip plans which are generated from Google API and stored in user accounts. Each trip plan can be used by multiple users and each user can store multiple trip plans into their account. Each user will provide individual feedback to his/her initiated or participated plans. Thus, this table uses the combination of trip plan ID and user ID as the primary key.
  • 52. 52  Published Trip Plan: This table stores the information of trip plans which will be published on the trip plan section, and uses the publish ID to identify each publishment.  Comment for Trip Plan: This table stores the information of comments for trip plans and uses the trip comment ID to identify each comment.  Request for Participation: After a trip plan is published, users can glance over the plan and choose to send a request for participation. This table stores the information of requests and uses the request ID to identify each request. Please note that when the status of a request is “approved”, information of the user who sends this request associated with information of the corresponding trip plan will be added into the “Trip Plan” table.  Blog: This table stores the information of published blogs and uses the blog ID to identify each published blog.  Blog Comment: This table stores the information of blog comments and uses the blog comment ID to identify each comment.  Customer Service: This table stores the information for online chat box and uses the record ID to identify each chat record. Each record connects to one user ID and one Representative ID. Note 2: The design of table “Customer Service” is optional. “Customer Service” will be used for storing the related information of customer service for only further analysis, rather than supporting the website function of customer service. We did not design the table “Customer Service” in Sprint 2. We will make adjustments if the table “Customer Service” is required in future. (Tables of OnRoad Internal Portal) Except for the entities used for the user portal of OnRoad Trip Planner system, two entities for the internal portal are created in the database for supporting the system.
  • 53. 53  External Link: This table stores the information of external links which will be posted on trip plans. The table uses the provider ID to identify each link. Please note that the information of external links connects to Google API, but it captures data from OnRoad internal portal which is out of scope of this project.  Representative: This table stores the personal information and account information for internal representatives, and uses representative ID to identify each representative. Please note that the information for representative connects to Customer service, but it captures data from OnRoad internal portal which is out of scope of this project. 7.1.2 Entity Relationship Diagram for MongoDB (NoSQL) Note: Separate ERDs for SQL and MongoDB are for illustrating how the database design using MongoDB is different with using traditional SQL. To create the physical database of OnRoad Trip Planner system, we determined to use MongoDB which is more flexible and applicable for a database with intricate entities. By using MongoDB, we focused on designing three major entities, including Account, Trip Plan, and Blog. Trip Plan ID and Blog ID are added into Account in a format of array. When an user created multiple trip plans and blogs, the trip plan IDs and blog IDs will be automatically added into these two arrays. Similarly, Blog Comment with its three attributes (username, comment date, comment) is added into Blog as an array. Published Trip Plan with its 2 variables (username and publish date), Comment for Trip Plan with its 3 variables (username, comment date, and comment), Request for Participation with its 4 variables (username, request date, content, and status), and Feedback with its 2 variables (username and feedback) are added in Trip Plan in a format of array.
  • 54. 54 (OnRoad Trip Planner ERD for MongoDB) 7.2 Data Dictionary Table Name Table Description Column Name Column Title Data Type Field Size Account This table stores users’credentials and personal information. username username varchar 100 Blog ID blog_id array 10 Trip plan ID trip_plan_id array 10 password password varchar 100 first name first_name varchar 100 Last name last-name varchar 100
  • 55. 55 Gender Gender varchar 5 Address address varchar 100 City city char 100 State state char 100 Zip code zip_code integer 10 Identification identification blob 10k Phone number phone_number varchar 10 Email email varchar 100 Trip Plan Main This table stores trip plans information. username username varchar 100 Trip plan ID trip_plan_id integer 10 Trip plan trip_plan blob 10k Departure departure char 20 Destination destination char 20 Start date start_date timestamp Date End date end_date timestamp Date Published Trip Plan This table stores trip plans that are published username username varchar 100 Trip plan ID trip_plan_id integer 10 Publish ID publish_id integer 10 Publish date publish_date timestamp date Request for Participatio n This table stores partner matching request sent and received by users. username username varchar 100 Trip plan ID trip_plan_id integer 10 Request ID request_id integer 10 Request date request_date timestamp date Request content request_content varchar 10k Status Status char 20 Comment for Trip Plan This table stores comments made to trip plans. username username varchar 100 Trip plan ID trip_plan_id integer 10 Trip comment ID trip_comment_id integer 10 Comment date comment_date timestamp date comment comment varchar 10k Feedback This table stores feedbacks made to trip plans. username username array 100 feedback feeback varchar 10k Blog Main This table stores blogs that are posted by users. Blog ID blog_id integer 10 Blog title blog_tittle varchar 100 Blog content blog_content blob 10k Blog Comment This table stores comment made to blogs. username username varchar 100 Comment date comment_date timestamp Date Comment comment varchar 10k Customer Service This table stores questions asked, and service requested by users. Representative ID representative_ID integer 10 username username varchar 100 Record ID record_id integer 10 Service date service_date timestamp date Question type question_type char 20 Question question varchar 200
  • 56. 56 Chat record chat_record blob 10k Representative This table stores representative employees information. Representative ID representative_ID integer 10 Representative firstname representative_firs tname varchar 20 Representative lastname representative_las tname varchar 20 Employee ID rmployee_id integer 10 Representative username representative_use rname varchar 100 Representative password representative_pas sword varchar 100 7.3 Test and Demonstration Data The following pictures are three major tables with their request methods, data in the database, and data in the localhost.
  • 57. 57 (Tables in Database) (Table: Trip Plan) (Localhost: Trip Plan)
  • 59. 59 (Table: Blog) (Localhost: Blog) 8. Security 8.1 Security Identity and Access Management The system has very detailed and specific access control to ensure the security of our users’ data. There are two roles in the system: users and administrators. On different platforms, users will be restricted to have access to specific features, while administrators have privilege authorities to access the entire system to meet users need. Users and administrators are using different credentials to log into the system. Specific area of the system may require keys or passcodes to access. While creating accounts, users must follow the security standard that the system has set up to create usernames and passwords and every user has unique credentials in order for the user to access some features. 8.2 Database Security We are implementing the following ways to protect our MangoDB which is the database we use for the website (MangoDB):
  • 60. 60 Access Control and authentication - We are enabling access control. When more administrators and users are created, we define specific needs that the users need to access by following a principle of least privilege. Users will only be granted restricted rights to their needs. Authentication requires that all clients and servers must have valid credentials to connect to the system. Encrypt Communication and Protect Data – we configure our database to use TLS/SSL for incoming and outgoing connections. TLS/SSL will help encrypt communication between all components of our database. Our database is encrypted using file-system, device, or physical encryption. Limit Network Exposure and run with secure configuration - database users should run the database in a trusted and secure network and limit the interfaces on which database instances listen for incoming connections. Users also should configure overall settings on the hardware and software to ensure the database is run in a secure environment. Related guides can be found on the MangoDB official websites. Other – other activities such as run MongoDB with a dedicated user, request a security technical implementation guide, consider security standards compliance, etc. can also help protect our database. 8.3 Server Security Server Security is handled by the Amazon Web Service (AWS). AWS states cloud security is their highest priority. They maintain a secure environment for us to scale and innovate. 8.4 Operation Security All website users will be enforced to commit an agreement of privacy policy which protect users from illegally use of information. All users’ information will never be allowed to unveil to the public. Some information such as places to visit might be shared with third party websites such hotels websites in order to provide booking services. Personal information will be secured and will never be sold to any personnel or organization. All website administrators will be trained professionally to avoid immoral and incorrect conduct. 9. Project Management Documentation: Sprint 2 We use Jira, a project management tool, to manage our project, with tracking the issues occurred in the website development process and prioritizing the tasks. Since we did not know this tool before, we started to use it after we began our project. There are three main steps for developing the actual OnRoad Trip Planner website, and Jira helps us to capture the team’s development process. For each Sprint, we add all the required tasks to the product backlog list and each team member is assigned to the task(s). After the team decides the tasks and each member accepts the
  • 61. 61 tasks, we click the “Start Sprint,” and the Sprint is activated, the associated tasks would be moved through the following lists: TO DO, IN PROGRESS, DONE. 9.1 Sprint and Product Backlogs: Sprint 2 Sprint 1 was to identify the user stories and to prepare all the software, hardware and management tools. For Sprint 2, six issues were identified which were Create Database, Database Design: Entity Diagram, Public Facing Interface Design, Wireframe User Interface, User Sign Up and Account Page, and Database Documentation. Creating Database stays the highest priority in the Sprint 2. The product backlogs of the Sprint 2 are shown below: (Product Backlogs 1) Sprint 2 was scheduled from April 6th to April 14th, so until April 16th, all the tasks were perfectly done. In Jira, we can see that the status of six issues was in DONE list:
  • 62. 62 (Product Backlogs 2) 9.2 Burndown Chart: Sprint 2 The Jira could automatically generate the Sprint report and burndown chart after the Sprint is completed. However, regardless of the time we started using the Jira (we started to use it after we began our project), for this Sprint, we used Excel to create a clear and understandable burndown chart.
  • 63. 63 (Burndown Chart for Sprint 2) The detailed data we have used to create the burndown chart is in the following chart: Starting from April 6th, the estimated hours the team spent per day is approximately 91/9 = 10hours. The actual hours the team spent per day were depended on every members’ schedule. From the burndown chart, we can see that after the second day, the April 7th, the team actual development process was left than the originally predicted, and until the last day, April 14th, the team almost spent double hours to catch up to meet the schedule. 10. User Test Plan & Scenarios 10.1 User Test Plan Based on website’s functional requirements, our development team divided our website into 3 modules: · Trip · Blog · Account
  • 64. 64 Each module will be tested in unit testing. 10.1.1 Unit Testing Unit testing shall be done for each module to ensure that they performed correct actions and fulfill intended functionalities. Development team will test input values by running them through different modules and make sure return values are acceptable. 10.1.2 Integration Testing Integration testing in a large group is necessary as we want to make sure that linkages between different modules work properly. User interface testing and scenario testing will be combined to check is there are unexpected incompatibility. Tests are designed for conforming the use case, and same tests may be repeated for different modules. 10.1.3 System Testing If our development team is satisfied with the integration test result. Then we will move into system testing where wen test OnRoad, specifically individual functions, to verify if it meets the system requirements. More specifically, we want assurance that intended functions such as creating trip plans from API, updating profiles, deleting posted trips etc. can be fulfilled. 10.2 Scenarios We identified two user scenarios to help us decide the performance of the website. As a customer, I want to use the create trip plan function without an account. I would like to create an account and login to access all functions on the website. I would like to pick point of interests on the map and add to my trip. I want my trip plan to be posted in the OnRoad community so that other travelers can reach me. I’d like to both read other user’s blogs and post my own blogs. In addition, I want to update my account information and delete trip postings and blogs that I no longer wanted. As an administrator, I would like to communicate with users through online chat box and emails regarding problems and concerns. 11. System Capacity & Performance 11.1 Storage Needs OnRoad will be using Mango DB and AWS as the fundamental services to support our website’s overall performance. We will estimate our storage based on our website functions which determine what type data we will storage. We will first use the default size settings for both database and server during the testing phase and we will increase the capacity accordingly to our estimate number of users during the first year of operation. As more users use our platforms, more storage
  • 65. 65 will be added. We are showing the storage estimate (first year operation only) by tables as the following:  Account table – this table includes all information of users including username, password, personal information (address, phone number, etc) and so on. We estimated that we will be reaching 1,000,000 users in our first year of operation and we estimated each row of the table will take space up to 500 bytes. Therefore, we will expect the total storage we need for this table will be 500,000,000 bytes, or 500 megabytes.  Trip Plan table – this table contains six sub-tables: o Main table: this table includes trip plan information including trip plan cities, times, and other details. We estimated that we will be reaching 100,000 trip plans in our first year of operation and we estimated each row of the table will take space up to 1000 bytes. Therefore, we will expect the total storage we need for this table will be 1,000,000,000 bytes, or 1000 megabytes. o Published Trip Plan table: this table includes published trip plan information including trip plan publish ID and time, user name and trip plan ID. We estimated that we 80% of trip plans will be published in our first year of operation and we estimated each row of the table will take space up to 100 bytes. Therefore, we will expect the total storage we need for this table will be 8,000,000 bytes, or 80 megabytes. o Request for Participation table: this table stores the request sent between users to join other trip plans. We estimated that we will be receiving at least two requests will be sent per published trip plan on average, which count up to 160,000 in our first year of operation and we estimated each row of the table will take space up to 100 bytes. Therefore, we will expect the total storage we need for this table will be 16,000,000 bytes, or 16 megabytes. o Comment for Trip Plan table: this table includes information like comment content, date, ID, etc. Since there will be more words to be stored and we estimate there will be at least five comments on each trip plan in our first year of operation, which results in 500,000 comments. We estimated the total space we need will be up to 1000 bytes per row and 500,000,000 bytes in total, or 500 megabytes. o Feedback table: this table includes feedback from users about their trip. We estimate there will be 50% of users will give feedback on their trip plans in our first year of operation, which results in 50000 feedbacks. We estimated the total space we need will be up to 1000 bytes per row and 500,000,000 bytes in total, or 500 megabytes.  Blog table: this table contains two sub-tables: main table and comment table. Since the structure of the tables are similar to the trip plan table above, we decided to discuss them at a time rather than separately. We estimated that we will have both blog and comment for blog combined as 300000 rows (50000 blogs plus 250000 comments). Since we only support URL for pictures and videos, meaning that we don’t store images and video clips, we will not only need space to store writing contents. We estimated there will be up to 5000 bytes per row and the total space we need will be 1,500,000,000 bytes, or 1500 megabytes.  Customer service table: this table contains all the information generated from customer support chat. We estimate we will be receiving on average ten live chats daily and each row will take space up to 2500 bytes. Therefore, the total space we will need will be
  • 66. 66 90,125,000 bytes, or 90 megabytes.  The last table will be the representative table, which contains our representative employees’ information, which is similar to our user information. We will be having eight representatives in our first year of operation and each one’s information will use space of 500 bytes. The total will be 4000 bytes. By summing them up, we will need 3500+ MB of storage for our first year of operation. Mongo DB offers several options and we will choose their essential plan which offers unlimited storage but will charge by $0.08/hr of usage and AWS also has a promotion of 5GB Amazon S3 storage for free for the first year of registration which perfectly fits our need. If there will be more users than we expected, we will upgrade our storage to paid options and this document will be updated after one year of free use for the AWS. (quote both AWS and MDB pricing) https://aws.amazon.com/s3/pricing/?sc_channel=PS&sc_campaign=acquisition_US&sc_publisher=googl e&sc_medium=s3_b&sc_content=sitelink&sc_detail=%2Baws%20%2Bstorage&sc_category=s3&sc_seg ment=pricing&sc_matchtype=b&sc_country=US&s_kwcid=AL!4422!3!192085379728!b!!g!!%2Baws% 20%2Bstorage&ef_id=WeprrQAAAHV5QkX5:20180513163300:s https://www.mongodb.com/cloud/atlas/pricing 11.2 Number & Type of Users The composition of our users includes customers which will be the majority of the users, customer representatives who will offer live assistance, and website managers. Because our websites offer several platforms including trip plans platform, blog platform and find-a-partner platform, we will divide our users by platforms. As we mentioned in the beginning, long distance road trip business is growing over the past few years. We expected a hype of one million monthly users at the end of the first year. Trip plan users: trip plan users include user who use our trip plan creators as well as trip plan viewer. As this is our main function, we are expecting that 90% users visiting our website will use this function for the first year. As more blogs are created over time, more users are attracted by the blog contents, the percentage could be lower in future. We estimated that there will be 900,000 monthly users at the end of first year. Blog users: as mentioned above, the blog contents require some time to be fully mature. Therefore, in the first year, we will not see many people visiting the blog page. But the blog function will be a main feature that will capture a specific blog fans in future. We estimated that there will be 100,000 users in this category. Find-A-Partner user: the amount of this group of users is determined by how any users are using the trip plans creator for themselves only instead of sharing with others. Sharing trip plans with known friends is also seen as users in this group. We estimated 70% of users will be either sharing
  • 67. 67 their trip plans with friends or find unknown people to travel together. Therefore, we estimate that there will be 630,000 users in this category. 11.3 Transactions The following are the transactions that occur from users throughout our platforms. The times are predicted based on our testing results. The transaction time is relevant in terms of competing with competitors in the market. Improvement will be made over time. Transaction Time Needed (Seconds) Registration 63 Transaction Time Needed (Seconds) Login 16 Transaction Time Needed (Seconds) Update Profile 63 Transaction Time Needed (Seconds) Manage Trip 186 Transaction Time Needed (Seconds) Manage Requests 6 Transaction Time Needed (Seconds) Create a trip plan 362
  • 68. 68 Transaction Time Needed (Seconds) View a trip plan 66 Transaction Time Needed (Seconds) Send a Request 6 Transaction Time Needed (Seconds) Post a blog 304 Transaction Time Needed (Seconds) View a blog 124 Transaction Time Needed (Seconds) Post a Comment 66 12. Implementation Stages & Conversion/Installation method There are 3 implementation stages for our website: coding, testing and installation. These stages are the stepping stones which ultimately build up to our successfully running website. 12.1 Coding The coding stage was conducted based on business goals, functional requirements, and system analysis which documented in earlier phases. Our development team built database and core functions according to our business need. User interface and CSS were developed in the early stages. Core functions and Mapbox API function were added subsequently.
  • 69. 69 12.2 Testing Testing helps determining defects in our web applications. Our developers will make corrections accordingly. We used github to track source code files and file changes. Testing includes unit testing, integration testing and system testing, which will be discussed later in User test plan & scenarios section. 12.3 Installation Installation is the last step in our implementation stage. OnRoad Trip Planner will be launched through AWS. No additional hardware or software required as all things necessary will be provided by AWS. 13. Support & Training 13.1 User Training Plan 13.1.1 Training Goals The website of OnRoad Trip Planner is an online trip planning tool for road trippers all around the world to create trip plans, find trip partners and surf traveling blogs. The end users of OnRoad are defined as road trippers. To help our end users get familiar with major functions of OnRoad website, the user training plan is created with three goals:  Help the end users get an overall understanding of OnRoad Company and OnRoad website.  Instruct the end users to use all functions of OnRoad website.  Instruct the internal employees to use all function of OnRoad website and get familiar with the website flow, so that they would be able to further develop and support OnRoad website. 13.1.2 Training Methodologies 13.1.2.1 FAQs The website of OnRoad Trip Planner provides a web page of FAQs which includes general questions and answers users concerned about the website and our services. FAQs is the simplest training methodology which can help our end users get familiar with OnRoad website and its major functions quickly. The content of FAQs is attached in the Appendix A. The web page of FAQs is created by the product development team and will be maintained and updated by the customer service department. 13.1.2.2 User Training Video The homepage of OnRoad Trip Planner will attach a pop-up window on the bottom right corner, which contains a user training video. The user training video provides visualized instructions on all functions of OnRoad website and the website flow. The video will be performed automatically when each end user enters into the homepage. Thanks to OnRoad website’s user-friendly and intuitive design, a three-minute video will be enough for training the end users. Additionally, the user training video will be also used as an introductory video of OnRoad Website for internal employees.
  • 70. 70 13.1.2.3 New Employee Orientation Once OnRoad website goes public, we will face an issue to hire new employees for the website’s ongoing maintenance and support. A 3-day new employee orientation, which covers database, external APIs, hardware, software, web server, web security, the website’s functions, marketing strategies, OnRoad internal management portal, and customer service, will be conducted in person to help new employees get familiar with OnRoad Trip Planner and be in professional quickly. 13.2 Help Functions (Tier 4 Support) Tier 0 Support- Self-help and user retrieved information As mentioned in the user training methodologies, OnRoad website provides a web page of FAQs which provides a simple guide about the website and our services. The web page of FAQs is created by the product development team and will be maintained and updated by the customer service team. Tier 1 Support - Basic help desk resolution The customer service team of OnRoad provides customer services through email, phone, and online chart. The information of connectable email and phone number is provided on the web page of Contact Us. Users will expect to receive a reply for email assistance within 48 hours. Phone assistance would be available from 10 am to 4 pm per weekday (not available on Saturday and Sunday). Online chat can be accessed through a pop-box on the bottom right corner on the OnRoad website and it will be provided on a 24*7*365 schedule. Tier 2 Support - In-depth technical support The problems, which cannot be solved by the customer service team and which require technical support, will be thrown out to the technical maintenance team. Tier 3 Support - Expert product and service support The problems relating to the product and services will be viewed, analyzed, discussed, and solved by the website development team. Tier 4 Support - Outside support for problems not supported by the organization The problems involving external resources, such as Mapbox Map API and external links, will require outside supports. The technical maintenance department will be responsible for collaborating with outside organizations for solving these problems. 13.3 Installation & Turn-on Strategies The website of OnRoad Trip Planner was first launched to Bitnami Launchpad through Amazon Elastic Compute Cloud (Amazon EC2) which provides secure, resizable compute capacity in the web cloud. MongoDB, which is an open-source document-oriented database using dynamic schemas, is used as the back-end database of OnRoad website. HTML, CSS and JAVASCRIPT
  • 71. 71 are major web development languages used for developing the website. Mapbox Map API with its related functions, including Directions API, Geocoding API, Optimization API, Datasets API, and Uploads API, combined with our Points of Interests datasets (including attractions, hotels, and restaurants) were added into the website to turn on the major functions. Because of the user-friendly and intuitive design of OnRoad website, after the final test of OnRoad website and going public, users can explore the website’s major functions based on their previous online experiences to create accounts, login, create travel plans, send requests for participatio n, manage travel plans, manage accounts, post and manage blogs. Additionally, users will be able to seek instructions through a user training video which is launched in a pop-up window on the bottom right corner of the homepage and online chat box which is available on a 24*7*365 schedule. Users’ problems and comments will be recorded and used for the further improvement of OnRoad website. 13.4 Ongoing Maintenance/Support The ongoing maintenance is an important part of OnRoad’s website which will mainly help to fix problems, support the operation, and upgrade functions. The technical department and the customer service department of OnRoad will provide ongoing maintenance for OnRoad website. The areas involved in the ongoing maintenance are the following:  Website performance analysis, bugs detections and fixing  Development of new functions and overall website improvement  Database update and maintenance  The update and maintenance of Mapbox Map APIs, the integration of OnRoad website and external platforms  Maintenance of the hardware, software, and server which used to support OnRoad Website  Website security and the security of user information  The update of FAQs and the user training video, customer service through email, phone call, and online chat box  Advertising and promotion strategies, marketing performance analysis  The internal management portal which is used to support the operation of OnRoad website 14. Project Management Documentation: Sprint 3 14.1 Sprint and Product Backlogs We started our Sprint 3 from April 16th and completed it on May 2nd, taking total 138 hours. There were many important issues we must have done in order to finish this project as scheduled. Team members have been assigned different tasks and everyone was in charge of several important functions. Because the majority of main functions were created and the website was planned to launch in this sprint, we considered the tasks in this sprint were equally important. The following two diagrams present the backlog of Sprint 3, the hours we allocated for each task, and the assignee for each task.
  • 72. 72 14.2 Burndown Chart: Sprint 3 The following diagram shows the burndown chart for our Sprint 3, demonstrating the comparison of the teams’ actual hours they spent and the scheduled hours the team estimated. As Sprint 2, the hours we spent on Sprint 3 were behind what we expected starting the first day. But, we finished all the tasks and meet the schedule on the last day.
  • 73. 73 14.3 Final Scrum Documentation As we mentioned before, our team have used Jira, a project management tool, to manage our OnRoad Trip Planner project, with tracking the issues occurred in the website development process and prioritizing the tasks in each sprint. We decided to make three Sprints along with the website development process, and spent 290 hours in total to complete this project, with 61 hours for Sprint 1, 91 hours for Sprint 2 and 138 hours for Sprint 3. In Sprint 1, we identified our user stories both customer and administrator, and prepared the hardware, software tools for the further use to develop our website such as installing MongoDB, creating AWS account, and others. In Sprint 2, we have identified six issues which were building the database, creating the database diagram, wireframing the user interface, designing the public facing interface, creating user sign-up page and documenting these process. The most important task in this Sprint 2 was to build the database. In Sprint 3, we completed all the required features of our websites, tested and debugged the system, and wrote up the final documentation.
  • 74. 74 Appendix A FQAs 1: What can you expect on OnRoad Trip Planner? OnRoad Trip Planner is a trip planning website for road trippers all around the world. You can use OnRoad to create road trip plans, find trip partners, and share travelling blogs! 2: Is OnRoad Trip planner free? We provide totally free service for all road trippers! 3: I am a newuser ofOnRoad. What should I do to begin my newjourney on OnRoad website?  Homepage o Enter your desired departure, destination, trip dates,and then create your unique trip o Plan. o Watch the user training video on the bottom corner of OnRoad Homepage for website o Directions.  Map Page o Edit your departure and destination o Choose your transportation, route, and get a real-time map navigation o Zoom in, zoom out, and drag the map around to explore the attractions, hotels, and restaurants (map markers) you are interested in. o Add your interested attractions, hotels, and restaurants into your customized trip plan through the “Add to Trip” button o Save your customized trip plan through “Save Trip” button o We provide recommendations to you based on your departure, destination, and route. Please try our recommendation services through the navigation bar on the map to save your time!  Trip Plans Section o View and search others’ published trip plans o Click “View” to get details of the trip plan you are interested in o Send request for participation through the “Participate” button  Blog Section o Share your trip stories with a blog title, content, and an image URL o Explore wonderful places in the world and get others’ trip experiences o Check bloggers’ information  Account o Update your account profile o Edit, publish/unpublish, export, delete, give feedback to your trips and manage your requests for participation under the section of “Manage Your Trips” o Delete your posted blogs under the section of “Manage Your Blogs” o Delete your account permanently  Contact Us o Contact us through email, phone, or online chat. 4: Why do I need to create an account? Without an account, you can only create your trip plans, explore others’ trip plans, and read blogs on the homepage.
  • 75. 75 With an account, you can save your trip plans, manage your trip plans, find partners, request for participation, and publish blogs. 5: Can I create and save multiple trip plans? Yes, of course! If you have other questions, please feel free to contact us. Email: onroad_trip@gmail.com *Reply in 48 hours* Phone: 571-594-0009 *10am-4pm, Mon-Fri*
  • 77. 77 References Blount, A. (2017, June 28). 2017–2018 Portrait of American Travelers Study Released. MMGY Global. Retrieved on May 13, 2018 from https://www.mmgyglobal.com/news/news- 2017%E2%80%932018-portrait-of-american-travelers Christoff, J. (2017, September 13). US Road Trips on the Rise. Retrieved on February 12, 2018 from https://www.travelpulse.com/news/impacting-travel/us-road-trips-on-the-rise.html Growth of travel expenditure in the U.S. 2011-2020 | Statistic. (2017, July 01). Retrieved on February 12, 2018 from https://www.statista.com/statistics/207106/projected-growth-of- travel-expenditures-in-the-us/ Johnson, T. (2014). New Study Reveals When, Where and How Much Motorists Drive. NewsRoom. Retrieved on May 13, 2018 from https://newsroom.aaa.com/2015/04/new- study-reveals-much-motorists-drive/ Rosenbloom, S. (2018, February 16). The Great American Road Trip: Shorter and More Popular Than Ever. The New York Times. Retrieved on May 13, 2018 from https://www.nytimes.com/2018/02/16/travel/road-trips-in-the-united-states.html