Rapid Prototyping of Computer Systems Carnegie Mellon University



































![Architecture • Action Processor – [Location] (Hamburg Hall 2224) • Response Formatter – “Joshua Architecture • Action Processor – [Location] (Hamburg Hall 2224) • Response Formatter – “Joshua](https://slidetodoc.com/presentation_image_h2/b6ffdc0aab21e0f14afa6d3988d41d69/image-36.jpg)



















- Slides: 55
Rapid Prototyping of Computer Systems Carnegie Mellon University IBM CMU Computing Services Handy Andy 1 3 May, 2000
Handy Andy Overview • Goals – Rapidly develop an integrated set of applications and services that use the Wireless Andrew network – Design software that allows people to find and share the information they need as quickly as possible • Solution – Handy Andy: A suite of software designed with the wireless user in mind Handy Andy 2 3 May, 2000
Handy Andy • Overview I. III. IV. V. VII. Handy Andy Introduction Infrastructure & Tools Database Location (Stalker) Portable Help Desk (Ph. D) Audio-centric (Waldo) Information Exchange (Idealink) 3 3 May, 2000
Infrastructour & Tules • Presenter – Bryan Meyer • Group Members – – – Handy Andy Yue Cathy Chang Brian Frankel Kevin Lin Seth Matthews Lisa Nelson 4 3 May, 2000
Proposed IBM Architecture Services User Proxies Devices Handy Andy 5 3 May, 2000
Final Architecture Database Service Infrastructure Login/Logout Waldo Infrastructure Stalker Device Proxy Jornada Other Devices Speech Encode/Decode Itsy Handy Andy Idealink User Proxy Device Ph. D 6 3 May, 2000
What Did We Implement? • Device – Login/Logout program – Send/Receive wrapper functions for services • Network – Buffer plug-in – Authentication service • Service Layer – Plug-in to communicate with services Handy Andy 7 3 May, 2000
Device • Login/Logout Program • Send/Receive wrapper functions for services – Send (data, device#) – Recv (data) Handy Andy 8 3 May, 2000
Network • Buffer Plug-in – Device proxy plug-in – Buffers information sent from service to device – Useful if temporarily disconnected • Authentication Service – Connects to database – Authenticated user gets access to all services Handy Andy 9 Infrastructure Login/Logout UP DP Speech Encode/Decode 3 May, 2000
Database • Presenter – Bryan Meyer • Group Members – Ming Hsu – Frank Lai – Jeremy Shaffer Handy Andy 10 3 May, 2000
Database Overview • Responsibilities – Setup, configure, and maintain database and web server – Help other groups link to the content they need • Resources Used – Microsoft SQL Server 7. 0 – Active Server Pages (ASP) – Borland C++ stored procedure calls via ODBC Handy Andy 11 3 May, 2000
What We Do • Database User. Info Table – Stored procedures sp_Create. User sp_Get. User. Info sp_Change. User. Info – Tables – Permissions Handy Andy 12 Field Name Type Size User-Id char 30 Password char 30 Picture char 10 Phone Number char 50 3 May, 2000
Responsibilities • Accessing the Database – Use ASP web pages to access tables – C++ function calls to database Handy Andy 13 3 May, 2000
Stalker • Presenter – Michael Kolb • Group Members – – Handy Andy Nate Drees Ben Ernest-Jones Sripal Mehta Chirag Shah 14 3 May, 2000
Stalker Overview • Goal: Create a service to provide basic location information to the campus – Use Simple Network Management Protocol (SNMP) to query wireless network access points – Provide hardware address and corresponding access point information to database for location resolution Handy Andy 15 3 May, 2000
Information Query Access Handy Andy 16 3 May, 2000
Statistics • Entire Network – – – Handy Andy Total number of access points: 280 Total query time (real-time): 13 min. 25 sec. Total query CPU time: 43 sec. Time for each query: 2. 875 sec. Memory usage: 6, 892 KB 17 3 May, 2000
Statistics Continued • Demonstration – – – Handy Andy Total number of access points: 37 Total query time (real-time): 55 sec. Total query CPU time: 3 sec. Time for each query: 1. 486 sec. Memory usage: 7, 104 KB 18 3 May, 2000
Plans for the Future • Make it Multi-threaded – Currently, to poll access points, it takes 13 minutes 25 seconds • Use Signal Strength Information – We could get greater precision because we would have information from multiple access points – CMU would almost have a miniature, local Global Positioning System • Greater Need for Security – Our service, while potentially very helpful, could also be dangerous Handy Andy 19 3 May, 2000
Portable Help Desk (Ph. D) • Presenter – Darrin Filer • Group Members – – Handy Andy Michael Fortson Chris Lin Spencer Moy Dan Yocum 20 3 May, 2000
The Portable Help Desk (Ph. D) • Functionality – – Similar to conventional help desk Maps Directories (rooms and people) Information • Motivation – Utilize wireless, handheld devices to remedy shortcomings of conventional help desks – Out of date information – Fixed format – Stationary Handy Andy 21 3 May, 2000
The Portable Help Desk (Ph. D) • Remedy – – Handy Andy User-configurable web pages Real-time maps and information display Customizable map formats Information available in multiple formats 22 3 May, 2000
User Interface Design • Design Constraints – Web browser limitations – Bandwidth – Target audience Early Prototype Handy Andy 23 3 May, 2000
User Interface Design • UI Design Process – Brainstorm – Paper prototypes – Think-aloud user studies Early Prototype Handy Andy 24 3 May, 2000
User Interface Design • User Study Results – Group list confusion – Screen layout improvement – Quick-search Revised Prototype Handy Andy 25 3 May, 2000
Ph. D Features and Interaction User’s List: • Items can be added, moved, and removed • Only “checked” items appear on the map Description: • Information on the currently selected item • Dynamic information automatically updated Map: • Dynamic information automatically updated Map Controls: Zoom & Pan Handy Andy 26 3 May, 2000
System Requirements • Ph. D Client – Hardware: Jornadas, wireless laptops, desktop PCs – Software: Very thin—web browser • Bandwidth • Server-side – Hardware: Desktop PC – Software: Windows NT, Microsoft SQL Server 7. 0, web server with ASP Handy Andy 27 3 May, 2000
The Ph. D Server • Active Server Pages (ASP) – Permits thin client strategy – Supports multiple clients – Upgrades and new versions • SQL Database – Shared among multiple services, proxies, and applications • Stored Procedures – Sole method of database interaction – Programmatic access from ASP pages Handy Andy 28 3 May, 2000
The Role of Proxies Web Browser • Device Proxy – Functionality similar to role of web browser – Could be used in conjunction with User Proxy Other Services Device Proxy ASP Pages User Proxy Stored Procedures Database Handy Andy 29 SQL Tables 3 May, 2000
The Role of Proxies Web Browser • User Proxy – Subset of database stored procedures – Forwards HTTP requests – Appends user-specific information Other Services Device Proxy ASP Pages User Proxy Stored Procedures Database Handy Andy 30 SQL Tables 3 May, 2000
The Role of Proxies Web Browser • Ph. D Services – Accessed solely through stored procedures – Database tables are shared – Never accessed through direct queries Device Proxy ASP Pages Other Services User Proxy Stored Procedures Database Handy Andy 31 SQL Tables 3 May, 2000
Waldo • Presenter – Sreekar Gadde • Group Members – – Handy Andy Joshua Anhalt Kevin Auyoung Meredith Beveridge Barry Schneider 32 3 May, 2000
Waldo Overview • Goal: Voice interface for Handheld Andrew – User speaks to the system naturally – System responds verbally – Provide user-requested services Bob is currently on the Fourth Floor of Wean Where is Bob? Handy Andy 33 3 May, 2000
Requirements • Get User Input – Record what the user said – Transfer this recording to a place where we can process it • Translate the Input – Turn the audio input into text – Determine what the user is asking for • Respond to the User’s Query – Get the information to answer the query – Relay this information to the user Handy Andy 34 3 May, 2000
Architecture • Input to System User’s Speech – <Where is Joshua> • Speech to Text – Sphinx – “Where is Joshua” Audio Digitizer • Grammar Parser – Phoenix – Action. Frame: [Location] (WHERE IS) – Object. Frame: [Person] ([FIRSTNAME] (JOSHUA)) Handy Andy 35 Speech to Text Grammar Parser 3 May, 2000
Architecture • Action Processor – [Location] (Hamburg Hall 2224) • Response Formatter – “Joshua Anhalt is located in Hamburg Hall 2224” • Text to Speech – Festival – <Joshua Anhalt is located in Hamburg Hall 2224> Handy Andy 36 3 May, 2000
Input to the System • Choice Motivated by User Studies – Visibility • Plantronics – Decent audio quality – Volume and quality are generally consistent over time Handy Andy 37 3 May, 2000
Action Processor • Plug-in Architecture – Each plug-in gets same input – Expandable – Very easy to understand Action Processor Error plug-in Contact plug-in Location plug-in Response Formatter Handy Andy 38 3 May, 2000
Plans for the Future • Fully Functional Audio Assistant – Appointments with campus-wide Andrew Calendar – Location based to-do list – Sound Bite News Handy Andy 39 3 May, 2000
Idealink • Presenter – Cori Swinehart • Group Members – – – Handy Andy Tridib Chakravarty Kavin Du Nathan Los John Meier Minh Tran 40 3 May, 2000
Idealink Overview • Idealink Is – A digital shared whiteboard – A tool for communicating graphical ideas • The Target Audience Includes – CMU students and faculty – Handheld Andrew users Handy Andy 41 3 May, 2000
Conceptual Design Phase • Researched Physical Whiteboards – – Handy Andy Several people can draw simultaneously Encourage flow of creative ideas Easy to display both text and images People build off of each other’s work 42 3 May, 2000
Limitations and Solutions • Limitations of Physical Whiteboards – Drawing area is too small – Ideas lost when board is erased – All users must be in the same location • Digital Solutions – Infinite space and storage – Remote collaboration is possible Handy Andy 43 3 May, 2000
Detailed Design Phase • Design Constraints – Relatively small screen size – Synchronization is critical • User Interface Design Process – Guiding principle: minimal intrusion – Analyzed videos of brainstorming sessions – Interviewed potential users Handy Andy 44 3 May, 2000
Interface Features • Powerful Menu Commands – Session management – Geometric tools – Expandable plug-ins Handy Andy 45 3 May, 2000
Interface Features • Easy-to-Access Toolbar – Pen colors – Line thicknesses – Eraser Handy Andy 46 3 May, 2000
Interface Features • Large Drawing Region – Multiple people can draw simultaneously – Users can join a session while in progress – All users’ drawings are automatically synchronized Handy Andy 47 3 May, 2000
Architecture Overview Service broadcasts received coordinates to all clients Clients draw received coordinates on screen; all clients are synchronized Client sends a user’s drawing to the service as a series of coordinates Handy Andy 48 3 May, 2000
System Requirements • Wireless Client – Handheld PC running Windows CE – Wave. LAN card and network connectivity • Service – Desktop PC running Windows 9 x/NT – Network connection with devices Handy Andy 49 3 May, 2000
Plans for the Future • Session Archival Features – Service would automatically save session – Thought process would be preserved • Additional Drawing Capabilities • More Communication Among Users – Text-based chat – Post-It Note modifications Handy Andy 50 3 May, 2000
Credits • Actors Daphne Bert Professor Stuart Narrator Bryan Yue Cathy Chang Minh Tran Frank Lai Michael Kolb Bryan Meyer • Behind the Scenes John Meier Kavin Du Chirag Shah Jeremy Shaffer Handy Andy 51 3 May, 2000
Credits • Demonstration Masters Joshua Anhalt Brian Frankel Nathan Los • Script and Presentation Meredith Beveridge Michael Kolb Lisa Nelson Corinne Swinehart Dan Yocum Handy Andy 52 3 May, 2000
Credits Handy Andy Waldo Joshua Anhalt Kevin Au. Young Meredith Beveridge Sreekar Gadde Barry Schneider Ph. D Darrin Filer Michael Fortson Chris Lin Spencer Moy Dan Yocum Stalker Nate Drees Ben Ernest-Jones Michael Kolb Sripal Mehta Chirag Shah Infrastructure Yue Cathy Chang Brian Frankel Kevin Lin Seth Matthews Bryan Meyer Lisa Nelson Database Frank Lai Ming Hsu Jeremy Shaffer Idealink Tridib Chakravarty Kavin Du Nathan Los John Meier Cori Swinehart Minh Tran 53 3 May, 2000
Special Thanks • Professors and TAs Daniel Siewiorek Asim Smailagic Jane Siegel John Dorsey Francine Gemperle Stavros Polyviou Handy Andy 54 3 May, 2000
Special Thanks • Support and Assistance IBM Computing Services and Handheld Andrew Kevin Miller Alex Rudnicky Kevin Lenzo Jason Small Handy Andy 55 3 May, 2000