
Tehnologii Web
Lista proiectelor propuse
Artifacty
Sa se dezvolte o aplicatie Web ce realizeaza managementul informatiilor privitoare la colectii de artefacte, structurate pe tipuri, roluri, conform localizarii geografice etc. Pentru fiecare artefact, pot fi atasate diverse meta-date -- e.g., autor (daca exista), copyright, valoare, termeni-cheie etc., folosindu-se microdate HTML5. Se doreste crearea unui model care sa permita clasificarea si exprimarea diverselor relatii ce pot fi stabilite intre anumite artefacte (e.g., o colectie a obiectelor de cult din India are drept cumparatori membri ai clasei "samurai" apartinind totodata si clasei "magnati industriali"). De asemenea, se vor oferi situatii referitoare la resursele stocate -- de pilda, toate artefactele de tip masca mortuara descoperite in acest secol in Polinezia ori artefactele existente in muzeele publice ale tarii de provenienta, dar care nu au fost inca datate/cercetate. In cadrul modelului, se va utiliza SKOS (Simple Knowledge Organizational System). Figurarea localizarii geografice a fiecarui artefact va recurge la utilizarea serviciilor publice de cartografiere.
Persoane alocate: 2
CoLiW
In mod normal, accesul la Web se realizeaza pe baza unui browser. Se doreste experimentarea unei interactiuni Web in linia de comanda, punandu-se la dispozitie o platforma extensibila capabila sa ofere suport pentru realizarea de mash-up-uri exclusiv cu ajutorul unui set de mini-comenzi, in stilul celor Unix. Utilizatorul va putea accesa servicii de interes via comenzi precum 'web slideshare upload <URL>', 'web twitter follow <utilizator>' sau 'web gmail -tag:Important -since:2012-03-01 > msg.atom'. De asemenea, se vor putea realiza mash-up-uri si/sau pipe-uri -- de exemplu, 'web flickr photos -tag:Tux -first | web facebook update user' pentru actualizarea profilului Facebook pe baza fotografiilor preluate de pe Twitter ori 'web join rss <URL1> <URL2> -where <conditie> -unique | web publish <blog> -as HTML' pentru a obtine o lista de fluxuri de stiri in vederea publicarii in format HTML pe un blog. Interfata in linie de comanda poate fi oferita si via o extensie de browser.
Persoane alocate: 3
Desant
Se doreste crearea unui instrument Web care sa asiste utilizatorul in respectarea unor reguli de design Web (e.g., consistenta spatiala, cromatica, model al navigarii, proportie dintre informatii textuale si cele grafice etc.), avand la baza diverse biblioteci de sabloane de proiectare (design patterns) a interactiunii. Aplicatia va verifica daca diverse pattern-uri apar si sunt respectate pe parcursul unui sit Web, oferind sugestii de ameliorare a interfetelor eronate. Se vor oferi colectii predefinite de template de prezentare (e.g., layout-uri, solutii cromatice, stiluri de afisare) si de interactiune (de exemplu, modalitati de navigare, formulare de autentificare, maniere de cautare locala, sisteme de tagging etc.) pentru diverse categorii de situri Web -- personale, academice, comerciale, comunitare si altele -- ce pot fi accesate la nivel de desktop si dispozitiv mobil (telefon, tableta).
Persoane alocate: 3
FII Competition '12
Se va dezvolta un proiect propus la sectiunea Web a concursului FII Competition '12, conform regulamentului in vigoare.
Persoane alocate: 3
FaceMaze
Sa se implementeze un joc disponibil pe Web care sa permita unui utilizator sa joace Pac-Man. Utilizatorul va fi figurat pe baza imaginii disponibile in profilul lui in cadrul unui sit social (e.g., Blip.fm, Facebook, GitHub, Gravatar, Last.fm etc.). Va trebui sa circule intr-un labirint generat aleatoriu, in functie de nivelul jocului, si sa "consume" pilule energetice care vor contribui la marirea scorului. In cadrul labirintului, vor putea aparea 'fantome' maligne care vor fi infatisate prin imagini (avatars) ale prietenilor din reteaua sociala la care e arondat jucatorul -- de exemplu, se vor folosi API-urile oferite de Facebook, Last.fm, Twitter etc. Daca o fantoma a atins jucatorul, atunci aplicatia va genera in mod automat un mesaj care va aparea intr-un serviciu de microblogging precum Twitter de forma 'Jucand #FaceMaze, l-am inghitit pe @utilizator'. Interactiunea cu utilizatorul va fi cit mai bogata, in spiritul aplicatiilor RIA (Rich Internet Applications), luandu-se in calcul si exploatarea aplicatiei pe dispozitive mobile.
Persoane alocate: 3
GaXon
Sa se ofere un cadru-suport (shell, framework, platforma) pentru managementul oricarui tip de joc electronic disponibil pe Web, cu posibilitatea generarii tablei de joc conform starii actuale a unei instante particulare de joc, validarii mutarilor legale, stocarii succesiunii de mutari in vederea reproducerii ulterioare si adnotarii fiecarei partide efectuate. Folosind extensii (plugin-uri, servicii Web) se pot simula/juca anumite jocuri disponibile on-line, precum sah sau Go. Starile instantelor fiecarui tip de joc vor fi gestionate folosind un sistem de management al bazelor de date native XML si/sau o solutie NoSQL. Se va urmari definirea conceptelor de joc, partida, strategie, utilizator etc. pe baza careia sa se poata specifica un API referitor la managementul jocurilor in cadrul platformei propuse. Drept studii de caz se pot considera instante de jocuri ruland pe platforme mobile (e.g., Android, iOS, Windows Phone 7) si/sau console (de exemplu, Kinect).
Persoane alocate: 4
IBuild
Intr-un oras faimos, exista o facultate denumita FII ale carei spatii (sali de curs, laboratoare, birouri etc.) apartin unei cladiri. Vizitatorii cladirii pot fi studenti, profesori, personal administrativ si, eventual, alte persoane. Fiecare categorie de vizitatori are propriile sale scopuri, planificari, frecventa de ocupare a unor sali, restrictii si altele. De exemplu, studentii din anul I participa in fiecare luni de la 12h la o "sueta" referitoare la sisteme de operare, iar profesorii care predau laboratoarele de tehnologii Web au ore dupa-amiaza doar in zilele de luni, marti si joi. Sa se conceapa o aplicatie Web care "recunoaste" un vizitator pe baza identificatorului asociat (nume de cont, QR proiectat de telefonul mobil etc.) si-l "indruma" prin cladire, pe baza informatiilor despre orarul FII, conform categoriei din care face parte. Ghidarea poate fi realizata fie oferind sugestii de orientare intr-o limba naturala (e.g., "mergi 100 de metri, coteste-o la dreapta si ai ajuns la secretariat"), fie pe baza unei harti a fiecarui etaj, fie folosind termeni sociali (de genul: "colega ta de grupa Tuxa tocmai coboara spre tine; o poti intreba pe ea unde are loc FII Competition"). Aceste sugestii pot fi oferite la cerere sau pe baza unor notificari -- de pilda, atunci cand vizitatorul se afla in apropierea unui punct "fierbinte" (o sala de laborator, biroul unui profesor care preda o materie de interes pentru vizitator, secretariat etc.). De asemenea, unele sugestii (e.g., "profesoara a parasit cladirea, n-o mai cautati") pot fi facute publice (e.g., via Twitter). Se va oferi si posibilitatea administrarii aplicatiei dezvoltate. Se acorda bonus pentru folosirea de tehnici de realitate imbogatita (augmented reality) -- de exemplu, generarea de reprezentari pseudo-3D cu imaginile din interiorul unei sali atunci cand vizitatorul se afla in imediata vecinatate a acesteia.
Persoane alocate: 3
IWA (Improved Web Analytics)
Sa se dezvolte o platforma Web care ofera rapoarte privind accesul la resurse disponibile online (Web analytics). Folosind instrumente Web multiple de monitorizare a accesului la resurse, se vor putea pune la dispozitie statistici pe baza datelor acumulate, inclusiv folosind diverse metode de vizualizare. De asemenea, aplicatia va putea expune rezultatele via un serviciu Web implementat conform paradigmei REST.
Persoane alocate: 2
MoveIT
Sa se creeze o aplicatie Web de tip retea sociala oferit suport pentru realizarea unor servicii de finantare de proiecte IT pentru Romania. Vor exista 2 categorii principale de utilizatori: 'movers' (initiatori de start-up-uri) si 'shakers' (finantatori de start-up-uri). Procesul de finantare va urma urmatorul tipar: un 'mover', care trebuie sa aiba deja o companie infiintata, va solicita o finantare (de exemplu, 1000 EURO pentru un proiect) si va ceda un procent (e.g., 20%) din beneficii. Utilizatorii de tip 'shaker' vor putea redirectiona o parte din bani intr-un cont bancar oferit de aplicatie. Dupa ce suma a fost stransa in totalitate, cele doua categorii de utilizatori vor planifica o intalnire pentru a semna contractul de finantare. Aplicatia Web trebuie sa puna la dispozitie o interfata orientata pe categorii de proiecte, promovand de asemenea si cele mai interesante proiecte (eventual, dupa buzz-ul creat si conform sustinerii la nivel online). De asemenea, va oferi asistenta pentru intreg procesul de finantare conform scenariului descris.
Persoane alocate: 2
PeRe
Luand in consideratie faptul ca fiecare utilizator este identificat unic via un dispozitiv personal (e.g., telefon mobil) sau a unui marcaj (cod de tip QR, RFID,...), sa se dezvolte o aplicatie a prezenta si/sau sugera in mod "inteligent" resurse -- cunoscuti, obiective de interes (benzinarii, cladiri, magazine, parcuri etc.), informatii de ghidare si altele -- disponibile in imediata vecinatate conform serviciilor publice de geo-localizare existente. Aplicatia Web va fi suficient de modulara astfel incat sa ofere noi functionalitati pe baza unor extensii. Interogarile vor putea fi realizate pe baza unui API REST, iar interactiunea cu utilizatorul va fi una cat mai naturala. Bonus: recurgerea la augmented reality.
Persoane alocate: 2
SUP
Folosind informatiile expuse de retelele sociale actuale si de serviciile de management al identitatii digitale (e.g., Gravatar), sa se dezvolte o platforma Web capabila a gestiona profiluri de utilizatori. Un profil de utilizator va fi modelat pe baza microdatelor HTML5, putand fi relationat si expus pe baza unui API REST. Aplicatia va putea fi folosita si pentru crearea si editarea de profiluri fictive de utilizatori (personas), utile in procesele de design Web. De asemenea, se vor oferi mijloace de estimare a reputatiei unui utilizator, pe baza unor criterii multiple, eventual servicii de calcul al reputatiei precum Klout. Se vor oferi si mijloace de vizualizare corespunzatoare si de comparare a grafurilor sociale ale mai multor utilizatori.
Persoane alocate: 2
ScientiX
Acest proiect se doreste a fi un instrument Web de colectare, de regasire si de vizualizare a informatiilor referitoare la resurse stiintifice (articole, carti, rapoarte tehnice, prezentari etc.) ale utilizatorilor avand preocupari academice. Pe baza conceptului de mash-up, aplicatia va oferi informatiile de interes pentru un anumit utilizator pornind de la resursele multimedia deja colectate si clasificate prin tagging via aplicatii Web sociale precum CiteULike, Delicious, Google Scholar, Scribd, Slideshare, Vimeo etc. Informatiile (clasificate pe diverse criterii) vor fi vizualizate/redate in formate precum XHTML, BibTeX sau text obisnuit. Aplicatia va oferi acces la informatii prin intermediul unui API REST.
Persoane alocate: 2
SociallyX
Se propune dezvoltarea unei aplicatii Web de tip social-networking care permite "culegerea" de profile de utilizatori de pe diverse alte situri (precum LinkedIn, Facebook, Last.fm etc.) in vederea realizarii, vizualizarii si reutilizarii grafului retelei sociale corespunzatoare unui anumit utilizator. Stocarea datelor va tine cont de asigurarea scalabilitatii (e.g., suport pentru milioane de utilizatori). Se va lua in considerare ca implementarea sa se concretizeze intr-o extensie de navigator Web care sa ofere facilitati de sugerare (recomandare) a completarii retelei sociale la care participa utilizatorul in functie de datele culese -- de exemplu, "Persoana P a fost gasita ca fiind prietena ta pe situl Twitter, dar are profil si pe Last.fm, unde si tu ai cont. O adaugam in grupul tau de cunostinte de la Last.fm sau de la Facebook?". Se vor oferi si facilitati de cautare , grupare si vizualizare a retelei constituite pe baza unor criterii multiple (e.g., nume, varsta, localizare geografica, hobby-uri, tag-uri asociale etc.). Autentificarea si autorizarea utilizatorilor va recurge la servicii publice precum OpenID si/sau OAuth.
Persoane alocate: 4
Timr
Avand la dispozitie structura orarului unei facultati, sa se scrie o aplicatie Web care sa permita unui student sa obtina informatii despre desfasurarea cursurilor, laboratoarelor si seminariilor corespunzatoare anului/grupei sale. De asemenea, aplicatia va notifica utilizatorul asupra schimbarilor (daca exista) survenite pe siturile corespunzatoare disciplinelor pe care le urmeaza. Aplicatia va oferi posibilitatea managementului adreselor Web ale siturilor materiilor respective, plus exportul in formate precum Atom, iCal si HTML5 incluzand microdata. Suplimentar, se va concepe un widget la nivel de desktop si de dispozitiv mobil, menit a oferi aceleasi functionalitati. Se va tine cont de obiectele optionale la care e inscris studentul, de cele la care are restante din semestrele anterioare sau de cele luate in avans.
Persoane alocate: 3
ToVi (Touch & View)
Sa se dezvolte un instrument Web care permite interactiuni naturale -- e.g., multi-input touch screen sau un dispozitiv (pseudo-)haptic -- in vederea vizualizarii/manipularii unor volume mari de informatii numerice -- de exemplu, situatii de vanzari ori cele bursiere, date privind starea de natalitate, poluare sau cultura dintr-un areal, diverse alte statistici guvernamentale. Aceste date pot fi preluate de pe Internet via servicii Web disponibile public.
Persoane alocate: 3
Travlr
Sa se dezvolte o aplicatie Web ce permite gestiunea colaborativa a unei excursii realizate de un grup de persoane. Se va oferi suport pentru stabilirea in regim colaborativ de itinerarii, unde un itinerariu reprezinta o serie de locatii geografice ce vor fi vizitate la date (pre)stabilite, incluzind diverse obiective turistice de interes. Datele privind itinerariul vor fi "imbogatite" cu resurse multimedia (fotografii, inregistrari audio, filme etc.) existente pe Web. Fiecare membru al grupului poate avea specificate anumite activitati de realizat in cadrul excursiei (e.g., responsabil cu efectele pirotehnice). Se vor avea in vedere si organizarea transportului (limuzine, elicoptere) si suportul pentru discutii online. Aplicatia va folosi API-uri externe acolo unde e cazul (scopul excursiei este participarea la un concert anuntat pe Upcoming, itinerariul e stabilit via OpenStreetMap, escalele se voteaza cu Doodle etc.). Interfata Web va fi cat mai prietenoasa, putind fi exploatata si pe dispozitive mobile ori pe baza unui API REST.
Persoane alocate: 3
ViX (Visual XQuery)
Sa se dezvolte un instrument Web care sa permita formularea si invocarea de interogari XQuery cat mai intuitive direct in cadrul navigatorului Web sau intr-un mediu de dezvoltare online asupra documentelor XML si/sau baze de date native XML. Aplicatia va permite salvarea pe calculatorul local a interogarilor si rezultatelor aferente, pe baza profilului de utilizator. Se va recurge la minimum doua servere de baze de date native XML, in vederea realizarii unui studiu comparativ.
Persoane alocate: 2
WebFun
Sa se conceapa un joc Web multi-player care sa aiba drept scop ilustrarea folosirii in practica si invatarea de catre jucatori a celor mai importante concepte predate la disciplina "Tehnologii Web": protocolul HTTP, cookie-uri, sesiuni Web, mecanismul de functionare a unui server de aplicatii Web, dezvoltarea si invocarea de servicii Web pe baza REST, transferul asincron de date (Ajax si Comet), realizarea de mash-up-uri, aspecte esentiale privind securitatea Web si altele. Pe baza API-ului REST creat, jocul va putea fi jucat si in grup via o platforma sociala precum Facebook ori Twitter, inclusiv pe telefoane mobile.
Persoane alocate: 2
WebSpa
Sa se dezvolte un instrument care sa permita interogari cat mai intuitive, de dorit vizuale, direct in cadrul navigatorului Web a punctelor terminale SPARQL arbitrare. Unealta va permite managementul acestor puncte terminale si salvarea pe calculatorul local a interogarilor si rezultatelor aferente, pe baza profilului de utilizator. De asemenea, se va oferi suport pentru editari colaborative de interogari in stilul wiki. Aplicatia Web va considera ambele standarde (SPARQL 1.0 si SPARQL 1.1) in vigoare si va putea fi exploatata si pe dispozitive mobile (e.g., tablete).
Persoane alocate: 3
Woha
Sa se realizeze o platforma Web menita sa realizeze managementul "inteligent" al dispozitivelor casnice -- e.g., player DVD/BluRay, instrumente electrice de bucatarie, masina de spalat, sistem de asigurare a aerului conditionat etc. "Dialogul" cu acestea (trimiterea de comenzi si obtinerea de raspunsuri) se va realiza pe baza unui protocol, considerandu-se o interactiune naturala: bazata pe gesturi, tactila, vocala. Se vor avea in vedere preferintele (tabieturile) mai multor persoane (membri ai familiei, prieteni apropiati). Interfata Web va putea fi exploatata atat pe dispozitive mobile, cat si via un API REST.
Persoane alocate: 2
De consultat maniera de evaluare a proiectelor.