{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,28]],"date-time":"2025-09-28T04:10:59Z","timestamp":1759032659812,"version":"3.41.0"},"reference-count":34,"publisher":"Association for Computing Machinery (ACM)","issue":"2","license":[{"start":{"date-parts":[[2017,4,11]],"date-time":"2017-04-11T00:00:00Z","timestamp":1491868800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Comput.-Hum. Interact."],"published-print":{"date-parts":[[2017,4,30]]},"abstract":"<jats:p>As computing devices become increasingly ubiquitous, it is now possible to combine the unique capabilities of different devices or Internet of Things to accomplish a task. However, there is currently a high technical barrier for creating cross-device interaction. This is especially challenging for end users who have limited technical expertise\u2014end users would greatly benefit from custom cross-device interaction that best suits their needs. In this article, we present Improv, a cross-device input framework that allows a user to easily leverage the capability of additional devices to create new input methods for an existing, unmodified application, e.g., creating custom gestures on a smartphone to control a desktop presentation application. Instead of requiring developers to anticipate and program these cross-device behaviors in advance, Improv enables end users to improvise them on the fly by simple demonstration, for their particular needs and devices at hand. We showcase a range of scenarios where Improv is used to create a diverse set of useful cross-device input. Our study with 14 participants indicated that on average it took a participant 10 seconds to create a cross-device input technique. In addition, Improv achieved 93.7% accuracy in interpreting user demonstration of a target UI behavior by looking at the raw input events from a single example.<\/jats:p>","DOI":"10.1145\/3057862","type":"journal-article","created":{"date-parts":[[2017,4,12]],"date-time":"2017-04-12T12:05:49Z","timestamp":1491998749000},"page":"1-21","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":13,"title":["Improv"],"prefix":"10.1145","volume":"24","author":[{"given":"Xiang \u2018Anthony\u2019","family":"Chen","sequence":"first","affiliation":[{"name":"Carnegie Mellon University, Pittsburgh, PA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-1556-1970","authenticated-orcid":false,"given":"Yang","family":"Li","sequence":"additional","affiliation":[{"name":"Google Research, Mountain View, CA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2017,4,11]]},"reference":[{"key":"e_1_2_2_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/97243.97263"},{"key":"e_1_2_2_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/2556288.2556955"},{"key":"e_1_2_2_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/2702123.2702451"},{"key":"e_1_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/2858036.2858382"},{"volume-title":"Watch what I do: Programming by Demonstration","author":"Cypher Allen","key":"e_1_2_2_5_1"},{"key":"e_1_2_2_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/1753326.1753554"},{"key":"e_1_2_2_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/2858036.2858177"},{"key":"e_1_2_2_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/2047196.2047226"},{"key":"e_1_2_2_9_1","unstructured":"Google Cast. Retrieved February 27 2016 from https:\/\/www.google.com\/cast\/.  Google Cast. Retrieved February 27 2016 from https:\/\/www.google.com\/cast\/."},{"key":"e_1_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/2556288.2557170"},{"key":"e_1_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/1240624.1240646"},{"key":"e_1_2_2_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/2807442.2807468"},{"key":"e_1_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1054972.1055025"},{"key":"e_1_2_2_14_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-04244-2_4"},{"key":"e_1_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1719970.1720026"},{"key":"e_1_2_2_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/2631914"},{"key":"e_1_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2207676.2208693"},{"key":"e_1_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/1753326.1753724"},{"key":"e_1_2_2_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/2380116.2380121"},{"key":"e_1_2_2_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1294211.1294219"},{"volume-title":"Proceedings of the CHI Conference on Human Factors in Computing Systems, Extended Abstracts (CHI\u201905)","author":"Merrill David","key":"e_1_2_2_21_1"},{"key":"e_1_2_2_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1866029.1866051"},{"key":"e_1_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2556288.2556980"},{"key":"e_1_2_2_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/2858036.2858048"},{"key":"e_1_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/302979.303038"},{"key":"e_1_2_2_26_1","unstructured":"Qualcomm AllJoyn. Retrieved February 27 2016 from https:\/\/developer.qualcomm.com\/software\/alljoyn.  Qualcomm AllJoyn. Retrieved February 27 2016 from https:\/\/developer.qualcomm.com\/software\/alljoyn."},{"key":"e_1_2_2_27_1","unstructured":"Remote mouse. Retrieved February 27 2016 from http:\/\/www.remotemouse.net\/.  Remote mouse. Retrieved February 27 2016 from http:\/\/www.remotemouse.net\/."},{"volume-title":"Proceedings of the Third European Conference on Computer-Supported Cooperative Work (ECSCW\u201993)","author":"Robinson Mike","key":"e_1_2_2_28_1"},{"key":"e_1_2_2_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/2317956.2318005"},{"key":"e_1_2_2_30_1","unstructured":"Smart Home Cloud API. 2016. http:\/\/developer.samsung.com\/smart-home.  Smart Home Cloud API. 2016. http:\/\/developer.samsung.com\/smart-home."},{"key":"e_1_2_2_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1166253.1166301"},{"key":"e_1_2_2_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/985921.986106"},{"key":"e_1_2_2_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/1294211.1294238"},{"key":"e_1_2_2_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/2556288.2557199"}],"container-title":["ACM Transactions on Computer-Human Interaction"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3057862","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3057862","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:24:03Z","timestamp":1750220643000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3057862"}},"subtitle":["An Input Framework for Improvising Cross-Device Interaction by Demonstration"],"short-title":[],"issued":{"date-parts":[[2017,4,11]]},"references-count":34,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2017,4,30]]}},"alternative-id":["10.1145\/3057862"],"URL":"https:\/\/doi.org\/10.1145\/3057862","relation":{},"ISSN":["1073-0516","1557-7325"],"issn-type":[{"type":"print","value":"1073-0516"},{"type":"electronic","value":"1557-7325"}],"subject":[],"published":{"date-parts":[[2017,4,11]]},"assertion":[{"value":"2016-04-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2017-11-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2017-04-11","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}