Date post: | 25-Dec-2015 |
Category: |
Documents |
Upload: | raymond-randell-foster |
View: | 219 times |
Download: | 0 times |
Dynamic Conference Session Allocation
Iron Architect CompetitionTechEd 2006, Boston
Steve LandPrincipal Architect, Codesic Consulting
Problems
Reduce conference walk time Allocate sessions based on popularity Distribute VPCs and slides in time for
session Notify attendees of room allocation
Limits
Solution should use Microsoft technologies
Assumptions
Assume that we have awareness of individuals’ location at the room level of session rooms only Not XY coordinates of each individual
Assume that developer resources are available to build the solution
Context for dynamic allocation
Not every attendee pre-registers Some attendees register for multiple events in a
single time slot Speakers’ locations outweigh attendees in
priority (setup, preparation) Travel between sessions matters less when the
break is long, for example lunch breaks and expo hours
One (hu)man, (more than) One vote
259AB258ABC
257AB 259AB258ABC
My room preferences, in
order:
258ABCEither 259AB or 257AB259AB258ABC
12 2 3 4
1234
Nested logical zones – simpler to capture than spatial data
Zone3 Zone4Hallway Zone
Zone1 Zone2Hallway Zone
My zone preferences, in
order:
Zone3Zone4Zone2Zone1
1234
1 2
34
Example starting data
Floor1 Hallway1
Zone1 210ABC
Zone2 206AB 205ABC 204AB 203
Hallway2 Zone3
259AB 258ABC 257AB
This data would also need to capture room capacity.
This example data is meant to show that basic room relationships can be expressed without spatial data.
Avoids the need to create spatial map view for new venues.
Ranked voting
Each individual “votes” for zones that are their top preferences for a given session, based on the room they are in.
Basic approach based on Condorcet voting rules (ranked pairs) Allocate largest rooms to most popular sessions, next largest
second, and so on
Room preferences could be pre-generated for each room Speaker top-level zone and room should be considered first for
room assignment
General outline approach for session allocation Tally all ranked votes Starting with most popular sessions, assign
rooms with enough capacity based on votes If instructor’s location is in top 10 of the ranked pair
votes, use that location If instructor’s second and third choices for location are
in the top 10 of ranked pair votes, use that Etc
Distributing VPCs and slides
Central Web Service returns location of day’s bits All VPCs for the entire session available in two or more central locations Nightly process gets path and schedules download Startup process verifies files are current Morning and lunchtime verification re-verifies
“Pull” process: Each PC pulls the manifest from a Web Service Automation deletes existing VPCs from local disk VPC files transferred using locally-installed automation (Robocopy)
Failsafe Manifest offers at least 2 locations for download Additional Virtual Server in case local copies fail
Presenter PCDaily bits
WSCentral File Store
Request manifestXML file manifest
Robocopy VPC files (all for the day)
XML file manifesttells the PC automation the entire list of files to get and their paths.It also assigns a download start time that can be staggered
Request manifest
Verify files
Nightly (after last presentation)
Early morning, repeated at lunchtime
[File discrepancy] Robocopy VPC files (deltas)Each presenter PC
ends up with a local copy of all VPCs and
slide decks for all sessions for that day
Delete old VPC files
Logical deployment view – VPC and slides
`
Session PC
VPC Master Host 1
VPC Master Host 2
Manifest Web Service Server VPC hosted on Virtual Server(used only for failed local copy)
`
Session PC
Get file location manifest
Copy all session files locally
How to notify attendees
Airports are a good analogy: dynamic gate assignments
TechEd screens could show upcoming session locations in strategic locations Current screens may not be seen; trusted source of info is still
the booklet Need enough room for everyone to view the screens
Image source: Boston.com
Logical deployment view – Scheduling
Session Location screens
Session schedulerSchedule display client
Session and schedule database
+ existing scheduling system
http LAN