Connects wirelessly with host computer

Download Report

Transcript Connects wirelessly with host computer

Rapid Prototyping for Computer Systems
Final Presentation
Spring 2011
Human Computer Interaction
Team
Phase 3
Shoshana Holtzblatt
Marcus Perez
David Randall
Nicole Fernandez
Ray Luong
Vikram Chatterji
Chung-Yi Chi
1/24/11
2
Gathered Research
• Professional Interviews
– Six professionals involved in distributed work
• Literature Review
• Academic Interviews with Social Scientists
– Robert Kraut and Niki Kittur
– Jim Herbsleb and Laura Dabbish
• In-Class Presentations
– David Krackhardt
– Ramayya Krishnan
4/27/2011
3
Key Findings: The Problems
•
•
•
•
•
•
•
•
Finding Experts is Hard
Corporate Memory
Visibility of Interruptability & Availability
Notification & Confirmation
Digital Presence
Communication and Collaboration
Lack of Informal Communication
Lack of Personal Connection
4/27/2011
4
5
The Three Visionary Scenarios
• Finding an expert
• Finding a new project
• Monitor my team
4/27/2011
6
Prototype Development
•
•
•
•
•
Low Fidelity
Medium Fidelity
Final Mock-ups
Status Stone
Mobile
4/27/2011
7
8
9
Testing
• Interactive Prototype Testing
• 10 users from across campus
• CogTool
• Heuristic Evaluation
4/27/2011
10
Cog Tool Findings
• Kiva Time: 70 seconds
• Pinquu Time: 15 seconds
4/27/2011
11
User Testing Findings
•
•
•
•
Availability was a challenge
Clickability was tough to determine
Visibility of forums/QA Systems
Navigation Breadcrumbs would be
helpful
4/27/2011
12
Future Development
•
•
•
•
•
•
•
Team Screen/IM integration
Forums/QA Development
Improvements to Wall of Project
Project Projections
Real-time coding support
Availability Notification
Status Stone changes
4/27/2011
13
Information Organization &
Visualization
Phase 3
Paul Cho
Suongsun Hong
Jaejoon Lee
Rachita Chandra
Ajay Ghadiyaram
Paul Caravelli
JiHoon Kim
1/24/11
14
Overview
• Who we are
• Process
• Development
4/27/2011
15
Who We Are
• Information Organization
– What to show
– Projects, People, Document, Comments,
Status, etc…
– How to organize
– Project page, User profiles, Search Result
4/27/2011
16
Who We Are
• Visualization
– How to show
– Graphs, Charts, Grid, List
– Location
– Click redirection
– Building a GUI
4/27/2011
17
Process
• Interaction with HCI group
– Mockups and requirements
4/27/2011
18
Process
• Interaction with ISO group
– XML Specifications, Requests, and Response
4/27/2011
19
Development
• Testing and Improvements
4/27/2011
20
Development
• System Integration
- Search
- search by selected category
- Document Sharing
- Update relevant pages (recent
activities, project page)
- Lingpipe
4/27/2011
21
External Applications
Skylar Roebuck
Yumin Wong
Cassie Li
Yiling Tay
Po Huang
Ivan Lee
1/24/11
22
Overview
Brief Description of Teams
Features and technical info
Flowchart Process
Screenshots of Usage
4/27/2011
23
Instant Messaging
24
Instant Messaging Team
o Deployment of Openfire Server to implement
XMPP protocol
o MYSQL database to synchronize data with
server
o Chat client of choice: Spark(Windows and
Linux), Adium(Mac)
4/27/2011
25
Features and Technical Info
o Openfire is a java based server implementation
o XMPP protocol is open sourced and secure
o Future improvements on server capabilities
possible through plugins
o Setup relies on a dual database configuration
o Automatic user synchronization with ISO
database
4/27/2011
26
Flow Chart Process
ISO
DATABASE
IM
CLIENT
Authentication
Basic User Profile
Group Associations
OPENFIRE
DATABASE
Advanced User Profile
Detailed Group Info
OPENFIRE
SERVER
IM
CLIENT
IM
CLIENT
Administers Message Sending
Server Configuration
4/27/2011
27
Screenshots of Usage
28
4/27/2011
Screenshots of Usage
29
4/27/2011
Document Sharing
30
Document SharingTeam
o Use of iFolder to implement secure online
storage
o Ease of file synchronization and retrieval
across computers
o Cross platform solution
4/27/2011
31
Features and Technical Info
oChallenges
 Update iFolder Users with Kiva Users
 Identify File-path associated with each user's
shared folder
oSolution
 Using iFolder's UserCmd.exe
 User Bash Script
 File-path Bash Script
4/27/2011
32
Flow Chart Process
33
Screenshots of Usage
34
Screenshots of Usage
4/27/2011
35
Isolation Layer Team
Phase 3
Kendra Garwin
Andrew Yi
Skanda Mohan
David Wang
Skanda Mohan
1/24/11
36
Overview
What is Iso-Layer?
The layer that isolates the database from other modules.
Incorporated later after being recommended by Eric Rose.
Reason:
Better modularity. Hence, better structure.
4/27/2011
37
Composition
Statistics:
Packages and their handlers:
10 classes, 85 packages, avg ~ 50 SLOC/package
External Packages Programs:
Dispatcher, Commands class, Diagnostic UI etc.
Connecting to other modules:
External Applications, IOV, Infrastructure
4/27/2011
38
Composition
Class
Package
Analysis Class
Class, Group, User and Expertise
Class Class
Add, Remove, Files, Groups etc
File Class
Create, Destroy, Get, Info
Friends Class
Accept, Add, Ignore, List etc.
General Class
File, Link, Meeting, Post etc
Group Class
Add, Remove, File, Info etc.
Meeting Class
Add, Create, Date/time, File etc
User Class
Connect, Disconnect, Expert, Get Status
Web Class
Create, Destroy, Info
Whiteboard Class
File-path, Meeting, Users
39
4/27/2011
Working (Request)
Iso Layer
XML command
Request
Dispatcher
XML command
BLACK BOX
Package
USER
XML command
parameters
Command
Handler
4/27/2011
Data Base
SQL command
request
40
Working (Response)
Iso Layer
XML command
Response
Dispatcher
XML command
BLACK BOX
USER
Package
XML command
parameters
Command
Handler
4/27/2011
Data Base
SQL command
Response
41
Testing
A diagnostic GUI provided (with major modifications).
4/27/2011
42
Database and Content Analysis
Phase 3
Rohith Salim
Jason Lei
Steve Luminais
1/24/11
43
Interaction Architecture
4/27/2011
44
What is LingPipe
- A toolkit for processing text using
computational linguistics
- Used to do tasks like
- Find names of people, organizations
etc in news
- Automatically classify Twitter results
into categories (Topics)
- Annotating Databases of Information
4/27/2011
45
Input to Output
- Fed it three documents regarding Sensors
- Topics Generated
- Sensors, Voltage etc.
- Generated through Linear Discriminant
Analysis Algorithm
- Clustering of words
- Conclusion
- Need a larger sample set
4/27/2011
46
How we use it
- Use LingPipe on existing Database to create
topics from the documents and posts
uploaded
- Create a People-Web whereby different
people are linked together if they have
common expertise
4/27/2011
47
What is BirdEye
- Open source Information Visualization and
Visual Analytics library for Adobe Flex
- Community Project
• Enables users to create multidimensional data visualization for
analysis and presentation of information
4/27/2011
48
How we use it
- Represent the data extracted by LingPipe
in a visually appealing manner
4/27/2011
49
Overall Design
-Isolation layer gets information from
database
-Sends Information as an XML file to
LingPipe
-LingPipe extracts the meaningful
words(topics) out of these words
-BirdEye then uses this information to
create a visual, interactable
representation
4/27/2011
50
Final Progress
- LingPipe+BirdEye+Apache on Work machine
- Connected With the Kiva Database through
Isolation layer to obtain files
- Created a People to Expertise model
- Created an easy way for people to filter
certain topics
- Created a shell script to automate the entire
topic generation process
4/27/2011
51
Mobile Workers and Infrastructure
Phase 3
Thomas Tzou
Daniel Lin
Rohit Banerjee
Christopher Jo
Rika Nakahara
Rantao Chen
Veeren Mandalia
1/24/11
52
Overview
Hardware Architecture
Supported Technologies
What is done
What is being done
Q&A
4/27/2011
53
Hardware Architecture
Router
PC Laptop
Webcam w/
Built-in Mic
Projector
4/27/2011
Wiimote/ IR
Pens
Android App
(Mobile Pinquu)
Phone
SW Server Database /
Desktop Computer
Status Stone
Pico
Projector
Webcam w/
Built-in Mic
Key
Development
Work Room
Mobile Worker
Wired Connection
802.11 Wireless
Bluetooth Wireless
54
Supported Technologies
-Status Stone
-Virtual Whiteboard
-Pico Projector
-External Apps - Android
4/27/2011
55
Status Stone
-Wired and (potential)Wireless Communication (over
Bluetooth to host); sends status updates to Kiva Database
-Motivation: Quick way to change user status without
spending precious time looking around in a chat client for
the status change icon
-Physically rotate device
to change user status
-2 LEDs
-Green: Available Status
-Red: Busy Status
4/27/2011
56
Virtual Whiteboard
-Built from Johnny Lee’s Cheap Whiteboard
-Motivation: Marker-less method to share information during
business meetings, even across a network, with automatic
saves
-Uses IR Pens to draw on any surface with a video output
-Projector
-Pico Projector
-Computer Screen
-TV
Projection
surface
User with IR Pen
-Wiimote captures IR Pen input
-Uses Bluetooth to transmit data back to
host machine
4/27/2011
45°
Wiimote
57
Pico Projector
-Portable laser projector
-Motivation: Enable access to Mobile Conference room
and even a Mobile Virtual Whiteboard
-Always in focus
4/27/2011
58
Android Application
-Mobile Version of Pinquu built
on Android Platform
-Essentially a mobile website
with links to Kiva database
backend
-Able to login, post to Kiva etc.
4/27/2011
59
What is done
-Status Stone
-Physical device built (circuits) with flip action
-Connects wirelessly with host computer (Bluetooth)
-Able to send information (email + network)
-Virtual Whiteboard
-Johnny Lee Cheap Whiteboard vanilla functionality working
-Multiple IR pen tracking to imitate mouse pointer
-MS Paint
-3 Versions of IR Pen
-Pico Projector
-Tested video with iPhone 4 running
iOS 4.2
-Android Application
-Mobile Version of Pinquu GUI which
links to Kiva Database
4/27/2011
Wiimote
60
Questions??
4/27/2011
61