Portal Web Pentru Conferinta
Cuprins
CAP1. INTRODUCERE
1.1 Importanța promovării evenimentelor online
1.2 Importanța domeniului în care am ales tema
1.3 Obiective
CAP2. TEHNOLOGII UTILIZATE ÎN APLICAȚIE
2.1 HTML5
2.2 CSS
2.3 Baza de date ca și fișier XML
2.4 MYSQL
2.5 JAVASCRIPT
2.6 JQUERY
2.7 AJAX
2.8 PHP
2.9 Propel ORM
2.10 MODEL-VIEW-CONTROLLER (MVC)
2.11 FOUNDATION
CAP3. ASPECTE TEHNICE LEGATE DE IMPLEMENTAREA LUCRĂRII
3.1 Tipuri de useri
3.2 Evaluarea de tip peer-review
3.3 Aspecte legate de securitate
3.4 Organizarea aplicației-schema bloc
3.5 Baza de date
CAP4. MODUL DE STRUCTURARE A APLICAȚIEI
4.1 Descrierea rolului celor trei tipuri de useri în funcționarea aplicației
CAP5. CONCLUZII
BIBLIOGRAFIE
CAP1. INTRODUCERE
1.1 Importanța promovării evenimentelor online
Din mai multe motive, promovarea online este principala cheie în succesul unui eveniment. Promovarea are ca scop atragerea participanților, vizitatorilor sau ambele la un eveniment online. Sunt esențiale așadar eforturile multor oameni din întreaga lume de a organiza un anumit eveniment.
Promovarea online este de asemenea importantă pentru participanți din alte motive decât atragerea mulțimii într-o zi. Un eveniment bine promovat crește de asemenea și conștientizarea publică a acestora. Acesta este un motiv de ce evenimente online sunt atât de importante. http://www.leoisaac.com/evt/top090.htm
Există multe beneficii a promovării online. Un exemplu ar fi faptul că este permisă implementarea unor tehnici de creștere a traficului în portalul WEB de conferință.. Fără trafic nimeni nu se va uita la site-ul Web. Promovarea evenimentelor online permite ajungerea la o audiență globală. [1]
Importanța portalurilor web pentru conferință a crescut treptat în ultimii ani, lucru marcat în acest site web care oferă acces oricărei persoane ce dorește să fie invitată la conferințe pe internet referitoare la diverse teme din domeniul de Calculatoare.
Portalul web confera.sfat.ro dispune de o interfață ușor de utilizat, în care avem anumite categorii ce prezintă diferite teme în care se vor încadra articolele atașate pe platformă de către useri.
Conferințele sunt însoțite fiecare de secțiuni de comentarii ce permit userilor care participă la acestea să lase comentarii referitoare la articole, să discute în legătură cu acestea si să pună întrebări despre evenimentul respectiv.
Aspectele acestea vor reuși să stabilească o relație bazată pe comunicare interactivă, rapidă și stabilă între participanții la evenimente.
1.2 Importanța domeniului în care am ales tema
În cadrul temei am ales ca și domeniu cel de Calculatoare deoarece conferințele online au un statut special în comparație cu cele din alte domenii. În acest caz conferințele permit publicații cu un proces de peer-review în care lucrările sunt analizate de referenți pentru a vedea dacă corespund orientării categoriei necesare în care se doresc a fi încadrate și dacă respectă standardele de calitate editorială. Dacă nu se respectă acest lucru referenții vor comunica autorului modificările ce trebuie realizate, iar apoi aceștia se vor întoarce la aceiasi referenți pentru decizia finală. [2][3]
1.3 Obiective
O conferință online utilizează Internetul ca mijloc de transpunere. Acest lucru denotă faptul că participanții pot accesa conferința de oriunde din lume și pot face acest lucru oricând, folosind software-ul standard de browser. Participanții se pot conecta atâta timp cât doresc ei, după sau în timpul orelor de program. Ei trebuie să se înregistreze și vor primi o parolă standard pentru a avea drept de încărcare a anumitor lucrări în grupul de conferință din domeniul Calculatoare. Orice utilizator cu acces la Internet poate participa prin crearea unui cont, iar lucrările pot fi citite de oricine va accesa pagina de conferință.
O conferință online are mai multe avantaje:
este mai ieftină deoarece nu necesită deplasare și alte cheltuieli.
este mai convenabilă întrucât pagina poate fi accesată din orice colț al lumii unde aveți conexiune la Internet.
conferințele online au in general un număr mai mare de participanți.
consolidează cooperarea între parteneri și industrie;
asigură siguranța, reducerea costurilor precum și eficiența;
permite schimbul de informații la nivel internațional;
atrage și concentrează atenția pe oportunități oferite de acestea;
Urmând tradiția conferințelor, acest portal web se ocupă de toate aspectele legate de resurse și de gestionarea datelor, a lucrărilor, punând un accent vizibil pe evaluarea tehnologiilor WEB, de asemenea și de aspecte culturale și sociale. [4][5]
CAP2. TEHNOLOGII UTILIZATE ÎN APLICAȚIE
2.1 HTML5
HTML provine de la prescurtarea HyperText Markup Language și este un limbaj folosit în World Wide Web pentru a descrie hipertexte. Acesta conține de fapt elemente ce contribuie la construirea unor pagini WEB
HTML furnizează mijloacele prin care conținutul unui document poate fi adnotat cu diverse tipuri de metadate și indicații de redare pornind de la decorațiuni minore ale textului sau inserare de imagini la scripturi sofisticate și formulare. Aceste metadate pot include informații referitoare la titlul și autorul documentului, informații referitoare la modul de împărțire a documentulului în diferite segmente sau ce permit formarea hyperlink-urilor între documente.
Există editoare grafice spre exemplu Macromedia Dreamweaver, Adobe GoLive sau Microsoft FrontPage ce tratează paginile WEB într-un mod asemănător cu documentele Word. Ele generează de fapt cod HTML pentru conținutul paginii, un cod care de multe ori este fie prea încărcat fie de calitate proastă.
HTML este utilizat și în e-mail. Cele mai multe aplicații de e-mail au încorporat un editor HTML folosit în crearea e-mail-urilor precum și un motor ce prezintă aceste e-mail-uri. [6]
Sintaxa HTML5 este compatibilă cu HTML4 și XHTML.
Elementele ce au un singur tag cum ar fi META, BR, HR, INPUT, IMG se pot închide cu un singur tag <tag />, precum în XHTML.
Se pot folosi litere mici, sau /și litere mari, pentru numele tag-urilor și atribute.
În HTML5 se poate alege specificarea sau nu a atributului type in elementele <script> și <style>, acest lucru este aici opțional.
Div-urile sunt folosite aici pentru stil și design, nu mai sunt necesare pentru structură. HTML5 include mai multe elemente noi pentru structurare ce ajută la definirea și organizarea
părților din document.
Elementele folosite cel mai des în HTML5 sunt:
<header> – definește titluri. Se poate adăuga direct în <body>, în <article> sau <section>.
<footer> – este subsolul paginii sau al unui <section> sau <article>. Poate să conțină informații despre autor.
<section> – reprezintă o secțiune anume dintr-un document. Poate să conțină header, article, footer.
<nav> – reprezintă meniul de navigare în paginile website-ului.
<article> – folosit pentru definirea unui element independent din pagină și poate să conțină articole de știri, comentarii.
<aside> – folosit pentru a define o zonă laterală, cu conținut separat de cel din jurul lui, spre exemplu o publicitate.
<hgroup> – folosit pentru gruparea unui set de două sau mai multe elemente H1, H2, H3.
Browserul va afișa pe ecran conținutul documentului, mai puțin etichetele ce informează browserul cum să afișeze informațiile.
HTML5 are alte elemente în plus cum ar fi <video> sau <audio>.
Toate principalele browsere spre exemplu Chrome, Firefox, Opera adaugă noi caracteristici HTML5 la cele mai recente versiunile ale lor. [7]
2.2 CSS
CSS-ul este un limbaj standard pentru a formata elementele dintr-un document HTML.
Denumirea vine de la Cascating Style Sheets și este o tehnică modernă de stilizare a paginilor WEB.
Începand cu formatul și culoarea textului, a fundalului, până la poziționarea elementelor de pe o pagină WEB, totul este folosit în stiluri CSS.
CSS controlează grafica și aspectul elementelor din pagină: text, imagini, font, culori, așezarea lor în pagină.
La limbajul CSS înâlnim stiluri care conțin atribute de formatare aplicate asupra unui element din pagina sau un grup de elemente, sau pentru document întreg.
CSS conlucreaza cu HTML, extinde funționalitățile acestuia si îi redefinește etichetele.
În momentul în care se adaugă în fișierul HTML, vom scrie într-o etichetă <style> inclusă în cea de <head> a HTML-ului.
În CSS vom avea trei tipuri de obiecte CSS: selector, clasă și identificator.
Selectorul- redefinește modul în care se afișează conținutul etichetei HTML. Acesta reprezintă partea ce indică tipul de etichetă.
Clasa- este un obiect ce se poate aplica la orice etichetă HTML. Orice clasă se crează în interiorul etichetei HTML pentru a se putea defini in cod CSS. Această creare se face prin specificarea cuvântului class respectiv numele clasei.
Identificatorul- obiectele de tip ID se aseamănă cu clasele. Se pot aplica la orice etichetă HTML, însă numele unui identificator se atribuie la o singura eticheta HTML din pagină. Pentru o alta etichetă vom avea un ID cu nume diferit.
Se crează la fel ca și clasa în interiorul etichetei HTML prin specificarea cuvântului id și numele clasei.
CSS este destinat în primul rând pentru a permite separarea conținutului documentului care este scris în HTML sau în alt limbaj de marcare asemănător de prezentarea documentului, inclusiv elemente cum ar fi aspectul, culorile și fonturile.
Această separare poate îmbunătăți accesibilitatea conținutului, oferind o mai mare flexibilitate și control în specificarea caracteristicilor de prezentare, permite mai multor pagini să partajeze o singură formatare, reducând complexitatea și repetiția în cadrul conținutului structural.
CSS poate permite, de asemenea, ca aceeași pagină de marcare să fie prezentată în diferite stiluri de redare pe ecran desktop, în pagini printate, pe dispozitive tactile sau telefoane mobile.
CSS poate fi de asemenea folosit pentru a permite paginii web să fie afișată
în mod diferit, în funcție de dimensiunea ecranului sau dispozitiv. [32]
2.3 Baza de date ca și fișier XML
XML provine de la EXtensible Markup Language (meta-limbaj de marcare).
XML este un limbaj de marcare asemănător cu HTML folosit pentru descrierea datelor.
In XML se definesc propriile etichete.
Fișierul XML descrie tabele, coloane și relații. Sintaxa schemei urmărește structura bazei de date actuală.
Fișierele XML se folosesc pentru stocarea datelor din baze de date SQL, format folosit atunci când se dorește utilizarea datelor de catre mai multi agenți.
Atribute pentru baze de date
defaultIdMethod setează medota id default pentru autoincrementarea coloanelor.
package specifică pachetul pentru clasele generate în subdirectoare.
Atribute pentru coloane
name-se referă la numele coloanei introduse
type- se referă la tipul coloanei din baza de date
primaryKey- specifică câmpul ce va fi cheie primară în acel tabel; cheia primară nu se repetă
autoIncrement- coloana se va adăuga singură; se atribuie doar unei singure coloane într-o tabelă; acest atribut va fi aplicat doar tipurilor întregi sau reale
required
skipSql- nu permite generarea sql pentru un tabel specificat
defaultValue- specifică valoarea default a câmpului respectiv dacă coloana nu va fi adăugată
Atribute Foreing Key- este o coloană sau un grup de coloane dintr-un table ce oferă o legătură între datele din 2 tabele: skipSql- nu permite generarea sql pentru un tabel specificat
Tipuri de text: CHAR, VARCHAR, LONGVARCHAR,CLOB.
LONGVARCHAR și CLOB nu necesită declararea dimensiunii și se pot folosi pentru șiruri de caractere foarte mari
Tipuri numerice: NUMERIC, ZECIMAL, TINYINT, SMALLINT, INTEGER, BIGINT, REAL, FLOAT, DOUBLE.
Tipuri binare: BINARY, VARBINARY, LONGVARBINARY, BLOB.
Tipuri temporale(data/timp): DATE, TIME, TIMESTAMP.
Alte tipuri ce pot fi: BOOLEAN, ENUM, OBJECT, ARRAY. [9]
2.4 MYSQL
MySQL este un sistem de gestiune a bazelor de date funcțional independent.
Exemple de operații cu bazele de date:
Tipuri de date folosite în MySQL:
2.5 JAVASCRIPT
JavaScript este cunoscut ca fiind un limbaj de programare utilizat pentru crearea paginilor WEB și se folosește cel mai des în scriptarea acestora. Aceste scripturi rezultate se pot îngloba de către programatorii WEB în paginile HTML referitoare la date introduse de useri sau crearea de meniuri.
Javascript are scripturi introduse in pagina HTML ce vor fi executate de browser. Javascript poate fi considerat o unealtă foarte bună dacă se dorește controlul paginilor în funcție de dată, oră, sistem de operare sau browser, crearea unor site-uri interactive ce comunică cu vizitatorii, acestea fiind cateva dintre posibilitățile oferite de acest limbaj. [11]
TAG-URILE <script> și </script> delimitează codul JavaScript.
Comanda document.write() are rolul de a scrie ceva într-un document, în cazul acesta document HTML. [12]
2.6 JQUERY
Jquery este o platformă JAVAScript, o librărie de funcții pentru Ajax ce permit lucrul cu elemente HTML respectiv CSS.
Librăria va trebui să fie inclusă in eticheta <head> . [13]
Beneficii
Folosește o sintaxă simplă.
Înlocuiește mai multe coduri JavaScript cu o metodă ce se apelează și ce reprezintă un singur cod jQuery. Permite de fapt manipularea acțiunilor din site.
Platforma jQuery are o arhitectură de tip framework care permite extinderea foarte ușoară și fără probleme.
Dacă am face o comparație cu Adobe Flash, jQuery implică utilizarea unor coduri sub formă de text, de aceea este foarte ușor de indexat.
Prin urmare, jQuery ajută la obținerea unor rezultate mai bune și va crește rangul websiteului tău.
Jquery este o librărie JavaScript ce face ca acesta sa fie mai ușor de utilizat pe site.
Cele mai multe companii de pe WEB ce folosesc jQuery sunt Google, Microsoft, IBM, Netflix. [14]
Sintaxa jQUERY
Sintaxa jQuery este creată pentru a efectua acțiuni cu elemente HTML.
Forma generală este:
$(selector).actiune()
Un semn dolar pentru definirea codului jQuery
Un (selector) ce află elementele HTML
jQuery action() ce se va executa elemente [15]
2.7 AJAX
Numele provine de la Asynchronous JavaScript And XML, și ajută la crearea rapidă a paginilor WEB sau părți ale acesteia.
Ajax are rolul de a executa cereri fără a reîncarcarea pagina sau a deschide alta pagină.
jQuery are mai multe metode pentru AJAX. Principala prin care execută cereri de încărcare a datelor de la server este metoda load().
Sintaxa metodei load() este următoarea:
$('element').load(url, data, complet)
url- adresa URL la care se trimite cererea.
data- un șir de date trimise la scriptul de pe server.
complet- după ce se trimite cererea se execută această funcție. [16]
2.8 PHP
Denumirea de PHP provine de la Hypertext Preprocessor și este un limbaj open-source.
Folosit adesea in dezvoltarea aplicațiilor Web și se poate integra de asemenea în HTML. Sintaxa PHP provine din limbajul de programare C, Java și se învață foarte ușor.
Are ca și obiectiv crearea într-un mod rapid de pagini WEB generate dinamic de către programatorii WEB. [17]
Limbajul PHP preia date din fișierul de date .xml și le include într-o pagină HTML pentru a le afișa în browser. [18]
Utilizare:
Una din cele mai mari facilități ale limbajului este oferit de conlucrarea cu baze de date începănd cu MySQL, apoi MS Sql Server, PostgreSQL, sau DB2.
Ca și limbaj de programare PHP ruleaza pe sisteme de operare cum ar fi UNIX ,Windows, sau Mac OS X. Codul PHP este interpretat de server după care generează un cod HTML ce poate fi vizualizat de catre user. Browserul va primi doar codul HTML. [19]
În locul unei mulțimi de comenzi pentru a afișa HTML, paginile PHP vor conține HTML cu cod-sursă încorporat, afișând un mesaj cum ar fi spre exemplu "Salut, sunt un script PHP.". Acest cod-sursă va fi încorporat între instrucțiunile de procesare de început și de sfârșit speciale <?php și ?>, ce permit intrarea și ieșirea din "modul PHP".
PHP diferă de un JavaScript prin faptul că are codul executat pe server, generând HTML care este apoi trimis către client. Acesta primește rezultatele rulării scriptului respectiv, însă fără a cunoaște codul-sursă ce stă la bază. [17]
Conținutul, adică codul-sursă PHP este format din instrucțiuni. PHP generează de fapt cod HTML, așadar instrucțiunile sunt cele de afișare. Acestea se scriu între acolade { }.
Instructiunile se termină de obicei cu punct si virgulă ( ; ). Dacă acesta lipsește atunci se va genera o eroare.
Instrucțiunile echo, print, printf
În cazul în care conținutul ce se afișează este un text, atunci vom folosi instrucțiuni de afișare print, echo și printf. Acestea trei se folosesc cel mai des și mai ușor. Instrucțiunile print și echo fac același lucru, însă printf se folosește mai rar deoarece are o sintaxă puțin mai grea.
Codul HTML se poate combina cu cel PHP, lucru des întâlnit astfel încât în interiorul unui script HTML putem avem unul PHP cu etichetele corespunzătoare PHP, dar fișierul final va fi in format PHP. [20]
Variabilele
Aceste mărimi pot avea valori distincte. O variabilă are în componența numelui simbolul $, după care urmează o literă sau caracter. După simbol nu putem avea niciodată o cifră. Restul caracterelor ce compun variabila pot fi litere, cifre sau liniuțe.
În limbajul de programare PHP, sunt considerate litere caracterele între 'a' și 'z', cele între 'A' și 'Z', și cele cu codul ASCII între 127 și 255. Limbajul PHP diferențiază literele mari de cele mici. [21]
Clase și obiecte în PHP- Constructori
Un constructor este o metodă, adică o funcție a unei clase ce se apelează automat când se creează o nouă instanță a clasei folosind operatorul new. Aceștia pot avea opțional argumente. [22]
PHPMailer
PHP oferă o funcție e-mail simplă și ușoară de utilizat. Din păcate, ca o mulțime de lucruri în PHP, simplitatea poate fi înșelătoare și folosind-o la valoarea nominală poate duce la
probleme serioase de securitate.
Email-ul este un set de protocoale ce are o istorie mai grea decât PHP.
PHPMailer este o bibliotecă open-source populară și mai în vârstă, având o interfață ușoară pentru a trimite e-mail-uri în siguranță.
Validarea adresei de email se face utilizând funcția filter_var.
Aplicația WEB are sarcina de a verifica dacă un utilizator a introdus o adresă de email validă sau nu. Cea mai ușoară metodă în acest caz o reprezintă utilizarea funcției PHP filter_var built-in, funcție ce poate valida adrese de email. [29]
2.9 Propel ORM
Maparea obiectual-relațională reprezintă o tehnică utilizată în limbaje de programare atunci când este vorba despre baze de date pentru traducerea tipurilor de date incompatibile în baze de date relaționale. Acest lucru permite să avem o "bază de date obiect virtuală," folosită din limbajul de programare. Există o mulțime de pachete gratuite ce permit acest lucru, însă dezvoltatorii au ales de multe ori să creeze propriul lor ORM. [30]
Propel este un framework ce are la bază maparea obiectelor la tabele corespunzătoare dintr-o baza de date. Acesta foloseste fisiere XML in care se reprezintă tabelele din baza de date și oferă beneficiul de a genera automat clasele aferente acestora.
Când construim un proiect Propel vom începe cu prima etapă “Build”. În acest timp un dezvoltator va descrie structura DataModel în fișierul XML denumit ”schema”.
Cu ajutorul acestei scheme Propel va genera clase de tip PHP denumite Model Classes ce au la baza limbajul de programare orientat pe obiecte. Aceste clase model reprezintă o interfață pentru manipularea datelor din baza de date în Propel ORM.
<?php
/**
*
*/
class Book extends BaseBook
{
}
Propel ORM este de fapt o interfață ce leagă codul de baza de date.
Instalarea Propel
Instalarea Propel se poate face in 2 moduri: via Composer sau via Git. Metoda recomandată este via Composer.
Așadar va trebui să creăm un fișier nou composer.json ce se va situa în directorul proiectului propel. Acesta va avea următoarea secvență:
{
"require": {
"phing/phing": "~2.4@dev"
}
}
Odată ce avem fisierul composer.json într-un director, putem spune că acel director este un pachet. Pentru a face ca pachetul să fie instalabil, trebuie să primească un nume.
"name": "propel/propel1",
"require": {
"php": ">=5.2.4",
"phing/phing": "~2.4"
}
Numele proiectului este astfel propel/propel1, unde propel este numele vendor-ului, iar "php": ">=5.2.4" face referire la versiunea de PHP folosită, 5.2.4. [23]
Apoi este necesară downloadarea Composer-ului astfel încât vom deschide un terminal și vom scrie: $ wget http://getcomposer.org/composer.phar, iar apoi urmează instalarea. Aceasta se poate face folosind installer-ul Composer-Setup.exe ce va instala cea mai recentă versiune de Composer sau se poate instala manual într-un terminal în care vom scrie:
$ curl -s http://getcomposer.org/installer
Pentru finalizarea instalării vom scrie în terminal:
$ php composer.phar install [26]
Atunci când construim SQL și OM în Propel->Generator->lib->builder, generatorul va valida automat fișierul schema.xml folosind un fișier XSD în Propel->Generator-> Resources.
2.10 MODEL-VIEW-CONTROLLER (MVC)
Model-view-controller este un concept foarte cunoscut în programarea WEB, definit ca un model arhitectural ce separă logica business-ului de interfața utilizator, rezultând o aplicație ce are un aspect vizual și nivele inferioare ale regulilor de business ce se pot modifica mai ușor.
Arhitectura unui MVC
Model-ul
Partea aceasta are rolul de a manipula operațiunile operațiuni logice și de utilizare a informației pentru a avea o formă ușor de ințeles.
Acesta raspunde la cereri despre starea sistemului, de schimbare și anunță utilizatorul atunci cînd au loc schimbări pentru ca să poată reacționa.
View-ul
Face referire la reprezentarea grafică( ultima formă a datelor).
Interfața grafica interacționează cu utilizatorul final și evidențiază informația obținută pînă când ajunge la controlator.
View este un template ce generează în mod dinamic HTML.
Controller-ul
Acesta permite accesul la aplicație.
Poate fi prezentat sub formă de fișiere, script-uri sau programe, respectiv orice tip de informație pe care o interfață o poate permite.
Controlează cele două clase de obiecte model și view ce vor executa operații pe baza input-ului de la user.
Cu ajutorul celor trei putem manipula date ce se relaționează cu acestea.
Daca dorim o aplicație WEB simplă vom avea elementele:
O bază (MVC):
Controlator – manipulează fișiere, clase, metode, funcții.
Model – seamănă cu un script dintr-un server ce este regrupat sub un model reutilizabil.
Viziune –face referire la includerea unui fișier in aplicație.
Un sistem
Router – cu acesta putem împărți cerințele noastre
Incărcător (Loader) [27]
2.11 FOUNDATION
Foundation permite crearea de aplicații WEB responsive, făcând referire la faptul că acestea pot rula pe orice tip de dispozitiv. Foundation conține în esență foarte multe moduri de structurare a paginilor WEB.
Tot ce necesită este downloadarea de pe platforma de ZURB FOUNDATION.
După downloadare, se extrage folderul și se deschide documentul HTML index. Acesta conține deja structura de cod ce ține de FOUNDATION precum și in celelalte formate cum ar fi CSS-UL spre exemplu. Ștergem tot ce va fi afișat dupa TAG-ul <body> până la libraria jQuery din footer-ul documentului. Trebuie adăugat între TAG-urile <head> și </head> următorul link <link rel="stylesheet"href="css/foundation.css" />
Apoi se va adăuga conținutul HTML necesar precum și modificarea de stiluri și fonturi in foundation.css. [28]
CAP3. ASPECTE TEHNICE LEGATE DE IMPLEMENTAREA LUCRĂRII
3.1 Tipuri de useri
Participanții sunt grupați pe trei roluri: admin, reviewer și user.
Admin- este cel care gestionează toată baza de date. Pentru a permite logarea în contul de administrator voi avea următoarea adresă URL: www.adminconfera.sfat.ro .
Userul- este de fapt acel participant care se înregistrează pe pagină în caz că nu are un cont și are opțiunile de a bifa dacă dorește să scrie articole sau să devină reviewer.
Reviewer- acesta are rolul de a-și da sau nu acceptul referitor la lucrarea trimisă de către alți utilizatori pentru evaluare în format pdf.
3.2 Evaluarea de tip peer-review
Evaluarea de tip peer review este o formă de evaluare ce vizează sprijinirea portalului de conferință evaluat referitor la asigurarea respectiv dezvoltarea performanțelor acestuia.
Un grup de evaluatori va fi invitat să evalueze lucrări din cadrul conferinței, urmărind performanța întregului domeniu de Calculatoare.
Evaluatorii sunt acele persoane care lucrează într-un mediu asemănător și au cunostințele profesionale necesare pentru a evalua acest domeniu.
Evaluarea are ca și scop identificarea punctelor tari și slabe in evaluarea performanței.
Analizând și luând concluzii unde este necesar, grupul de evaluatori peer review va elabora în cazul unor modificări necesare recomandări pentru a îmbunătăți lucrarea. [24]
3.3 Aspecte legate de securitate
Pentru autentificare am ales să folosesc algoritmul de criptare a parolei MD5 ( Message Digest Algorithm 5) care este o funcție de criptare de tipul hash unidirectional, ce va returna o valoare fixă și va avea o lungime totală de 128 biți.
Un algoritm de criptare MD5 este exprimat printr-un șir în format hexadecimal cu o lungime de aproximativ 32 de caractere. [25]
3.4 Organizarea aplicației-schema bloc
Partea accesibilă de către useri
Userii odată ajunși pe pagina principală au posiblitatea de a accesa următoarele secțiuni: Calculatoare (ce cuprinde lucrările acceptate de review-eri); Parteneri; Despre noi; Contact; Login (ce cuprinde secțiuni cum ar fi Profil (cuprinde date despre utilizator), Articole (cuprinde articolele create și poate fi opțional), Review (cuprinde tabela cu review-urile primite și poate fi opțional) ).
Partea accesibilă doar de către administrator
Administratorul accesează pagina în care i se cere sa se conecteze și poate accesa următoarele secțiuni: Evenimente (ce cuprinde topicurile la care participă utilizatorii); Utilizatori (ce cuprinde baza de date a utilizatorilor); Articole (ce cuprinde totalitatea articolelor create); Deconectare.
3.5 Baza de date
O bază de date este de fapt o modalitate de stocare a informațiilor respectiv a datelor pe un un dispozitiv de stocare și oferă posibilitatea de extindere și regăsire rapidă a acestora.
O bază de date stochează aceste date în tabele ce vor avea un nume propriu la fel ca și coloanele, iar fiecare coloană are propriile sale proprietăți.
https://ro.wikipedia.org/wiki/Baz%C4%83_de_date
Cu ajutorul programului MQSQL Workbench am reprezentat stocarea datelor din baza de date în tabele având următoarele proprietăți:
CAP4. MODUL DE STRUCTURARE A APLICAȚIEI
Am denumit acest portal web de conferință ‘CONFERA’, oferind posibilitatea de încărcare a lucrărilor în domeniul de competență Calculatoare pe diferite topicuri, precum și posibilitatea de a fi citite de oricine și de oriunde în lume.
4.1 Descrierea rolului celor trei tipuri de useri în funcționarea aplicației
1.Admin
Adminstratorul se va conecta cu email-ul și o parolă după care poate să modifice numele și adresa de email a userilor dând click pe Utilizatori, Email respectiv Modifică date.
În admin vom mai avea inclusă de asemenea și opțiunea de bifare Admin, în cazul în care se dorește crearea mai multor administratori și cea de Valid, care afirmă dacă userul este valid sau nu pentru a avea activitate la crearea de articole.
Dacă se dorește crearea unui nou eveniment, unui nou topic din domeniul de competențe Calculatoare, in adminconfera.sfat.ro unde adminul gestionează afacerea vom selecta Evenimente și vom adăuga un nou eveniment în care se notează evenimentul împreună cu data, luna și ziua.
În cadrul meniului din admin avem un buton Articole ce conține toate articolele postate de utilizatori. Acestea pot fi vizualizate dând click pe unul dintre ID-uri și se va afișa astfel o listă cu raspunsurile reviewer-ilor (dacă este aprobat va apărea formularul de review, iar dacă va fi respins va fi afișată motivația). Avem așadar 2 butoane: Modfică și PDF. Modifcă permite modifcarea titlului și a descrierii, iar PDF vizualizarea lucrării. Vom mai avea de asemenea opțiunea de a bifa dacă lucrarea este activă sau nu.
Dacă la crearea unui cont nou utilizatorul va bifa opțiunea ‘Doresc sa devin reviewer’ și/sau
‘Doresc să scriu articole’, administratorul va primi un email cu mesajul prin care va fi înștiințat de acest lucru și va trebui să bifeze aceste opțiuni in baza de date.
2. User
Pentru a avea posibilitatea de încărcare a lucrărilor, fiecare user va trebui să se logheze pe această pagină. Dacă acesta nu are un cont, este necesară crearea unuia accesând butonul CREAZA CONT NOU. În afara detaliilor legate de utilizatori, mai există și posibilitatea de bifare a două cerințe. Dacă un user bifează opțiunea ‘Doresc sa devin reviewer’ va apărea în meniul acestuia încă un buton numit ‘Review’, iar dacă bifează și opțiunea ‘Doresc să scriu articole’ va apărea în meniu butonul ’Articole’.
În momentul în care se creează un cont nou, userul respectiv va primi un email prin care i se va menționa confirmarea contului nou creat împreună cu linkul de validare a acestuia.
Utilizatorul are dreptul să schimbe parola accesând meniul Profil unde o va putea modifica împreună cu alte date personale. Pentru finalizare va da click pe butonul ‚Salvează modificările’.
Butonul Articole conține totalitatea articolelor create de utilizator și permite crearea nouă a acestora.
Pagina afișează titlul lucrării și mica descriere a acesteia, împreună cu două butoane: Modifică care permite modificarea titlului și a descrierii, iar Vizualizare ce permite vizualizarea lucrarii în format pdf, însă cu condiția ca aceasta să fie aprobată în urma evaluării de către minim 2 revieweri. .
Pentru a crea un articol vom da click pe ’Articole’ apoi pe ‘Adaugă articol nou’. Vom adăuga titlu, tipul de eveniment și o mică descriere a evenimentului.
În pagina de conferință vom încărca apoi o lucrare de tip pdf și vom salva apoi articolul. Pentru a putea fi afișate în Calculatoare necesită aprobarea a 2 revieweri. Inițial se permite trimiterea invitațiilor pentru aprobare către 2 revieweri. În momentul în care se trimit aceste invitații admin-ul va primi pe email următorul mesaj:
Aveti o invitatie de la utilizatorul (nume), pentru a face un review la articolul (titlul articolului).
.
3. Reviewer-ul va primi de asemenea un mail prin care va fi invitat să facă un review la un anumit articol.
Reviewer-ul se va conecta apoi pentru a vizualiza lucrarea dând click pe Review unde se va afișa un tabel cu toate invitațiile primite de la utilizatori. Aceasta cuprinde: data în care a fost trimisă invitația, numele autorului, starea( dacă lucrarea este în așteptare, a fost respinsă sau aprobată), titlul lucrării precum și Acțiuni (Respinge/Aprobă lucrarea în funcție de corectitudinea acesteia).
Dacă acesta sesizează că există anumite greșeli în conținutul lucrării, va da click pe respinge și va completa un câmp cu anumite observații pe care le va trimite utilizatorului.
Dacă reviewer-ul consideră că articolul are conținutul necesar pentru a putea fi publicat va aproba această invitație dând click pe Aprobă și va completa un formular de review peer-to-peer în care va da anumite note și va adăuga comentarii opțional după care va trimite acest formular.
Dacă un reviewer acceptă lucrarea iar altul nu, userul va trebui revizuiască greșelile menționate de reviewer-ul care a respins lucrarea și să mai trimită o dată invitație către oricare reviewer.
În contul userului ce a trimis lucrarea de evaluat va fi afișată tabela cu reviewerii invitați ce va conține numele reviewer-ului, data de trimitere a invitației și statusul(așteptare, respins sau aprobat). După respingere se va afișa și motivația corespunzătoare.
Dacă și acesta refuză lucrarea, userul nu mai poate cerere o a patra părere. În caz contrar, acesta va avea aprobarea a 2 revieweri iar lucrarea va fi automat încărcată în domeniul Calculatoare.
În meniul Calculatoare se află toate lucrările și se precizează titlul lucrării, apoi numele utilizatorului care a încărcat lucrarea urmat de numele evenimentului la care participă, iar în final o mică descriere a lucrării.
Parteneri
Avem prezentată în această secțiune parteneri viitori cu care se dorește o colaborare.
CAP5. CONCLUZII
În urma realizării acestei aplicații am dovedit că stăpânesc tehnologiile folosite pentru dezvoltarea aplicațiilor WEB precum și gestiunea și mentenanța website-urilor de conferință.
Posibilități de extensie a aplicației
Utilizatorii contribuie semnificativ la succesul conferinței online. Am stabilit obiective ambițioase pentru portalul web de conferință, iar realizarea lor este o provocare și este oferită constant posibilitatea de autoperfecționare. Organizațiile globale au posibilitatea de a-și manifesta creativitatea și de a pune în practică soluții noi privind dezvoltarea acestei aplicații, având totodată posibilitatea de a-și îmbunătăți performanțele personale.
Interacțiunea cu parteneri respectiv utilizatori internaționali oferă tuturor șansa de a face un schimb de experiență, ce are la bază eficiența.
În funcție de abilitățile și potențialul utilizatorilor, portalul web pentru conferință prezintă șansa de dezvoltare în alte domenii, respectiv în diverse țări. [31]
Pentru dezvoltări ulterioare putem lua în considerare următoarele aspecte:
evidențierea importanței cunoașterii conceptului de conferință online și înțelegerea modalităților de valorificare a acesteia pentru a obține trafic;
crearea unui punct de pornire, a unei campanii de promovare a portalului WEB pentru a putea obține permanent performanțe în administrarea acestuia;
importanța de a identifica nevoi de perfecționare pentru vizitatori;
BIBLIOGRAFIE
http://www.internetwebportal.com/SEO/General/991
http://academia.stackexchange.com/questions/40783/is-the-status-of-conference-publications-in-computer-science-really-absolutely-u
http://edituralumen.ro/regulament-editorial/procesul-de-peer-review/
http://www.online-conference.net/what.htm
http://congrexprojects.com/2015-events/trismac2015/themes-objectives
http://www.marplo.net/html/introducere.html
http://www.marplo.net/html/tutorial-html5.html
http://www.marplo.net/curs_css/
http://propelorm.org/Propel/reference/schema.html
http://www.seap.usv.ro/~valeriul/lupu/mysql.doc
http://etutoriale.ro/articles/1771/1/Tutorial-complet-JavaScript-%28prima-parte%29/
http://www.cs.ucv.ro/staff/dtusaliu/dar/lab/javascript/part1.htm
http://www.tutorialeweb.net/javascript/jquery.php
https://nevo.ro/blog/totul-despre-jquery-renunta-la-javascript-pentru-totdeauna-
http://ro.pdfsb.net/readonline/5a6c464164513938566e463044483574566b593d
http://www.marplo.net/javascript/jquery-ajax-load-js
https://secure.php.net/manual/ro/intro-whatis.php
http://www.marplo.net/php-mysql/xml.html
https://ro.wikipedia.org/wiki/PHP
http://www.php.punctsivirgula.ro/basics/
http://www.php.punctsivirgula.ro/variabile/
http://www.marplo.net/php-mysql/oop-clase-obiecte-constructor.html
http://propelorm.org/documentation/02-buildtime.html
https://megahost.ro/blog/terminologie-in-hosting-algoritm-de-criptare-md5.html
https://getcomposer.org/doc
https://ro.wikipedia.org/wiki/Model-view-controller
http://www.creativebloq.com/web-design/build-responsive-sites-foundation-11513848
Alex Cabal (2012): PHP Best Practices
Jonathan H Wage, Roman Borschel, and Guilherme Blanco (2009): Doctrine
ORM for PHP
http://tzmo.ro/ro_RO/content/posibilitati-de-dezvoltare
http://students.info.uaic.ro/~dordorut.calcai/Bookmark_manager.pdf
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Portal Web Pentru Conferinta (ID: 150136)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
