Conține lucrările atelierului de lucru privind interacțiunea neconvențională dintre om și calculator, avându-i ca autori pe Ciprian Amariei, Sabin Buraga, Ștefan Ceriu, Sorin Damian, Anca-Paula Luca, Eduard Moraru, Ștefan Negru, Lucian Pricop, Ștefan Prutianu, Radu Sârghie (Facultatea de Informatică a Universității "A.I. Cuza" din Iași, România). Extras din volumul de lucrări ale Conferinței Naționale de Interacțiune Om-Calculator -- RoCHI 2009: http://rochi2009.utcluj.ro/
STAW 08/12: Programare Web. Suita de tehnologii HTML5
Sabin Buraga et al. -- "Interactiune neconventionala" (workshop RoCHI 2009)
1.
2. Aspecte privind interacţiunea neconvenţională
Sabin-Corneliu Buraga
Facultatea de Informatică, Universitatea „Alexandru Ioan Cuza” din Iaşi, România
Str. Berthelot, nr. 16, Iaşi 700483 - România
busaco@info.uaic.ro – http://www.purl.org/net/busaco
participarea la interacţiuni sociale, crearea unui artefact
REZUMAT
Lucrarea descrie o serie de aspecte de interes referitoare la (însemnare pe (micro)blog, fotografie, comentariu privind
mijloacele actuale de interacţiune neconvenţională cu calitatea unui produs, punerea unui articol la dispoziţia
utilizatorul. Experimentele efectuate au vizat atât publicului etc.), divertismentul solitar sau la nivel de grup.
dispozitive hardware specifice – e.g., mănuşi senzoriale, Aici intervine cu precădere experienţa autotelică,
telecomenzi, terminale mobile etc. –, cât şi maniere activitate de sine-stătătoare care nu este realizată în
interactive „atipice” de acces la informaţii sau cunoştinţe aşteptarea unui beneficiu viitor, ci pentru că însăşi
disponibile pe Web. realizarea ei reprezintă o recompensă [8]. Multe dintre
aplicaţiile actuale, recurgând în unele cazuri la mijloace de
Cuvinte cheie
interacţiune neconvenţională, facilitează intrarea în starea
Interacţiune neconvenţională, tipuri de interfeţe,
de flux [4] implicând activ utilizatorul.
experimente.
Un aport important îl are emoţia care are un caracter
Clasificare ACM
intenţional, implicând o relaţie cu un obiect particular. Din
H5.2. Information interfaces and presentation (e.g., HCI) punct de vedere funcţional, emoţiile pot determina
H5.m. Miscellaneous.
realizarea unei/unor acţiuni şi pot cauza ori contribui la
PREAMBUL apariţia unei trăiri, stări mentale (mood). În acest context,
Ca dezvoltatori de aplicaţii – disponibile la nivel de trebuie menţionate şi sentimentele, care nu desemnează
desktop şi/sau Web, incorporate în diverse echipamente şi starea unei persoane, ci proprietăţi asociate unei entităţi
utilaje, oferite pe scară largă de tehnologiile telefoniei (fiinţă, obiect). Sentimentele pot persista oricât de mult, în
mobile sau destinate unei nişe de utilizatori specializaţi contrast cu emoţiile (cu durată de secunde) sau mood-urile
(e.g., medici, cercetători în domeniul fizicii nucleare etc.) (menţinute la nivel de ore/zile). Sentimentele sunt uneori
– ne confruntăm actualmente cu o multitudine de (tipuri generalizări ale unei clase de obiecte având anumite
de) controale de interacţiune şi cu proliferarea proprietăţi recognoscibile – e.g., automobile, telefoane
interacţiunilor neconvenţionale, mai ales via dispozitive mobile, terminale bancare etc. Aceste generalizări nu
fără fir şi/sau senzori [12, 13]. trebuie să fie neapărat logice; un exemplu tipic este cel
Software-ul are tot mai mult un profund caracter social, privind persoanele ce prezintă fobii faţă de calculatoare
masa de utilizatori de aplicaţii fiind într-o creştere fără sau de anumite aplicaţii specifice [9]. De remarcat faptul
precedent. Suplimentar, există aşteptări tot mai mari din că într-o interacţiune dintre utilizator şi software ori
partea software-ului actual, una dintre cerinţe fiind aceea dispozitiv stările emoţionale înrudite trebuie conectate
ca aplicaţiile să prezinte un caracter familiar publicului- pentru a se realiza intrarea în starea de flux.
ţintă [15], acesta fiind şi unul dintre factorii de evaluare a Emoţiile depind şi de sferele de interacţiune a
utilizabilităţii. utilizatorului:
De asemenea, asistăm la apariţia multitudinii de idiom-uri 1. oameni şi dispozitive – are în vedere experienţa fizică
de interacţiune, concretizate prin tipuri/stiluri familiare – dintre om şi echipament, în termeni de gesturi,
recognoscibile – de interfeţe, fiecare având propriul manipulare directă, materiale, simţuri, emoţii;
vocabular de obiecte, acţiuni, înfăţişări etc., cu implicaţii 2. modele mentale, inclusiv reprezentările acestora –
importante în ceea ce priveşte crearea unei anumite experienţa fizică conduce la definirea interacţiunii
experienţe – deseori, unice – utilizatorului [15]. Astfel, în dintre om şi obiect (dispozitiv, artefact tehnologic).
activităţile cotidiene mediate de calculator ne confruntăm Aici intervin concepte ca experienţă digitală, interfaţă,
uzual cu formulare, editoare de text, vizualizatoare sau model(e) mintal(e). Modelele conceptuale vizează
editoare de conţinut grafic sau multimedia, foi de calcul, comunicarea, conţinutul (semantica) şi/sau activitatea
navigatoare Web, calendare, jocuri cu caracter imersiv, desfăşurată, dependentă de specificul aplicaţiei. De
spaţii virtuale sociale, aplicaţii de comerţ electronic în exemplu, aplicaţiiile de tip microblogging Twitter ori
contextul, mai larg, al e-business-ului. Cirip.ro prezintă un model centrat pe comunicare, iar
FACTORUL UMAN ÎN CONTEXTUL INTERACŢIUNII siturile wiki (e.g., MediaWiki sau XWiki) sunt axate
NECONVENŢIONALE pe conţinut;
Din punctul de vedere al utilizatorului, utilizarea unui 3. context – orice interacţiune are loc într-un anumit
instrument (software) trebuie să aibă o motivaţie [11] – context [10, 14], implicând spaţiul fizic şi/sau virtual;
conştientă sau inconştientă. Drept exemple tipice, putem asistăm ca apariţia obiectelor „inteligente” (smart)
enumera găsirea unei entităţi (e.g., informaţie, obiect), precum Arduino, ambientului (pro)activ, calcului
învăţarea, realizarea unui proces – precum o tranzacţie –,
3. omniprezent (ubiquitous computing), spaţiilor virtuale în cadrul atelierului „Interacţiune neconvenţională”,
(e.g., platforme ca Second Life); urmărind realizarea unei punţi dintre Web-ul social şi cel
4. comunităţi – interacţiunea are loc mediată de medii de semantic, accesul la diverse servicii disponibile pe Web
comunicare (a)sincronă: audio, text, multimedia, 3D. (e.g., management de conţinuturi grafice oferite de Flickr
Tot aici, se cuvin menţionate comportamentele sau cartografice pe baza Google Maps şi Microsoft Virtual
sociale mediate de tehnologie, de la caracterul intim Earth) via consola Wii, dispozitive tactile Apple iPhone
la cel tribal şi apoi la cel viral – vezi „fenomenul” sau mănuşi senzoriale de tip P5, captarea şi împărtăşirii
Twitter [5]; emoţiilor folosind hardware deschis ca Arduino.
5. conţinut – asigură accesul public la informaţii sau CONCLUZII
cunoştinţe (cel din urmă aspect face subiectul În cele de mai sus am descris o serie de aspecte vizând
cercetărilor privind Web-ul semantic); utilizatorii interacţiunea neconvenţională, pe baza cercetărilor
publică, generează, integrează conţinuturi eterogene desfăşurate de studenţii masteranzi ai Facultăţii de
provenind din surse multiple [2, 3]. Experienţa Informatică din cadrul Universităţii „A. I. Cuza” din Iaşi,
interactivă are loc la nivel de ecosistem digital, din România. Studiile realizate [1] au luat în consideraţie atât
punct de vedere social, spaţial, comercial sau privind interactivitatea în contextul instrumentelor „atipice”, dar
cunoaşterea umană. deja ubicue pentru acces la diverse servicii Web, cât şi
exploatarea tehnologiilor Web – sociale sau aliniate
TIPURI DE INTERACŢIUNE NECONVENŢIONALĂ problematicilor Web-ului semantic – la nivel de browser
În ceea ce priveşte interacţiunea neconvenţională, sunt sau în contextul dispozitivului hardware Arduino.
implicate mai multe simţuri, interpretarea informaţiilor
senzoriale oferite de diverse dispozitive – e.g., senzori, REFERINŢE
ecrane tactile, mănuşi, console de jocuri etc. – depinzând 1. S. Buraga, Situl Web al disciplinei Interacţiune om-
de aşteptările curente ale utilizatorilor. calculator, 2009:http://www.info.uaic.ro/~busaco/
teach/courses/interfaces/.
Conform [12, 13, 14], principalele tipuri de interacţiuni
2. S. Buraga (coord.), Programarea în Web 2.0, Polirom,
neconvenţionale vizează următoarele:
2007.
– interfeţele haptice – bazate pe senzaţii tactile [6]; 3. S. Buraga (coord.), Tendinţe actuale în proiectarea şi
drept input poate fi considerat ecranul/tabla haptic(ă) dezvoltarea aplicaţiilor Web, Matrix Rom, 2006.
care permite „atingerea” obiectelor digitale, iar ca
output neconvenţional se poate menţiona sistemele 4. M. Csikszentmihalyi, Flow: The Psychology of
bazat pe vibraţii; a se considera şi interfeţele pseudo- Optimal Experience, Harper & Row, 1990.
haptice [7]; 5. A. Java et al., „Why We Twitter: Understanding
Microblogging Usage and Communities”,
– interacţiunea bazată pe gesturi – inspirată de International Conference on Knowledge Discovery and
interacţiunile non-verbale, alternativă la interacţiunea Data Mining, ACM Press, 2007.
clasică; vizează gesturi generate de mână sau cele
faciale, dar poate considera şi postura corpului uman, 6. P. Kortum (Ed.), HCI Beyond the GUI, Elsevier, 2008.
fiind larg folosite în contextul consolelor de jocuri, 7. A. Lecuyer, „Pseudo-haptic Feeback: Simulating
laptop-urilor şi terminalelor mobile (e.g., iPhone); Haptic Feedback without Haptic Devices”, Volumul de
lucrări ale Conferinţei Naţionale de Interacţiune Om-
– interfeţele locomotorii – oferă sau simulează mijloace Calculator – RoCHI, Matrix Rom, 2007.
de deplasare a utilizatorului într-un mediu real/virtual;
8. A. Marhan, „Starea de flux: implicaţii în utilizarea
– interfeţele audio şi vocale – facilitează prezentarea noilor tehnologii”, Revista Română de Interacţiune
datelor la nivel sonor sau preluarea input-ului bazat pe Om-Calculator, Vol. 1, Nr. 1, Matrix Rom, 2008.
voce; de interes este reprezentarea simbolică şi 9. H. D. Pitariu, „Implicaţii psihologice ale interacţiunii
semantică a informaţiei la nivel sonor via auditory om-calculator”, Volumul de lucrări ale celei de-a treia
icons, earcons sau spearcons [6]; Conferinţe Naţionale de Interacţiune Om-Calculator –
– interactiunea tangibilă – dă formă fizică (palpabilă) RoCHI, Informatica Economică, Volumul X, 2006.
informaţiei digitale, informaţiile digitale putând fi 10.A. Rarău, M. Cremene, I. Benţa, Sisteme senzitive la
percepute şi manipulate direct – detalii în [6] şi [12]. context, Editura Albastră, 2008.
STUDII DE CAZ 11.J. Raskin, The Humane Interface, Addison, 2000.
Mijloacele de interacţiune neconvenţională pot fi ilustrate 12.D. Saffer, Designing Gestural Interfaces, O’Reilly
de mai multe studii de caz realizate, cu două excepţii, în Media, 2009.
cadrul disciplinei „Interacţiune om-calculator” [1] de la 13.A. Sears, J. Jucko (Eds.), The Human–Computer
Masterul de Ingineria Sistemelor Software, la Facultatea Interaction Handbook, Taylor & Francis Group, 2008.
de Informatică a Universităţii „A. I. Cuza” din Iaşi.
14.A. Seffah, H. Javahery (Eds.), Multiple User
Am propus proiecte privind proiectarea şi dezvoltarea de Interfaces, John Wiley & Sons, 2004.
soluţii de interacţiune neconvenţională cu aplicaţii 15.J. Tidwell, Designing Interfaces, O’Reilly, 2005.
tradiţionale la nivel de Web, dispozitive mobile şi/sau
desktop. Unele dintre rezultatele de interes sunt prezentate
4. Practical Semantic Works:
între Web-ul social şi Web-ul semantic
Anca-Paula Luca
Facultatea de Informatică, Universitatea „Alexandru Ioan Cuza” din Iaşi, România
Str. Berthelot, nr. 16, Iaşi 700483 - România
lucaa@info.uaic.ro
serviciile Web „în limbaj natural”. Ea permite
REZUMAT
PSW (Practical Semantic Works) este un experiment care dezvoltatorilor să creeze comenzi noi, furnizând
propune facilitarea colaborării dintre utilizatori şi Web-ul mecanismele de procesare a comenzilor şi de interacţiune
semantic prin furnizarea unei metode prin care utilizatorii cu documentul Web vizualizat curent, o astfel de comandă
să profite de descrierea precisă a datelor pe Web, fiind şi PSW, invocată prin cuvântul-cheie find.
promovată de Web-ul semantic, folosind o interfaţă în Pentru regăsirea informaţiilor cerute de utilizatori sunt
limbaj natural şi păstrând în acelaşi timp marcajul folosite datele marcate semantic din cadrul proiectului
semantic original la refolosirea informaţiei regăsite. Linked Open Data [7], accesate prin protocolul SPARQL
[1] şi punctele de acces SPARQL corespunzătoare, astfel
Cuvinte cheie
încât instrumentul e capabil să furnizeze răspunsuri din
Web semantic, asistent de navigare, microformate.
DBpedia [6], DBLP [4] sau Linked Movie Database [8].
Clasificare ACM
La sfârşit, atunci când răspunsul regăsit trebuie introdus în
H.5.4 Hypertext/Hypermedia: Navigation, User issues documentul editat de utilizator, pentru a păstra marcajul
VIZIUNE semantic, cum conţinutul produs de utilizator este HTML
Dificultatea ce apare la trecerea către Web-ul semantic [1] (în cazurile în care nu este text simplu), ne-am orientat
constă în aceea că informaţiile adnotate semantic nu sunt către iniţiativa microformatelor [10], care oferă mijloacele
accesibile în mod natural utilizatorilor, ele necesitând de adăugare a marcajului semantic în documente HTML,
preprocesare (intensă). De asemenea, utilizatorii nu sunt folosind convenţii simple de marcaj HTML pentru
nici obişnuiţi, nici pregătiţi tehnic, uneori nici disponibili reprezentarea tipurilor de date specifice – detalii şi în [2].
să producă date marcate semantic, astfel încât, fără Am modelat comanda de căutare ca pe un triplu RDF [1]
instrumentele corespunzătoare, contactul dintre Web-ul cu o componentă lipsă, obiectul. Astfel, pentru o cerere ca
utilizatorilor (cel social) şi Web-ul datelor (semantic) find <property> of <subject> in <source>, valoarea de
necesită concesii din partea uneia dintre părţi. Abordarea pe poziţia source va desemna depozitul de date unde
propusă aici demonstrează modul de construcţie al unei trebuie căutate răspunsurile (pentru moment DBpedia,
legături între cele două: o unealtă de căutare în baze de DBLP Berlin şi Linked Movie Database). Termenul de
cunoştinţe adnotate semantic, care acceptă interogări în căutare subject va fi folosit pentru a identifica un subiect,
limbaj natural şi permite utilizatorilor să refolosească iar property desemnează predicatul. Răspunsul este ilustrat
rezultatele cu păstrarea marcajului semantic original în de o reprezentare în format uman inteligibil a obiectului
mod transparent. (sau obiectelor) găsite pentru subiectul şi predicatul
Plecând de la cercetările anterioare [3], am orientat menţionate.
folosirea Web-ului semantic spre căutarea semantică Este folosit un mecanism de asociere flexibil pentru a
pentru interesul pe care îl prezintă din punct de vedere al identifica subiectul şi proprietatea de căutat: fiecare sursă
utilităţii – căutarea în depozite de cunoştinţe spre de date definită are asociat un set de proprietăţi pentru a
deosebire de depozite de documente reprezintă una dintre determina unde este căutat şirul de caractere subject şi, în
promisiunile Web-ului semantic, revoluţionând domeniul caz de succes, proprietatea RDF a cărei valoare trebuie
regăsirii de informaţii (information retrieval) – şi pentru regăsită este determinată pe baza unei asocieri cu valoarea
că ea reprezintă o metodă generală prin care utilizatorii pot introdusă de utilizator pe poziţia property. De asemenea,
accesa complet datele interconectate ale Web-ului dacă o astfel de asociere predefinită nu există, valoarea
semantic (în timp ce alt tip de aplicaţii folosesc doar property va fi folosită ca însuşi numele proprietăţii RDF
subgrafuri de cunoştinţe, în mod limitat, specifice unui dorite, în conjuncţie cu un prefix implicit pentru fiecare
anumit domeniu). sursă de date, permiţând astfel acces nemijlocit la date.
MIJLOACE Acest tip de convenţii deşi simple şi potenţial limitate, îşi
Natural, pentru interacţiunea Web transparentă a demonstrează succesul în practică datorită coeziunii mari
utilizatorilor, atât din perspectiva de consumatori de care există între ontologiile folosite de depozitele de
informaţie cât şi din cea de producători, ne-am orientat cunoştinţe, a datelor din aceste depozite (instanţe ale
către implementarea ca extensie pentru navigatorul Web, conceptelor) şi a intereselor utilizatorilor în context – cu
evoluat astăzi la stadiul de panou de control pentru alte cuvinte, este probabil ca un astfel de depozit să
informaţie, în particular Mozilla Firefox şi Ubiquity [9], o modeleze un domeniu pentru care să folosească
extensie care îşi propune să furnizeze o linie de comandă preponderent o ontologie, iar acest domeniu să reprezinte
pentru navigatorul Web pentru a facilita accesul la scopul utilizatorilor, atunci când interoghează sursa de
5. date, ceea ce face ca ontologia respectivă să poată fi
folosită cu succes ca implicită.
Pentru formatarea răspunsului, este utilizată o asociere
predefinită între proprietatea regăsită şi un microformat,
pentru a determina marcajul răspunsului. În plus, comanda
admite un al patrulea parametru care permite utilizatorului
să specifice modul în care răspunsul primit trebuie utilizat
– ca persoană, eveniment, legătură hipertext etc.
Figura 4. Refolosirea – în alt context – a datelor publicate
STUDIU DE CAZ păstrând semantica originală
Pentru a evidenţia avantajele aduse interacţiunii dintre
componenta socială a Web-ului şi cea a datelor, vom CONCLUZII ŞI DIRECTII VIITOARE
ilustra paşii prin care un utilizator poate refolosi în mod Prototipul prezentat, recurgând exclusiv la tehnologii Web
transparent cunoştinţele disponibile pe Web şi, în plus, deschise, poate fi extins pentru a folosi surse de date
poate reda Web-ului informaţia regăsită, fără a-i fi extinse, care să permită accesul la Web-ul semantic ca un
necesară familiarizarea cu formalismul tehnic. De întreg, păstrând însă cerinţa ca utilizatorului să nu-i fie
exemplu, un utilizator care scrie o însemnare pe blogul necesare cunoştinţe tehnice. De asemenea, folosirea
personal despre pasiunile sale muzicale va dori să microformatelor poate fi îmbunătăţită prin implementarea
regăsească unele detalii pe Web, cum ar fi data naşterii unui mecanism de aliniere între ontologiile surselor de
unui membru al trupei sale preferate. Pentru căutare, va date şi ontologiile microformatelor, pentru a determina
putea recurge la comanda PSW ilustrată în figura 1. automat formatul ce trebuie folosit pentru o proprietate
regăsită, precum şi pentru a extrage toate datele necesare
pentru construcţia completă microformatului dorit.
Abordarea de faţă încearcă să exploreze spaţiul aplicaţiilor
care permit utilizatorilor accesul pentru scriere şi citire şi
la Web-ul datelor (nu numai cel al documentelor), în
manieră transparentă, fără a necesita adaptare la mediul
Figura 1. Execuţia unei comenzi de căutare tehnic şi fără compromise din punctul de vedere al
Apoi, la regăsire, va alege rezultatul dorit din listă (tipic, marcajului datelor: semantica „citită” nu este pierdută la
unul unic pentru că descrierea riguroasă a datelor în Web- „scriere”.
ul semantic permite regăsirea fără echivoc) şi, prin O astfel de implementare, simplă şi rapidă, bazată pe
confirmarea rezultatului, acesta va fi introdus în pagină – a orchestrarea datelor, instrumentelor şi a standardelor
se urmări figurile 2 şi 3. existente, demonstrează că există toate premisele
construirii unei soluţii complete în direcţia legăturii
transparente dintre Web-ul social şi cel al datelor.
REFERINŢE
1. D. Allemang, J. Hendler, Semantic Web for the
Working Ontologist, Morgan Kaufmann, 2008.
Figura 2. Selectarea rezultatului dorit 2. A. Luca, „Recomandări Web prin intermediul
microformatelor”, în S. Buraga (coord.), Programarea
în Web 2.0, Polirom, 2007.
3. A. Luca, S. Buraga, „Asistent de navigare Web bazat
pe microformate”, Volumul de lucrări al celei de-a
patra Conferinţe Naţionale de Interacţiune Om-
Figura 3. Refolosirea răspunsului în pagina Web editată Calculator – RoCHI, Matrix Rom, 2007.
Deşi ceea ce utilizatorul percepe este un răspuns în 4. * * *, DBLP Berlin SPARQL endpoint:
limbajul său natural, acesta este însoţit de marcare http://www4.wiwiss.fu-berlin.de/dblp/
semantică care – la inserarea în conţinutul creat de 5. * * *, Extensia Operator pentru Firefox:
utilizator şi publicarea lui pe Web – este păstrată pe baza http://www.kaply.com/weblog/operator/
microformatelor.
6. * * *, Iniţiativa DBpedia: http://dbpedia.org/
Astfel, datele pot fi înţelese şi refolosite de instrumentele 7. * * *, Linked Open Data: http://linkeddata.org/
create pentru prelucrarea acestora, cum ar fi extensia
Operator [5]. Figura 4 furnizează o exemplificare. 8. * * *, Linked Movie Database:
http://www.linkedmdb.org/
9. * * *, Proiectul Ubiquity, Mozilla Labs:
http://labs.mozilla.com/projects/ubiquity/
10.* * *, Situl oficial privitor la microformate:
http://microformats.org/
6. FormFactory – crearea de aplicaţii Web flexibile
Ciprian Amariei
Facultatea de Informatică, Universitatea „Alexandru Ioan Cuza”, Iaşi
Str. Berthlot, nr. 16, Iaşi 700483 – Romania
camariei@info.uaic.ro
dezvoltatorului. De exemplu, o aplicaţie Web
REZUMAT
În contextul ultimilor ani de dezvoltare continuă a implementată cu ajutorul framework-ului
aplicaţiilor de tip Rich Internet Applications – RIA, vom OpenLaszlo poate rula atât nativ în navigator prin
prezenta un instrument software on-line destinat creării de generarea de cod DHTML, cât şi ca obiect de tip
formulare şi adresat utilizatorilor fără cunoştinţe de Flash intergrat.
specialitate. Procesul de implementare a determinat Toate acestea conduc la o migrare în creştere a aplicaţiilor
necesitatea studierii a două abordări bazate pe paradigme tradiţionale de tip desktop către Web aducând în plus faţă
de interacţiune diferite: Inplace Editor şi Field Builder. de acestea mobilitate ridicată, uşurinţă în utilizare şi un
Din punct de vedere tehnic, s-a urmărit si realizat o soluţie grad ridicat de inter-operabilitate între diferite tipuri de
flexibilă, deschisă, prin dezvoltarea unui mini-framework aplicaţii – anticipăm ca această proprietate urmează să
în limbajul EcmaScript. aibă o dezvoltare accentuată în următoarea perioadă în
contextul Web-ului semantic.
Cuvinte cheie
Interacţiune Web, RIA, cadru de lucru Una dintre caracteristicile importante ale aplicaţiilor de tip
RIA este flexibilitatea structurii şi a interfeţei. Cu alte
Clasificare ACM
cuvinte, conferă utilizatorului posibilitatea de a modifica
H5.2. Information interfaces and presentation (e.g., HCI):
aplicaţia, astfel încât să se muleze pe necesităţile sale
Miscellaneous.
specifice şi/sau pe modul său de lucru.
PREAMBUL În cadrul lucrării de faţă vom prezenta un astfel de
Dezvoltarea tehnologică în domeniul Internet din ultimii instrument, parte componentă dintr-o aplicaţie comercială,
ani, cu precădere creşterea vitezei de acces (a se vedea în curs de dezvoltare, destinată realizării managementului
reţelele de distribuţie a conţinutului – content delivery resurselor administrate [5]. Date fiind multiplele domenii
networks) şi cea de transfer, a permis crearea de aplicaţii de aplicabilitate a unei astfel de aplicaţii (închirieri auto,
Web din ce în ce mai complexe atât din punct de vedere al cabinete medicale etc.) şi gradul de generalitate dorit al
funcţionalităţilor oferite, dar mai ales al interfeţei oferite. soluţiei, s-a recurs la dezvoltarea unui instrument care
Astfel, aplicaţiile Internet de tip RIA (Rich Internet permite modificarea proprietăţilor entităţilor administrate
Application) [1] – aplicaţii Web care oferă modalităţi de (resurse, consumatori). Astfel, s-a realizat un sistem
interacţiune similare celor de tip desktop – au cunoscut o deschis în care utilizatorii pot crea diferite profiluri ale
dezvoltare accentuată în ultima perioadă. aplicaţiei ce ulterior pot fi disponibile şi altor utilizatori,
FRAMEWORK-URI PENTRU DEZVOLTAREA RIA aplicaţia căpătând astfel şi o componentă socială, specifică
Apariţia în ultimii ani a diferitelor framework-uri care „Web 2.0” [1].
facilitează dezvoltarea acestui tip de aplicaţii Web, a Procesul de dezvoltare a presupus crearea unei prime
contribuit considerabil la adoptarea acestui tip de aplicaţii. soluţii bazate pe paradigma inplace-edit [4] – a se urmări
Propunem o împărţire a acestora, în funcţie de mediul în şi figura 1 – care s-a dovedit a nu fi una suficient de
care rulează, în trei categorii: intuitivă pentru gradul de productivitate dorit, marea
• RIA-JSF (RIA JavaScript Frameworks) – aceste majoritate a utilizatorilor având dificultăţi în exploatare.
framework-uri sunt scrise sau generează cod
interpretabil în JavaScript şi rulează nativ şi
uniform în majoritatea navigatoarelor Web
vizuale moderne. Printre acestea amintim:
JQuery, YUI (Yahoo! User Interface), Dojo Figura 1 Inplace-edit – modificarea titlului unei fotografii în
Toolkit, GWT (Google Web Toolkit), ExtJs etc. cadrul sitului Flickr
• RIA-HF (RIA Hosted Frameworks) – acest grup
A doua soluţie, ce urmează a fi prezentată mai jos, se
include framework-uri ce rulează în cadrul unui
bazează pe o paradigmă de prezentare clasică etichetă
obiect special cu rol de container. Pentru rulare
explicativă – nume de câmp de intrare – editare (label –
aceste framework-uri depind de prezenţa unor
fieldname – edit).
extensii instalate în navigatorul Web. Din
această categorie putem enumera: Adobe Flex, FORM FACTORY
Microsoft Silverlight, JavaFX. FormFactory [6] reprezintă un instrument integrat care
• RIA-MF (RIA Mixed Frameworks) – sunt oferă utilizatorilor posibilitatea creării de entităţi prin
framework-uri capabile să genereze diferite specificarea proprietăţilor acestora, având la dispoziţie o
variante de cod interpretabil/executabil în funcţie interfaţă Web intuitivă.
de mediul în care va rula aplicaţia sau opţiunea
7. orice moment entitatea asupra căruia realizează
modificări;
• drag & drop – acţiune folosită pentru sortarea
proprietăţilor unei entităţi;
• WYSIWYG (What You See Is What You Get).
Figura 2 Modul vizual de management al câmpurilor
Utilizând acest instrument se pot adăuga noi câmpuri care
pot fi sortate şi a căror proprietăţi pot fi modificate – a se
vedea figurile 2 şi 3.
Sunt definite două tipuri de proprietăţi ale câmpurilor:
• comune – specifice tuturor câmpurilor (denumire, o
descriere succintă, caracter obligatoriu sau nu);
• particulare – specifice fiecărui tip de câmp, definite
prin intermediul unui sistem de extensii ale
instrumentului.
Figura 4. Diagrama arhitecturală a instrumentului
CONCLUZII
Considerăm că adoptarea aplicaţiilor Web ca interacţiune
şi funcţionalitate de facto va înregistra un ritm accelerat în
următoarea perioadă, atât datorită îmbunătăţirii
infrastructurii, cât şi prin standardizarea metodelor de
implementare şi a celor de interacţiune om-calculator,
împreună cu avantajele oferite de astfel de aplicaţii.
Actualmente, implementarea unor interfeţe Web complexe
este relativ dificilă, fiind limitată de resursele puse la
dispoziţie de navigatorul Web în contextul căruia rulează.
Posibilitatea configurării atât din punct de vedere al
interfeţei, cât şi al modului de lucru al aplicaţiei de către
utilizator, privat de cunoştinţe tehnice de specialitate, este
Figura 3 Editarea proprietăţilor interfeţei o tendinţă tot mai des întâlnită în aplicaţiile Web
complexe conferindu-le un grad înalt de versatilitate.
Implementarea recurge la un sistem de extensii – fiecare
tip de câmp este definit de o extensie. Acest aspect conferă O astfel de paradigmă de interacţiune a fost prezentată şi
flexibilitate framework-ului şi a fost realizat în cadrul lucrării de faţă.
implementând şablonul de proiectare Factory [2], aplicând REFERINŢE
principiul serializării şi deserializării şi recurgând la 1.S. Buraga (coord.), Programarea în Web 2.0, Polirom,
tehnici avansate de programare în JavaScript [1, 3]. 2007.
Arhitectura generală a instrumentului nostru este ilustrată
2.E. Gamma , R. Helm , R. Johnson , J. Vlissides, Design
în figura 4.
patterns: elements of reusable object-oriented software,
Pentru implementarea diferitelor elemente ale interfeţei au Addison-Wesley, 1995.
fost utilizate diferite şabloane specifice, printre care
3.J. Resig, Pro JavaScript Techniques, Apress, 2006.
amintim:
4.A. Toxboe, Inplace Editor Pattern:
• creare – modificare – … – salvare – … –
http://ui-patterns.com/pattern/InplaceEditor
utilizatorul realizează toate modificările necesare
şi apoi salvează sau poate salva şi în momente 5.* * *, Situl SohoAppSpot: http://sohoappspot.com/
intermediare, fără a fi afectată gradul de răspuns 6.* * *, Situl dedicat instrumentului FormFactory:
al aplicaţiei datorită metodelor bazate pe Ajax; http://students.info.uaic.ro/~camariei/formfactory/
• evidenţierea entităţii în curs de modificate –
utilizatorului îi este evidenţiată/menţionată în
8. TouchGE – Interacţiune gestuală cu Google Earth
Eduard Moraru
Facultatea de Informatică, Universitatea „Alexandru Ioan Cuza” din Iaşi
Str. Berthelot, nr. 16, Iaşi 700483 - România
eduard.moraru@infoiasi.ro
de astfel de filtre, oferite de mediul GlovePIE, sunt cele de
REZUMAT
Lucrarea prezintă o analiză asupra aspectelor de luat în mediere (Averaging) şi zona neutră (DeadBand) [5].
considerare în proiectarea interacţiunii cu un mediu 3D – Medierea ia în considerare un număr prestabilit de cadre
precum cel oferit de Google Earth – şi propune soluţii (valori ale variabilei de filtrat) şi decide valoarea curentă
pentru fiecare din aceste aspecte. Aceste soluţii au fost filtrată a variabilei făcând medie cu acestea. Acesta este
apoi implementate sub forma unui script PIE, distribuit un mod de a evita valori bruşte, cauzate de obicei de
sub numele de TouchGE. înregistrări defectuoase ale dispozitivului. Totuşi, dacă
este utilizat excesiv (număr de cadre de comparaţie prea
Cuvinte cheie
mare), acest tip de filtru poate cauza întârzieri în
Mănuşă interactivă, gesticulare, manipulare directă
executarea de către aplicaţie a comenzilor date de
Clasificare ACM utilizator.
H.5.2 User Interfaces: Input devices and strategies
Zona neutră reprezintă un concept foarte simplu. Acest
H.5.2 User Interfaces: Interaction styles filtru rezolvă problema tremurului mâinii prin simpla
INTRODUCERE ignorare a mişcărilor de dimensiuni reduse, sub limita unei
TouchGE este un script pentru mediul GlovePIE [3] ce valori prestabilite. Totuşi, dacă valoarea prestabilită este
asociază date de intrare furnizate de mănuşa interactivă P5 prea mare, se pot pierde mişcări relevante ducând la
celor care provin de la tastatură, efectuând diverse neexecutarea comenzilor utilizatorului.
operaţiuni de navigaţie în mediul 3D oferit de serviciul Un echilibru cât mai potrivit între valorile prestabilite
Google Earth [4]. pentru aceste două filtre este necesar pentru a oferi o
Deşi a fost iniţial proiectat pentru lucrul cu joystick-ul, sensibilitate cât mai bună pentru detectarea mişcărilor
mediul de lucru GlovePIE permite acum utilizarea unui utilizatorului, fără a introduce o latenţă observabilă. De
număr considerabil de dispozitive de intrare în orice asemenea, aceste valori nu trebuie să fie tot timpul
aplicaţie. Dispozitivul P5 utilizat în cadrul acestui globale. Unele acţiuni au un impact mai mare decât altele
experiment este folosit de GlovePIE prin intermediul unui şi necesită reglaje individuale.
driver secundar – produs de comunitatea de programatori Ambele filtre sunt utilizate în TouchGE pentru mişcările
[1, 2] – ce permite o mai mare libertate şi acurateţe faţă de procesate. În plus, dispozitivul este configurat să ofere
cel oficial. date în modul relativ care, în comparaţie cu modul absolut,
Această mănuşă interactivă permite mişcări în 6 grade de oferă valori mai şlefuite şi este mai potrivit cerinţelor
libertate (6DoF) şi oferă totodată informaţii în legătură cu aplicaţiei în cauză.
nivelul de întindere a degetelor. Există totuşi o limitare în
Oboseala
mişcarea utilizatorului dată de prezenţa unui cablu necesar O problemă cunoscută a interfeţelor care necesită ca
conectării mănuşii la un receptor infraroşu. utilizatorul să ţină mâna în aer este aceea că vor cauza, în
EXPERIENŢA UTILIZATORULUI mod inevitabil, un sentiment de disconfort ce creşte odată
Utilizarea unui dispozitiv de interacţiune presupune cu timpul de utilizare.
confruntarea cu anumite aspecte tehnice. Acestea nu ţin O soluţie ar fi oferirea posibilităţii de a utiliza aplicaţia cu
neapărat de detaliile funcţionării interne ale dispozitivului, cotul sprijinit pe masă sau pe un suport fix. Aceasta
cât de experienţa pe care utilizatorul o percepe [6, 7]. înseamnă că aplicaţia trebuie să suporte continuarea
Probleme de stabilitate şi frustrarea utilizatorului automată a unor acţiuni ce ar necesita ca utilizatorul să îşi
Primul lucru de luat în considerare este faptul că un ridice cotul de pe masă sau care s-ar efectua repetat şi
dispozitiv de localizare ţinut în sau pe mână poate genera incremental. Această soluţie e implementată în TouchGE
mult „zgomot” informaţional cauzat de tremurul pentru toate acţiunile suportate. Astfel, dacă după
involuntar al mâinii. Majoritatea utilizatorilor sunt finalizarea efectuării unei acţiuni mâna utilizatorului este
complet inconştienţi de acest factor până în momentul în încă în mişcare, acea acţiune va fi continuată automat până
care sunt confruntaţi cu nereguli. la intervenţia utilizatorului. S-au luat în considerare şi
În loc să producă mişcările aşteptate sau chiar să păstreze efecte secundare precum continuări nedorite şi s-a utilizat
poziţia fixă, dispozitivul poate genera mişcări nedorite, o valoare mai ridicată pentru filtrul de zonă neutră
captate de către aplicaţie, transformate apoi în acţiuni ce aplicabil mişcării mâinii după finalizarea efectuării unei
pot cauza frustrarea utilizatorului, dacă acesta este expus acţiuni.
prea mult timp. Controlul asupra comenzilor emise
O soluţie pentru o astfel de problemă este de obicei În proiectarea interacţiunii folosind un astfel de dispozitiv
filtrarea datelor captate de către dispozitiv. Două exemple ne putem baza pe două lucruri: simpla mişcare sau gesturi.
9. Interacţiunea bazată pe simpla mişcare este de obicei mai anterior se va folosi şi în acest caz. De exemplu, pentru a
uşor de implementat, dar necesită o mai mare disciplină apropia perspectiva, se va „ciupi” un loc de pe glob şi se
din partea utilizatorului şi anume de a ţine mâna va mişca mâna înspre utilizator pentru a „trage” globul
permanent într-o zonă neutră pentru a nu se înregistra nici mai aproape. O altă interpretare poate fi aceea că se
o acţiune. Îndată ce mâna atinge anumite secţiuni foloseşte un monoclu sau o lupă (format de degetul mare
prestabilite, acţiunea corespunzătoare acelei secţiuni se va şi de cel arătător) şi că se apropie acesta de utilizator
executa. pentru a vedea mai bine destinaţia.
În practică, aceasta nu este o soluţie bună datorită Un aspect interesant legat de acest gest este acela că
acţiunilor care nu sunt legate de aplicaţie sau sunt facilitează şi fluentizează tranziţia între mişcarea globului
involuntare – de exemplu, factori externi precum a şi îndepărtarea sau apropierea perspectivei, îmbunătăţind
răspunde la un telefon, a procesa un pop-up apărut în totodată timpul de găsire a unei locaţii dorite.
mijlocul rulării aplicaţiei sau pur şi simplu pentru a utiliza Privitul în jur
o altă aplicaţie de pe acelaşi calculator. Această acţiune este efectuată în Google Earth utilizând
În TouchGE propunem un sistem de interacţiune bazată pe tasta CTRL în combinaţie cu săgeţile tastaturii, iar efectul
gesturi aşteptând ca utilizatorul să specifice când o acţiune este acela de a schimba centrul perspectivei, ca şi cum
începe şi când se termină, combinat cu posibilitatea utilizatorul ar întoarce capul într-o direcţie.
continuării acţiunilor repetitive. Această acţiune este mai utilă şi puternică decât acţiunile
Avantajul principal al unui astfel de sistem este acela că de înclinare sau rotire, care la rândul lor ar necesita încă
oferă libertate de mişcare utilizatorului şi un mai mare două gesturi şi o solicitare suplimentară din partea
control asupra celor ce se întâmplă în aplicaţie. utilizatorului. Acestea pot fi uşor simulate.
ACŢIUNI DISPONIBILE Un mod natural de a face pe cineva să privească într-o
Mulţimea de acţiuni care pot fi asociate este constrânsă de anumită direcţie este acela de a folosi degetul arătător. În
numărul de comenzi rapide cu tastatura puse la dispoziţie viaţa reală, acest gest este des întâlnit, fapt care a dus la
de interfaţa utilizator Google Earth. Versiunea curentă a utilizarea lui şi în aplicaţia de faţă pentru ca utilizatorul să
implementării noastre oferă trei acţiuni: „Mişcarea arate către direcţia înspre care vrea să privească.
globului”, „Îndepărtarea sau apropierea perspectivei”
CONCLUZII
(Zooming) şi „Privitul în jur”. În proiectarea şi dezvoltarea unei aplicaţii bazată pe
Mişcarea globului gesturi ale mâinii, apar diverse probleme legate fie de
Această acţiune este efectuată în mod normal în Google dispozitivul de determinare a poziţiei mâinii, fie de
Earth utilizând săgeţile de pe tastatură, iar efectul este de a experienţa utilizatorului indusă de folosirea îndelungată a
„muta” spectatorul în direcţia dorită. acelui dispozitiv. Nici alegerea gesturilor ce vor fi folosite
Din perspectiva utilizatorului, acţiunea poate fi percepută în aplicaţie nu este un aspect banal, necesitând a lua în
ca şi cum globul este cel ce s-ar mişca, nu spectatorul, şi calcul mai mulţi factori: atât naturaleţea şi intuitivitatea
că utilizatorul manipulează direct globul, întocmai precum gesturilor, cât şi suprasolicitarea utilizatorului cauzată de
ar face cu un glob real. un prea mare număr sau o prea mare complexitate a
acestora.
Astfel, am introdus gestul de „a apuca” efectuat paralel cu
globul. Executarea acestei acţiuni necesită o inversare a În ultima vreme au început să se evidenţieze anumite
mişcărilor. Un exemplu poate fi atunci când utilizatorul modele de urmat [6, 7], însă nu există o soluţie universală,
trage globul spre dreapta (din perspectiva sa), dar aplicaţia ci doar una care se potriveşte problemei de rezolvat.
va muta perspectiva spre stânga. Acţiunea poate fi REFERINTE
continuată, trăgând într-o direcţie şi eliberând globul, 1. * * *, Situl wiki destinat mănuşii P5:
întocmai precum cineva ar roti un glob real. http://scratchpad.wikia.com/wiki/P5_Glove
Îndepărtarea sau apropierea perspectivei 2. * * *, Comunitatea de dezvoltatori P5:
Această acţiune este efectuată în Google Earth utilizând http://groups.yahoo.com/group/p5glove
fie tastele +/– sau PageUp/PageDown, iar efectul său este 3. * * *, Mediul de lucru GlovePIE:
de a apropia sau îndepărta perspectiva în raport cu locaţia http://carl.kenner.googlepages.com/glovepie
situată în centrul ecranului. 4. * * *, Google Earth: http://earth.google.com/
Din nefericire, comenzile rapide cu tastatura nu au fost 5. * * *, Deadband:
concepute pentru un astfel de nivel de interacţiune. Din http://en.wikipedia.org/wiki/Deadband
această cauză, mişcarea globului şi apropierea sau 6. D. Saffer, Designing Gestural Interfaces, O’Reilly
îndepărtarea perspectivei nu pot fi executate simultan. Media, 2009.
Utilizarea gestului de apucare ar fi fost de preferat şi 7. S. Buraga, „Interacţiune neconvenţională”, note de
pentru această acţiune, dar a fost necesară introducerea curs, Facultatea de Informatică, Univ. „A.I. Cuza”,
unui gest nou. Iaşi, 2008-2009: http://www.info.uaic.ro/~busaco/
Astfel, s-a propus gestul de „ciupire” combinat cu teach/courses/interfaces/
mişcarea înainte sau înapoi. Aceeaşi inversiune aplicată
10. Interacţiunea cu Microsoft Virtual Earth folosind Wii
Radu Bogdan Sârghie Lucian Pricop Sorin Damian
Univ. „Al. I Cuza” Iasi, Univ. „Al. I Cuza” Iasi, Univ. „Al. I Cuza” Iasi,
Facultatea de Informatica, Facultatea de Informatica, Facultatea de Informatica,
radu.sarghie@gmail.com lucian.gabriel.pricop@gmail. sdamian@gmail.com
com
REZUMAT Acesta conţine un accelerometru, un joystick şi două
Interacţiunea prin mijloace convenţionale cu hărţile butoane în partea din faţă poziţionate, astfel încât să fie
geospaţiale necesită prezenţa unei suprafeţe plane şi uşor de acţionat cu degetul arătător şi, respectiv, degetul
impune o anumită poziţie a mâinii utilizatorului care se median.
dovedeşte a fi incomodă în anumite situaţii – de exemplu,
Telecomanda Wii poate detecta acceleraţia pe cele 3 axe şi
în timpul unei prezentări în faţa unei audienţe unde poziţia
cu ajutorul senzorului optic se poate determina unde este
obişnuită este în picioare. VirtualEarthWii este o aplicaţie
îndreptată de la o distanţă până la 5 metri. Senzorul optic
desktop care foloseşte platforma Microsoft Virtual Earth şi
lucrează împreună cu „bara de senzori” care conţine 10
serviciile aferente pentru vizualizarea hărţilor 3D într-un
LED-uri (câte cinci la fiecare capăt) ce emit unde în
mod inedit înlocuind interacţiunea clasică prin tastatură şi
infraroşu. Distanţa dintre bara de senzori şi telecomandă
mouse cu folosirea telecomenzii Wii.
este determinată prin triangulare de către procesorul
Cuvinte cheie incorporat în Wiimote. Telecomanda mai este dotată şi cu
interacţiune neconvenţională, Microsoft Virtual Earth, un senzor de imagine care determină unghiul de înclinare
Nintendo Wii faţă de sol al telecomenzii. Bara de senzori este folosită
Clasificare ACM
pentru detectarea punctului de pe ecran spre care se
H.5.2 User Interfaces: Input devices and strategies îndreaptă telecomanda – de exemplu, în jocuri de tipul
H.5.2 User Interfaces: Interaction styles first person shooter. De asemenea, cu bara de senzori se
pot detecta mişcări lente spre înainte sau înapoi. Acest
INTRODUCERE aspect este util, de pildă, în jocurile în care sunt controlate
Lucrarea prezintă un experiment practic de utilizare a obiecte 3D. Pentru mişcări rapide înainte-înapoi – cum ar
telecomenzii Nintendo Wii pentru interacţiunea fi cele dintr-un joc de box – sunt folosiţi accelerometrii.
neconvenţională cu serviciile de vizualizare a hărţilor 3D
disponibile la nivel de Web via Microsoft Virtual Earth. ACCESUL LA INFORMATII CARTOGRAFICE 3D
Pentru a îndeplini acest deziderat, am proiectat şi dezvoltat Aplicaţia implementată – VirtualEarthWii – reprezintă o
o aplicaţie interactivă la nivel de desktop disponibilă pe aplicaţie desktop care foloseşte platforma Microsoft
sistemul Windows. Virtual Earth şi serviciile aferente pentru vizualizarea –
într-un mod inedit – a hărţilor 2D, 3D şi a celor redate în
După unele consideraţii privind interacţiunea folosind perspectiva ochi-de-pasăre (bird eye). Interacţiunea clasică
telecomanda Wii, descriem maniera de acces la prin tastatură şi mouse este substituită de utilizarea în
informaţiile cartografice 2D şi 3D puse la dispoziţie de exclusivitate a telecomenzii Wii.
serviciile Virtual Earth. De asemenea, prezentăm o serie
de detalii referitoare la interacţiunea prin gesturi cu Virtual Earth 3D [2] reprezintă o platformă pentru accesul
utilizatorul, inclusiv suportul acordat persoanelor cu la hărţi care combină imaginile de înaltă rezoluţie
anumite handicapuri loco-motorii. La final, trasăm idei de disponibile prin satelit şi fotografiile aeriene cu hărţile şi
cercetare viitoare. modelele 3D. Compania Microsoft pune la dispoziţie o
bibliotecă de dezvoltare software (API – Application
INTERACTIUNEA PRIN NINTEDO WII Programming Interface) care permite programatorilor
Nintendo Wii [1] este o consolă de jocuri ajunsă la a manipularea datelor cartografice.
şaptea generaţie şi care a reuşit să îşi depăşească cu mult
concurenţa din punct de vedere al vânzărilor. ASPECTE REFERITOARE LA INTERACTIVITATE
Interacţiunile prin mijloace convenţionale sunt limitate în
Telecomanda Wii (denumită şi Wiimote) combină spaţiul 2D, necesită prezenţa unei suprafeţe plane şi impun
accelerometrii şi detecţia prin infraroşu pentru localizarea mâinii utilizatorului adoptarea unei anumite poziţii care se
în spaţiu, atunci când este îndreptată către LED-urile din dovedeşte a fi incomodă în anumite situaţii. De exemplu,
bara de senzori. Acest design permite utilizatorilor să în timpul unei prezentări în faţa unei audienţe unde poziţia
interacţioneze cu jocurile prin gesturi, dar şi prin metode obişnuită este de a sta în picioare.
clasice de interacţiune – i.e. prin apăsarea pe butoane.
Telecomanda se conectează la consolă prin tehnologia Folosind aplicaţia VirtualEarthWii, modul de vizualizare a
Bluetooth şi are incorporat pe lângă un difuzor şi un hărţii pentru navigarea optimă cu telecomanda Wii este cel
dispozitiv haptic care vibrează pentru a simula anumite 3D, unde utilizatorul se poate deplasa în toate cele 6
situaţii prezente – în majoritatea cazurilor – în jocuri. direcţii spaţiale, întocmai ca un elicopter. Controlul
deplasării înainte–înapoi şi stânga–dreapta pe hartă se
Telecomanda este livrată împreună cu o un al doilea realizează cu ajutorul joystick-ului ataşat telecomenzii
dispozitiv cu care se conectează, denumit nunchuck. Nintendo Wii.
11. Pentru controlul câmpului vizual se foloseşte telecomanda joystick-ul şi butoanele de pe telecomandă şi nunchuck.
orientată cu partea frontală spre tavan, astfel: înclinare Pentru asigurarea unor mişcări fluente, realizăm media
înainte pentru privit în jos, înapoi pentru privit în sus şi ultimelor 25 de intrări de la senzori.
lateral pentru rotirea camerei spre direcţia de înclinare.
Implementarea a recurs la biblioteca WiimoteLib [3, 4] şi
Modelul mental folosit este cel al manşei cu care se
la mediul de dezvoltare Microsoft Visual Studio .NET
pilotează elicopterele – a se consulta şi [1].
Express 2008.
Pentru deplasarea în altitudine, pe direcţia axei Z din
La momentul dezvoltării aplicaţiei noastre mai exista un
figura 1, se folosesc butoanele de pe nunchuck, cel
proiect similar numit WiiEarth, dar a fost abandonat
superior pentru deplasare spre în sus şi cel inferior pentru
datorită schimbărilor survenite în API-ul oferit de
deplasare spre în jos.
Microsoft. VirtualEarthWii diferă de acesta prin modul de
interacţiune şi prin faptul că funcţionează pe baza celei
mai recente versiuni a interfeţei de programare pentru
Virtual Earth.
DIRECŢII DE VIITOR
O primă direcţie de viitor ar fi să integrăm funcţionalităţi
pentru detectarea poziţiei feţei cu ajutorului unei camere
Web şi folosirea unghiului de înclinare sau a poziţiei
acesteia pentru orientarea camerei.
Am mai experimentat posibilitatea de a recunoaşte în timp
real poziţia unor obiecte. Utilizatorul poate arăta spre
cameră un obiect şi să îl fixeze ca reper, urmând ca
programul să urmărească poziţia acestuia cât timp este în
vizorul camerei. Această metodă ar putea fi folosită pentru
deplasarea hărţii, atunci când se vizualizează în mod 2D.
Considerăm că experimentul realizat este circumscris
Figura 1. Mişcările telecomenzii Wii
direcţiilor de cercetare vizând utilizarea consolelor de
Pentru a acomoda persoanele cu dizabilităţi care doresc jocuri – în acest caz, Wii – pentru aplicaţii software
totuşi să folosească telecomanda Wii, deplasarea pe hartă diferite de cele de divertisment.
se poate realiza, de asemenea, şi prin acţionarea
REFERINŢE
butoanelor în cruce de pe telecomandă. Suplimentar, se
pot folosi butoanele „+” pentru apropiere şi „–” pentru 1. Dan Saffer, Designing Gestural Interfaces, O’Reilly
depărtarea hărţii, in vederea îndeplinirii operaţiilor de Media, 2009
panoramare (zoom). 2. * * *, Microsoft Virtual Earth Winforms User Control,
http://www.codeplex.com/VEarthControl
Trebuie remarcat faptul că în această abordare nu este
necesară păstrarea niciunui buton apăsat pentru niciuna 3. * * *, Managed Library for Nintendo’s Wiimote,
dintre acţiuni, aşa cum este necesar atunci când folosim Microsoft Developer Network, 2007:
mouse-ul (trebuie apăsat butonul din stânga pentru ca http://blogs.msdn.com/coding4fun/
interfaţa să ia în considerare mişcarea pe hartă sau pentru archive/2007/03/14/1879033.aspx
reorientarea câmpului vizual). Acest aspect conduce la 4. * * *, WiiEarth – Wiimote Interface for Virtual Earth,
creşterea productivităţii interacţiunii şi menţine modelul Microsoft Developer Network, 2007:
mental pe care Virtual Earth îl sugerează prin hărţile 3D. http://blogs.msdn.com/coding4fun/archive/2007/10/18/
Conectarea telecomenzii la calculator se face prin 5506286.aspx
intermediul tehnologiei Bluetooth. Pentru navigarea
deasupra globului pământesc se folosesc accelerometrii,
12. Interacţiunea tactilă. Studiu de caz: YouFlickr – acces la
Flickr via iPhone/iPod Touch
Ştefan Prutianu, Ştefan Ceriu
Facultatea de Informatică, Universitatea „Alexandru Ioan Cuza” din Iaşi, România
Str. Berthelot, nr. 16, Iaşi 700483 - România
{stefan.prutianu, stefan.ceriu}@info.uaic.ro
iPhone/iPod Touch să acceseze majoritatea funcţiilor
REZUMAT
In acest articol vom prezenta o aplicaţie dezvoltată pentru Flickr fără a fi nevoiţi să recurgă la interacţiunea
gama de dispozitive mobile iPhone şi iPod Touch care „normală” folosind navigatorul Web Mobile Safari.
facilitează interacţiunea neconvenţională, de tip tactil, cu Utilizatorul poate folosi aplicaţia şi fără a se autentifica; în
situl Web de management şi partajare a imaginilor şi acest caz, acţiunile sale sunt limitate din considerente de
fişierelor video Flickr. Aplicaţia oferă utilizatorului mobil confidenţialitate. Astfel, un utilizator neautentificat poate
accesul la majoritatea funcţionalităţilor expuse de interfaţa realiza căutări după etichete ale imaginilor publice sau
de programare Flickr într-un mod diferit de interacţiunea, poate viziona fotografiile din albumul Interestingness
uneori greoaie, dintr-un browser mobil ca Mobile Safari (incluzând cele mai interesante imagini) al Flickr.
prin utilizarea caracteristicilor hardware ale dispozitivelor Autentificarea se realizează prin intermediul Mobile Safari
menţionate mai sus. şi a sitului Flickr. Odată autentificat, aplicaţia se deschide
Cuvinte cheie automat şi permite utilizatorului accesul la contul său.
Interacţiune neconvenţională, dispozitive mobile, Web Utilizatorul rămâne autentificat şi după închiderea, apoi
social. redeschiderea aplicaţiei.
Clasificare ACM Prin intermediul YouFlickr, un utilizator poate accesa şi
H5.2. Information interfaces and presentation (e.g., HCI) vizualiza fotografiile proprii sau ale contactelor acestuia
în aceeaşi manieră de organizare ca pe situl Web,
INTRODUCERE împreună cu comentariile, descrierile şi alte informaţii
Această lucrare descrie o aplicaţie destinată utilizatorilor referitoare la imaginile respective.
mobili ai serviciilor Flickr. De asemenea, se vor prezenta
o serie de consideraţii privind modele de interacţiune Aplicaţia permite de asemenea preluarea de imagini noi
neconvenţională folosind un dispozitiv similar iPhone prin intermediul camerei foto incorporate în iPhone şi
(iPod Touch) pentru accesul la platforme aliniate trimiterea acestora spre situl Flickr.
problematicilor Web-ului social [1].
Flickr reprezintă o aplicaţie Web ce oferă găzduire pentru
imagini şi fişiere video, servicii Web şi o comunitate
online. Flickr permite utilizatorilor să-şi organizeze
fişierele încărcate pe server folosind etichete (tag-uri),
mulţimi sau alte colecţii de nivel înalt, să le partajeze cu
întreaga comunitate sau doar cu contactele personale şi o
multitudine de alte operaţii. În ideea de a putea fi extins şi
pe alte platforme sau dispozitive, Flickr oferă o interfaţă
de programare (API) [3] complexă care permite
dezvoltatorilor să creeze aplicaţii ce accesează aproape
toate funcţiile de pe sit. Există o varietate de biblioteci
pentru comunicarea cu API-ul Flickr realizate în diferite
limbaje, printre care şi ObjectiveFlickr [4] pentru
sistemele Mac OS X şi iPhone OS pe care am utilizat-o în
acest proiect.
Lucrarea de faţă conţine două secţiuni. În prima secţiune
sunt prezentate caracteristicile importante ale aplicaţiei,
inclusiv interacţiunea cu utilizatorul, iar cea de a doua
secţiune prezintă rezultatele pe care le-am obţinut în
încercarea de a reduce acţiunile – iniţial complicate – ale
utilizatorului la simple gesturi sau gesturi combinate.
Figura 1. Prezentarea pe hartă – via serviciul Google Maps –
DESCRIEREA APLICAŢIEI YOUFLICKR
a fotografiei pe baza geo-tagging-ului
Proiectul YouFlickr facilitează interacţiunea comodă cu
situl Flickr la nivelul unui dispozitiv mobil de ultimă Deoarece imaginile obţinute cu camera foto a acestor
generaţie. Deoarece aplicaţia dezvoltată este una nativă dispozitive mobile au asociate meta-date privind locaţia
iPhone OS [5], ea permite utilizatorilor care posedă utilizatorului (geo-tagging) în momentul preluării
13. fotografiei, aplicaţia noastră poate afişa imaginile care orientarea Portrait, cât şi în cea Landscape – a se urmări
dispun de meta-date referitoare la locaţie pe o hartă figura 2.
oferită de Google Maps la coordonatele respective. O
exemplificare este furnizată de figura 1.
Având un design robust, aplicaţia se comportă bine şi în
momentele în care conectivitatea Internet este slabă,
afişând rezultate parţiale, astfel încât utilizatorul să nu aibă
senzaţia ca aplicaţia nu mai poate interacţiona cu acesta.
INTERACŢIUNEA CU UTILIZATORUL
Pentru ca interacţiunea cu serviciile Flickr să ofere o
experienţă-utilizator (UX – User Experience) simplă şi, de
asemenea, cât mai plăcută la nivel de dispozitive mobile,
am ales să adăugăm la metodele convenţionale de
interacţiune cu o aplicaţie o serie de alte facilităţi.
Pentru a îndeplini acest deziderat, ne-am bazat şi pe unele
caracteristici hardware speciale ale dispozitivelor mobile Figura 2. Exemplificarea efectului Cover Flow de vizualizare
produse de compania Apple, mai puţin utilizate în aplicaţii a fotografiilor preluate de pe Flickr
de acest gen. În acest sens, am făcut ca unele acţiuni ce CONCLUZII
pot necesita uneori o multitudine de paşi să devină mult Ritmul alert de evoluţie a tehnologiilor hardware şi
mai uşor de realizat prin intermediul unor gesturi simple software pentru dispozitive mobile şi nu numai ne permite
sau gesturi combinate (multi-touch) a căror semnificaţie să să inovăm modele de interacţiune cu acestea
poată fi reţinută cu uşurinţă de utilizator. Un astfel de exemplu este şi aplicaţia YouFlickr care
La acestea, se mai adaugă şi unele efecte vizuale cu scopul permite interacţiunea cu situl Flickr într-o manieră mult
de a capta atenţia utilizatorului, conform strategiilor de simplificată faţă de tehnicile convenţionale. Proiectul a
interacţiune prin gesturi prezentate în [2]. fost dezvoltat, deocamdată, pentru platforma iPhone OS.
Astfel, am implementat următoarele: Pe viitor intenţionăm să studiem maniera de interacţiune
• o nouă pagină de rezultate în urma unei căutări se prin gesturi şi alte tipuri de dispozitive mobile având
poate încărca printr-un gest de scuturare (shake) a facilităţi multi-touch.
dispozitivului, REFERINŢE
• navigarea printr-o pagină de rezultate oferite de 1. S. Buraga, „Interacţiunea cu utilizatorul în Web-ul
Flickr sau pe hartă se poate face fie prin gesturi social”, D. Popovici, A. Marhan (editori), Volumul de
de tip alunecare (swipe), fie prin înclinarea lucrări al Conferinţei Naţionale de Interacţiune Om-
dispozitivului, Calculator – RoCHI 2005, Matrix Rom, 2005.
2. D. Saffer, Designing Gestural Interfaces, O’Reilly
• operaţiile de panoramare – zoom in sau zoom out Media, 2009.
– se pot efectua prin gesturi simple de tip pinch
3. * * *, Interfata de programare Flickr API:
and zoom.
http://www.flickr.com/services/api/
În toate celelalte cazuri, interacţiunea tactilă se rezumă la 4. * * *, Biblioteca ObjectiveFlickr de acces la serviciile
a selecta prin tap sau double tap butoanele pentru Flickr: http://lukhnos.org/objectiveflickr/blog/
navigare.
5. * * *, Resurse privind dezvoltarea aplicaţiilor iPhone:
Ca efect vizual, am implementat şablonul de proiectare http://developer.apple.com/iphone
vizuală Cover Flow pentru redarea imaginilor atât în
14. Captarea stării emoţionale a utilizatorului via dispozitivul
Arduino cu implicaţii în Web-ul social
Ştefan Negru
Facultatea de Informatică, Universitatea „Alexandru Ioan Cuza” din Iaşi, România
Str. Berthelot, nr. 16, Iaşi 700483 - România
stefan.negru@info.uaic.ro
Utilizatorul va interacţiona cu sistemul cu ajutorul unei
REZUMAT
Vom descrie un sistem interactiv construit pentru aplicaţii Web, iar în funcţie de opţiunile selectate, ca şi
îmbunătăţirea interacţiunii dintre utilizatori, din prisma răspuns la un set de întrebări, va influenţa sistemul. Acesta
împărtăşirii unui anumit număr de emoţii via dispozitivul va răspunde cu emoţia adecvată.
hardware deschis Arduino. Scopul experimentului este de Vom descrie şi explica în cele ce urmează componentele
a face interfaţa cu utilizatorul mult mai umană, dar şi mai sistemului şi semnificaţia lor în cadrul acestuia.
productivă, prin stabilirea unei comunicări mult mai Hardware
naturale între om şi calculator. Un prim pas în realizarea Într-un prim prototip, am folosit doar două tipuri de emoţii
acestei comunicări este identificarea şi transmiterea de (fericire şi tristeţe). Diversele versiuni de proiectare sunt
emoţii, lucru realizabil în cadrul sistemului construit. ilustrate la adresa http://www.flickr.com/photos/blankdots/
Următorul pas pe care l-am urmat a fost dat de aspectul sets/72157617049599313/.
social al comunicării, realizat cu ajutorul aplicaţiei
Twitter. După o mai amplă documentare, am realizat că emoţiile
sunt mult mai complexe [2, 3]. Pentru a crea un număr
Cuvinte cheie variat de emoţii, am recurs la culori, mai precis la un
Interacţiune neconvenţională, emoţie, Arduino, Twitter. număr limitat de culori, care în combinaţie pot fi atribuite
Clasificare ACM unui număr mai mare emoţii:
H5.2. Information interfaces and presentation (e.g., HCI) • verde – folosit pentru a exprima fericirea;
H5.m. Miscellaneous.
• roşu – utilizat pentru a exprima tristeţea;
INTRODUCERE
Modul în care interacţionăm cu alţi oameni este definit în • albastru – folosit în combinaţie cu alte culori
mare parte de emoţiile pe care le transmitem sau le (precum roşu, caz în care poate exprima furia).
recepţionăm. Acestea au un rol important, deoarece ne Aceste culori sunt redate cu ajutorul LED-urilor, care
ajută să luăm decizii mai bune, astfel obţinând rezultate totuşi nu reprezintă o metaforă puternică, uneori existând
mai satisfăcătoare la problemele cu care ne confruntăm. confuzii în ceea ce priveşte semnificaţia combinaţiilor de
Luând în considerare domeniul informatic, putem afirma culori. Astfel, am recurs la un ecran LCD pentru a „întări”
că între utilizator şi calculator nu există o astfel de relaţie mesajul transmis de LED-uri utilizatorului.
bazată pe sentimente şi emoţii. Calculatorul este astfel Am inclus un potenţiometru ce are rolul de a testa
imun şi indiferent la ce încercăm să îi transmitem prin elementele de mai sus, astfel asigurând buna funcţionare a
acţiunile noastre, răspunsul lui făcând imposibilă stabilirea sistemului.
unei comunicări.
Toate aceste elemente, reprezentate şi în figura 1, sunt
Pentru a demonstra un posibil scenariu în care punem în conectate la dispozitivul Arduino. Acesta este cel care
legătură un calculator şi un om, vom avea nevoie să ne realizează şi comunicarea cu partea software a sistemului.
construim propriul sistem interactiv. Astfel, am recurs la
platforma hardware Arduino [1, 6], pentru care am realizat
un circuit special în care am folosit diverse componente,
precum Light-emitting diode (LED) şi un ecran Liquid
Crystal Display (LCD) [4] pentru a simula o astfel de
interacţiune.
SISTEMUL INTERACTIV
Principalul motiv pentru care am recurs la construirea
propriului sistem de interacţiune neconvenţională a fost
dat de nevoia de a avea control absolut asupra interacţiunii
cu utilizatorul. Pentru ca sistemul să reflecte în mod
adecvat emoţiile, am ales ca şi metaforă culoarea. Mai
precis, vom realiza diverse combinaţii de culori între roşu,
verde şi albastru. Combinând culorile, vom acoperi o
gamă mai largă de emoţii. Acestea vor fi înţelese de
utilizator cu ajutorul ecranului LCD, pe care vor fi afişate
mesaje legate de emoţiile din momentul respectiv. Figura 1 Schema circuitului folosit
15. Software
Am recurs la o interacţiune cu utilizatorul la nivel de
aplicaţie Web din motive de flexibilitate, pentru a adăuga
mai uşor elemente noi.
Am stabilit un set de întrebări la care utilizatorul este rugat
să răspundă pentru ca sistemul să poată identifica emoţiile.
Acest set de întrebări nu reflectă modul cel mai adecvat de
identificare a sentimentelor, dar pot oferi o bază solidă în
acest scop.
• „Cum te simţi?” – răspunsul la această întrebare
influenţează intensitatea unui sentiment, şi
anume: fericit sau trist. Intensitatea unui
sentiment joacă un rol important în interacţiunea
cu utilizatorul [2, 3]. Figura 3. Stări emoţionale preluate prin Arduino şi plasate
• „Îţi place vremea de afară?” – la această întrebare pe Web în cadrul sistemului de microblogging Twitter
utilizatorul trebuie să aleagă între: „Da”, „Nu” şi Pentru demonstraţii concrete, pot fi urmărite prezentările
„Nu prea”. Starea vremii nu are tot timpul acelaşi video disponibile la adresele www.vimeo.com/4563793 şi
efect, fiecare anotimp influenţând în mod unic o www.vimeo.com/4930674.
persoană şi implicit starea de spirit a acesteia.
CONCLUZII
• „Eşti plictisit?” – acesta este o întrebare care are Experimentul de explorare a manierei de interacţiune
drept scop identificarea emoţiilor negative, neconvenţională descris mai sus poate fi considerat un pas
plictiseala sau starea de stres, fiind un factor înainte în îmbunătăţirii calităţii interfeţelor cu utilizatorul.
important. Utilizatorul poate să răspundă cu Faptul că nu ne-am limitat doar la modalitatea tradiţională
următoarele: „Da”, „Nu”, „Nu prea”, „Am de de interacţiune, arată nevoia – tot mai stringentă – de a ne
lucru”, „Fac ceea ce îmi place”. distanţa de vechea metodă (restrictivă) de operare cu
calculatorul.
Un alt aspect de interes este cel referitor la utilizarea de
tehnologii deschise (open source) care facilitează
interacţiunea bazată pe emoţii dintre utilizatori,
componente hardware, aplicaţii desktop şi cele disponibile
la nivel de Web.
REFERINŢE
1. M. Banzi, Getting Started with Arduino, O’Reilly,
2008.
2. S. Brave, C. Nass, „Emotion in Human-Computer
Interaction”, în A. Sears, J. Jacko (Eds.), The Human–
Computer Interaction Handbook. Fundamentals,
Evolving Technologies, and Emerging Applications
(2nd Edition), Taylor & Francis, 2008.
3. C. Peter, R. Beale, Affect and Emotion in Human-
Figura 2. Sistemul interactiv (hardware + software) realizat Computer Interaction from Theory to Applications,
Interacţionând cu sistemul nostru – a cărui variantă Springer, 2008.
curentă este ilustrată de figura 2 –, utilizatorul are 4. T. Igoe, Making Things Talk, O’Reilly, 2007.
posibilitatea să-şi exprime nuanţat diversele emoţii. 5. A. Java et al., „Why We Twitter: Understanding
Ultima componentă – şi anume componenta socială – este Microblogging Usage and Communities”,
dată de transmiterea emoţiilor utilizatorului prin International Conference on Knowledge Discovery and
intermediul bine-cunoscutei aplicaţii Web sociale de tip Data Mining, ACM Press, 2007.
microblogging Twitter [5]. Interacţiunile pot fi urmărite la 6. ***, Situl oficial Arduino: http://www.arduino.cc/
adresa http://twitter.com/feeltagged. Astfel, emoţiile
captate via Arduino pot fi comunicate şi altor persoane ori
agenţi software, spre o posibilă analiză ulterioară.