MS Tech-Ed 2006 Iron Architect Competition Greg Cogdell Milliken & Co.

Slides:



Advertisements
Similar presentations
IBM SMB Software Group ® ibm.com/software/smb Maintain Hardware Platform Health An IT Services Management Infrastructure Solution.
Advertisements

ADABAS to RDBMS UsingNatQuery. The following session will provide a high-level overview of NatQuerys ability to automatically extract ADABAS data from.
SLA-Oriented Resource Provisioning for Cloud Computing
Which server is right for you? Get in Contact with us
Welcome to Keyboarding Pro DELUXE ® Get Started Get Started Create Your Student Record Create Your Student Record The Main Menu The Main Menu Send Files.
Iron Architect Competition Saravana Kumar Digital Deposit Ltd
Windows Server ® Virtualization Infrastructure Planning and Design Published: November 2007 Updated: July 2010.
5-9/12/2005 CPE How to format your computer and re-install Windows XP.
Chapter 11 - Monitoring Server Performance1 Ch. 11 – Monitoring Server Performance MIS 431 – created Spring 2006.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 7: Planning a DNS Strategy.
Computer Skills Preparatory Year Presented by: L.Obead Alhadreti.
Check Disk. Disk Defragmenter Using Disk Defragmenter Effectively Run Disk Defragmenter when the computer will receive the least usage. Educate users.
SMS Gateway OZEKI NG Document version: v Adding SMS functionality to Sharepoint.
Dynamic Conference Session Allocation Iron Architect Competition TechEd 2006, Boston Steve Land Principal Architect, Codesic Consulting.
Microsoft Windows 2003 Server. Client/Server Environment Many client computers connect to a server.
1 Managed Security. 2 Managed Security provides a comprehensive suite of security services to manage and protect your network assets –Managed Firewall.
A Quick Review of Unit 1 – Recognizing Computers Computing Fundamentals © CCI Learning Solutions.
Chapter 2 Build Your First Project A Step-by-Step Approach 2 Exploring Microsoft Visual Basic 6.0 Copyright © 1999 Prentice-Hall, Inc. By Carlotta Eaton.
Chapter 19 Linear Programming McGraw-Hill/Irwin
Windows Server ® Virtualization Infrastructure Planning and Design Published: November 2007 Updated: January 2012.
Operating Systems Networking for Home and Small Businesses – Chapter 2 – Introduction To Networking.
1 WHY NEED NETWORKING? - Access to remote information - Person-to-person communication - Cooperative work online - Resource sharing.
Lorie Stolarchuk Learning Technology Trainer 1 What has changed with the 2.7.X Upgrade to CLEW?
Purpose Intended Audience and Presenter Contents Proposed Presentation Length Intended audience is all distributor partners and VARs Content may be customized.
Cognos TM1 Satya Mobile:
MIS 385/MBA 664 Systems Implementation with DBMS/ Database Management Dave Salisbury ( )
TechEd Session Placement Efficient Space Allocation.
Welcome to Keyboarding Pro DELUXE ® Get Started Get Started Create Your Student Record Create Your Student Record The Main Menu The Main Menu Send Files.
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
Microsoft and Community Tour 2011 – Infrastrutture in evoluzione Community Tour 2011 Infrastrutture in evoluzione.
June 6 th – 8 th 2005 Deployment Tool Set Synergy 2005.
TEAM Basic TotalElectrostatic ManagementAwareness&
Linear Programming McGraw-Hill/Irwin Copyright © 2012 by The McGraw-Hill Companies, Inc. All rights reserved.
Computer Emergency Notification System (CENS)
Diagnostic Pathfinder for Instructors. Diagnostic Pathfinder Local File vs. Database Normal operations Expert operations Admin operations.
Using the Right Method to Collect Information IW233 Amanda Murphy.
My Workspace ELearning in Sakai Randy Graff, PhD HSC Training.
Modeling Tough Scheduling Problems with Software Alex S. Brown Mitsui Sumitomo Marine Management (USA), Inc.
Copyright © 2006 Epsico, Inc. 1 Iron Architect Request for Proposals Dynamic Conference Manager 1.0 by Sandullah Epsicokhan Epsico, Inc.
WEEK 11 – TOPOLOGIES, TCP/IP, SHARING & SECURITY IT1001- Personal Computer Hardware System & Operations.
WebEx Learning Session ENHANCED COLLABORATION: TRAINING CENTER.
Microsoft Project 2010 ® Tutorial 4: Assigning Resources and Costs.
COMP091 – Operating Systems 1 Memory Management. Memory Management Terms Physical address –Actual address as seen by memory unit Logical address –Address.
Tracking a Project Plan A Case Study. Life Cycle of a Plan  Project Sized  Project Estimated  Project Planned Budget Schedule  Project Tracked.
Patrick Ortiz Global SQL Solution Architect Dell Inc. BIN209.
COMM 3050 – Online Project Update. Project Roles  Organizer Responsible for creating Zoom account technical aspects and posting recorded meeting to S:
Active-HDL Server Farm Course 11. All materials updated on: September 30, 2004 Outline 1.Introduction 2.Advantages 3.Requirements 4.Installation 5.Architecture.
Chapter 2 Build Your First Project A Step-by-Step Approach 2 Exploring Microsoft Visual Basic 6.0 Copyright © 1999 Prentice-Hall, Inc. By Carlotta Eaton.
Network and Server Basics. Learning Objectives After viewing this presentation, you will be able to: Understand the benefits of a client/server network.
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Creating a Windows Server 2012 R2 Datacenter Virtual machine
Creating a Windows Server 2016 Datacenter Virtual machine
Chapter 1: Introduction
Chapter 1: Introduction
Google Classroom Setting Up Your Class
Data Collection in MTM Choosing the right method for survey data collection.
Networking for Home and Small Businesses – Chapter 2
In this tutorial you will:
Chapter 1: Introduction
TechEd /11/ :54 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
Networking for Home and Small Businesses – Chapter 2
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Day 1, Session 4 Building Your Service Catalog
Presentation transcript:

MS Tech-Ed 2006 Iron Architect Competition Greg Cogdell Milliken & Co.

Problem Statement Iron Architects Announcement “You have been asked to create an architecture that dynamically allocates sessions for the presentations at TechEd Aware of the people’s presence throughout the conference, the new system must dynamically allocate the rooms for a sessoin 30 minutes before its due to start based on: –Location and number of attendees in the area –Attendees that have registered their schedule –Location of speaker –Availability of suitable room for session… The system must also automatically provision the speakers’ machines by sending VPCs, slides, etc. to the machine in time for the session.”

Assumptions… Hardware budgets are limited. Attendees that have not registered their schedule will not be included in the room allocation algorithm. Resources (PCs, Screens, etc.) are assigned to a room and remain in that room as opposed to being dynamically assigned. We want to schedule a session even if 0 attendees have registered for the session. We have access to the physical layout and dimensions of the convention center. We want to be able to add and remove rooms from consideration. Getting attendees into their registered sessions is the primary focus and optimizing the location of each session is the secondary focus. “Breakout” rooms are single purpose and only used for sessions.

Data – Session Definition Data Session ID Session Name Session Instructor Room Resources Required Files to Provision

Data – Calendar Definition Data Session Date Time Duration

Data – Attendee Definition Data Attendee Id Attendee Name Accessibility Need Registered Registered RSS

Data – Instructor Definition Data Instructor Id Instructor Name Accessibility Need Registered Registered RSS

Data – Schedule Definition Data Attendee Calendar Entry

Data – Layout Definition Data Convention Center Name Floor (can repeat) –Width –Length –Placement of walls –Stair locations Room (can repeat) –Capacity –Computer ID –Floor –Location This layout will be logically overlayed with 5x5 grid Utilize the center of a room as its location

Logical Application – Data Maintenance Maintain the sessions Maintain the calendar Maintain the attendees Maintain the convention center layout Maintain the rooms When exiting the application, prompt the user for whether or not they want to optimize the “paths” based on the current layout data. –To optimize the “paths” -Basically we want to determine the path from any point in the convention center to the center of each defined room. Then since this is relatively static information, we will store the results and then look them up as needed in the optimization algorithm. -This would essentially be based on a path finding algorithm similar to what is used in many video games (for example: the A* algorithm) -For every defined point in the convention center, use the path finding algorithm to determine the optimal path to be used to travel from the given point to each room

Logical Application – Attendee Self Help Application Securely allows users that have been defined as registered attendees to choose their schedule. Gives the option to register for notification via RSS feed or .

Logical Application – Optimization Workflow The primary application server will have a standard scheduling/batch tool available to it. This might be an application such as Active Batch or a custom Windows service. In either case, the scheduling algorithm will use the calendar definition as input and will “wake up” at each point 30 minutes before a session is defined to start and begin the Optimization workflow. The Optimization workflow will –Run the optimized allocation logic to determine the ideal room allocation solution –Run the notification logic to notify all attendees and instructors –Run the provisioning logic to perform any remaining setup –Notify appropriate personnel if any error occurs

Logical Application – Optimization Workflow – Allocation Logic For each session –limit the calculation to rooms whose capacity > the number of registered attendees –Determine the total path length for all attendees to get to the available rooms –Using a weight based approach, calculate a total score based on 1)the difference between the best path and the second best path and 2) the difference in available capacity and expected utilized capacity and 3) the number of rooms available to satisfy this session. This allows customization as to the relative importance of capacity utilization and path minimization (the relative importance of which is influenced b the makeup of a given convention center and the number of sessions planned for any given timeframe). –“Commit” to the solution the session / room allocation with the best overall score –Repeat until all sessions are scheduled –NOTE: Much of this algorithm could be encapsulated in WF business rules.

Logical Application – Optimization Workflow – Notification Logic –For each session, notify attendees for each session based on registered addresses Notify all instructors first Notify all attendees –Update RSS feeds –Update data used to drive a simple web application that constantly scrolls through all sessions in the current time frame (alphabetically) and shows the room assignment. This web application can be displayed from the many terminals set up for existing “CommNet” application.

Logical Application – Optimization Workflow – Provisioning Logic –Virtual Machines and slides should be committed to a portable format (DVD, portable hard drives, etc.) as a standard backup. The instructor should have this with them for the session. –A standard Sharepoint site should be established for each track and allow easier access to the session related information. –If the infrastructure can be set up to support it, the Virtual PCs should be run over the LAN from the PCs in the room. –For files that must be copied to the machines, look up the Files to Provision for each session and utilize SMS (or an equivalent tool) to push the files to the defined Computer ID for the allocated room. Given the relative size of a.vhd file and the necessity of “burst” sending the information in the exact same time frame as a break, the approach of copying the files will put a huge strain on the network resources.

Observations / Conclusions Several technologies are emerging (WWF, WCF) that will enable alternative solutions. Since those technologies are not GA, I have chosen to exclude them from this solution. A given attendee’s position at any point in time is never stored and is therefore secure. There are two places where parallel computing approaches could allow you to scale out the solution. The first of these is the determination of the ideal path from any given point to any given room. Since this is relatively static data and a relatively infrequent calculation… this would be of limited benefit. The second and more important place is in the allocation algorithm. In this logic, you can parallelize the scoring for each individual session and then bring back the scores for the overall decision.