meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

peerhood:peerhoodumsic [2011/09/02 12:05] (current)
Line 1: Line 1:
 +~~ODT~~
 +====== Usage and need of PeerHood in UMSIC  ======
  
 +//These are my ideas about how the PeerHood could be utilized in [[comlabpub:​umsic:​start|UMSIC]] project. Ideas are based on the interpretations of the [[comlabpub:​umsic:​start|UMSIC]] project document - [[wiki:​user:​julaakko]]//​
 +
 +===== Scenario: standalone =====
 +** Karaoke / composing: **
 +^ Usage / Requirement ^ Functionality required from PeerHood ^ Functionality implemented by application programmer ^
 +|To use external instruments in karaoke-mode. For example midi keyboard, Guitarhero guitar (?)\\ \\ External instruments can be used also in [[peerhoodumsic#​Scenario:​networked|networked]] and [[peerhoodumsic#​Scenario:​ adhoc|adhoc]] scenarios | Search external instruments in the neighborhood by using bluetooth (proactive).\\ Manage connection between device and instrument and monitor instrument (distance, signal?) | Select appropriate devices (found by PeerHood) recognized as external instruments.\\ Set devices into active monitoring. | 
 +| Saving own compositions or result(s) of karaoke to some server (own or public or server at school for instance) for later inspection or evaluation (by teacher).\\ \\ Mainly in [[peerhoodumsic#​Scenario:​networked|networked]] scenario, can be used in standalone after the standalone (when moved and found network / devices and services) | Search server and service from neighborhood via WLAN or bluetooth (proactive). \\ Connection management between device and server.| Data transfer between device and the server by using connection provided by PeerHood.\\ \\ The possible additional usage of PeerHood could be that user can choose to save result to a known server even when the server is not in the neighborhood. Application programmer could implement a feature, that every now and then it checks if the preferred server is found by PeerHood and transfers all "​send-when-server-is-near"​ songs to server using connection provided by PeerHood. An additional tag could be implemented to songs that allow them to be downloaded by trusted members (sharing) or to be evaluated (teacher). | 
 +| In addition to previous usage, after successful upload of a result file (song, composition) a notification could be sent to a chosen device (mobile phone of a parent / teacher, some other device) that the file can be downloaded for evaluation. \\ \\ Mainly in [[peerhoodumsic#​Scenario:​networked|networked]] scenario but also in [[peerhoodumsic#​Scenario:​ adhoc|adhoc]]. | Search services from neighborhood via WLAN and BT that have SMS-message sending capabilities (doesn'​t need to know specific information about service). | Application programmer could implement a feature similar to one described in previous section: when a service with SMS-message sending capabilities is found, send a message to preferred number(s) that the songs can be downloaded from the server that was used before. |
 +
 +===== Scenario: networked =====
 +**Teaching:​** ​
 +^ Usage / Requirement ^ Functionality required from PeerHood ^ Functionality implemented by application programmer ^
 +|Listing all students present in the classroom by their device information (teachers action).\\ \\ Student device: Listening for requests from well known device (teachers server). | Search all devices from the classroom, prefer WLAN-connection?​ \\ Actively monitor selected devices (teacher).| Teacher:\\ - Using probably a teaching server or possibly a similar device as students\\ - Register preferred devices in neighborhood found by PeerHood\\ - Set active monitoring for selected registered student devices.\\ \\ Student:\\ - Register to a service in the teachers server so it can be monitored (?) |
 +|Practicing together in classroom (first find devices/​students present)| Active monitoring of student devices. \\ Monitoring the latencies of connections from devices to server (implement in PeerHood?). \\ Connection management.| Monitor practice (keystrokes,​ activity etc.?). \\ Monitor latencies of the connections?​ \\ Progression into teachers display or into public screen? | 
 +|External instruments,​ see [[peerhoodumsic#​Scenario:​ standalone|standalone]]| see [[peerhoodumsic#​Scenario:​ standalone|standalone]]| see: [[peerhoodumsic#​Scenario:​ standalone|standalone]] |
 +|Saving the results of practicing (together in classroom) to teachers server. | Active monitoring of student devices.\\ Connection management. | Teachers server: Active monitoring of student devices, initiating the fetching of results from devices to server (using connections provided by PeerHood).\\ \\ Student device: listening of requests from server. |
 +|Teaching a exercise to students with new education material| Active monitoring of devices (by teachers server).\\ Listening requests to upload from server (student device). ​ | Initiating the transfer of education material from server to devices (teachers server). \\ Accepting new material (student device). ​ |
 +|Independent practicing in the classroom (student), external instruments could be also used, see [[peerhoodumsic#​Scenario:​ standalone|standalone]].| Active monitoring of devices (teachers server).\\ Connection management. | Teacher: Active monitoring of the practicing. \\ Student: registering to teachers server so practicing can be monitored? \\ \\ Implement a method to transfer progression "​reports"​ from devices to teaching server? |
 +|Gathering the results of practicing to teachers server. Could be used also in gathering homeworks / test results from devices?| Search devices and actively monitor them. | Teacher: Searching all active devices and monitoring them. Collecting results from devices that are in active monitoring. \\ \\ Student: Registering to teachers server for result retrieving. \\ \\ Also a method similar to one presented in [[peerhoodumsic#​Scenario:​ standalone|standalone]] could be used (active searching of selected server)|
 +
 +**Social network communities**
 +^ Usage / Requirement ^ Functionality required from PeerHood ^ Functionality implemented by application programmer ^
 +|Utilizing different "​internet tools" e.g. forums, chats etc.| Search services from neighborhood. Connection management (?) | Selecting appropriate services from the ones that were found by PeerHood. Possibly utilize Internet-connection (WLAN)? |
 +|Uploading own compositions into selected network community (community servers / forums) | Search services from neighborhood. Connection management (?) | Selecting appropriate services from the ones that were found by PeerHood. Possibly utilize Internet-connection (WLAN)? Sending the data.|
 +|Form own social communities (a implementation required, p2p-service?​) | Search for services and connection management to service. | Creating own social community / service and register it with PeerHood, join to different social communities. |
 +// //
 +The usages described in [[peerhoodumsic#​Scenario:​ standalone|standalone]] apply also in networked scenario.
 +
 +===== Scenario: adhoc =====
 +**Interaction with surrounding devices:**
 +^ Usage / Requirement ^ Functionality required from PeerHood ^ Functionality implemented by application programmer ^
 +|Search arounding friends for co-practicing / jam session| Search devices from neighborhood.\\ Connection management between devices (latency - very important in this situation), active monitoring of devices.| Select the devices of friends found by PeerHood. Friends could be searched and or detected by using certificates or device identifications. \\ \\ Latency monitoring is important in Jam-session. Big latencies in communications could make it hard to synchronize the audio output in devices with limited processing capabilities. | 
 +|Jam session with other surrounding people (devices) | Look previous section. | Same as previous without using any kind of specific identification,​ i.e. "​accept everyone"​|
 +|Sharing the content to certain surrounding devices | Search devices from neihgborhood. | Select devices from the ones found by PeerHood and use some kind of identification (e.g. certificates - share content to trusted devices?) to identify trusted devices and notify trusted devices about downloadable content.|
 +|External instruments,​ see [[peerhoodumsic#​Scenario:​ standalone|standalone]]| see [[peerhoodumsic#​Scenario:​ standalone|standalone]]| see [[peerhoodumsic#​Scenario:​ standalone|standalone]]|
 +|Saving the results of jam session / co-practicing to a server or to a another device| Searching for services from neighborhood.\\ Connection management. | Select appropriate server/​service from devices found from neighborhood for saving the result. Transferring the file to server.\\ \\ A method mentioned in [[peerhoodumsic#​Scenario:​ standalone|standalone]] could be used (active searching) |