IT

Partener

Candidati eligibili

Persoane cu vârsta sub 26 de ani, înscrise la cursurile de zi (buget sau taxă) ale unei facultăţi de profil din ţară sau străinătate.

Jurizarea

Se va desfăşura în luna aprilie 2010. Acest proces presupune două etape:

  • 12 - 19 aprilie: analizarea lucrărilor şi selectarea primelor 7 clasate
  • 20 - 25 aprilie: prezentarea lucrărilor selecţionate la cererea juriului de specialitate.

Primii 3 clasaţi vor fi anunţaţi telefonic şi vor fi invitaţi la Gala de decernare a premiilor de pe 28 Aprilie 2010, ce se va desfăşura în Bucureşti.

Studentul Anului este un proiect ce urmăreşte mutiple direcţii de dezvoltare ale participanţilor şi de aceea luăm în considerare:

  • activitatea curriculară şi extracurriculară prezentată în formularul de inscriere - 25%
  • proba de concurs - 75%

Perioada de inscriere se încheie pe data

11 aprilie 2010, ora 23:59

Formularul de inscriere

Descarca formularul: 
Formularul completat va fi trimis prin e-mail la adresa: 
it@studentulanului.ro

Proba de concurs

Se va realiza o aplicaţie Windows, multi-user, de stocare/gestiune on-line a datelor la nivel de fisier. Aplicatia va folosi pentru stocare un cont FTP unic. Se vor putea realiza operatii de copiere din local catre contul FTP si invers prin intermediul Windows Explorer.

Pentru impartirea acestui cont FTP intre mai multi utilizatori, se va utiliza un serviciul web separat, descris mai jos.

Aplicatia este compusa din:

- O parte client, sub forma unui Explorer Shell Extension, care va adauga in Windows Explorer un drive ce va reprezenta spatiul de stocare al unui user. La accesare in acest drive se va gasi o structura arborescenta cu fisierele userului conectat. La click-dreapta pe drive, va aparea un meniu care va contine un item "Connect As..." ce va activa un dialog in care se vor putea introduce credentialele (username/parola) userului ale carui date se doresc accesate prin drive. Se vor putea realiza operatii de copiere din local in drive, si invers, si stergere a fisierelor din drive.

- Un serviciu web care are rolul de a verifica si gestiona orice request trimis de clienti catre server-ul FTP. Serviciul web va fi scris in ASP.NET/C#, va folosi pentru gestiunea utilizatorilor componenta ASP.NET Membership si o baza de date SQL Server. Baza de date va contine date despre utilizatori (ce cota maxima de spatiu are fiecare, cat spatiu utilizat are fiecare, username-ul, parola, etc.)

Note:

1. Transferurile de date nu se vor realiza de catre clienti prin intermediul serviciului web, ci direct cu serverul FTP. Serviciul web are doar rolul de a autoriza aceste transferuri de date prin verificarea datelor din request. Algoritmul este de genul urmator:

- Clientul formeaza un request pentru trimiterea la server-ul FTP
- Clientul trimite acest request impreuna cu credentialele sale (user/parola), fara datele propriu-zise ce urmeaza dupa request, la serviciul web pentru autorizare/semnare
- Serviciul web inspecteaza request-ul, determina daca datele accesate apartin userului care a trimis requestul (numele fisierlui ce se doreste a fi accesat incepe cu numele user-ului ? Depaseste userul cota daca face acest transfer ? Etc.) iar in caz afirmativ aproba requestul si il trimite inapoi la client.
- Clientul trimite request-ul impreuna cu datele, la serviciul FTP.

2. Serviciul FTP va stoca fisierele in mod liniar (nearborescent), cu un nume ce poate avea orice caractere. Organizarea de catre autor a fisierelor in contul FTP va fi de forma:

nume_utilizator[caracter separator] nivel_director_1 [caracter separator] nivel_director_2 [caracter separator]...[caracter separator]nume_fisier

adica in contul de FTP, fiecare fisier va avea un nume similar cu cel de mai sus.

Partea de client va avea 3 layere: primul va fi shell extension-ul. Acest layer va folosi un altul, care are rolul de a trimite request-urile la serviciul web pentru autorizare. Un al treilea layer va comunica propriu-zis cu serviciul FTP. Toate cele 3 layere vor fi dll-uri scrise in C++.

Pentru partea de server codul se va scrie in ASP.NET/c#.

4. Se pot folosi orice biblioteci Open-Source cu conditia ca acestea sa aiba una din urmatoarele licente: LGPL, MIT, Apache. Licenta GPL nu este acceptata.