The document discusses two new ticketing projects undertaken by the Minneapolis Institute of Art and the Australian Centre for the Moving Image to address challenges with existing ticketing systems. Both museums developed new systems to provide a simpler, more streamlined user experience for purchasing tickets online. The Minneapolis Institute of Art built a ticketing system using React and PHP that reduced checkout steps and did not require user logins. The Australian Centre for the Moving Image developed an API-based system called Hive to integrate with their existing ticketing software and provide a fast checkout process. The document outlines the motivations, approaches, architectures, and future plans for both new ticketing systems.
1. MW18: Museums and the Web 2018 Vancouver, Canada April 18-21, 2018
Ticketing 2017: Two New Projects Take on Complex Challenges
Douglas Hegley, Minneapolis Institute of Art
Andrew Serong, Australian Centre for the Moving Image
Andrew David, Minneapolis Institute of Art
Misty Havens, Minneapolis Institute of Art
Kjell Olsen, Minneapolis Institute of Art
2. MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
Introduction
Image source: http://www.favbrowser.com/bad-web-browser-ui-design-choices/
Museum online ticketing
● Inelegant user interface
● Expensive customizations
● Limited access to the data
● Poor brand integrity
● Significant annual cost
● Difficult to integrate
● Complex pricing models
○ OK, that last one is our fault
3. User Experience
Image source: https://thenextweb.com/dd/2015/09/29/6-examples-of-awful-ux-design/
● Long, detailed forms
● Choices not clear
● Why do they need to know that?
● Scroll scroll scroll …
Are we gathering useful information,
or are we throwing up barriers?
MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
4. Can We Re-imagine this?
Image source: https://www.jrailpass.com/blog/es/museo-ghibli
Couldn’t it just be … better?
What if it was - gasp - fun?
(or at least simpler & easier)
MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
5. Buy third-party ticketing software Build ticketing system in-house
Experience Two previous systems in past 10 years = not exactly successful Proof of concept = successful (if simple) ticketing system
Initial Costs Relatively expensive: hardware, licensing, consulting for installation Relatively low hard costs, but significant staff time
Feature set Robust, but with customizations (uh oh!) Built iteratively, starting with Minimum Viable Product
Transparency Poor - mysterious connectors; depend on vendor for fixes 100%
Control Limited to the capabilities & constraints of the system Museum has full control
Support Contracted support services Falls on us (challenge: off-hours support)
Risks Promises may go unfulfilled, or not completed in a timely fashion
“That will be in the next release”
Iterations may disappoint - people want it
all and they want it right away
Slides will be posted: https://www.slideshare.net/dhegley
Why: Mia
MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
6. Why: ACMI
ACMI is Australia’s only national museum of
film, tv, video games, digital culture and art
● Both a museum and a cinema
● Tessitura as Ticketing / CRM
● No perfect match with existing online
ticketing platforms such as TNEW
● Follow through user journey for
someone who knows what they want
to see, and just wants to get their
tickets
MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
7. Overview: MNST
● Loosely coupled to main website
● Reduce number of checkout steps
from 7 down to 3
● No ‘cart’
● No user login (we’re not Facebook)
● Established mobile-first UI patterns
● Introduce short, iterative development
cycles (no big yearly upgrades)
● Depend on existing underlying ticketing
system, Tessitura via APIs.
● Minimal in scope (can be built by a
solo developer)
MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
8. Overview: Hive
● No user login required
● Fast checkout process, including
multiple discount types
● Integration with Salesforce
● API with a plugin architecture,
flexible options for different
payment processors / CMS
● Fast development cycles
● Mobile & desktop friendly
● Built on Open Source
MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
9. What: ACMI
MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
11. How: ACMI
MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
12. How: Mia
Redis: Data Storage
PHP set of classes and
functionality
Hive CMS
Series of markdown files
converted to JSON and
deployed to React App
Hive
API
Buy
Tickets
Buy
Tickets
Hive Frontend
React App
Cart & Rules Engine
Price adjustments based on
Product and Customer data
Series of Javascript classes
System Architecture
MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
13. The Future: ACMI
● No formal roadmap: features are developed as we need them, in short
iteration cycles. However:
● In 2019, we will need to refactor some of the codebase for Tessitura
v14, shifting to Tessitura’s REST API
● Multiple event purchases, packages and passes
● Share with the community!
Get in touch:
@acmilabs
@andrewserong
https://labs.acmi.net.au
MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
14. The Future: Mia
● CMS - new, fully featured, making it easier to create / update products for sale
● More UI updates.
○ Event type edge cases
○ Timed ticketing with granular timeslots (how to avoid frustrating users)
● Eventually: more flexible theme design
● Feedback and contributions from other developers / museums
Get in touch:
webdev@artsmia.org
https://github.com/artsmia/
MW18: Museums and the Web 2018 Ticketing 2017: Two New Projects Take on Complex Challenges
Douglas: Good morning. My name is Douglas Hegley, I’m the Chief Digital Officer at Mia. Part of my responsibility is to ensure that our customers are happy. One of the experiences where we have struggled over the years has been online ticketing. During our short presentation this morning, we are going to focus on just that. <see bullet points>
Douglas: I realize I’m generalizing here, but the bottom line is that we have provided an unsatisfactory user experience. And now as we enter an era in which data collection is going to be scrutinized as never before, are we actually *preventing* our own success?
Douglas: Ultimately, can’t we just make the thing better? Today we will share some information about two approaches taken to improve the situation. We hope that what we share is meaningful and useful to colleagues across organizational levels and responsibilities.
Douglas - Due to time constraints, we’ll be limited to a high-level overview of our paper that has been published in the proceedings of this conference. In a moment, I’ll step aside and let the real experts tell you more about their projects and how they were accomplished. At Mia, we were unhappy with our system, we scanned the competitive marketplace, and frankly we still were not happy, What to do? Build it ourselves! <buy vs. build>
High level overview (promise to share the deck)
Andrew S
“All the things you can now access on your phone”
We’ve used TNEW since late 2011
Put a lot of work into improving look and feel, but very difficult to affect the overall UX
Web redevelopment project in 2016
Purchase path should be easy, like buying a ticket in person
To see through the user journey, decided to build our own product
Andrew S
We decided to build our own product “Museum Nice & Simple Ticketing”, or MNST for short.
Nearly no budget, just a small external code review before launch
The infrequent nature of buying tickets means that the password reset page was used by nearly all users.
Kjell Olsen
Simple process to browse and select tickets
Slightly different steps required for different types of ticket
events/Lectures are straightforward
Exhibition / tours require a selected date
Some events require special info - lunch selection, name, other info
Discounts apply according to membership information
Checkout sends the order to API, which handles payment and data
Andrew S
Essentially a middleware for Tessitura API calls
3 step transaction process
Select tickets
Confirm and enter payment details
Get a receipt
Large, touch-friendly buttons, mobile-first design
Add on items and top up donations
No option to log in, no passwords to remember or reset, reduce distractions and cognitive load of buying a ticket
Existing accounts are matched by e-mail address, otherwise one is created
Most modern browsers remember auto-complete fields - much quicker than resetting / forgetting password
Pricing rules are all handled by Tessitura
E-tickets are sent via Tessitura’s existing print at home ticketing service.
Kjell Olsen - describe (briefly) the choice of React and why it’s effective.
React - a simple abstraction to write complex behaviors
Note: no delusions - this is hard stuff, and maybe we were not fully aware of how complex this was going to be. But we are selling tickets!
Andrew S
Nine months from prototype to beta launch
Smallest scope possible
MNST built to progressively replace to TNEW
Links on website constructed from URL + performance ID
Loose coupling between website and ticketing site
Tessitura is persistent datastore
MNST contains no data of its own, can be destroyed and rebuilt
Deploy / rollback provided by feature flag in CMS, switches URLs
Tech stack: Python and Flask
Flask allows simple request, function, response workflow
Andrew David, Misty Havens
June 2017 with August 2017 Launch
MVP was to sell exhibition tickets, membershipConnect to SF data to allow for membership entitlements and record new members
Since August we have been:
refining data from massive migration
refining the cart logic and error handling
Setting up reporting
Designing and building a CMS for Hive
With much more to come!
Andrew S
Loose approach to roadmap items, and features come and go from development cycles.
We know long-term that we’ll want to do packages and passes for film festivals.
We’d love to find an appropriate way to share what we’ve made with the community, but:
Open sourcing things involving closed-source products can be difficult (Tessitura), and there are considerations when it comes to PCI and risk.
The most valuable part of the process (for us) was getting to a place where we can do iterative development for online ticketing.
Complexity beneath simple interfaces is often obscured
Breaking down features into individual issues was challenging, so...
If anyone else wants to have a chat about building this sort of thing in-house, do get in touch!