Download - Amadeus sph
Special Passenger Handling Applicationwith Amadeus IT Group
Group 14
James Arram, John (Jack) Bradshaw, Philip Burling, Stephen Kitchen, Sean Patrick, Frederick Swadling
Supervisor
Dr Alessandra Russo
Special Passenger Handling
• Passengers arriving on flights may require special assistance● e.g. disabled/unaccompanied minors
• Assistance given by supervisor and team of agents at terminal
Project Objectives
• Develop cross-platform mobile application for tablets to assist in special passenger handling
• Enable supervisor to track flights and allocate passengers to agents
• Enable agents to manage tasks related to passengers
PSM Inbox Service Report Inbox
ParserScripts
DatabaseScripts
Report Sending Scripts
AgentMode
Supervisor Mode
Database
User Side
Server Side
System Design
Passenger Service Message (PSM)• PSM is sent to all down-line airports when a flight leaves its
departure portHDQRNMNW.AMSKPKLPSMBA155/20MAR CDG PART1-LHR 2PAX/3SSRWCHR 001F 000M 000CBLND 000F 001M 000CF CLASS 1PAX/1SSR1SMITH/CHRISMR 15A BLND TRAVELLING WITH SERVICE ANIMAL. SEEING EYE DOG NAMED HENRY.M CLASS 1PAX/2SSR1JONES/SARAHMRS 32B WCHS WHEELCHAIR HAS OWN CARRY CASE LANG SPEAKS FRENCHC CLASS NILSI EXPECT COMPLAINTS ON ARRIVAL.ENDPSM
Carrier Code: BA
Departure Date: 20 March
Destination Port: LHR
Departure Port: CDG
Name: Mr. Chris Smith
Seat Number: 15A
SSR Code: BLND
Supplementary Information
Flight number: 155
Parsing PSMs
• System receives PSMs via email• Parser is written in PHP• Extracts relevant information into objects• Inserts information into the database
• PHP script is scheduled to run as cron job every 5 minutes– To be run as a cron job the script needs to:
• Never write to standard out or standard error streams• Not break or hang!
– Solution: Use exception handling and write progress to a logfile
PSM Inbox Service Report Inbox
ParserScripts
DatabaseScripts
Report Sending Scripts
AgentMode
Supervisor Mode
Database
User Side
Server Side
System Design
GUI Design
• PhoneGap used to abstract development to web standards (HTML, CSS, JavaScript) for a cross-platform application
• To aid in GUI development, JavaScript framework called Sencha Touch was used to wrap up HTML and CSS into JavaScript functions
Database Communication
• Database queries from the GUI are implemented via JSONP requestsJavaScript Object Notation with Padding
• Server-side PHP scripts handle requests and pass back data
• This mechanism is used for all database requests
PSM Inbox Service Report Inbox
ParserScripts
DatabaseScripts
Report Sending Scripts
AgentMode
Supervisor Mode
Database
User Side
Server Side
System Design
Supervisors
A supervisor can:• Display a complete list of flights containing
passenger service requests• Browse, assign and dismiss service requests• View a map of current agent locations • Send an email report detailing the current
status of any flight
GPS & Map
• Agent GPS coordinates are tracked continually using the device and stored in the database
• Supervisors view the latest location information from the database on the map• Agent coordinates• Gate coordinates for gates with arriving flights• Queued flights based on first to arrive
GPS & Map Challenges
• Polling for GPS coordinates must be started before log-in• Performance implications
• Not possible to test at Heathrow so mock airport terminal created at Imperial• Wi-Fi coverage• Migration
PSM Inbox Service Report Inbox
ParserScripts
DatabaseScripts
Report Sending Scripts
AgentMode
Supervisor Mode
Database
User Side
Server Side
System Design
Agents
An agent can:• View special service requests (SSRs) assigned to
them:– Pending SSRs not yet dealt with– Completed SSRs awaiting dismissal by supervisor
• Switch status between available and busy• Set comments on SSRs assigned to him• Transition status of assigned SSRs from pending
to completed (i.e. awaiting dismissal)
PSM Inbox Service Report Inbox
ParserScripts
DatabaseScripts
Report Sending Scripts
AgentMode
Supervisor Mode
Database
User Side
Server Side
System Design
Flight Service Report
• Report gives all information about special passenger requests for a particular flight
• Report sent in two ways:– Manually (on request of supervisor)– Automatically once all passenger service requests
are dismissed for flight• In this case flight data is purged from database
• HTML email built using data from the database and sent
Testing
Parser• PHPUnit used to write unit tests• Test methods responsible for reading specific elements of message• Generic test functions are passed input and expected results• Overall code coverage of 84%
GUI• Manual test cases (with record of pass/fail) cover all functionality of GUI
Database• Manual testing of SQL queries and stored procedures
Challenges & Extensions
• Familiarisation with GUI frameworks, server-side scripting, location-awareness, testing frameworks…
• Compatibility– Database scripting and procedures
• Extensibility– Automatic assignment of agents to passengers based on
geographical distance– Distribution across multiple terminals
Questions?