venue driver technology overview
DESCRIPTION
An overview of Venue Driver's technology stack, data model, and development methodology.TRANSCRIPT
![Page 1: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/1.jpg)
Technology Overview
![Page 2: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/2.jpg)
Technology Stack
Ruby on Rails
DataHTTP
HTML5 Mobile HTML5API
Passenger
Apache MySQL
MongoDB
Gentoo Linux
Engine Yard AppCloud
Amazon EC2
JavaScript
SolrRedis
![Page 3: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/3.jpg)
Production Cluster
Application Master
Rails
Apache
Master Database
Application
Rails
Apache
Application
Rails
Apache
HAProxy
MongoDB
MySQL
Redis Solr
![Page 4: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/4.jpg)
Data Model
Accounts
#1
#2
Guest Lists
#1
#2
Reservations
#1
#2
Guests
#1
#2
Ticket Types
#1
#2
Ticket Sales
#1
#2
Events
Event 1
Event 2
Venues
Venue 1
Venue 2
![Page 5: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/5.jpg)
Event Report Documents
Event 1
Reservation 1
Reservation 2
Guest List 1
Guest 1
Guest 2
Ticket Type 1
Ticket Sale 1
Ticket Sale 1
Event 2
Reservation 1
Guest List 2
Guest 1
Guest 2
Guest List 1
Guest 1
Guest 2
Event 3
Ticket Type 2Ticket Sale 1
Ticket Sale 2
Ticket Type 1
Ticket Sale 3
Ticket Sale 4
Ticket Sale 1
Ticket Sale 2
![Page 6: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/6.jpg)
Development Methodology
Lean Software Development
Behavior-Driven Design
![Page 7: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/7.jpg)
Lean Software Development
Sell features that don’t exist
Implement features Just-In-Time
WHATto build
![Page 8: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/8.jpg)
Behavior-Driven Design
Specify how a feature should behave
Implement until automated tests pass
HOWto build
![Page 9: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/9.jpg)
Automated Testing Technology
Capybara
Capybara WebKit
Headless WebKit
Selenium
Firefox
Simulator
RSpec
Cucumber
Behavior Specifications
Ruby on Rails
Unit Tests
Jasmine
![Page 10: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/10.jpg)
Example Behavioral Specification
Scenario: The customer should see a PDF link at the end of the purchase process.
Given an event "Test Event" And 2 active "General Admission" tickets at 10 dollars And the event "Test Event" is active, When I go to the ticket sales page And I follow the buy tickets link for "Test Event" And I press "checkout" And I submit valid payment details, Then I should see "download your ticket here".
![Page 11: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/11.jpg)
Example Unit Test
def test_generates_valid_hard_ticket_code ticket_sale = TicketSale.create( :event_id => @event.id, :quantity => 2 ) hard_code = ticket_sale.generate_hard_ticket_code
assert TicketSale.valid_hard_ticket_code? hard_code
end
![Page 12: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/12.jpg)
Kanban Status Board
Backlog
Task #14
Task #18
Task #22
Task #23
Task #24
Task #25
Task #26
Task #27
Task #28
Ready
Task #17
Task #20
Task #21
Task #19
Task #16
Task #15
Task #13
Working
Task #14
Task #11
Task #9
Task #6
Task #4
Complete
Task #15
Task #12
Task #10
Task #8
Task #7
Task #5
Task #3
Task #2
Task #1
![Page 13: Venue Driver Technology Overview](https://reader033.vdocuments.mx/reader033/viewer/2022052523/5556b555d8b42abb428b45b5/html5/thumbnails/13.jpg)
Task Backlog