Project: Multi-touch / Single Display Groupware

CPSC581.SingleDisplayGroupware History

Show minor edits - Show changes to output

Deleted line 63:
!!!!''Optional''
Added line 70:
* Search for Multitouch on google and on youtube
Changed lines 54-55 from:
!!!Readings
!!!!''Required''
to:
!!!Readings / sites of interest
Added line 71:
* [[http://pages.cpsc.ucalgary.ca/~saul/wiki/pmwiki.php/Resources/LinksToHCIVideos | Tabletops / Vertical Displays]]: scroll down to that section of the page. Note that there are a few dead links there.
Changed lines 5-9 from:
You have been hired to create an educational prototype of a multi-touch system that allows 2 to 4 students to interact over a single display. You can choose your target student audience, but the must somewhere within the Grade 3 to Grade 8 range. Based on your design, the company that hired will red light or green light the idea. If green-lighted, it will continue on to development. The constraints are:
* Purpose:
** it must support an educational activity
* Technical:
** it must fit
display resolutions of: smallest: 1024 x 768; largest: 1280 x 1024).
to:
You have been hired to create an educational prototype of a multi-touch system that allows 2 to 4 students to interact over a single display. You can choose your target student audience, but they must be chosen from the Grade 3 to Grade 8 range. Based on your design, the company that hired will red light or green light the idea. If green-lighted, it will continue on to development. The constraints are:
* '''Purpose''':
** it must support an educational multi-user simultaneous activity over a single display
* '''Technical''':
** it must fit display resolutions. ''smallest'': 1024 x 768; ''largest'': 1280 x 1024).
Changed lines 12-21 from:
** (optional) you can allow a student to use more than one mouse, if desired (i.e., bi-manual input).

A
multi-touch table will not be available to you. Consequently, you will be using a multi-touch emulator that lets you recognize multiple mice. For the purposed of this exercise, you can use mouse IDs to differentiate between users.

You have complete freedom of your design, as long as you can show that the application is educationally useful for its intended audience, and that its design is somewhat impressive. Several options of what you can do include:

* Think about how students work together in parallel in the real world around a table, a wall, paper, and so on. Then consider how that process can be supported by technology, and create a novel application that encapsulates that process
* Your are probably familiar with multi-user games. One option is to create a cooperative - rather than competitive - game, where people work together to acheive a goal rather than compete with one another.
* Analyze a single-user learning activity and ask how its idea could be extended to support multiple students working in parallel; then create a multi-touch activity that reflects that activity
to:
** (optional) a student can use more than one mouse, if desired (i.e., bi-manual input).
** because a
multi-touch table will not be available, you will be using a multi-touch emulator that lets you recognize multiple mice.
**
For the purposes of this exercise, you can use mouse IDs to differentiate between users.

You have complete freedom of your design, as long as you can show that the application is educationally useful for its intended audience, and that its design is impressive.
Added lines 19-21:

Your exercise will be based delivery of sketches, your design creativity, your implementation, documentation and packaging, and your portfolio summaries. Great successes or failures in one of these criteria can affect your total grade significantly. Note that a successful implementation is required: if you cannot demonstrate your system, you will automatically receive a zero.
Changed lines 25-26 from:
# Portfolio #1: A live web site that contains a visual description of your system. It must include separate source and separate executables (packaged as zip files)
# Portfolio #2: A video (with voice over) that illustrates your system. The video must be available as a download, as well as playable from the web site. Production quality and aesthetics matter.
to:
# Portfolio #1: A live web site that contains a visual description of your system. It must include separate source and separate executables (packaged as zip files). These executables must run on systems that have the table emulators installed, e.g., the lab computers (test it!).
# Portfolio #2: A video (with voice over) that illustrates your system
. The video must be available as a download, as well as playable from your web site entry. Production quality and aesthetics matter.
# Paper portfolio. No paper portfolio will be required for this assignment.
Added lines 34-53:
!!!Suggested process
* Think about how students work together in parallel in the real world around a table, a wall, paper, and so on. Then consider how that process can be supported by technology, and create a novel application that encapsulates that process
* Analyze a single-user learning activity and ask how its idea could be extended to support multiple students working in parallel; then create a multi-touch activity that reflects that activity
* You are probably familiar with multi-user games. One option is to create a cooperative - rather than competitive - game, where people work together to acheive a goal rather than compete with one another.

'''Warmup:'''
* In your sketchbook, jot down words describing real world or computer-based activites that you and others would or could use and share while interacting together. For example:
** real world: a piece of string, a rubber band, paper, jigsaw puzzle pieces
** computer world: buttons, list boxes, sliders, rectangle drawing tool, palettes...
* For each of these words, visualize in your head what would happen as multiple people use it. If it is a computer object, think beyond its existing constraints. For example:
** rubber band - people can grab it at different points, rotate it, stretch it. A third person pulling on it would then bend it
** slider - perhaps the slider remembers each person's value. This could be done by having multiple thumbs, one per person, that stays in the last set position. Thumbs could be identified by name or color, and activated as a particular person moves over the slider.

Your assignment:
* Now do the same for educational activities. Keep the activity simple, which will let you concentrate on the multi-user aspect of it. Real life examples will naturally be collaborative. Computer examples will tend to be one-person oriented.
* Re-read your notes on single display groupware and/or visit the web sites above for ideas (don't forget Google!). You can borrow from existing tabletop SDG ideas/systems, but you should modify their designs (and cite the original).
* Share ideas and borrow implementation techniques with class mates. Your ideas can complement and build upon those of others.
* As before, remember the design funnel! develop several ideas, and make choices. Elaborate multiple designs as needed. Explore details of your design before coding.
Changed lines 77-98 from:
!!!Evaluation

Your exercise will be based delivery of sketches, your design creativity, your implementation, documentation and packaging, and your portfolio summaries (paper and electronic). Great successes or failures in one of these criteria can affect your total grade significantly. Note that a successful implementation is required: if you cannot demonstrate your system, you will automatically receive a zero.

!!!Suggested process
->'''''Lateral thinking''''': seeking to solve problems by unorthodox or apparently illogical methods. It is about moving sideways when working on a problem. It encourages people to apply different perceptions, different concepts and different points of entry to problem-solving.

Warmup:
* In your sketchbook, jot down words describing real world or computer-based activites that you and others would or could use and share while interacting together. For example:
** real world: a piece of string, a rubber band, paper, jigsaw puzzle pieces
** computer world: buttons, list boxes, sliders, rectangle drawing tool, palettes...
* For each of these words, visualize in your head what would happen as multiple people use it. If it is a computer object, think beyond its existing constraints. For example:
** rubber band - people can grab it at different points, rotate it, stretch it. A third person pulling on it would then bend it
** slider - perhaps the slider remembers each person's value. This could be done by having multiple thumbs, one per person, that stays in the last set position. Thumbs could be identified by name or color, and activated as a particular person moves over the slider.

Your assignment:
* Now do the same for educational activities. Keep the activity simple, which will let you concentrate on the multi-user aspect of it. Real life examples will naturally be collaborative. Computer examples will tend to be one-person oriented.
* Re-read your notes on single display groupware and/or visit the web sites above for ideas (don't forget Google!). You can borrow from existing tabletop SDG ideas/systems, but you should modify their designs (and cite the original).
* Share ideas and borrow implementation techniques with class mates. Your ideas can complement and build upon those of others.
* As before, remember the design funnel! develop several ideas, and make choices. Elaborate multiple designs as needed. Explore details of your design before coding.
to:
Added lines 22-27:
!!! Deliverables
Deliverables are similar to assignment 1
# A variety of sketches displaying idea variety, choices, and idea evolution
# A demonstration of an implemented version of your system. Sophistication and aesthetics matter. I will especially be looking for sophisticated multi-user aspects of your system.
# Portfolio #1: A live web site that contains a visual description of your system. It must include separate source and separate executables (packaged as zip files)
# Portfolio #2: A video (with voice over) that illustrates your system. The video must be available as a download, as well as playable from the web site. Production quality and aesthetics matter.
Changed lines 63-64 from:
* In your sketchbook, jot down words describing real world or computer-based objects and tools that you and others would or could use and share while interacting together. For example:
to:
Warmup:
* In your sketchbook, jot down words describing real world or computer-based activites that you and others would or could use and share while interacting together. For example:
Changed lines 70-71 from:
* Sketch out some graphical explorations of these objects/tools that somehow capture the essence of how they would be shared. Label these sketches, and annotate them if necessary. Generate as many sketches as you wish i.e., you may wish to sketch several designs of one type of object, or explore several objects and their combinations. Be creative, funny and/or off-beat: humor is allowed!
* Also re-read your notes on single display groupware
and/or visit the web sites above for ideas (don't forget Google!). You can re-implement existing SDG ideas/systems, but you should modify their designs.
to:
Your assignment:
* Now do the same for educational activities. Keep the activity simple, which will let you concentrate on the multi-user aspect of it. Real life examples will naturally be collaborative. Computer examples will tend to be one-person oriented.
* Re-read your notes on single display groupware and/or visit the web sites above for ideas (don't forget Google!). You can borrow from existing tabletop SDG ideas/systems, but you should modify their designs (
and cite the original).
Changed lines 75-80 from:
* Choose your best design. Implement it in C# as an SDG user control (widget) or class object. Also implement a C# program that demonstrates this control/object. Remember that this implementation is also a sketch that will evolve over time.
* Create a portfolio web site summary.
** Document the API for the control
** Package the control, its source, the executables so that they can be easily viewed and installed anywhere.
** Create a visual summary of it
* Create a paper-based portfolio summary of your design as a poster.
to:
* As before, remember the design funnel! develop several ideas, and make choices. Elaborate multiple designs as needed. Explore details of your design before coding.
Changed line 1 from:
(:title Project: Single Display Groupware :)
to:
(:title Project: Multi-touch / Single Display Groupware :)
Changed lines 5-39 from:
You have been hired to create a demonstration of a single-display groupware (SDG) system that allows 2 to 4 people to interact over a single display using multiple mice and (optionally) multiple keyboards. Your demonstration illustrates at least one user control or object that gracefully reacts to multiple people using it simultaneously, which in turn is embedded in an application that exploits this user control or object.

You have complete freedom of your design, as long as you can show that the SDG user control/object and its containing application is useful for its intended audience, and that its design is somewhat impressive
. Several options of what you can do include:

* Think about
how people work together in parallel in the real world around a table, a wall, paper, and so on. Then consider how that process can be supported by technology, and create a novel SDG user control/object that encapsulates that process
* Your are probably familiar with SDG in games. Create a cooperative game
, where people work together to acheive a goal rather than compete with one another.
* Create an educational SDG application where people work together to learn from one another.
* Analyze a single-user control/object/application and ask how its idea could be extended to support multiple people working in parallel; then create an SDG version of it
* Similar to
the above, but create a family of SDG-equivalents to an existing user control/object to show design diversity
* Create a bimanual SDG user control/object, i.e., where people work with two hands at the same time

!!!Objectives

(:table border=1 cellspacing=0 :)

(:cellnr:) '''Exercise Objectives'''
(:cell:)
'''Pedagogical Objectives'''
(:cellnr:) Using your knowledge of single display groupware, you will design an SDG user control embedded in an application
(:cell:)
Apply your theoretical knowledge of Single Display Groupware and lateral thinking to generate design ideas.
(:cellnr:) You will generate sketched designs in your sketchbook of possible user control and their surrounding applications.
(:cell:)
Acquire first
-time experiences brainstorming ideas and variations via sketches in a sketchbook
(:cellnr:) You will implement and package your design on the class web site so others can try it.
(:cell:)
Learn how to implement, package, install and document C# applications, user controls and class objects
(:cellnr:) You will create a portfolio summary of this design for the web and as a poster
(:cell:)
Acquire first-time experiences creating a portfolio summary
(:cellnr:) You will discuss and comment on other people's design
(:cell:)
Engage in design critiques
(:tableend:)
to:
You have been hired to create an educational prototype of a multi-touch system that allows 2 to 4 students to interact over a single display. You can choose your target student audience, but the must somewhere within the Grade 3 to Grade 8 range. Based on your design, the company that hired will red light or green light the idea. If green-lighted, it will continue on to development. The constraints are:
* Purpose:
** it must support an educational activity
* Technical:
** it must fit display resolutions of: smallest: 1024 x 768; largest: 1280 x 1024).
** it should recognize at least two touches (i
.e., two mice) but can have additional touches
** it must support
how at least two students work together simultaneously
** (optional) you can allow
a student to use more than one mouse, if desired (i.e., bi-manual input).

A multi-touch table will not be available to you. Consequently, you will be using a multi-touch emulator that lets you recognize multiple mice. For the purposed of this exercise
, you can use mouse IDs to differentiate between users.

You have complete freedom of your design, as long as you can show that the application is educationally useful for its intended audience, and that its design is somewhat impressive. Several options of what you can do include:

* Think about how students work together in parallel in
the real world around a table, a wall, paper, and so on. Then consider how that process can be supported by technology, and create a novel application that encapsulates that process
* Your are probably familiar with multi-user games. One option is to create a cooperative - rather than competitive - game, where people work together to acheive a goal rather than compete with one another.
* Analyze a single-user learning activity and ask how its idea could be extended to support multiple students working in parallel; then create a multi
-touch activity that reflects that activity
Changed lines 24-27 from:
#SDG Tookit software, examples and documentation are available from http://grouplab.cpsc.ucalgary.ca/cookbook/ - Click SDG Toolkit in the sidebar.
#An
extra USB mouse will be given to each person. Spare keyboards will be offered on an as needed basis, as well as extra mice (but these are in limited supply).

!!!Readings on SDG
to:
# Table emulator software will be made available to you, as well as tutorial examples
# An
extra USB mouse will be given to each person. Other mice may be offered on an as needed basis(but these are in limited supply).

!!!Readings
Changed line 66 from:
* [[http://www.sis.uncc.edu/~clatulip/Research.html|Celine Latulipe's Bimanual input demos]], as video clips.
to:
* [[http://www.sis.uncc.edu/~clatulip/Research.html|Celine Latulipe's Bimanual input demos]], as video clips; her [[http://www.sis.uncc.edu/~clatulip/thesis.pdf | PhD thesis]] also provides good background.
Deleted lines 17-18:
->'''''Lateral thinking''''': seeking to solve problems by unorthodox or apparently illogical methods. It is about moving sideways when working on a problem. It encourages people to apply different perceptions, different concepts and different points of entry to problem-solving.
Changed lines 73-74 from:
to:
->'''''Lateral thinking''''': seeking to solve problems by unorthodox or apparently illogical methods. It is about moving sideways when working on a problem. It encourages people to apply different perceptions, different concepts and different points of entry to problem-solving.
Changed lines 47-48 from:
!!!Required and optional readings on SDG
to:
!!!Readings on SDG
!!!!''Required''
Changed lines 57-58 from:
* (optional) Stewart, J., Bederson. B. and Druin, A. \\
to:
!!!!''Optional''
* Stewart, J., Bederson. B. and Druin, A. \\
Changed line 60 from:
* (optional) Druin, A., Stewart, J., Proft, D., Bederson, B. and Hollan, J.\\
to:
* Druin, A., Stewart, J., Proft, D., Bederson, B. and Hollan, J.\\
Changed lines 66-67 from:
to:
* [[http://www.sis.uncc.edu/~clatulip/Research.html|Celine Latulipe's Bimanual input demos]], as video clips.
Changed line 49 from:
[[HCIPapers:bier-mmm-uist91.pdf |MMM: A User Interface Architecture for Shared Editors on a Single Screen]]. Proceedings of the ACM Symposium on User Interface Software and Technology, 79-86. 1991. Note: A good video of MMM is also available.
to:
'''[[HCIPapers:bier-mmm-uist91.pdf |MMM: A User Interface Architecture for Shared Editors on a Single Screen]]'''. Proceedings of the ACM Symposium on User Interface Software and Technology, 79-86. 1991. Note: A good video of MMM is also available.
Changed line 51 from:
[[http://grouplab.cpsc.ucalgary.ca/papers/2004/04-SDGToolkit.AUIC/SDG%20Toolkit%20AUIC.pdf|Rapidly Prototyping Single Display Groupware through the SDGToolkit.]] Proc Fifth Australasian User Interface Conference, Volume 28 in the CRPIT Conferences in Research and Practice in Information Technology Series, (Dunedin, NZ January), Australian Computer Society Inc., p101-110
to:
'''[[http://grouplab.cpsc.ucalgary.ca/papers/2004/04-SDGToolkit.AUIC/SDG%20Toolkit%20AUIC.pdf|Rapidly Prototyping Single Display Groupware through the SDGToolkit.]]''' Proc Fifth Australasian User Interface Conference, Volume 28 in the CRPIT Conferences in Research and Practice in Information Technology Series, (Dunedin, NZ January), Australian Computer Society Inc., p101-110
Changed line 53 from:
[[http://grouplab.cpsc.ucalgary.ca/papers/2004/04-SDGToolkitVideo.CSCW/abstract.html|SDG Toolkit]]. Video Proceedings of the ACM CSCW Conference on Computer Supported Cooperative Work. (November 6-10, Chicago, Illinois). ACM Press. Video and abstract, duration 3:55.
to:
'''[[http://grouplab.cpsc.ucalgary.ca/papers/2004/04-SDGToolkitVideo.CSCW/abstract.html|SDG Toolkit]]'''. Video Proceedings of the ACM CSCW Conference on Computer Supported Cooperative Work. (November 6-10, Chicago, Illinois). ACM Press. Video and abstract, duration 3:55.
Changed line 55 from:
[[http://grouplab.cpsc.ucalgary.ca/papers/2006/06-SDGToolkitInAction-CSCW/abstract.html|SDGToolkit in Action]]. Video Proceedings of ACM CSCW'06 Conference on Computer Supported Cooperative Work, November, ACM Press. Video and two-page summary. Duration 7:14
to:
'''[[http://grouplab.cpsc.ucalgary.ca/papers/2006/06-SDGToolkitInAction-CSCW/abstract.html|SDGToolkit in Action]]'''. Video Proceedings of ACM CSCW'06 Conference on Computer Supported Cooperative Work, November, ACM Press. Video and two-page summary. Duration 7:14
Changed line 57 from:
[[HCIPapers:stewart-sdg-chi97.pdf |Single Display Groupware: A Model for Co-Present Collaboration]]. Proceedings of ACM CHI 99 Conference on Human Factors in Computing Systems 1999 v.1 286-293.
to:
'''[[HCIPapers:stewart-sdg-chi97.pdf |Single Display Groupware: A Model for Co-Present Collaboration]]'''. Proceedings of ACM CHI 99 Conference on Human Factors in Computing Systems 1999 v.1 286-293.
Changed lines 59-60 from:
[[HCIPapers:druin-kidpad-chi97.pdf |KidPad: A Design Collaboration Between Children, Technologists, and Educators.]] Proceedings of ACM CHI 97 Conference on Human Factors in Computing Systems 1997 v.1, 463-470.
to:
'''[[HCIPapers:druin-kidpad-chi97.pdf |KidPad: A Design Collaboration Between Children, Technologists, and Educators.]]''' Proceedings of ACM CHI 97 Conference on Human Factors in Computing Systems 1997 v.1, 463-470.
Changed lines 9-14 from:
* create an SDG-equivalent to an existing user control/object and embed it in a productivity-type application
* create a family of SDG-equivalents to an existing user control/object to show design diversity
* create an SDG user control/object that would be a component of a game
* start from scratch by thinking about how people work together and how it can be supported, and create
a novel SDG user control/object that encapsulates your idea
* create a bimanual SDG user
control/object
to:
* Think about how people work together in parallel in the real world around a table, a wall, paper, and so on. Then consider how that process can be supported by technology, and create a novel SDG user control/object that encapsulates that process
* Your are probably familiar with SDG in games. Create a cooperative game, where people work together to acheive
a goal rather than compete with one another.
* Create an educational SDG application where people work together to learn from one another.
* Analyze a single-user
control/object/application and ask how its idea could be extended to support multiple people working in parallel; then create an SDG version of it
* Similar to the above, but create a family of SDG-equivalents to an existing user control/object to show design diversity
* Create a bimanual SDG user control/object, i.e., where people work with two hands at the same time
Added line 1:
(:title Project: Single Display Groupware :)
Changed line 4 from:
to:
!!!Description
Changed lines 15-18 from:
'''Objectives'''

Lateral thinking: seeking to solve problems by unorthodox or apparently illogical methods. It is about moving sideways when working on a problem. It encourages people to apply different perceptions, different concepts and different points of entry to problem-solving.
to:
!!!Objectives

->
'''''Lateral thinking''''': seeking to solve problems by unorthodox or apparently illogical methods. It is about moving sideways when working on a problem. It encourages people to apply different perceptions, different concepts and different points of entry to problem-solving.
Changed lines 41-42 from:
'''What you will be given'''
to:
!!!Materials
Changed lines 45-46 from:
#Various required and optional readings on SDG are listed below and on the Readings page
*
* Bier, E. and Freeman, S. \\
to:
!!!Required and optional readings on SDG
* Bier, E. and Freeman, S. \\
Changed line 49 from:
** Tse, E. and Greenberg, S. (2004) \\
to:
* Tse, E. and Greenberg, S. (2004) \\
Changed line 51 from:
** (video) Tse, E. and Greenberg. S. (2004) \\
to:
* (video) Tse, E. and Greenberg. S. (2004) \\
Changed line 53 from:
** (video) Greenberg, S. and Tse. E. (2006) \\
to:
* (video) Greenberg, S. and Tse. E. (2006) \\
Changed line 55 from:
** (optional) Stewart, J., Bederson. B. and Druin, A. \\
to:
* (optional) Stewart, J., Bederson. B. and Druin, A. \\
Changed line 57 from:
** (optional) Druin, A., Stewart, J., Proft, D., Bederson, B. and Hollan, J.\\
to:
* (optional) Druin, A., Stewart, J., Proft, D., Bederson, B. and Hollan, J.\\
Changed lines 59-66 from:
#These web sites may provide inspirations about project ideas:
** [[http://innovis.cpsc.ucalgary.ca/research.php|Innovis]] (U Calgary): See Orientation in tabletops, Rotation 'N Translation, Territoriality, Interface Currents
** [[http://www.merl.com/projects/|MERL projects]]: See the DiamondTouch entries within the two 'Off the Desktop Interaction' categories. K
** [[http://www.cs.umd.edu/hcil/kiddesign/kidpad.shtml|KidPad, an SDG Tool for children]]. Includes a free download.
** [[http://www.edgelab.sfu.ca/projects/sdg.htm|EdgeLab projects]] on SDG: See their Projects page.

'''Evaluation'''
to:
!!!Web sites that may provide inspirations for your project
* [[http://innovis.cpsc.ucalgary.ca/research.php|Innovis]] (U Calgary): See Orientation in tabletops, Rotation 'N Translation, Territoriality, Interface Currents
* [[http://www.merl.com/projects/|MERL projects]]: See the DiamondTouch entries within the two 'Off the Desktop Interaction' categories. K
* [[http://www.cs.umd.edu/hcil/kiddesign/kidpad.shtml|KidPad, an SDG Tool for children]]. Includes a free download.
* [[http://www.edgelab.sfu.ca/projects/sdg.htm|EdgeLab projects]] on SDG: See their Projects page.

!!!Evaluation
Changed lines 70-71 from:
'''Suggested process'''
to:
!!!Suggested process
Changed lines 73-74 from:
->- real world: a piece of string, a rubber band, paper, jigsaw puzzle pieces
->- computer world: buttons, list boxes, sliders, rectangle drawing tool, palettes...
to:
** real world: a piece of string, a rubber band, paper, jigsaw puzzle pieces
** computer world: buttons, list boxes, sliders, rectangle drawing tool, palettes...
Changed lines 76-77 from:
->- rubber band - people can grab it at different points, rotate it, stretch it. A third person pulling on it would then bend it
->- slider - perhaps the slider remembers each person's value. This could be done by having multiple thumbs, one per person, that stays in the last set position. Thumbs could be identified by name or color, and activated as a particular person moves over the slider.
to:
** rubber band - people can grab it at different points, rotate it, stretch it. A third person pulling on it would then bend it
** slider - perhaps the slider remembers each person's value. This could be done by having multiple thumbs, one per person, that stays in the last set position. Thumbs could be identified by name or color, and activated as a particular person moves over the slider.
Changed lines 83-85 from:
->- Document the API for the control
->- Package the control, its source, the executables so that they can be easily viewed and installed anywhere.
->- Create a visual summary of it
to:
** Document the API for the control
** Package the control, its source, the executables so that they can be easily viewed and installed anywhere.
** Create a visual summary of it
Changed lines 65-71 from:
Your exercise will be very loosely based on the following breakdown. However, great successes − or failures − in one exercise criteria will likely affect your total grade. Note that a successful implementation is required: if you cannot demonstrate your system, you will automatically receive a zero.

* Sketches: ~1/5 of
your grade
* Design creativity: ~1/5 of your grade
* Implementation, documentation and packaging:: ~2/5 of your grade
* Portfolio summary: ~1/5 of your grade
to:
Your exercise will be based delivery of sketches, your design creativity, your implementation, documentation and packaging, and your portfolio summaries (paper and electronic). Great successes or failures in one of these criteria can affect your total grade significantly. Note that a successful implementation is required: if you cannot demonstrate your system, you will automatically receive a zero.
Changed line 60 from:
** [[http://www.cs.umd.edu/hcil/kiddesign/kidpad.shtml|idPad, and SDG Tool for children]]. Includes a free download.
to:
** [[http://www.cs.umd.edu/hcil/kiddesign/kidpad.shtml|KidPad, an SDG Tool for children]]. Includes a free download.
Changed line 50 from:
[[http://grouplab.cpsc.ucalgary.ca/papers/2004/04-SDGToolkitVideo.CSCW/abstract.html|SDG Toolkit]. Video Proceedings of the ACM CSCW Conference on Computer Supported Cooperative Work. (November 6-10, Chicago, Illinois). ACM Press. Video and abstract, duration 3:55.
to:
[[http://grouplab.cpsc.ucalgary.ca/papers/2004/04-SDGToolkitVideo.CSCW/abstract.html|SDG Toolkit]]. Video Proceedings of the ACM CSCW Conference on Computer Supported Cooperative Work. (November 6-10, Chicago, Illinois). ACM Press. Video and abstract, duration 3:55.
Changed line 54 from:
[[stewart-sdg-chi97.pdf |Single Display Groupware: A Model for Co-Present Collaboration]]. Proceedings of ACM CHI 99 Conference on Human Factors in Computing Systems 1999 v.1 286-293.
to:
[[HCIPapers:stewart-sdg-chi97.pdf |Single Display Groupware: A Model for Co-Present Collaboration]]. Proceedings of ACM CHI 99 Conference on Human Factors in Computing Systems 1999 v.1 286-293.
Changed line 56 from:
[[druin-kidpad-chi97.pdf |KidPad: A Design Collaboration Between Children, Technologists, and Educators.]] Proceedings of ACM CHI 97 Conference on Human Factors in Computing Systems 1997 v.1, 463-470.
to:
[[HCIPapers:druin-kidpad-chi97.pdf |KidPad: A Design Collaboration Between Children, Technologists, and Educators.]] Proceedings of ACM CHI 97 Conference on Human Factors in Computing Systems 1997 v.1, 463-470.
Changed line 46 from:
[[bier-mmm-uist91.pdf |MMM: A User Interface Architecture for Shared Editors on a Single Screen]]. Proceedings of the ACM Symposium on User Interface Software and Technology, 79-86. 1991. Note: A good video of MMM is also available.
to:
[[HCIPapers:bier-mmm-uist91.pdf |MMM: A User Interface Architecture for Shared Editors on a Single Screen]]. Proceedings of the ACM Symposium on User Interface Software and Technology, 79-86. 1991. Note: A good video of MMM is also available.
Changed lines 45-48 from:
** Bier, E. and Freeman, S. MMM: A User Interface Architecture for Shared Editors on a Single Screen. Proceedings of the ACM Symposium on User Interface Software and Technology, 79-86. 1991. Note: A good video of MMM is also available.
** Tse, E. and Greenberg, S. (2004) Rapidly Prototyping Single Display Groupware through the SDGToolkit. Proc Fifth Australasian User Interface Conference, Volume 28 in the CRPIT Conferences in Research and Practice in Information Technology Series, (Dunedin, NZ January), Australian Computer Society Inc., p101-110
**
(video) Tse, E. and Greenberg. S. (2004) SDG Toolkit. Video Proceedings of the ACM CSCW Conference on Computer Supported Cooperative Work. (November 6-10, Chicago, Illinois). ACM Press. Video and abstract, duration 3:55.
** (optional) Stewart, J., Bederson. B. and Druin, A. Single Display Groupware: A Model for Co-Present Collaboration
. Proceedings of ACM CHI 99 Conference on Human Factors in Computing Systems 1999 v.1 286-293.
to:
** Bier, E. and Freeman, S. \\
[[bier-mmm-uist91.pdf |
MMM: A User Interface Architecture for Shared Editors on a Single Screen]]. Proceedings of the ACM Symposium on User Interface Software and Technology, 79-86. 1991. Note: A good video of MMM is also available.
** Tse, E. and Greenberg, S. (2004) \\
[[http://grouplab
.cpsc.ucalgary.ca/papers/2004/04-SDGToolkit.AUIC/SDG%20Toolkit%20AUIC.pdf|Rapidly Prototyping Single Display Groupware through the SDGToolkit.]] Proc Fifth Australasian User Interface Conference, Volume 28 in the CRPIT Conferences in Research and Practice in Information Technology Series, (Dunedin, NZ January), Australian Computer Society Inc., p101-110
** (video) Tse, E. and Greenberg. S. (2004) \\
[[http://grouplab
.cpsc.ucalgary.ca/papers/2004/04-SDGToolkitVideo.CSCW/abstract.html|SDG Toolkit]. Video Proceedings of the ACM CSCW Conference on Computer Supported Cooperative Work. (November 6-10, Chicago, Illinois). ACM Press. Video and abstract, duration 3:55.
** (video) Greenberg, S. and Tse. E. (2006) \\
[[http://grouplab.cpsc.ucalgary.ca/papers/2006/06-SDGToolkitInAction-CSCW/abstract.html|SDGToolkit in Action]]. Video Proceedings of ACM CSCW'06 Conference on Computer Supported Cooperative Work, November, ACM Press. Video and two-page summary. Duration 7:14
** (optional) Stewart, J., Bederson. B. and Druin, A. \\
[[stewart-sdg-chi97.pdf |Single Display Groupware: A Model for Co-Present Collaboration]]
. Proceedings of ACM CHI 99 Conference on Human Factors in Computing Systems 1999 v.1 286-293.
Changed line 56 from:
KidPad: A Design Collaboration Between Children, Technologists, and Educators. Proceedings of ACM CHI 97 Conference on Human Factors in Computing Systems 1997 v.1, 463-470.
to:
[[druin-kidpad-chi97.pdf |KidPad: A Design Collaboration Between Children, Technologists, and Educators.]] Proceedings of ACM CHI 97 Conference on Human Factors in Computing Systems 1997 v.1, 463-470.
February 06, 2007, at 01:44 PM by 136.159.7.242 -
Changed lines 54-56 from:
** [[idPad, and SDG Tool for children]]. Includes a free download.
** [[EdgeLab projects]] on SDG: See their Projects page.
to:
** [[http://www.cs.umd.edu/hcil/kiddesign/kidpad.shtml|idPad, and SDG Tool for children]]. Includes a free download.
** [[http://www.edgelab.sfu.ca/projects/sdg.htm|EdgeLab projects]] on SDG: See their Projects page.
February 06, 2007, at 01:41 PM by 136.159.7.242 -
Changed lines 53-56 from:
** MERL projects: See the DiamondTouch entries within the two 'Off the Desktop Interaction' categories. K
** idPad, and SDG Tool for children. Includes a free download.
** EdgeLab projects on SDG: See their Projects page.
to:
** [[http://www.merl.com/projects/|MERL projects]]: See the DiamondTouch entries within the two 'Off the Desktop Interaction' categories. K
** [[idPad, and SDG Tool for children]]. Includes a free download.
** [[EdgeLab projects]] on SDG: See their Projects page.
February 06, 2007, at 01:33 PM by 136.159.7.242 -
Changed line 52 from:
** Innovis (U Calgary): See Orientation in tabletops, Rotation 'N Translation, Territoriality, Interface Currents
to:
** [[http://innovis.cpsc.ucalgary.ca/research.php|Innovis]] (U Calgary): See Orientation in tabletops, Rotation 'N Translation, Territoriality, Interface Currents
February 06, 2007, at 01:26 PM by 136.159.7.242 -
Changed line 49 from:
** (optional) Druin, A., Stewart, J., Proft, D., Bederson, B. and Hollan, J.
to:
** (optional) Druin, A., Stewart, J., Proft, D., Bederson, B. and Hollan, J.\\
February 06, 2007, at 01:26 PM by 136.159.7.242 -
Changed lines 69-70 from:
->real world: a piece of string, a rubber band, paper, jigsaw puzzle pieces
->computer world: buttons, list boxes, sliders, rectangle drawing tool, palettes...
to:
->- real world: a piece of string, a rubber band, paper, jigsaw puzzle pieces
->- computer world: buttons, list boxes, sliders, rectangle drawing tool, palettes...
Changed lines 72-73 from:
->rubber band - people can grab it at different points, rotate it, stretch it. A third person pulling on it would then bend it
->slider - perhaps the slider remembers each person's value. This could be done by having multiple thumbs, one per person, that stays in the last set position. Thumbs could be identified by name or color, and activated as a particular person moves over the slider.
to:
->- rubber band - people can grab it at different points, rotate it, stretch it. A third person pulling on it would then bend it
->- slider - perhaps the slider remembers each person's value. This could be done by having multiple thumbs, one per person, that stays in the last set position. Thumbs could be identified by name or color, and activated as a particular person moves over the slider.
February 06, 2007, at 01:25 PM by 136.159.7.242 -
Changed lines 72-73 from:
o rubber band - people can grab it at different points, rotate it, stretch it. A third person pulling on it would then bend it
o
slider - perhaps the slider remembers each person's value. This could be done by having multiple thumbs, one per person, that stays in the last set position. Thumbs could be identified by name or color, and activated as a particular person moves over the slider.
to:
->rubber band - people can grab it at different points, rotate it, stretch it. A third person pulling on it would then bend it
->slider - perhaps the slider remembers each person's value. This could be done by having multiple thumbs, one per person, that stays in the last set position. Thumbs could be identified by name or color, and activated as a particular person moves over the slider.
Changed lines 79-81 from:
->Document the API for the control
->Package the control, its source, the executables so that they can be easily viewed and installed anywhere.
->Create a visual summary of it
to:
->- Document the API for the control
->- Package the control, its source, the executables so that they can be easily viewed and installed anywhere.
->- Create a visual summary of it
February 06, 2007, at 01:24 PM by 136.159.7.242 -
Changed lines 38-82 from:
(:tableend:)
to:
(:tableend:)

'''What you will be given'''

#SDG Tookit software, examples and documentation are available from http://grouplab.cpsc.ucalgary.ca/cookbook/ - Click SDG Toolkit in the sidebar.
#An extra USB mouse will be given to each person. Spare keyboards will be offered on an as needed basis, as well as extra mice (but these are in limited supply).
#Various required and optional readings on SDG are listed below and on the Readings page
** Bier, E. and Freeman, S. MMM: A User Interface Architecture for Shared Editors on a Single Screen. Proceedings of the ACM Symposium on User Interface Software and Technology, 79-86. 1991. Note: A good video of MMM is also available.
** Tse, E. and Greenberg, S. (2004) Rapidly Prototyping Single Display Groupware through the SDGToolkit. Proc Fifth Australasian User Interface Conference, Volume 28 in the CRPIT Conferences in Research and Practice in Information Technology Series, (Dunedin, NZ January), Australian Computer Society Inc., p101-110
** (video) Tse, E. and Greenberg. S. (2004) SDG Toolkit. Video Proceedings of the ACM CSCW Conference on Computer Supported Cooperative Work. (November 6-10, Chicago, Illinois). ACM Press. Video and abstract, duration 3:55.
** (optional) Stewart, J., Bederson. B. and Druin, A. Single Display Groupware: A Model for Co-Present Collaboration. Proceedings of ACM CHI 99 Conference on Human Factors in Computing Systems 1999 v.1 286-293.
** (optional) Druin, A., Stewart, J., Proft, D., Bederson, B. and Hollan, J.
KidPad: A Design Collaboration Between Children, Technologists, and Educators. Proceedings of ACM CHI 97 Conference on Human Factors in Computing Systems 1997 v.1, 463-470.
#These web sites may provide inspirations about project ideas:
** Innovis (U Calgary): See Orientation in tabletops, Rotation 'N Translation, Territoriality, Interface Currents
** MERL projects: See the DiamondTouch entries within the two 'Off the Desktop Interaction' categories. K
** idPad, and SDG Tool for children. Includes a free download.
** EdgeLab projects on SDG: See their Projects page.

'''Evaluation'''

Your exercise will be very loosely based on the following breakdown. However, great successes − or failures − in one exercise criteria will likely affect your total grade. Note that a successful implementation is required: if you cannot demonstrate your system, you will automatically receive a zero.

* Sketches: ~1/5 of your grade
* Design creativity: ~1/5 of your grade
* Implementation, documentation and packaging:: ~2/5 of your grade
* Portfolio summary: ~1/5 of your grade

'''Suggested process'''

* In your sketchbook, jot down words describing real world or computer-based objects and tools that you and others would or could use and share while interacting together. For example:
->real world: a piece of string, a rubber band, paper, jigsaw puzzle pieces
->computer world: buttons, list boxes, sliders, rectangle drawing tool, palettes...
* For each of these words, visualize in your head what would happen as multiple people use it. If it is a computer object, think beyond its existing constraints. For example:
o rubber band - people can grab it at different points, rotate it, stretch it. A third person pulling on it would then bend it
o slider - perhaps the slider remembers each person's value. This could be done by having multiple thumbs, one per person, that stays in the last set position. Thumbs could be identified by name or color, and activated as a particular person moves over the slider.
* Sketch out some graphical explorations of these objects/tools that somehow capture the essence of how they would be shared. Label these sketches, and annotate them if necessary. Generate as many sketches as you wish i.e., you may wish to sketch several designs of one type of object, or explore several objects and their combinations. Be creative, funny and/or off-beat: humor is allowed!
* Also re-read your notes on single display groupware and/or visit the web sites above for ideas (don't forget Google!). You can re-implement existing SDG ideas/systems, but you should modify their designs.
* Share ideas and borrow implementation techniques with class mates. Your ideas can complement and build upon those of others.
* Choose your best design. Implement it in C# as an SDG user control (widget) or class object. Also implement a C# program that demonstrates this control/object. Remember that this implementation is also a sketch that will evolve over time.
* Create a portfolio web site summary.
->Document the API for the control
->Package the control, its source, the executables so that they can be easily viewed and installed anywhere.
->Create a visual summary of it
* Create a paper-based portfolio summary of your design as a poster.
February 06, 2007, at 01:18 PM by 136.159.7.242 -
Changed line 20 from:
(:cellnr:) ''''''Exercise Objectives''''''
to:
(:cellnr:) '''Exercise Objectives'''
February 06, 2007, at 01:18 PM by 136.159.7.242 -
Changed line 23 from:
(:cellnr:) '''Using your knowledge of single display groupware, you will design an SDG user control embedded in an application'''
to:
(:cellnr:) Using your knowledge of single display groupware, you will design an SDG user control embedded in an application
Changed line 26 from:
(:cellnr:) '''What is a portfolio?'''
to:
(:cellnr:) You will generate sketched designs in your sketchbook of possible user control and their surrounding applications.
Changed lines 28-29 from:
(:cellnr:) '''What is a portfolio?'''
to:
Acquire first-time experiences brainstorming ideas and variations via sketches in a sketchbook
(:cellnr:) You will implement and package your design on the class web site so others can try it.
Changed lines 31-32 from:
(:cellnr:) '''What is a portfolio?'''
to:
Learn how to implement, package, install and document C# applications, user controls and class objects
(:cellnr:) You will create a
portfolio summary of this design for the web and as a poster
Changed lines 34-35 from:
(:cellnr:) '''What is a portfolio?'''
to:
Acquire first-time experiences creating a portfolio summary
(:cellnr:) You will discuss and comment on other people
's design
Changed line 37 from:
to:
Engage in design critiques
February 06, 2007, at 12:04 PM by 136.159.7.242 -
Added lines 1-35:
Worth: 20%


You have been hired to create a demonstration of a single-display groupware (SDG) system that allows 2 to 4 people to interact over a single display using multiple mice and (optionally) multiple keyboards. Your demonstration illustrates at least one user control or object that gracefully reacts to multiple people using it simultaneously, which in turn is embedded in an application that exploits this user control or object.

You have complete freedom of your design, as long as you can show that the SDG user control/object and its containing application is useful for its intended audience, and that its design is somewhat impressive. Several options of what you can do include:

* create an SDG-equivalent to an existing user control/object and embed it in a productivity-type application
* create a family of SDG-equivalents to an existing user control/object to show design diversity
* create an SDG user control/object that would be a component of a game
* start from scratch by thinking about how people work together and how it can be supported, and create a novel SDG user control/object that encapsulates your idea
* create a bimanual SDG user control/object

'''Objectives'''

Lateral thinking: seeking to solve problems by unorthodox or apparently illogical methods. It is about moving sideways when working on a problem. It encourages people to apply different perceptions, different concepts and different points of entry to problem-solving.

(:table border=1 cellspacing=0 :)

(:cellnr:) ''''''Exercise Objectives''''''
(:cell:)
'''Pedagogical Objectives'''
(:cellnr:) '''Using your knowledge of single display groupware, you will design an SDG user control embedded in an application'''
(:cell:)
Apply your theoretical knowledge of Single Display Groupware and lateral thinking to generate design ideas.
(:cellnr:) '''What is a portfolio?'''
(:cell:)
(:cellnr:) '''What is a portfolio?'''
(:cell:)
(:cellnr:) '''What is a portfolio?'''
(:cell:)
(:cellnr:) '''What is a portfolio?'''
(:cell:)

(:tableend:)