mobile application specifications - masthope mountain community
TRANSCRIPT
TALLAN | CONFIDENTIAL
Mobile Application Specifications Paperless Ticketing and Mobile Kiosk
December 3, 2010
Mo
bile
Ap
plic
ation
Sp
ecific
ation
s
De
cem
ber
3, 2
01
0
Mobile Application Specifications
1 TALLAN | Confidential 2010-12-03
Table of Contents 1. Introduction 3
1.1. Purpose 3
1.2. References 3
2. Paperless Ticketing Application Overview 4
2.1. Current Application State 4
2.2. Statistical information by module: 6
3. Shared Components Analysis 7
3.1. Reusable Code Components 7
3.2. Intermec PB31 ZPL mode printer implementation 7
3.3. Role-based Security Enhancement: Paperless Ticketing 7
3.4. Security Enhancement: Mobile Kiosk 7
3.5. Magnetic Stripe Reader 7
4. Paperless Ticketing 8
4.1. Motorola MC75A Implementation 8
4.2. Magnetic Stripe Reader 8
4.3. Technology Update 8
4.4. Late Entry 8
4.5. Seat Check Printing 9
4.6. UI Enhancements 10
5. Kiosk Application 15
5.1. Ticket & Receipt 16
5.2. Screen Designs and Estimate Detail 17
6. Web Services and API 33
6.1. Shared Components 33
6.2. Paperless Ticketing 33
7. Assumptions 34
7.1. Shared Components 34
7.2. Paperless Ticketing 35
7.3. Kiosk Application 35
7.4. Remote Access 35
Mobile Application Specifications
2 TALLAN | Confidential 2010-12-03
Document Status Revision History
Date Version Description Author
8/20/2010 0.1 Draft Based on Wireframe Document
EnMobile (Christopher King)
9/1/2010 0.2 Revised EnMobile (Christopher King)
9/2/2010 0.3 Further reorganization
Reformatted to Sapient Template
Kevin Northover
9/13/2010 1.0 Incorporated Web Services Kevin Northover
11/17/2010 1.1 Reviewed and updated with latest specs.
Eric Fitchett
Andrew Nichols
Adam Worobec
11/23/2010 1.2 Updated based on 11/19 meeting with Shubert Project Stakeholders
Eric Fitchett
Andrew Nichols
Adam Worobec
12/2/2010 1.3 Updated based on 11/30 meeting with Jennifer Tattenbaum
Eric Fitchett
Andrew Nichols
Adam Worobec
Key Contacts
Adam Worobec [email protected], 860-368-3145
Andrew Nichols [email protected], 860-368-3125
Mobile Application Specifications
3 TALLAN | Confidential 2010-12-03
1. Introduction
1.1. Purpose The purpose of this document is to:
1. Describe the state of the existing Paperless Ticketing application, enumerate code modules, and
describe each module’s function and relationship to the remainder of the application
2. Identify common or shared components that can be reused by both the Paperless Ticketing and Mobile
Kiosk applications.
3. For the Paperless Ticketing application identify new screens and those significantly revised from the
current Barcode application. This analysis is based on the Wireframe “Mobile Specs” document. For
the identified screens specify the technical requirements (webservices, etc.) to implement the screens.
4. For the Mobile Kiosk application screens specify the technical requirements (webservices, etc.) to
implement the screens.
5. Identify new and modified web services required to support the mobile applications. Only web services
that are new, or are expected to need modification to support the paperless ticketing requirement, are
identified in this document. Unless noted herein It is assumed that all services currently called by the
“Barcode Application” will not require changes to support paperless ticketing.
6. Document the assumptions used during the analysis.
1.2. References ● Mobile Application Specifications – Paperless Ticketing and Mobile Kiosk [MAS] ● Telecharge.com XML Web Service Specification [TXML]
Mobile Application Specifications
4 TALLAN | Confidential 2010-12-03
2. Paperless Ticketing Application Overview
This section outlines the existing application components and some statistics regarding each.
2.1. Current Application State
2.1.1 Module Descriptions and Details
Audio
● Appears to be mostly an open source library implementation
○ Audio interface for WindowsCE utilizing Win32API calls imported into a C# class which then
exports volume control functions.
○ Stopwatch component - provides a timer. Also provides high-resolution time mode when
supported by underlying hardware.
○ WaveFormatEx audio file (.wav) decoding support.
CECommon
● Utility classes and system-level (Win32API) access
○ String constants defined
○ rebooting
○ registry access and manipulation
○ application configuration and defaults
○ Logging
○ RS232/Serial port manipulation and External Gun utility methods
○ System time access and manipulation
○ System process control
Config
● GUI Windows Form for editing configuration options (configuration utility methods from CECommon
used to save set options to an XML file)
DBToXML
● VB Form and backing code to export the local database to XML format
DelFromDB
● VB Form and backing code to remove performance data based on an input XML file which lists unique
records which are to be deleted from the database.
ESync
● Reads rows from the “message” table in the database and sends each one off as an email
HTMLViewer
● Open source HTML Viewer control for viewing web pages as a field on the device
MemoryUsage
● Displays memory statistics for the device. Does not appear to be a “production” or “user” application,
but rather is a development/debugging application.
PDALoadTest
● Tests many iterations of various software functions; Includes “scan in”, “detail scan in”, “scan out”, and
“view info”. Data to use in the load test is retrieved from a URL and used to continuously call code
operations, which subsequently call back to other URLs.
Mobile Application Specifications
5 TALLAN | Confidential 2010-12-03
Register
● Registers the device with a URL
ResetDevice
● GUI to reset the device
Restart
● Utility function (no GUI) to reboot the device
Scan
● Main job functions of the application
○ Sign In
○ Scan In
○ Scan Out
○ View Info
○ View Reports
○ Reconnect
○ Late Entry
○ Options
○ Sign Out
StsStart
● Application started first by Windows startup which acquires control of the device through disabling
general Windows functionality (i.e. the Start menu) BY PROXY through the Scan application (which
does the actual disabling using the CECommon deviceui methods), which would otherwise enable the
user to escape from the Shubert application suite and manipulate the device in a general manner.
SwitchPort
● Updates URLs for back-end system interaction so that the application on a single device can be
activated for Development, QA, or Production segments.
SyncTime
● Synchronizes time between the device and the server. This appears pertinent to the correct processing
of functions such as “Late Entry” vs. “Scan In”. Much of the code in this module appears to be direct
copy-over from the CECommon module.
TicketTakerAdmin
● Contains various methods for application initialization such as database creation, signon, system
outage determination, etc. to be used by an Administrator to troubleshoot application performance on-
device.
Update
● Sends “offline-gathered” data (data gathered in “offline mode”) from the database to the server.
Mobile Application Specifications
6 TALLAN | Confidential 2010-12-03
2.2. Statistical information by module:
Module VB Lines Subs/Functions Classes/Structs
CECommon 3110 207 28
config 1377 134 1
dbtoxml 215 20 1
DelFromDB 240 19 1
E-Sync 219 16 0
loadtest 1166 85 6
Register 826 78 1
resetdevice 81 12 1
restart 52 6 0
Scan 5910 342 15
stsstart 1361 79 8
switchport 219 22 1
TicketTakerAmin 2672 194 6
update 389 26 2
Module C# Lines
Audio 385
htmlviewer 625
memtest 273
Mock 117
Scanner 51
Scanner.Symbol 196
Mobile Application Specifications
7 TALLAN | Confidential 2010-12-03
3. Shared Components Analysis
3.1. Reusable Code Components
This section provides for enhancement of the underlying .NET infrastructure so that code supporting the
Paperless Ticketing application may be used to reduce the development time of the Kiosk application.
1. Create reusable screen components / migrate reusable Paperless Ticketing screen components and
configuration to common project for use by Kiosk application
a. Recreate screens using .NET Compact Framework Forms, Components and Controls as well
as .NET scaling and formatting techniques which were not available in the application’s present
.NET version.
b. Create custom screen components as sensible to interact with the device scanners.
2. Create data components and data serialization routines used for Kiosk and Paperless Ticketing using
common intermediate format specified in web services
a. Create XML transaction subsystem to increase reliability and regularity of interaction with
server-end componentry
b. Create data structures and serialization/deserialization mechanisms for interacting with the file
system and data structures.
3.2. Intermec PB31 ZPL mode printer implementation 1. Implement printer interface and the ability to print the following 3 documents:
a. Seat Check Stub
b. Theater Ticket
c. Theater Ticket Receipt
3.3. Role-based Security Enhancement: Paperless Ticketing ● There is security already in place which we can extend to cover the 2 new features
● Admin is separate app and should not need changes
● A stored procedure may need to be updated to handle the 2 new features
● Permissions are communicated through a web page that already exists and is part of signin
o List of codes is sent which line up with list of buttons on “home” screen
3.4. Security Enhancement: Mobile Kiosk ● Inquire Service returns list of events user can access ● Get_All_Marketing_Codes Service returns list of marketing codes user has access to
o Marketing code input box will be enabled only if one or more codes are returned ● Assumption: permissions are limited to:
o Login/logout o Enable/disable marketing code input box
3.5. Magnetic Stripe Reader 1. Technical implementation of magnetic stripe reading
2. Web service implementation for card authorization / point of sale
3. Testing support.
Mobile Application Specifications
8 TALLAN | Confidential 2010-12-03
4. Paperless Ticketing Scope and Specifications
4.1. Motorola MC75A Implementation 1. Re-anchor all displays. Note that displays that use “button hiding” techniques with absolute positioning
will be more time consuming than “Visual Studio Form Designer” forms. The following lists all forms,
with their impact on the total estimate:
○ DelFromDB/Main.vb - Low
○ Register/main_frm.vb - Low
○ Scan/main_frm.vb - Very high / extreme (high frequency of “button hiding” techniques)
○ TicketTakerAmin/Main.vb - Medium (Small amount of “button hiding”)
○ config/Config_frm.vb - Medium
○ dbtoxml/Sync.vb - Low
○ loadtest/Main.vb - Extremely low (not a production app)
○ resetdevice/Main.vb - Low
○ switchport/Main.vb - Extremely low (not a production app)
2. Refactor HTML for new screen size (for the following html files)
○ error.html
○ outage.html
○ pushing.html
○ ready.html
○ register.html
○ signon.html
3. Integrate upgraded Symbol / Motorola API to support this device.
4. Create new build environment for this device.
5. Testing support.
4.2. Magnetic Stripe Reader 1. User flow modification and GUI enhancements (Included in Section 5.5)
4.3. Technology Update 1. All projects updated to Visual Studio 2010 format
2. All projects updated to platform specifications matching the MC75A’s installed operating system
a. .NET Compact Framework 3.5 / Windows Mobile 6.5
b. SQL Mobile database upgraded to current version
4.4. Late Entry Updates 1. Currently, customers entering via late entry cannot be scanned out. To fix this, the following will be
changed:
a. Late entry scan in will add a memo to the order, signifying that the customer entered via late
entry
b. Scan out will be modified to check for the late entry memo if the ticket is not marked scanned in
Mobile Application Specifications
9 TALLAN | Confidential 2010-12-03
4.5. Seat Check Printing
Assumptions
Modified version of Get_Image service will be used to fetch advertising image as described in section
6.1.
Barcode will contain a ticket transaction id [will be confirmed during detailed design]
Mobile Application Specifications
10 TALLAN | Confidential 2010-12-03
4.6. UI Enhancements
4.6.1 Main Screen (Telecharge Scan)
Original Application New Specification
a. Enhancements
Retrieve Order - navigates to the “Retrieve Order” screen
Retrieve Order & Scan In - navigates to the “Retrieve Order & Scan In” screen
Mobile Application Specifications
11 TALLAN | Confidential 2010-12-03
4.6.2 Retrieve Order (no legacy implementation)
User Interface Enhancements
New screen
New service to retrieve order
Credit card (magstripe) reader is active
Order is retrieved by credit card number
Assumptions
Order_Lookup by credit card number (TXML
7.2.1) will be used to request order details.
Mobile Application Specifications
12 TALLAN | Confidential 2010-12-03
4.6.3 Multiple Orders
User Interface Enhancements
New screen
Assumptions / Questions
Order lookup by credit card number (TXML
7.2.1) will be used to request order details.
Tapping order block opens desired order in
4.6.4
4.6.4 Order Retrieved
User Interface Enhancements
New screen
Augment existing data interface for “retrieved
order” (see legacy application “View Info”
screen)
Assumptions / Questions
Mark Scanned In” will use existing service
calls
Seat check will print on attached Intermec
PB31 printer.
“Status” will update as the printer finishes
printing each seat check
Only checked seats are printed.
Mark Scanned In will only appear if:
○ User selected “Retrieve Order” (and not
“Retrieve Order & Scan In”)
○ User has permission to scan in orders
Mobile Application Specifications
13 TALLAN | Confidential 2010-12-03
4.6.5 Retrieve and Scan In
User Interface Enhancements
Almost the same as the “Retrieve” screen - minor augmentation of that screen
Mobile Application Specifications
14 TALLAN | Confidential 2010-12-03
4.6.6 Order Retrieved and Scanned
User Interface Enhancements
Almost the same as the “Order Retrieved” screen - minor augmentation of that screen
Mobile Application Specifications
15 TALLAN | Confidential 2010-12-03
4.7. Paperless Ticketing Screen Flow
The following flow diagram illustrates the flow from screen to screen on the Paperless Ticketing application.
Purchase made
Must be made with a credit card, with “paperless ticket” method of delivery chosen
Customer arrives at the theater for the
performance
Customer gives credit card to ticket
taker
Ticket taker scans credit card
Order is retrieved. Ticket taker can view the order.
4.5.5: Retrieve and Scan In
Seat checks are printed
7.3 Fetch E-Ticket Request
Customer takes his seat
4.5.6: Order Retrieved and Scanned
4.4: Seat Check Printing
Order found?
7.2 Order Lookup Request
Yes
Order Not Found screen – customer goes to customer
service
No
Multiple orders found?
No
Ticket taker can review all orders,
and chooses which order(s) to retrieve
Yes4.5.3: Multiple
Orders
Mobile Application Specifications
16 TALLAN | Confidential 2010-12-03
5. Kiosk Application
5.1. Ticket & Receipt The images below show the ticket and receipt which will be issued by the printer after a successful purchase.
Assumptions
Modified version of Get_Image service will be used to fetch advertising image as described in section
6.1.
Barcode will contain a ticket transaction id [will be confirmed during detailed design]
Mobile Application Specifications
17 TALLAN | Confidential 2010-12-03
5.2. Screen Designs and Estimate Detail
5.2.1 Mobile Kiosk Login
User Interface Assumptions and functional specifications
Functionality only available when online
Security and any user settings / application
security / personalization information will be
retrieved from a [TBD] web service upon login.
Login token obtained by the web service will
be stored locally in memory, used with
subsequent web requests, and will time out.
Questions
b. Specifications
Footnote Label Specification
1 Login button If successful, leads to (5.2.2: Home -
Events)
c. Web Service Calls
Name Notes
FetchNewSession Effectively Login
A session will timeout if it is not used for more than 20 minutes.
Result will be required for all other web service calls
d. Error Handling
Error Action
Invalid credentials Alert dialog, stay on page
Mobile Application Specifications
18 TALLAN | Confidential 2010-12-03
5.2.2 Home - Events
Screen will only show events and codes that user has been assigned to sell. Screen will scroll as
required when list gets long.
User Interface Assumptions and functional specifications
Functionality only available when online
Preset buttons will be greyed out when no
presets have been assigned.
There is no way to clear presets.
Any invalid values previously stored as part of
a preset will be ignored
The web service will return “marketing code”
result applicability based on the user making
the request
Marketing codes are differentiated from shows
in the web service return results
“Preset” buttons will always display, but may
be disabled if there are no previously stored
[valid] values for them.
Questions
b. Specifications
Footnote Label Specification
1 Marketing code Ability to enter a marketing code should be
configurable (this feature may be turned off
for some users). Entering a valid marketing
code and clicking go will load the Find
Tickets screen for the event referenced. If
the code is associated with multiple events,
the Codes screen will load instead,
displaying the entered code and the events
associated with that code.
2 Presets Clicking on a preset button (if set) will load
the Find tickets screen for a predefined
event with specific parameters selected.
3 Event button Clicking on an event will load the Find
tickets screen for the selected event.
Mobile Application Specifications
19 TALLAN | Confidential 2010-12-03
4 Codes tab Leads to (5.2.3: Home - Codes)
5 Reports button Leads to (5.2.13: Reports)
6 Logout Leads to (5.2.1: Mobile Kiosk Login)
c. Error Handling
Error Action
Invalid code entered Alert dialog, stay on page
5.2.3 Home - Codes
a. User Interface
b. Specifications
Footnote Label Specification
1 Multi-event codes Multi-event codes will display a [+] next to
the text. Tapping a multi-event code will
expand the list to display event options
below the row. Once expanded, a [-] will
appear in place of the [+] indicator.
Mobile Application Specifications
20 TALLAN | Confidential 2010-12-03
Tapping again will hide the event options
and the [-] icon will return to a [+] icon.
2 Codes Clicking on a code will load the Find tickets
screen for the selected code/event.
3 Marketing code Ability to enter a marketing code should be
configurable (this feature may be turned off
for some users). Entering a valid marketing
code and clicking go will load the Find
Tickets screen for the event referenced. If
the code is associated with multiple
events, this screen will reload, displaying
the entered code and the events
associated with that code.
4 Events tab Leads to (5.2.2: Home - Events)
5.2.4 Find Tickets
User Interface Assumptions and functional specifications
There are no defaults or defaults
are not different per-show
Presets are device-specific and
are stored on the device
Returning from the full calendar
screen with a date selected
outside of the 7 day advance
range will result in the selected
date being both selected and
added to the list of dates
“child” and / or “Senior”
dropdowns may be added to the
right instead of beneath the
existing “Adult” dropdown with
labels above.
Mobile Application Specifications
21 TALLAN | Confidential 2010-12-03
a. Object Table
Footnote Label Specification
1 Dates and Times Dates and Times for Upcoming
Performances should include the
next 7 day period, starting with
the first available day having a
performance (today or later).
2 View Full Calendar User can click View Full
Calendar to select performances
outside of the choices shown.
3 Number of Tickets Defaults to 2. See options at
right if multiple pricing tiers are
available.
4 Seating Location Defaults to Best Available. Other
options will vary based on
theater configuration, but would
typically be Orchestra,
Mezzanine, and Balcony.
5 Children's tickets Defaults to 0. Only appears if
show offers children-priced
tickets.
6 Senior tickets Defaults to 0. Only appears if
show offers Senior-priced
tickets.
7 Set Preset 1 Clicking "Set Preset 1" (or 2)
stores the event, seating
location, and performance so
that user can search quickly
from the home page.
8 Preset set window. After a user clicks "Set Preset 1"
(or 2), modal window will appear
confirming that the preset was
set successfully.
9 Event Details tab Leads to (5.2.10: Event Detail)
10 Pricing tab Leads to (5.2.12: Pricing)
11 Find Button Leads to (5.2.5: Ticket Results)
12 Home Leads to (5.2.2: Home - Events)
Mobile Application Specifications
22 TALLAN | Confidential 2010-12-03
5.2.5 Ticket Results
User Interface Assumptions and functional specifications
Theatre images will be provided for each of
the 20 theatres
For each theatre, “seat selection” coordinates
will be specified for each seat. Such
coordinates may be returned directly by the
web service.
“Alternate seat options” and “Next Zone” will
result in a web service call, and the screen
will be re-rendered with the results of the web
service call.
b. Object Table
Footnote Label Specification
1 Ticket Details Price will include delivery fee if
there is only one method of
delivery available to choose
from.
2 Alternate Seat Option Clicking "Alternate Seat Option"
will display another seating
option in the same zone.
3 Next Zone Clicking "Next Zone" will display
another seating option in the
next zone.
4 Zone Message A zone message (if any) can
appear in a modal window over
Mobile Application Specifications
23 TALLAN | Confidential 2010-12-03
the seating option offered.
5 Buy Leads to (5.2.6: Method of Delivery)
6 Search Again Leads to (5.2.4: Find Tickets)
c. Error Handling
Error Action
Not enough tickets available Alert dialog, stay on page
No alternate seat option or next zone Alert dialog, stay on page
5.2.6 Method of Delivery
Screen will only appear if more than one methods of delivery are required or if unique fields not
available on "customer fields" must be displayed.
a. User Interface
Mobile Application Specifications
24 TALLAN | Confidential 2010-12-03
b. Object Table
Footnote Label Specification
1 How would you like to receive... No option should be pre-selected
2 Hold the tickets... Last sentence "His/her name is:" should only appear
after this option is selected.
3 Email tickets If this section is selected, text should expand to include
information shown below (end of page).
4 Email tickets If this section is selected, text should expand to include
information shown below (end of page).
5 Back Leads to (5.2.5: Ticket Results)
6 Next Leads to (5.2.7: Customer Fields)
c. Error Handling
Error Action
Validation error Alert dialog, stay on page
Mobile Application Specifications
25 TALLAN | Confidential 2010-12-03
5.2.7 Customer Fields
Customer fields shown are configurable by show (whether they are appear and whether they are
required
a. User Interface
b. Object Table
Footnote Label Specification
1 Pay Leads to (Error! Reference source not found.: Error! Reference source not found.)
2 Email Address Field will be pre-populated if email had been entered on Method of Delivery screen (however it can be overridden).
3 Back Leads to (5.2.6: Method of Delivery)
c. Error Handling
Error Action
Validation error Alert dialog, stay on page
Mobile Application Specifications
26 TALLAN | Confidential 2010-12-03
5.2.8 Payment
a. User Interface
b. Specifications
Footnote Label Specification
1 Cash Paid Button Button will only appear for shows accepting cash (configurable
by show).
Leads to (5.2.9: Order Complete)
2 Swipe card After swiping card, automatically leads to (5.2.9: Order
Complete)
If card is declined a popup will return card declined codes and
reasons.
3 Back Button Returns to (5.2.7: Customer Fields)
Mobile Application Specifications
27 TALLAN | Confidential 2010-12-03
5.2.9 Order Complete
User Interface Assumptions
Ticket printing is done through the device-connected printing peripheral (section 6.1)
b. Specifications
Footnote Label Specification
1 Reprint button Causes a copy of the ticket and receipt to
be printed, marks the ticket as reprinted
2 New Order button Leads to (5.2.2: Home - Events)
3 New Order (same
event) button
Leads to (5.2.4: Find Tickets)
4 Preset buttons Leads to (5.2.4: Find Tickets) for a
predefined event with specific parameters
selected.
c. Error Handling
Error Action
Printer error Update memo to note the error for customer service
Mobile Application Specifications
28 TALLAN | Confidential 2010-12-03
5.2.10 Event Detail
a. User Interface
b. Specifications
Footnote Label Specification
1 Find Tickets tab Leads to (5.2.4: Find Tickets)
5.2.11 Seating Chart
User Interface Questions Page removed – see 8.1: Seating Chart in Kiosk
Application
Mobile Application Specifications
29 TALLAN | Confidential 2010-12-03
5.2.12 Pricing
User Interface Assumptions
Get_Perf_Range service is used to fetch list of
next few shows.
Get_Info_For_Price services used to fetch ticket
prices by zone for each performance and the
labels for each zone
Form will request a list of performances between
the range of <current day> - <current day + 7
days>
When user scrolls past <current day + 7 days> the
application will request the next 7 days of
performance data
Price Range shown under each zone name will be
compiled from the high and low zone prices
provided by the service call
a. Specifications
Footnote Label Specification
1 Next Performances Clicking the right arrow will refresh the grid
to display the next three performances (if
any).
Arrow is not shown if there are no next
performances.
2 Previous performances Clicking the left arrow will refresh the grid
to display the previous three performances
(if any).
Arrow is not shown if there are no previous
performances.
3 Price Leads to (5.2.5: Ticket Results)
Mobile Application Specifications
30 TALLAN | Confidential 2010-12-03
5.2.13 Reports
b. User Interface
Mobile Application Specifications
31 TALLAN | Confidential 2010-12-03
5.2.14 SELRSALE Report
User Interface Assumptions
Report data is provided as a web service
Mobile Application Specifications
32 TALLAN | Confidential 2010-12-03
5.3 Mobile Kiosk Screen Flow
The following flow diagram illustrates the flow from screen to screen on the Mobile Kiosk.
Device Turned on User Logged On
Filtered Marketing codes
and/or events displayed
Select Marketing
Code
Get_Show_List_By_DatesGet_Mkt_Codes
FetchNewSession
Select Event
Select parameters
Get_Perf_RangeGet_Area
Get_Area_ADA_KindGet_Area_ADAGet_Area_GA
Get_Info_For_Price
Multi-event code?
Get_Mkt_Show_List
Display Events
Yes
No
Select Event
Get_Mkt_Perf_RangeGet_Area
Get_Area_ADA_KindGet_Area_ADAGet_Area_GA
Get_Info_For_Price
View Event Info
Get_Show_Description
Display Seating Choice
Inquire for TicketsInquire for more time
View Alternate
(seat or zone)Buy
Inquire for TicketsInquire for more time
Select Method of
Delivery
Enter customer
fieldsCash or credit?Hold Customer
Swipe card
credit
Take Cash
cash
Print Receipt
Display confirmation
Upd_Memo
Buy RequestFetch E-Ticket Request
Reset Request
Not all events will accept cash
Methods are configurable by event but may include:
-Point of sale print-Paperless ticketing-Email tickets-Hold at box office
Mobile Application Specifications
33 TALLAN | Confidential 2010-12-03
6. Web Services and API
6.1. Shared Components
● Login and Authentication API
○ Extend existing Login and Authentication API/Service as specified in [MAS Section 4.3]
● Image and advertising retrieval services
○ Modified Web Service required to retrieve advertising images for seat check and ticket receipts.
○ To be based on “Get_Image” [TXML Section 4.23].
○ Query key will be the “Product ID” for the event.
○ Web Service will recognise the application generating the request.
○ For Paperless Ticketing the web service will return the first advertising image only
○ For Mobile Kiosk the web service will return the logo, two advertising images and the disclaimer
image.
6.2. Paperless Ticketing
6.2.1 New and Modified Services
● Retrieve order using credit card number
○ Base on “Order Lookup Request” [TXML Section 7.2]
○ Potential modifications to reduce amount of data returned for the mobile application
○ Ensure data returned is sufficient for applications “View Info” screen.
● Buy_Request
● Get_Marketing_Codes
● Get_Show_Description
Mobile Application Specifications
34 TALLAN | Confidential 2010-12-03
7. General Assumptions
7.1. Shared Components
1. The analysis for magnetic stripe reading only provides for the technical implementation. Use case
documentation for magnetic stripe reading will be required prior to implementation.
2. The Motorola / Symbol libraries and scanner interfaces have not significantly changed, and both the
build environment and the MC75A device are supported by the latest library.
3. All communications protocols will require interface documentation.
a. Web service specifications will be provided as WSDL files with supporting documentation
b. All non web service data will consist of well-formed XML conforming to a documented schema.
c. All communications will be via https or other ssl implementation.
4. Shubert Ticketing will provide access to a test instance of the existing ticketing backend services to
allow the Tallan team to test the mobile application integration.
5. All required web services will be available in a test environment and both functional and accessible
during development.
6. Role-based security will be documented prior to project inception
a. All user roles will be specified
b. All permission levels will be specified within each user role (if there are multiple levels per role)
c. The mapping between user role / permission level to screen / function will be specified by
Shubert in a supplementary specification document
7. PB31 printer is capable of rendering required ticket / report formats; otherwise, formats must be
modified in such a way that the PB31 printer is capable of rendering.
8. Shubert Ticketing will be responsible for design and implementation of any required changes to the
CMS database, stored procedures, and CMS data entry UI required to make the advertising, etc.
images data for mobile applications available.
9. Any network connection errors will result in an alert dialog informing the user of the issue. The action
should then be attempted again. The user will remain on the same screen during this process.
10. Any authentication errors or timeouts will result in an alert dialog informing the user of the issue. The
action should then be attempted again. The user will remain on the same screen during this process.
11. Shubert will supply Tallan with 4 MC75A devices.
12. Shubert Ticketing and Tallan will coordinate scheduling to ensure availability of key resources for each
of the activities outlined herein.
13. Shubert Ticketing will share all relevant technical information related the development of these two
applications.
14. Feedback and/or comments on deliverables will be supplied within a mutually agreed to acceptance
period. Should feedback not be delivered in the agreed timeframe, the deliverables will be deemed as
accepted.
15. Any change in scope will be documented and agreed to in writing by both Tallan and Shubert Ticketing.
16. The Tallan development team will perform most of the development work at a Tallan facility and will
come onsite to work with Shubert under an agreed upon schedule.
17. Probably should have an assumption about transition plans and deliver
Mobile Application Specifications
35 TALLAN | Confidential 2010-12-03
7.2. Paperless Ticketing 1. Only new functionality specified in the detail sections is considered part of this proposal; otherwise, it is
assumed that functionality, forms, and user flow of the legacy application will be maintained
2. The following screens from the Barcode scanning application will not be changed, other than
cosmetically, in the implementation. The work to be done on these is described in Section 5.1.
Identification numbers are to the wireframes in the Mobile Specs document.
1.1. Paperless Ticketing Login
1.2. Welcome
1.4. Scan In
1.5. Allow Entry
1.6. Deny Entry
1.7. Scan Out
1.8. Scanned Out
1.9. View Info
1.10. Info Display
1.11. Reports
1.12. Activity Report
1.13. Performance Status
1.14. Late Entry
1.15. Late Entry (Filled)
1.16. Options
1.17. Ticket Taker Admin
7.3. Kiosk Application ● Navigating from “Find Tickets” to another tab will cause the “Find Tickets” tab to retain state. Users
will be able to resume the “Find Tickets” process after navigating back to the “Find Tickets” tab.
● Required web service interfaces are designed and documented, sample xml is available, and
service stubs are in place during development of the Kiosk application.
The analysis for individual screens took the following into account: ● Screen implementation
● Logic implementation
● Web Service Data design
● Web Service Interface design and impact analysis
● Web Service Client implementation
7.4. Remote Work ● VPN access will be supplied
● Direct access to the dev IIS and Informix servers will be supplied
Mobile Application Specifications
36 TALLAN | Confidential 2010-12-03
8. Out of Scope
Features are now considered out of scope for the applications documented herein.
8.1. Seating Chart in Kiosk Application ● The seating chart has been removed from the Find Tickets flow, as has the Seating Chart tab
(5.2.5, 5.2.11)
Mobile Application Specifications
37 TALLAN | Confidential 2010-12-03
8.1.1 Full Calendar
The Full Calendar view has been removed from scope.
User can select a date by clicking on it. If there are no performances on a date, the date will appear in
gray and not be selectable. If a date has multiple performances, it will display options when user rolls
over or clicks on a date.
User Interface Assumptions
Navigating through months will result in additional
service calls
Assuming that the “Pricing” tab is not selected and
that the screen mockup is in error
a. Object Table
Footnote Label Specification
1 View Full Calendar User can click View Abridged Calendar to return to the main Find
Tickets view. If a performance outside of the original list is selected,
it will be added to the abridged original list.
2 Find User can click Find to return to the main Find Tickets view. If a
performance outside of the original list is selected, it will be added
to the abridged original list.
Code Conversion in Paperless Ticketing ● Converting the Paperless Ticketing application from Visual Basic to C# code is not in scope.
Mobile Application Specifications
38 TALLAN | Confidential 2010-12-03
8.2. Deployment and Field testing ● Tallan will deliver an application tested on the Tallan network and over a G3 connection to the
Shubert backend test systems. Tallan will not be available for field deployment or field deployment
tests.
Mobile Application Specifications
39 TALLAN | Confidential 2010-12-03
9. Appendix A: Web Services Inventory
The following table is an inventory of the web services which will be required to implement the Paperless
Ticketing enhancements and Mobile Kiosk application.
Web Service Screen Parameters Returns
New /
Exists/
Modify
TXML
Similar
Reference Note
FetchNewSession
5.2.1
Mobile Kiosk
Login
* Operator Code
(user id)
* Password
* Session ID
(auth token)
* Site ID Exists 3.1 Login
Get_Show_List_By_Dates
5.2.2
Home – Events
* date range
* Site ID
* Product ID
* title
* venue name Exists 4.21
Retrieves all shows by
operator code and site id
Get_Perf_Range
5.2.4
Find Tickets
* Product ID
* date range
* date
* time
* day of week
* Performance
Type Exists 4.14
Retrieves performances for
a show, given a date range
Get_Mkt_Perf_Range
5.2.4
Find Tickets
* Product ID
* date range
* Marketing Code
* date
* time
* day of week
* Performance
Type Exists 4.10
Retrieves performances for
a show & code, given a
date range
Get_Mkt_Show_List
5.2.3
Home – Codes
* Marketing Code
* Site ID
* Product ID
* title
* Venue ID
* venue name
* city name Exists 4.11
Retrieves all shows for a
code (no shows means
invalid code)
Get_Area
5.2.4
Find Tickets
* Product ID
* Marketing Code
* Area Spec ID
* area name Exists 4.2
Retrieves all seating zones
for a show (except ADA
and GA)
Get_Area_ADA
5.2.4
Find Tickets
* Product ID
* ADA Kind ID
* Area Spec ID
* area name Exists 4.3
Retrieves seating zones for
a show, suitable for the
disabled
Get_Area_ADA_Kind
5.2.4
Find Tickets
* Product ID
* Marketing Code
* ADA Kind ID
* description Exists 4.4
Retrieves types of disabled
seating areas
Get_Area_GA
5.2.4
Find Tickets * Product ID
* GA flag
* Area Spec ID Exists 4.6
Retrieves any General
Admission areas for a show
Mobile Application Specifications
40 TALLAN | Confidential 2010-12-03
Web Service Screen Parameters Returns
New /
Exists/
Modify
TXML
Similar
Reference Note
Get_Info_For_Price
5.2.4
Find Tickets
5.2.12
Pricing
* Product ID
* Marketing Code
* date
* Performance Type
* Performance
Key
* Price Code
* price code
name
* area name
* Area Code
* price range Exists 4.22
Retrieves all pricing info for
a performance (for all
seating zones), with or
without a marketing
discount code
Inquire for Tickets
5.2.5
Ticket Results
* Site ID
* Site Name
* Product ID
* Price Code
* quantity
* date
* Performance Type
* disability flag
* (Area Spec ID)
* (Marketing Code)
* Order #
* Event Code
* Total Cost
* Seat Details
* Methods of
Delivery Exists 5.1
Provides performance,
price code, ticket quantity to
system before purchasing
tickets
Inquire for more time
5.2.5
Ticket Results - - Exists 5.2
Used when Inquire for
Tickets would otherwise
timeout
Hold Customer
5.2.7
Customer
Fields
* First Name
* Last Name
* Billing Address
* Day Phone
* Evening Phone
* Email - Exists 6.1
Provides customer info to
system before purchasing
tickets
Fetch E-Ticket Request
5.1
Ticket &
Receipt
* Order #
* Tix Tran
* Event Code
* Product ID
* Method of
Delivery
* date
* Ticket Print
Info Exists 7.3
Gets ticket detail info for
printing
Reset Request
5.2.9
Order Complete - - Exists 8.1
Must be called after
completing a buy
Upd_Memo
5.1
Ticket &
Receipt
5.2.9
Order Complete
* Order Number
* memo text - Exists 4.18
Appends to Order Memo
Text, seen by box office &
customer service (will use
to signify printer problems
and reprints, for example)
Get_Reports_List
5.2.13
Reports -
* Report ID
* Description
* Report URL Exists
Retrieves all available
report names
Mobile Application Specifications
41 TALLAN | Confidential 2010-12-03
Web Service Screen Parameters Returns
New /
Exists/
Modify
TXML
Similar
Reference Note
Buy Request
5.2.8
Payment
* Method of
Payment
* Method of
Delivery
* (Credit card info)
* Order #
* Tix Tran
* Event Code Modify 5.3
Provides payment info and
method of delivery to
system and completes
purchase
Need to add support for
cash purchases
Order_Lookup 4.6.3 and 4.6.3
* Credit Card
Number
Numerous fields
describing
customer’s
order(s) placed
with cc Exists 7.2.3
Get_Mkt_Codes
5.2.3
Home – Codes * Site ID
* Marketing
Discount Codes New
Retrieves all marketing
discount codes available to
the user
Get_Show_Description
5.2.10
Event Detail * Product ID * Description New
Retrieves the text
description of the show
Get_Image
4.5 Seat Check
and 5.1 Ticket
and Receipt Product ID
1 ad image for
Ticketing App
2 ad images and
disclaimer image New
Assumes these images are
already available
Get_Customer_Fields
5.2.7 Customer
Fields * Event Code
Multiple results
consisting of:
* Customer Field
Name
* Required or
Optional New
Get_Report
5.2.14
SELRSALE
Report * Report Name
* List of Report
Rows, each
consisting of:
- Type
(Header,
Normal, or Total)
- One or more
Cell elements
(report data)
* Every report
row should have
the same
number of Cell
elements
New