wgs

Nume și descriere proiect

  • Nume: Web Geostatistics
  • Nume unix: webgeostatistic
  • Nume scurt: wgs

Web Geostatistics este o aplicație de desktop, free, open-source, care e capabilă să afișeze statistici despre utilizarea site-urilor web sau aplicațiilor, folosind un model 3D al planetei. Toate statisticile realizate sunt bazate pe locația geografică și timpul apariției evenimentelor. Rulează pe sitemele de operare Windows și Linux, deoarece se folosește de (toolkit-ul) Qt.

Categorie aplicație

  • gui
  • grafică 3D
  • vizualizare date
  • rețea
  • web
  • cross-platform

Obiective

Obiectivul final este ca un developer să poată vedea cu ușurință statistici simple și relevante despre utilizarea proiectului la care lucrează, sau ca un user să poată aceleași statistici din curiozitate. De asemenea, trebuie să existe posibilitatea ca orice fel de statistici cu evenimente care au locația pe tot globul să poată fi creeate.

Grup țintă

Studenți la Automatică și Calculatoare, sau oricine știe puțină programare.
Grupul țintă al proiectului sunt developerii.

Limbaje de programare/biblioteci/aplicații/framework-uri folosite

  • C++
  • Qt
  • OpenGL
  • PHP / MySQL
  • Subversion
  • CMake
  • Doxygen

Cerințe necesare

Pentru partea de aplicație C++:

  • C++ mediu
  • POO mediu
  • GUI design de bază
  • idee despre Qt, Gtk, sau alt toolkit

Pentru partea de web development:

  • PHP mediu
  • Baze de date MySQL mediu spre avansat

Cerințe recomandate

Pentru partea de aplicație C++:

  • C++ mediu spre avansat
  • POO mediu spre avansat
  • GUI design acceptabil
  • puțină experiență cu Qt, Gtk, sau alt toolkit

Pentru partea de web development:

  • PHP avansat
  • Baze de date MySQL avansat

Niște cunoștințe sau experiență în legătură cu API-ul Google ar fi extraordinar.

Cunoștințe/abilități dobândite

  • Lucru în echipă la un proiect open-source
  • Procesul de dezvoltare al unei aplicații open-source
  • Familiarizare cu lucrul cu o sursă mare
  • Cunoștințe despre avantajele și dezavantajele lui Qt
  • Dezvoltare GUI

Plan/roadmap pe termen scurt

  • Fixarea bug-uri de toate felurile, îmbunătățirea calității
  • Creerea sau actualizarea de documentație pe toate planurile (aplicație C++, site web, cod sursă, etc.)
  • Îmbunătățirea sistemului de cache local (cu fișiere binare, nu text + cache la statistici calculate, nu evenimente)
  • Eficientizare pentru îmbunătățirea scalabilității

Plan pe termen mediu (continuarea colaborării)

  • Îmbunătățirea suportului pentru baze de date pentru aplicația C++
  • Integrarea cu Google Analytics
  • Compilare și pachete pe arhitecturile cunoscute
  • Finalizarea proiectului

Draft arhitectură (componente principale)

  • Web Server HTTP + PHP + bază de date MySql (centralizează evenimentele)
  • Aplicație GUI Qt cross-platform (afișează statisticile)
  • Bibleotecă partajată (librărie) pentru aplicațiile care folosesc Web Geostatistics și preferă să nu dea HTTP request manual pentru raportarea evenimentelor

Website-ul sau aplicația utilizatorului trimite requesturi către serverul web pentru a înregistra evenimentele (utilizările).
Aplicația Web Geostatistics se poate conecta la serverul web, la o bază de date a utilizatorului, sau poate importa fișiere csv locale, iar apoi poate afișa statisticile. Grafica este realizată cu OpenGL, care folosește shadere GLSL. Componentele principale sunt widgetul pentru planeta și statisticile cu OpenGL, widgetul pentru graficele cu bare și widgetul pentru lista de module. Există și un wizard pentru adăugarea de module noi (un modul poate fi privit ca un website sau o aplicație a userului)

Resurse disponibile

  • Logo Stagii pe Bune