Author: Venue: Date: Overview Author: Bob Guinn Venue: UWL SMR Date: Dec 2010 1.
Venue Driver Technology Overview
-
Upload
ryan-porter -
Category
Technology
-
view
2.097 -
download
2
description
Transcript of Venue Driver Technology Overview
Technology Overview
Technology Stack
Ruby on Rails
DataHTTP
HTML5 Mobile HTML5API
Passenger
Apache MySQL
MongoDB
Gentoo Linux
Engine Yard AppCloud
Amazon EC2
JavaScript
SolrRedis
Production Cluster
Application Master
Rails
Apache
Master Database
Application
Rails
Apache
Application
Rails
Apache
HAProxy
MongoDB
MySQL
Redis Solr
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
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
Development Methodology
Lean Software Development
Behavior-Driven Design
Lean Software Development
Sell features that don’t exist
Implement features Just-In-Time
WHATto build
Behavior-Driven Design
Specify how a feature should behave
Implement until automated tests pass
HOWto build
Automated Testing Technology
Capybara
Capybara WebKit
Headless WebKit
Selenium
Firefox
Simulator
RSpec
Cucumber
Behavior Specifications
Ruby on Rails
Unit Tests
Jasmine
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".
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
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
Task Backlog