mobile application specifications - masthope mountain community

42
TALLAN | CONFIDENTIAL Mobile Application Specifications Paperless Ticketing and Mobile Kiosk December 3, 2010 Mobile Application Specifications December 3, 2010

Upload: others

Post on 19-Mar-2022

1 views

Category:

Documents


0 download

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