Sunteți pe pagina 1din 35

ACADEMIA DE STUDII ECONOMICE DIN BUCUREŞTI

Facultatea de Cibernetică, Statistică și Informatică Economică

Programul de licenţă 2019

LUCRARE DE LICENTA

Conducător ştiinţific:

Lect. univ. dr. Codrin NISIOIU

Autor:

Laurențiu PARTAS
Bucureşti, 2019

ACADEMIA DE STUDII ECONOMICE DIN BUCUREŞTI

Facultatea de Cibernetică, Statistică și Informatică Economică

Programul de licenţă 2019

Sistem informatic de gestiune a


fluxului de persoane dintr-o anumita
zona

Conducător ştiinţific:

Lect. univ. dr. Codrin NISIOIU

Autor:

Laurențiu PARTAS

2
Bucureşti, 2019

3
CUPRINS

1. INTRODUCERE
1.1. Ce este sistemul de numărare al oamenilor
1.2. Oportunitatea alegerii temei
1.3. Scopul si obiectivele temei
1.4. Justificarea alegerii temei
2. Prezentarea sistemului informatic
2.1. Descrierea generală a sistemului informatic
2.2. Specificarea cerințelor
2.2.1.Diagrama cazurilor generale de utilizare
2.2.2.Descrierea textuală a cazului de utilizare
2.2.3.Diagrama de stare
2.2.4.Diagrame de interacțiune
3. PROIECTAREA SISTEMULUI INFORMATIC
3.1. Proiectarea diagrama de clase
3.2. Proiectarea diagramei bazei de date
3.3. Proiectarea diagramei interfeței utilizator
4. IMPLEMENTAREA SISTEMULUI INFORMATIC
4.1. Tehnologii utilizate în implementarea aplicatiei informatice
4.1.1.HTML
4.1.2.СSS
4.1.3.JavaScript
4.1.4.JQuery
4.1.5.Bootstrap
4.1.6.PHP
4.1.7.Symfony
4.1.8.Twig
4.1.9.MySQL
4.1.10. Doctrine
4.2. Prezentarea pe scurt a funcționalității sistemului
5. Concluzii

4
1. INTRODUCERE

1.1. Ce este sistemul de numărare al oamenilor?


Sistemul de numărare al oamenilor reprezinta pur și simplu măsurarea traficului vizitatorilor care
circulă în interiorul și în jurul magazinelor de vânzare cu amănuntul, mall-urilor, locurilor sportive, sălilor
mari, biblioteci publice sau oriunde exista potențialii clienți. Numărarea traficului vizitatorilor contribuie
la sporirea si maximizarea eficienței angajaților, a investitiilor și a potențialului de vânzări al unei
companii.

Sistemul de numărare al oamenilor nu se limitează doar la punctul de intrare / ieșire dintr-un


magazin, ci are o gamă largă de aplicații care furnizează informații conducerii cu privire la volumul și
fluxul de persoane dintr-o locație.

Acest sistem a devenit popular datorită importanței sale în lumea afacerilor, si desi s-au găsit mai
multe modele distincte a sistemelor de numărare, cum ar fi sistemul de numărare a vehiculelor și
clădirilor (mall-uri, hoteluri, galerii etc.), aceste sisteme folosesc diferite tehnologii chiar dacă au același
scop. Unele depind de senzori foto pentru numărarea directă, altele folosesc senzori inerți sau senzori
termici. De asemenea, există sisteme care utilizează tehnici wireless pentru transferul de date, iar altele
folosesc tehnologia prin cablu. Companiile care produc sisteme de numărare aleg metoda potrivită pentru
a construi designul potrivit potențialului clientilor care solicita un astfel de sistem.

Această tehnologie permite măsurarea, analizarea și raportarea traficului clienților la un preț


accesibil, tehnologie care inainte nu se regasea. Precizia, fiabilitatea și înțelegerea factorilor care
afectează numărarea prin utilizarea noilor tehnologii sunt bine cunoscute in zilele noastre, astfel ca un
sistem de acest tip nu mai este o enigma pentru producatori.

1.2 Oportunitatile alegerii temei

Numărarea persoanelor în multiple medii de afaceri este necesară din multe puncta de vedere, astfel
ca un sistem de acest tip poate să evalueze și să genereze rezultate utile in diverse analize. Chiar și astăzi,
o metodă principală de numărare a traficului implică angajarea de auditori umani pentru a sta și a potrivi
manual numărul de vizitatori care trec printr-o anumită locație. Dar colectarea datelor bazate pe factorul
uman implica o mare cheltuială. În consecință, măsurarea continua a traficului a fost prohibitivă pentru
majoritatea comercianților cu amănuntul. Acest lucru nu mai este cazul in ziua de azi.

În comunitatea globală de astăzi, lucrurile se schimbă în mod constant, oamenii sunt în continua
mișcare, tehnologia avansează iar comportamentele umane diferă de la o zi la alta. Deoarece multe
organizații și mulți manageri doresc să-și evalueze activitatea făcând comparații și statistici privind
5
numărul de persoane care vizitează centrele lor și care sunt interesate de produsele lor, sa născut Sistemul
People Counting.

Contorul de persoane permite managerilor să înțeleagă și să anticipeze comportamentele oamenilor,


indiferent dacă este vorba de alocarea de personal suplimentar pentru a acomoda traficul la ore de vârf sau
dacă trebuie să schimbe serviciile pe care le oferă clientilor, ba mai mult acest tip de sisteme ajuta
managerii sa observe dacă campania lor publicitară a avut succes sau nu, astfel incat sa stie ce ce procese
au nevoie de imbunatatiri si ce procese aduc rezultate potrivite strategiilor pe care acerstia le dezvolta.

Sistemul de numarare a persoanelor poate oferi o perspectivă unică asupra comportamentului uman.
În prezent, unele dintre industriile care utilizează soluțiile de numărare a persoanelor includ:

- Magazine și lanțuri de magazine;


- Centre comerciale de mici si mari dimensiuni;
- Colegii nationale și universități;
- Biblioteci de stat și parcuri de agreement;
- Evenimente și expoziții, inclusiv târguri și evenimente sportive;
- Muzee și galerii de artă;
- Situri turistice și istorice;
- Terminale de transport;
- Săli mari pentru evenimente de ocazie;

Aproape fiecare loc sau entitate poate avea nevoie de informații de acest tip și pot fi utilizate pentru
măsurarea volumului, timpului si a direcției traficului de persoane.

Multe țări si medii de lucru depind în zilele noastre de sistemul de numărare a populației în diferite
aplicații. În aceasta lucrare vom vorbi despre sistemul de numărare a oamenilor, despre utilizarea,
importanța, tipurile și sectoarele de activitate din intreaga lume care folosesc acest sistem.

6
1.3 Scopul si obiectivele temei

“Nu poti controla ceea ce nu poti masura” (p. 3. Tom DeMarco)

Expresia "există putere în număre" este adevărată din multe puncte de vedere, acest lucru
fiind valabil mai ales pentru un proprietar de afaceri. Știind de cât personal este nevoie pentru un
magazin, restaurant sau orice alt tip de afacere unde clientii joaca un rol important, un sistem de
numarare persoane ar fi un factor-cheie în evaluarea performanței unei afacerii, mai ales ca ar
avea un rol important în crearea de previziuni privind veniturile și în determinarea si obtinerea
celor mai eficiente tehnici de marketing.

Acest proiect este important și va fi foarte util pentru utilizatorii săi datorita următoarelor aspecte:

- In cazul companiilor de transport public din cadrul administratiilor locale dintr-un oras,
cunoscand numarul de calatori care circula zilnic cu retelele de transport, acestea pot genera
imbunatatiri ale serviciilor pe care le pun la dispozitia calatorilor, intrucat in baza rapoartelor cu
privire la numarul de calatori din fiecare interval orar al zilei, acestia pot suplimenta numarul de
autobuze, tramvaie, trenuri sau masini in traseu, evitand astfel discomfortul aglomeratiei atat din
trafic cat si din interiorul unitatilor de transport. Stim cu totii ca un oras cu o retea de trasnport
public bine pusa la punct, incurajeaza populatia sa renunte la masinile persoanle si sa foloseasca
retaua de transport public astfel diminuand aglomeratia din trafic, implicit reducand cantitatea de
noxe din aer. Sistemul People Counter permite înțelegerea și anticiparea fluxului de pasageri al
rețelei de transport, astfeel ca se pot obtine date, dacă este necesar să se știe când sunt necesare
vehicule suplimentare pentru a se încadra în traficul de ore de vârf, dacă se dorește identificarea
modului de transport cel mai frecvent utilizat, dacă se dorește să se verifice că pasagerii cumpără
bilete, sau dacă trebuie să asigure o repartizare adecvată a veniturilor între diferite sectoare de
transport public.
- In cazul mall-urilor, cladirilor de birouri, bibliotecilor, salilor mari de evenimente sau orice alta
cladire, un sistem de acest gen poate fi de un real folos atunci cand vine vorba despre o ventilatie
cat mai potrivita in functie de numarul de oameni care se afla in locatie. De multe ori ne-am
intalnit cu situatii in care instalatiile de aer conditionat sau ventilatie ale cladirilor/salilor nu erau
potrivite sau corect configurate din punct de vedere tehnic pentru numarul de oameni prezenti in
acel loc. Asadar, un sistem de acest gen poate regla automat instalatia de aer conditionat sau
ventilatie a cladirii doar cuoscand numarul real al persoanelor aflate in interior, diminuand astfel
disconfortul multimii.
- In cazul unitatilor de vanzare din zona de retail, un sistem de acest tip poate fi benefic, intrucat
rezultatele campaniilor publicitare si strategiilor de promovare dezvoltate de manageri pot fi

7
masurate mult mai corect, cunoscand nu doar numarul vanzarilor, cat si numarul total al celor
care au vizitat acele unitati, astfel ca stiindu-se aceste numere de catre manageri, acestia pot
genera un raport mult mai calitativ asupra campaniilor si strategiilor adresate clientilor.
- In cazul expertilor care masoara popularitatea unei echipe sportive sau a unei trupe de muzica,
acestia pot avea o viziune mult mai clara asupra numarului de participanti la un meci pe stadion
sau la un concert, intrucat nu doar din numarul biletelor vandute in cadrul acestor evenimente se
pot genera statistici, cat si din numarul celor care participa la un meci sau concert cu intrare
libera.

Acestea sunt doar cateva exemple de domenii unde un astfel de sistem isi poate gasi utilitate.
Bineinteles ca un astfel de sistem ar putea fi benefic si in domenii precum celor din zona spitalelor,
rezervatiiolor animale, garilor, autogarilor, aerogarilor, armatei si marinei militare, parcarilor aflate in
sarcina administratiei publice etc.

Mai jos voi enumera cateva modalități prin care o astfel de soluție poate genera avantaje si beneficii
in cazul implementarii acesteia:

 Programarea resurselor

Una dintre funcțiile cele mai de bază ale unui sistem de numărare a persoanelor este sa genreze
date despre când oamenii intră și ies dintr o unitate de vanzare. După utilizarea aceastei tehnologii pentru
o săptămână, o lună sau un an, se poate stabili un model al zilelor și orelor în care magazinul este cel mai
aglomerat și poate ajuta la programarea personalului în consecință. Acest lucru ajuta la asigurarea faptului
ca exista suficienti angajati intr-un magazin pentru a asigura personalul corespunzător pe fiecare
departament. În acest fel, nimeni nu este neasistat sau nemonitorat în timpul orelor de vârf, iar resursele,
de orice natura ar fi ele, nu sunt irosite. Astfel ca un sistem de numărare a persoanelor va ajuta la luarea
deciziilor atunci cand vine vorba de cresterea sau diminuarea resursei umane in cadrul unei companii. De
asemenea, va ajuta la identificarea zilelor cele mai aglomerate ale săptămânii, in cazul sectoarelor de
activitate unde numarul clientilor prezenti in unitate este unul semnificativ. Utilizarea sistemului poate
ajuta la identificarea perioadei optima a zilei pentru pauza de masa a angajatilor sau chiar perioada
optima din an pentru concediile acestora. Acest tip de soluție poate oferi o analiză detaliată a numărului
de persoane din magazine în orice moment.

 Performanţe

In cazul celor care dețin mai multe magazine sau locații, acest tip de sistem poate fi folosit pentru
a ii ajuta să determine exact ce locație are cel mai mare trafic de clienti și perioada traficului. De
asemenea, poate utiliza un sistem de numărare a persoanelor pentru a identifica care dintre angajații
lucrează cel mai eficient. Acest tip de soluție va lua în considerare performanța pentru orice perioadă de

8
timp care trebuie examinata pentru revizuirea performanțelor pe termen lung. O soluție de numărare a
persoanelor poate fi, de ce nu, un indicator cheie de masurare a performanței.

 Factorul timpului de staționare - timpul petrecut în magazin

Un manager de magazine poate vedea exact unde se mișcă clienții lor în interiorul magazinelor și
cât timp petrec în fiecare zonă prin datele analitice ale sistemului de numărare a populației. Este vital să
fie păstrați clienții în magazine pentru a mări dimensiunea medie a valorii coșului de cumparaturi și a
veniturilor prin utilizarea strategiilor de atracție din magazine.

 Factorul de atracție - traficul interior și exterior

Se pot utiliza diferite teme moduri cum sa arate o unitete de vânzare cu amănuntul, se poate
modifica destinațiile de plasare a produselor și se pot utiliza alte activități de merchandising împreună cu
promoțiile existente pentru a atrage traficul în magazine. Cu un sistem de numărare a persoanelor, se
poate măsura rata totală de trafic și de conversie și modul în care acestea au fost afectate de diverse
mijloace de atracție. Se pot lua decizii asupra modului in care trebuie implementate campaniile de
promvare, fie din zonă in zonă, fie in tot magazinul, pentru a obține o vedere de asamblu a ceea ce trebuie
facut pentru a îmbunătăți traficul total.

 Evaluarea promoțiilor

Acele flyere și material de promovare pot fi scumpe uneori, deci este bine de stiut care sunt
promoțiile care atrag trafic spre o unitate de vanzare sau un restaurant și care nu sunt interesante pentru
clienți. Un sistem de numărare a persoanelor va număra vizitatorii care trec pragul, dar aceasta este doar o
parte a ecuației. Unele sisteme pot fi integrate in terminalul POS pentru a urmări o creștere a vânzărilor
unui anumit produs sau serviciu în timpul perioadei promoționale. Dacă este trimis un cupon pe e-mail
tuturor celor aflati in baza de date de corespondență a unitatii de vanzare și există o creștere a
cumpărătorilor care vin la magazin pentru a utiliza cuponul, datele POS vor analiza acest lucru. Cu toate
acestea, dacă nu există nicio creștere a numărului de vânzări pentru elementul sau serviciul recomandat,
este un indiciu solid că promovarea trebuie revizuită și eventual modificată înainte de a încerca din nou.

Per total, principala logică din spatele utilizării unui sistem de numărare a persoanelor este de a
analiza comportamentul atat al angajatilor, cat si al clientilor. Odată ce sunt analizate datele, pot fi luate
decizii de afaceri mai eficient în funcție de rezultatele primite prin intermediul sistemului.

9
1.4 Justificarea alegerii temei
Personal, consider ca eficientizarea si gestiunea resurselor de care dispune o afacere sunt aspecte
foarte importante pentru a asigura un management eficient si orientat catre rezultat. Sunt de parere ca nu
doar experienta, bunele cunostinte si aptitudinile manageriale ajuta la obtinerea de solutii si strategii
potrivite unei afaceri, ci si instrumentele pe care acestea aleg sa le utilizeze.
Un astfel de sistem informatic, poate creste valoarea unei afaceri cu mult peste asteptari. Cum am
argumentat si in subcapitolul anterior, avantajele unui astfel de sistem nu se regasesc doar la adresa
clientilor, ci si la adresa angajatilor, intrucat in zilele noastre, un management orientat catre angajati
conduce de sine la calitatea serviciilor prestate de acestia in randul clientilor.
Este o tema de suflet, in care cred foarte mult, si consider utila implementarea acesteia pe viitor in cat
mai multe afaceri aflate pe piata.

10
2. Prezentarea sistemului informatics
2.1. Descrierea generală a sistemului informatic

Ce este un sistem informatic?

-------------------------------------------------------------------------------------------------------------------------------

Multe organizații lucrează cu cantități mari de date. Datele sunt valori ce trebuie stocate si
organizate intr-o baza de date. Mulți oameni consideră că datele sunt sinonime cu informațiile, totuși,
informațiile sunt formate din date ce au fost organizate in asa fel incat sa răspunde la întrebări spre a
rezolva probleme. Un sistem de informații este definit ca fiind un software care ajută la organizarea și
analizarea datelor. Deci, scopul unui sistem informatic este de a transforma datele brute în informații utile
care pot fi folosite pentru luarea deciziilor într-o organizație. (https://study.com/academy/lesson/what-
are-information-systems-definition-types-quiz.html)

Există câteva tipuri generale de sisteme informatice. De exemplu, un sistem de gestionare a


bazelor de date (DBMS) este o combinație de software și date care permite organizarea și analizarea
datelor. Software-ul DBMS nu este de obicei conceput pentru a lucra cu o anumită organizație sau cu un
anumit tip de analiză. Este mai degrabă un sistem informatic cu scop general. Un alt exemplu este o foaie
de calcul electronică. Acesta este un instrument pentru analiza datelor de bază bazat pe formule care
definesc relațiile dintre date. De exemplu, puteți utiliza o foaie de calcul pentru a calcula mediile pentru
un set de valori sau pentru a descrie tendința unei valori în timp.

În schimb, există o serie de sisteme de informații specializate care au fost special concepute
pentru a sprijini un anumit proces în cadrul unei organizații sau pentru a efectua sarcini de analiză foarte
specifice. De exemplu, planificarea resurselor întreprinderii (ERP) este un sistem informatic utilizat
pentru a integra gestionarea tuturor informațiilor interne și externe într-o întreagă organizație. Un alt
exemplu este un sistem de informații geografice (GIS), care este utilizat pentru a gestiona și analiza toate
tipurile de date geografice. Sistemele expert sunt un alt exemplu de sisteme informatice. Un sistem de
experți este conceput pentru a rezolva probleme complexe, urmând raționamentul unui expert.

Componentele tipice ale sistemelor informatice

Deși sistemele de informații pot diferi în ceea ce privește modul în care sunt utilizate în cadrul
unei organizații, ele conțin în mod obișnuit următoarele componente:

- Hardware: Sistemele informatice bazate pe computer folosesc hardware de calculator, cum ar fi


procesoare, monitoare, tastaturi și imprimante.

11
- Software: Acestea sunt programele utilizate pentru organizarea, procesarea și analizarea datelor.

- Baze de date: Sistemele informatice funcționează cu date, organizate în tabele și fișiere.

- Rețea: Diferitele elemente trebuie să fie conectate între ele, mai ales dacă multe persoane
diferite dintr-o organizație folosesc același sistem de informații.

- Proceduri: Acestea descriu modul în care sunt procesate și analizate datele specifice pentru a
obține răspunsurile pentru care a fost proiectat sistemul informatic.

Primele patru componente fac parte din tehnologia generală a informațiilor (IT) a unei
organizații. Procedurile, a cincea componentă, sunt foarte specifice tipului de informații necesare pentru a
răspunde la o problema.

-------------------------------------------------------------------------------------------------------------------------------

Un sistem de informare , este un set integrat de componente pentru colectarea, stocarea și


prelucrarea datelor și care poate furniza informații , cunoștințe și produse digitale. Firmele de afaceri și
alte organizații se bazează pe sisteme informatice pentru a-și desfășura și gestiona operațiunile, pentru a
interacționa cu clienții și furnizorii lor și pentru a concura pe piață. Sistemele informatice sunt utilizate
pentru a rula lanțurile de aprovizionare interorganizatoare și piețele electronice. De exemplu, corporațiile
folosesc sisteme informatice pentru a procesa conturile financiare, pentru a-și gestiona resursele umane și
pentru a-și contacta potențialii clienți cu promoții on-line. Multe companii majore sunt construite în
întregime în jurul sistemelor informatice. Cateva exemple de astfel de companii ar fi: eBay, o compnaie
care pune la dispozitie o piață orientată catre licitație; Amazon, un mall electronic extins și furnizor de
servicii de cloud computing; Alibaba, o afacere electronică de tip business-to-business; și Google, o
companie de motoare de căutare care își obține cea mai mare parte a veniturilor din publicitatea pe
cuvinte cheie pe căutările de pe internet. Guvernele, la randul lor, implementează sisteme informatice
pentru a furniza servicii cat mai rentabile si eficiente cetățenilor. Bunurile digitale, cum ar fi cărțile
electronice, produsele video, software-ul și serviciile online, sau jocurile și rețelele sociale, deasemenea
sunt livrate cu sisteme informatice. Persoanele fizice utilizeaza sistemele informatice, în general bazate pe
internet, pentru a-și desfășura o mare parte din activitatea zilnica pentru socializare, studiu, cumpărături,
serviciu bancar și divertisment. (Vladimir Zwass, Information system
https://www.britannica.com/topic/information-system)

Pe măsură ce noile tehnologii pentru înregistrarea și prelucrarea informațiilor au fost inventate


de-a lungul mileniilor, au apărut noi solutii, iar oamenii au devenit tot mai puternici din punct de vedere
al informatiei. Invenția presei scrise de către Johannes Gutenberg la mijlocul secolului al XV-lea și
inventarea unui calculator mecanic de către Blaise Pascal în secolul al XVII-lea sunt doar două exemple.
Aceste invenții au condus la o revoluție profundă legata de capacitatea de a înregistra, a procesa, a
12
disemina și a accesa informații și cunoștințe. Acest lucru a dus, la rândul său, la schimbări și mai
profunde ale vieții individuale, organizării afacerilor și guvernării umane.

Primul sistem de informare mecanică pe scară largă a fost tabelul recensământului lui Herman
Hollerith. Inventat cu mult timp in urma pentru a procesa recensământul din 1890 din S.U.A., mașina lui
Hollerith a reprezentat un pas important în automatizare, precum și o inspirație pentru dezvoltarea
sistemelor informatice computerizate. (Vladimir Zwass, Information system
https://www.britannica.com/topic/information-system)

Unul dintre primele computere utilizate pentru prelucrarea acestor informații a fost UNIVAC I,
instalat la Biroul de recensământ al SUA în 1951 pentru uz administrativ și la General Electric în 1954
pentru uz comercial. Începând cu sfârșitul anilor 1970, computerele personale au inceput sa aduca unele
avantaje ale sistemelor informatice către întreprinderi mici și către persoane fizice. La începutul aceluiași
deceniu, Internetul și-a început expansiunea ca rețea globală de rețele. În 1991, World Wide Web,
inventat de Tim Berners-Lee ca metoda de accesare a informațiilor interconectate stocate în calculatoarele
global dispersate, insa conectate prin Internet, a început să funcționeze și a devenit principalul serviciu
livrat în rețea. Pătrunderea globală a Internetului și a Webului a permis accesul la informații și alte resurse
și a facilitat formarea relațiilor între oameni și organizații la o scară fără precedent. Progresul comerțului
electronic pe internet a dus la o creștere dramatică a comunicărilor interumane digitale (prin e-mail și
rețele sociale), distribuirea de produse (software, muzică, e-cărți și filme) și tranzacții de afaceri
(cumpărare, vânzarea și publicitatea pe Web). Odată cu răspândirea în întreaga lume a smartphone-urilor,
tabletelor, laptopurilor și a altor dispozitive mobile bazate pe computere, toate fiind conectate prin rețele
de comunicații fără fir, sistemele informatice au fost extinse pentru a sprijini mobilitatea ca o condiție
umană naturală. (Vladimir Zwass, Information system https://www.britannica.com/topic/information-
system)

Dat fiind faptul că sistemele informatice au permis activități mai diverse, au exercitat o influență
profundă asupra societății. Aceste sisteme au grăbit ritmul activităților zilnice, au permis oamenilor să
dezvolte și să mențină relații noi și, adesea, mai pline de satisfacții, au afectat structura și mixul
organizațiilor, au schimbat tipul de produse cumpărate și au influențat natura muncii. Informațiile și
cunoștințele au devenit resurse economice vitale. Totuși, împreună cu noi oportunități, dependența de
sistemele informatice a adus noi amenințări. Inovația intensă a industriei și cercetarea academică dezvoltă
în permanență noi oportunități, în scopul de a contracara amenințările.

Componentele sistemelor informatice

Principalele componente ale sistemelor informatice sunt hardware-ul și software-ul de calculator,


telecomunicații, baze de date și depozite de date, resurse umane și proceduri. Hardware-ul, software-ul și

13
telecomunicațiile constituie tehnologia informației (IT), care este acum bine înrădăcinată în operațiunile
și gestionarea organizațiilor.

Computer hardware

Astăzi, în întreaga lume, pana si cele mai mici firme, precum și multe gospodării, dețin sau
închiriază computere. Persoanele fizice pot deține mai multe computere sub formă de smartphone-uri,
tablete și alte dispozitive portabile. Organizațiile mari utilizează de obicei sisteme informatice distribuite,
de la servere puternice de procesare paralelă situate în centre de date, pana la computere personale și
dispozitive mobile dispersate pe scară largă, integrate în sistemele informaționale organizaționale.
Senzorii devin din ce în ce mai răspândiți în mediul fizic și biologic pentru colectarea datelor și, în multe
cazuri, pentru controlul prin intermediul dispozitivelor cunoscute ca actuatoare. Împreună cu
echipamentele periferice, cum ar fi discurile de stocare magnetică sau solidă, dar si dispozitivele de
intrare-ieșire și echipamentele de telecomunicații, constituie hardware-ul sistemelor informatice. Costul
hardware-ului a scăzut constant și rapid, în timp ce viteza de procesare și capacitatea de stocare au crescut
foarte mult. Această evoluție a apărut sub legea lui Moore: puterea microprocesoarelor în centrul
dispozitivelor de calcul sa dublat la fiecare 18-24 de luni. Cu toate acestea, utilizarea hardware-ului de
energie electrică și impactul său asupra mediului reprezintă preocupări adresate de designeri. Din ce în ce
mai mult, serviciile de computere și de stocare sunt livrate direct din cloud catre facilitățile comune
accesate prin rețelele de telecomunicații.

Computer software

Software-ul informatic se încadrează în două mari categorii: software-ul de sistem și software-ul


aplicației. Principalul software de sistem este sistemul de operare. Administrează fișierele hardware,
date , programe și alte resurse de sistem și oferă utilizatorilor posibilitatea de a controla computerul, în
general prin intermediul unei interfețe grafice (GUI). Software-ul de aplicație este un program conceput
pentru a gestiona sarcinile specifice pentru utilizatori. Aplicațiile smartphone au devenit o modalitate
comună de accesare a persoanelor de către sistemele informatice. Alte exemple ar fi aplicațiile generale
cu foi de calcul și programele de procesare a cuvintelor, precum și aplicațiile "verticale" care servesc unui
anumit segment industrial, de exemplu, o aplicație care programează, rutează și urmărește livrările de
pachete pentru operatorii de transport peste noapte. Firmele mai mari utilizează aplicații licențiate
dezvoltate și întreținute de companii de software specializate, personalizându-le pentru a-și satisface
nevoile specifice și dezvoltând alte aplicații interne sau externalizate. Companiile pot, de asemenea, să
utilizeze aplicațiile furnizate ca software-as-a-service (SaaS) din cloud pe Web.

14
Telecomunicațiile

Telecomunicațiile sunt utilizate pentru a conecta sau interconecta sisteme informatice și


dispozitive portabile sau purtabile și pentru a transmite informații. Conexiunile se stabilesc prin suporturi
cu fir sau fără fir. Tehnologiile prin cablu includ cablu coaxial și fibră optică. Tehnologiile wireless,
bazate preponderent pe transmisia de microunde și unde radio, se regasesc in cea mai mare parte la
computerele mobile. S-au dezvoltat sisteme informaționale omogene cu dispozitivele de calcul
încorporate în multe obiecte fizice diferite. De exemplu, senzorii de pe dispozitivele de identificare a
frecvențelor radio (RFID), pot fi atașați la produsele care se deplasează prin lanțul de aprovizionare
pentru a permite urmărirea amplasării acestora și monitorizarea stării acestora.

Sunt posibile diferite configurații de rețele de calculatoare, în funcție de nevoile unei organizații.
Rețelele locale (LAN) leaga calculatoarele la o anumita retea, cum ar fi o clădire de birouri sau un
campus universitar. Rețelele metropolitane (MAN) acoperă o zonă limitată densă și sunt infrastructura
electronică a "orașelor inteligente." Rețelele WAN (Wide Area Networks) se conectează la centre de date
distribuite pe scară largă, desfășurate frecvent de diferite organizații. Rețelele peer-to-peer, fără un control
centralizat, permit partajarea largă a conținutului. Internetul este o rețea de rețele, conectând miliarde de
computere situate pe fiecare continent. Prin intermediul rețelelor, utilizatorii obțin acces la resursele
informaționale, cum ar fi bazele de date mari, și la alte persoane, cum ar fi colegii, clienții, prietenii sau
persoanele care împărtășesc interesele lor profesionale sau private. Serviciile de tip Internet pot fi
furnizate în cadrul unei organizații și pentru utilizarea exclusivă de către diverse intraneturi care sunt
accesibile printr-un browser; de exemplu, un intranet poate fi implementat ca un portal de acces la o bază
de documente partajată corporativă. Pentru a vă conecta cu partenerii de afaceri prin Internet într-o
manieră privată și sigură, extraneturile sunt create ca așa-numitele rețele private virtuale (VPN) prin
criptarea mesajelor.

Un val mare de " Internet of things" a luat nastere in zilele noastre, deoarece senzorii și
dispozitivele de acționare au fost distribuite pe scară largă în mediul fizic și furnizează date, cum ar fi
aciditatea unei bucati de pământ, viteza unui vehicul care ruleaza, sau tensiunea arterială a unui individ.
Disponibilitatea acestor informații permite o reacție rapidă atunci când este necesar, precum și luarea
unor decizii susținute pe baza procesării datelor masive acumulate.

Infrastructura extinsă de rețea se mutata incet incet spre cloud computing, resursele sistemului de
informații fiind partajate între mai multe companii, ceea ce duce la eficiența utilizării și libertatea de
localizare a centrelor de date. Rețelele definite prin software oferă control flexibil al rețelelor de
telecomunicații cu algoritmi care răspund cerințelor în timp real și disponibilităților de resurse.

15
Baze de date și depozite de date

Multe sisteme informatice sunt în primul rând vehicule de livrare pentru datele stocate în baze de
date. O bază de date este o colecție de date inter-relaționate organizate astfel încât să poată fi recuperate
înregistrări individuale sau grupuri de înregistrări pentru a satisface diferite criterii. Exemple tipice de
baze de date includ înregistrările angajaților și cataloagele de produse. Bazele de date sprijină operațiile și
funcțiile de gestionare ale unei întreprinderi. Depozitele de date conțin datele de arhivă colectate de-a
lungul timpului, care pot fi extrase pentru informații pentru a dezvolta și comercializa noi produse, pentru
a servi mai bine clienții existenți sau pentru a ajunge la clienți potențiali noi. Oricine a cumpărat vreodată
ceva cu un card de credit, fie fizic in magazin, prin comandă prin poștă sau prin Web, este inclus automat
în aceste colecții de date.

Colectarea și prelucrarea masivă a datelor cantitative sau structurate, precum și a datelor textuale
adesea adunate pe Web, s-au dezvoltat într-o inițiativă largă cunoscută sub numele de "Big Data". Multe
beneficii pot rezulta din deciziile bazate pe fapte reflectate de date mari. Exemplele includ medicina
bazată pe dovezi, economia resurselor ca urmare a evitării pierderilor și/sau recomandările unor produse
noi (cum ar fi cărți sau filme) bazate pe interesele si comportamentul online al utilizatorului. Big Data
genereaza modele inovatoare de afaceri. De exemplu, o firmă comercială colectează prețurile mărfurilor
prin conceptul de crowdsourcing (colectând date de la numeroase persoane independente), acesta
realizăndu=se prin intermediul telefoanelor inteligente din întreaga lume. Datele agregate furnizează
informații rapide cu privire la mișcările prețurilor, permițând luarea deciziilor mult mai eficient si rapid
decât era posibil in trecut.

Prelucrarea datelor textuale, cum ar fi review-urile și opiniile exprimate de indivizi pe rețelele


sociale, blogurile și forumurile de discuții, permite analiza automată a strategiei de marketing, dezvoltarea
unei inteligențe competitive, si dezvoltarea de noi produse in acord cu scopuri decizionale.

Resurse umane și proceduri

Persoanele calificate reprezintă o componentă vitală a oricărui sistem informatic. Personalul


tehnic include manageri de dezvoltare și operațiuni, analiști de afaceri, analiști și designeri de sisteme,
administratori de baze de date, programatori, specialiști în securitate informatică și operatori de

16
calculatoare. În plus, toți lucrătorii dintr-o organizație trebuie instruiți să utilizeze cât mai bine
functionalitatile sistemelor informatice. Miliarde de oameni din întreaga lume învață despre sistemele
informatice pe măsură ce folosesc Web-ul.

Procedurile de utilizare, exploatare și întreținere a unui sistem informatic fac parte din
documentația sa. De exemplu, trebuie stabilite proceduri pentru a rula un program de salarizare, inclusiv
când să îl executați, cine este autorizat să îl execute și cine are acces la rezultatele lui. În inițiativa
autonomă de calcul, centrele de date se execută din ce în ce mai mult in mod automat, cu procedurile
integrate în software-ul care controlează aceste centre.

Tipuri de sisteme informatice

Sistemele de informare susțin operațiile, munca de cunoastere și managementul în cadrul


organizațiilor. Structura generală a sistemelor informaționale organizaționale este prezentată în figurea 1
de mai jos. Sistemele de informații funcționale care susțin o anumită funcție organizațională, cum ar fi
marketingul sau producția, au fost suplinite în multe cazuri de sisteme încrucișate, construite pentru a
sprijini procesele de afaceri complete cum ar fi procesarea comenzilor sau managementul angajatilor.
Astfel de sisteme pot fi mai eficiente în dezvoltarea și livrarea produselor firmei și pot fi evaluate mai
îndeaproape cu privire la rezultatele afacerii. Categoriile de sisteme informatice descrise aici pot fi
implementate cu o mare varietate de programe de aplicații.

17
Fig. 1 Structura sistemului informațional organizational (2017, Information system, Vladimir
Zwass)

2.2 Specificarea cerințelor

Software Requirements Definition


Bibliografie > Richard F. Schmidt, in Software Engineering, 2013

Acest subcapitol oferă un set generic de sarcini pentru diferitele componente software implicate
în ingineria software în timpul etapei de definire a cerințelor software. Stadiul de definire a cerințelor
software de dezvoltare traduce nevoile, așteptările și constrângerile părților interesate într-un set
echilibrat și realizabil de cerințe software. Aceasta implică dezvoltarea specificațiilor pentru produsul
software , mediul de calcul și procesele ulterioare dezvoltării. Mediul de calcul impune constrângeri
asupra modului în care produsul software funcționează pentru a sprijini procesele de tranzacționare a
datelor. Un artefact cheie al acestei etape este un model al procesului de business sau embedded
sistem pe care acesta este destinat să îl permită. Modelul operațional formează baza pentru derivarea
produsului software, a mediului de calcul și a cerințelor interfeței software . Etapa de specificare a
cerințelor software se încheie cu revizuirea cerințelor software. (2.
https://www.sciencedirect.com/science/article/pii/B9780124077683000173 Richard F.
Schmidt, in Software Engineering, 2013)

2.2.1 Diagrama cazurilor generale de utilizare

O diagramă a cazurilor de utilizare UML este forma principală a cerințelor de sistem / software
pentru un nou program software dezvoltat. Cazurile de utilizare specifică comportamentul așteptat
(ce) și nu metoda exactă de a face acest lucru (cum). Cazurile de utilizare, după ce au fost specificate,
pot fi indicate atât cu reprezentare textuală, cât și vizuală (cum ar fi UML). Un concept cheie de
modelare a cazurilor de utilizare este acela că ne ajută să proiectăm un sistem din perspectiva
utilizatorului final. Este o tehnică eficientă pentru comunicarea comportamentului sistemului în
termenii utilizatorului, prin specificarea tuturor comportamentelor vizibile din exterior ale sistemului.

O diagramă a cazurilor de utilizare este, de obicei, simplă. Nu arată detaliile cazurilor de utilizare:

- Sintetizează doar unele dintre relațiile dintre cazurile de utilizare, actorii și sistemele.
- Nu arată ordinea în care sunt efectuati pași pentru a atinge obiectivele fiecărui caz de utilizare.

18
Așa cum am spus, o diagramă a cazurilor de utilizare ar trebui să fie simplă și să conțină doar
câteva forme. În cazul în care conține mai mult de 20 de cazuri de utilizare, probabil că nu folosim
diagrama cazurilor de utilizare.

Figura de mai jos prezintă ierarhia diagramei UML și poziționarea diagramei UML Use Case.
După cum putem vedea, diagramele cazurilor de utilizare aparțin familiei de diagrame
comportamentale.

Fig. 2 Diagrama cazurilor generale de utilizare în ierarhia uml (https://www.visual-


paradigm.com/guide/uml-unified-modeling-language/what-is-use-case-diagram/)

19
Fig. 3 Diagrama cazurilor generale de utilizare

2.2.2 Descrierea textuală a cazului general de utilizare

Afișarea diagramei cazurilor de utilizare în notarea UML nu este suficientă. Fiecare caz de
utilizare trebuie sa fie însoțit de un text care explică scopul utilizării cazului, precum și ce funcționalitate
este îndeplinită atunci când se execută un caz de utilizare.

Specificația cazului de utilizare este de obicei creată în faza de analiză și proiectare într-o manieră
iterativă.

- La început, este scrisă doar o scurtă descriere a pașilor necesari pentru a realiza fluxul normal al
cazului de utilizare (adică, ce funcționalitate este furnizată de cazul de utilizare).
- Pe măsură ce analiza progresează, pașii sunt detaliați pentru a adăuga mai multe detalii.
- În cele din urmă, fluxurile excepționale sunt adăugate cazului de utilizare
- Fiecare proiect poate adopta un șablon standard de caz de utilizare pentru crearea specificației
cazului de utilizare.

Un caz de utilizare are:

 Doar un singur scop


 Un singur punct de plecare
 Un singur punct final
 Multiple cai de a începe si a termina
o Adică specificarea comportamentul pentru o varietate de condiții posibile
o Fiecare condiție poate necesita acțiuni specific

20
Fig. 4 Caracterul cazului de utilizare (https://www.visual-paradigm.com/guide/use-case/what-
is-use-case-specification/)

In continuare este prezentata descrierea sub forma de sablon a cazului general de utilizare.

Element al cazului de utilizare Descriere


Cod CU01
Stare Schita
Scop Elaborarea unei strategii
Dezvoltarea unui program efficient pentru combaterea aglomerarii in
Nume autobuze
Actor principal Manager companie de transport public
Analiza datelor pentru a facilita elaborarea unei strategii de combatere a
Descriere aglomerarii in autobuze

Preconditii Utilizatorul are un laptop sau un telefon mobil cu acces la intenret


Datele au fost stocate si analizate cu succes, iar utilizatorul se poate
Postconditii ingriji linistit de elaborarea strategiei.
Declansator Utilizatorul trebuie sa elaboreze o strategie de combatere a aglomerarii
1. Utilizatorul se logheaza [Curs alternativ A: Utilizatorul nu are
un cont] [Punct de extindere: CU04 Resetare parola]
2. Utilizatorul interactioneaza cu pagina de baza aplicatiei
3. Utilizatorul vizualizeaza sectiunea Instructiuni
4. Utilizaotul vizualizeaza sectiunea About
5. Utilizatorul vizualizeaza Daily Report Period
6. Utilizatorul vizualizeaza Final Daily Raport
7. Utilizatorul salveaza fie raportul final in format .xsml sau .csv
Flux de baza 8. Strategia a fost realizata cu succes.

21
A: 1. Utilizatorul furnizează informații in vederea creearii unui cont de
utilizator (email, nume de utilizator si parola)
Fluxuri alternative 2. Se continuă scenariul cu punctul 2
Relatii Se extinde prin CU04 Resetare parola
Frecventa utilizarii Zilnica
Reguli ale afacerii Utilizatorul poate să schimbe parola accesând link-ul primit prin email

Tabel 1: Descrierea sub formă de șablon a cazului general de utilizare (https://www.visual-


paradigm.com/guide/use-case/what-is-use-case-specification/)

2.2.3 Diagrama de stare

Diagramele de stare modelează sistemul din punctul de vedere al unei singure clase și
evenimentele care pot afecta obiectele din clasă. Acestea arată toate comportamentele posibile ale
obiectelor dintr-o clasă și înregistrează ordonarea evenimentelor. Aceste informații despre constrângerile
de temporizare sunt esențiale pentru înțelegerea sistemului nostru și nu sunt înregistrate în niciunul dintre
celelalte modele de diagrame pe care le acoperim în această lucrare.

Deși diagramele de stare sunt o tehnică foarte utilă și importantă de modelare, nu este necesar să
se faca una pentru fiecare clasă. În majoritatea sistemelor, complexitatea rezultă din interacțiunea dintre
obiectele diferitelor clase. Este posibil ca în orice sistem, în special în sistemul informațional, doar câteva
clase să afișeze un comportament dinamic și astfel au nevoie de o diagramă de stare pentru a modela ceea
ce se întâmplă. Mai jos voi incerca să documentez toate comportamentele posibile ale obiectelor din clasă
prin intermediul unei diagrame de stare. (Carol Britton, Jill Doake, in A Student Guide to Object-Oriented
Development, 2005, https://www.sciencedirect.com/topics/computer-science/state-diagrams )

22
Fig. 5 Diagrama de stare

2.2.4 Diagrame de interacțiune

Diagramele de interacțiune sunt modele care descriu modul în care un grup de obiecte
colaborează într-un anumit comportament, de obicei un singur caz de utilizare. Diagramele prezintă un
număr de obiecte exemplu și mesajele care sunt transmise între aceste obiecte în cazul de utilizare.

Voi ilustra abordarea cu următorul exemplu simplu de utilizare. În acest comportament, actorul
initieaza procesul de logare in aplicatie. Sistemul informatic trimite apoi mesajul “Logarea a avut
success”. In momentul acesta, actorul are posibilitatea vizulizarii raportului zilnic, sau rapoartele
impartite pe perioade ale zilei, care in final alcatuiesc raportul zilnic. Daca rapoartele perioadice ale zilei
nu sunt complete, raportul zilnic nu poate fi vizualizat, implicit nu poate fi descarcat. In cazul acesta,
sistemul trimite mesaj catre actor “Raport incomplet”. Daca rapoartele periodice ale zilei sunt gata,
raportul zilnic poate fi vizualizat si descarcat din sistem.

23
Fig. 6 Diagrama de Interactiune

3. PROIECTAREA SISTEMULUI INFORMATIC

Cheia de a proiecta un sistem de informatics de succes este un design bun. Ne vom uita la design din
mai multe perspective diferite.

Diferiți oameni folosesc cuvântul de design în contexte diferite. Atunci când profesioniștii de sisteme
informatice vorbesc despre design, se referă la procesele de afaceri. Problemele trebuie analizate și
cerințele documentate înainte ca soluțiile să fie proiectate, dezvoltate și implementate. În definitiv, dacă
designul nu satisface nevoia de afaceri, atunci care este scopul? Cu toate acestea, satisfacerea necesității
afacerii este într-adevăr un standard de bază. Sistemul de nostru de gestionare a fluxului de persoane
descris in aceasta lucrare satisface nevoia de afaceri de numarare a clientilor.

24
3.1. Diagrama de clase

În ingineria software-ului, o diagramă de clasă în limba unificată de modelare (UML) este un tip
de diagramă a structurii statice care descrie structura unui sistem prin afișarea claselor sistemului si a
atributelor acestora.

Fig. 7 Diagrama de clase

3.2 Proiectarea dagramei bazei de date

Designul bazeei de date este o colecție de procese care facilitează proiectarea, dezvoltarea,
implementarea și întreținerea sistemelor de management al datelor unei întreprinderii. Obiectivele
principale ale proiectării bazelor de date sunt de a produce modele logice și fizice de proiectare a
sistemului de baze de date propuse. Modelul logic se concentrează pe cerințele de date și pe datele care
trebuie păstrate independent de considerentele fizice. Nu se referă la modul în care datele vor fi stocate
sau unde vor fi stocate fizic.

Modelul de design fizic al datelor implică traducerea designului logic al bazei de date pe
suporturi fizice folosind resurse hardware și sisteme software precum sistemele de gestionare a bazelor de
date (DBMS).

25
Proiectarea bazelor de date este crucială pentru sistemul de baze de date de înaltă performanță. În
afară de îmbunătățirea performanței, baza de date proiectată în mod corespunzător este ușor de întreținut,
îmbunătățește consistența datelor și este rentabilă în ceea ce privește spațiul de stocare pe disc.

Ciclul de viață al dezvoltării bazei de date are o serie de etape care sunt urmărite atunci când se
dezvoltă sisteme de baze de date. Pașii din ciclul de viață al dezvoltării nu trebuie să fie urmăriți religios
într-o manieră secvențială. Pe sistemele de baze de date mici, ciclul de viață al sistemului de bază de date
este de obicei foarte simplu și nu implică o mulțime de pași.

Fig. 8 Diagrama bazei de date

3.3 Proiectarea diagramei interfeței utilizator

Diagramele de interfață de utilizator sunt folosite în mod obișnuit pentru unul din cele două
scopuri. În primul rând, ele sunt folosite pentru a modela interacțiunile pe care le au utilizatorii cu
software-ul nostru, așa cum este definit într-un caz de utilizare unică. De exemplu, un caz de utilizare se
poate referi la mai multe ecrane și oferă o perspectivă asupra modului în care sunt utilizate. Pe baza
acestor informații, putem dezvolta o diagramă a interfeței utilizator care reflectă viziunea
comportamentală a cazului de utilizare unică. În al doilea rând, acestea ne permit să obținem o imagine de
ansamblu la nivel înalt a interfeței utilizator pentru aplicația nostra. Această prezentare generală este în
mod eficient combinația tuturor opiniilor comportamentale derivate din cazurile noastre de utilizare
prezentate mai sus, rezultatul fiind denumirea imaginii arhitectonice a interfeței noastre de utilizator

26
(Constantine și Lockwood 1999). Prefer să iau abordarea generală la nivel înalt, denumită și abordarea
arhitecturală, deoarece imi permite să înțeleg întreaga interfață de utilizator pentru un sistem.

Fig. 9 Diagrama interfeței utilizator

4. IMPLEMENTAREA SISTEMULUI INFORMATIC

Acest capitol oferă un set generic de sarcini pentru diferitele organizații software implicate în
ingineria software în timpul etapei de implementare a software-ului. Etapa de implementare a software-
ului implică transformarea pachetului de date tehnice software într-unul sau mai multe elemente de
configurare software fabricate, integrate și testate, care sunt gata pentru testarea acceptabilă a software-
ului. Implementarea de software include rularea “uscată” a testelor de acceptare a software-ului. Acest
exercițiu uscat este destinat să asigure că procedurile de testare din faza de recepție sunt eficiente, iar
produsul software îndeplinește specificațiile software. O rulare uscată oferă o demonstrație a pregătirii

27
produsului software pentru testarea acceptării. Deficiențele software identificate în etapa de implementare
a software-ului trebuie rezolvate. (Software Engineering, P. 323-333)

Tema propusa doreste sa imbine intr-un sistem informatic atat o zona hardware cat si o zona
software, necesara realizarii unei aplicatii web ce va afisa rezultatele obtinute sub forma unor statistici si
grafice cu scopul de a monitoriza traficul de persoane din transportul public dar si de a evalua eficacitatea
campaniilor de marketing dintr-o zona de retail, design-ul si structura cladirilor si/sau popularitatea
anumitor marci sau produse in magazine.

4.1. Tehnologii utilizate în implementarea aplicatiei informatice


4.1.1. HTML

HTML este un limbaj de calculator conceput pentru a permite crearea de site-uri web. Aceste
site-uri pot fi vizualizate de oricine realizeaza o conexiune la internet. Este relativ ușor de învățat,
elementele de bază fiind accesibile majorității oamenilor într-o singură ședință, și destul de puternic în
ceea ce ne permite să creăm. Se află în curs de revizuire și evoluție pentru a răspunde cerințelor
publicului din ce în ce mai mari.

HTML vine de la Hyper Text Markup Language. HyperText este metoda prin care ne deplasăm
pe web, făcând clic pe un text special numit hyperlink care ne duce la pagina următoare. Faptul că este
hyper, înseamnă că nu este linear, adică putem merge în orice loc pe Internet ori de câte ori dorim, făcând
clic pe link-uri. (Ross Shannon, What is HTML? )

HTML este un limbaj, deoarece are cuvinte cheie și sintaxă ca orice altă limbaj.

4.1.2. СSS

Cascading Style Sheets (CSS) este un style sheet language utilizat pentru descrierea prezentării
unui document scris într-un limbaj de markup precum HTML. CSS este o tehnologie de bază a World
Wide Web, alături de HTML și JavaScript. (Flanagan, David. JavaScript)

CSS este conceput pentru a permite separarea prezentării și a conținutului, inclusiv aspectul,
culorile și fonturile. Această separare poate îmbunătăți accesibilitatea conținutului, poate oferi mai multă
flexibilitate și control în specificațiile caracteristicilor de prezentare, permite mai multor pagini web să

28
împărtășească formatarea prin specificarea CSS relevantă într-un fișier .css separat și reducerea
complexității și repetării în conținutul structural.

Separarea formatării și a conținutului face, de asemenea, fezabilă prezentarea aceleiași pagini de


marcare în diferite stiluri pentru diferite metode de randare, cum ar fi pe ecran, prin imprimare, prin voce
(prin intermediul browserului bazat pe vorbire sau cititorului de ecran) dispozitive tactile. CSS are, de
asemenea, reguli de formatare alternativă dacă conținutul este accesat pe un dispozitiv mobil.

4.1.3. JavaScript

JavaScript, adesea abreviat ca JS, este un limbaj de programare high-level. JavaScript are o
sintaxă de tip curly-bracket, tastare dinamică, este orientat pe obiecte bazate pe prototipuri și funcții de
primă clasă.

Alături de HTML și CSS, JavaScript este una dintre tehnologiile de bază ale World Wide Web.
JavaScript permite creearea de pagini web interactive și este o parte esențială a aplicațiilor web. Marea
majoritate a site-urilor web utilizează acest limbaj, iar browserele web majore au un motor dedicat
JavaScript pentru al executa.

Ca limbaj cu mai multe paradigme, JavaScript acceptă stiluri de programare bazate pe


evenimente, funcționale și imperative (inclusiv obiecte orientate și prototipuri). Are API-uri pentru a
lucra cu text, matrice, date, expresii regulate și DOM, însă limba în sine nu include niciun I / O, cum ar fi
facilități de rețea, stocare sau grafică. Se bazează pe mediul gazdă în care este încorporat pentru a oferi
aceste caracteristici. (Netscape and Sun announce JavaScript, 1995)

4.1.4. JQuery

JQuery este o bibliotecă JavaScript proiectată pentru a simplifica traversarea și manipularea


HTML DOM, precum și manipularea evenimentelor, animația CSS și Ajax. Este gratuit, software open-
source cu permisiunea MIT. Începând din mai 2019, jQuery este utilizat de 73% din cele 10 milioane de
site-uri cele mai populare. Analiza web indică faptul că aceasta este cea mai răspândită bibliotecă
JavaScript cu o marjă mare, având o utilizare de 3 până la 4 ori mai mare decât orice altă bibliotecă
JavaScript.
29
Sintaxa jQuery este concepută pentru a facilita navigarea pe un document, selectarea elementelor
DOM, crearea animațiilor, gestionarea evenimentelor și dezvoltarea aplicațiilor Ajax. jQuery oferă, de
asemenea, capabilități dezvoltatorilor de a crea plugin-uri în partea de sus a bibliotecii JavaScript. Acest
lucru le permite dezvoltatorilor să creeze abstracții pentru interacțiunea și animația de nivel scăzut, efecte
avansate și widget-uri de nivel înalt și tematice. Abordarea modulară a bibliotecii jQuery permite crearea
de pagini web dinamice puternice și aplicații Web.

4.1.5. Bootstrap

Bootstrap este un set de instrumente open source pentru dezvoltarea cu HTML, CSS și JS. Ne
putem creea rapid ideile sau sa consturim întreaga aplicație cu variabilele și mix-urile Sass, sistemul grid
reactiv, componentele preexistente extinse și pluginurile puternice construite pe jQuery.

4.1.6. PHP

PHP: Hypertext Preprocessor (sau pur și simplu PHP) este un limbaj de programare general
conceput inițial pentru dezvoltarea web. Acesta a fost inițial creat de Rasmus Lerdorf în 1994,
implementarea de referință PHP fiind acum produsă de The PHP Group. PHP inițial a fost utilizat pentru
Personal Home Page, dar acum reprezintă un inițial recursiv PHP: Hypertext Preprocessor.

Codul PHP poate fi executat cu o interfață de linie de comandă (CLI), încorporată în cod HTML
sau poate fi folosită în combinație cu diferite sisteme de șabloane web, sisteme de gestionare a
conținutului web și cadre web. Codul PHP este procesat, de obicei, de un interpret PHP implementat ca
un modul într-un server web sau ca executabil al unei interfețe Common Gateway Interface (CGI).
Serverul web combină rezultatele codului PHP interpretat și executat, care poate fi orice tip de date,
inclusiv imagini, cu pagina Web generată. PHP poate fi folosit pentru multe sarcini de programare în
afara contextului web, cum ar fi aplicațiile grafice separate, și controlul robotului robotic.

4.1.7. Symfony

Symfony este un cadru de aplicații web PHP și un set de componente / biblioteci PHP
reutilizabile. Symfony a fost publicat ca software liber în 18 octombrie 2005 și lansat sub licența MIT.

30
Symfony își propune să accelereze crearea și întreținerea aplicațiilor web și să înlocuiască
sarcinile de codificare repetitive.

Symfony are un nivel scăzut al performanței, folosit cu o memorie cache de tip bytecode.

Symfony are scopul de a construi aplicații robuste într-un context al întreprinderii și are scopul de
a oferi dezvoltatorilor controlul complet asupra configurației, de la structura directoarelor la bibliotecile
străine, aproape totul poate fi personalizat. Pentru a se potrivi liniilor directoare pentru dezvoltarea
întreprinderii, Symfony este asociat cu instrumente suplimentare pentru a ajuta dezvoltatorii să testeze, să
depaneze și să documenteze proiectele.

4.1.8. Twig

Twig este un motor de șablon pentru limbajul de programare PHP. Sintaxa sa provine din
șabloanele Jinja și Django. Este un produs open source licențiat sub licență BSD și întreținut de Fabien
Potencier. Versiunea inițială a fost creată de Armin Ronacher. Sistemul Symfony PHP vine cu un pachet
de suport pentru Twig ca motor de șablon implicit de la versiunea 2.

4.1.9. MySQL

MySQL, este un sistem de management relațional bazat pe baze de date relaționale (RDBMS)
Numele lui este o combinație de "My", numele fiicei co-fondatorului Michael Widenius, și "SQL",
abrevierea pentru Language Structured Query.

MySQL este software gratuit și cu sursă deschisă, în condițiile generale GNU General Public
License și este disponibil și sub o variante cu licențe de proprietate. MySQL a fost deținut și sponsorizat
de compania suedeză MySQL AB, care a fost cumpărată de Sun Microsystems (acum Oracle
Corporation). În 2010, când Oracle a achiziționat Sun, Widenius a forțat proiectul open source MySQL
pentru a crea MariaDB.

MySQL este o componentă a pachetului de software pentru aplicații web LAMP (și altele), care
este un acronim pentru Linux, Apache, MySQL, Perl / PHP / Python. MySQL este folosit de multe
aplicații web ce contin baze de date, inclusiv Drupal, Joomla, phpBB și WordPress. MySQL este, de
asemenea, folosit de multe site-uri populare, inclusiv Facebook, Twitter, Flickr și YouTube.

31
4.1.10. Doctrine

Doctrin este un set de biblioteci PHP axate în primul rând pe furnizarea de servicii de persistență
și funcționalitate aferentă. Proiectele sale premiate sunt un object-relational mapper (ORM) și stratul de
abstractizare a bazei de date.

Una dintre trăsăturile cheie ale Doctrinei este opțiunea de a scrie interogări de bază de date în
Doctrine Query Language (DQL), un dialect orientat pe obiecte din SQL.

O caracteristică a Doctrin este nivelul scăzut de configurare necesar pentru a începe un proiect.
Doctrin poate genera clase de obiecte dintr-o bază de date existentă, iar programatorul poate specifica
relații și poate adăuga funcții personalizate claselor generate. Nu este nevoie să generați sau să mențineți
scheme complexe de baze de date XML, așa cum se vede în multe alte framework-uri.

4.2. Prezentarea pe scurt a funcționalității sistemului

Ce este un sisteme de numărare a persoanelor?

Un contor de persoane este un dispozitiv electronic care este utilizat pentru a măsura numărul de
persoane care traversează un anumit pasaj sau intrare. Printre exemple se numără clicuri manuale simple,
grinzi sau bariere cu infraroșu, sisteme cu imagini termice, dispozitive de urmărire WiFi și contoare video
utilizând algoritmi avansați de învățare automată. Acestea sunt cateva exemple de tehnologii hardware
utilizate în mod obișnuit de către companiile de transport public si unitățile de comerț cu amănuntul
pentru a evalua design-ul și structura retelelor de transport public sau a clădirilor, eficacitatea campaniilor
de marketing și popularitatea anumitor mărci sau produse.

Tema propusa doreste sa imbine intr-un sistem informatic atat o zona hardware cat si o zona
software, necesara realizarii unei aplicatii web ce va afisa rezultatele obtinute sub forma unor statistici si
grafice cu scopul de a monitoriza traficul de persoane din transportul public dar si de a evalua eficacitatea
campaniilor de marketing dintr-o zona de retail, design-ul si structura cladirilor si/sau popularitatea
anumitor marci sau produse in magazine.

Acest sistem are cinci pași pentru a da utilizatorului funcția dorită: Colectarea datele de la poarta
utilizând senzori fiabili, procesarea datelor provenind de la senzori și analizarea acestora, transferal
datelor pe computer și receptia acestora pentru a efectua diferite sarcini, cum ar fi rapoartele și
statisticile , stocarea datelor intr-o baza de date si generarea de rapoarte sub forma de foi de calcul. Acești
pași explică intr-un mod foarte simplu modul în care funcționează sistemul nostru de numarare persoane.

32
In cazul temei de fata, ca si tehnologie hardware am folosit doua bariere cu senzori IR, senzori ce
au fost integrati pe un microcontroler cu o singură placă Raspberry Pi, acesta fiind un calculator cu
dimensiuni reduse, similare unui card de credit, care se poate conecta la un computer sau la un televizor,
și utilizează o tastatură și un mouse standard. Este un dispozitiv capabil, mic care permite oamenilor să
exploreze computerele și să învețe cum să programeze în limbi precum Scratch și Python.

Ca metoda(protocol) de transfer a datelor(fisierelor) intre echipamentul Raspberry Pi si serverul


web am ales protocolul SFTP care se realizeaza prin intemrediul unui cablu de retea de tip ethernet.

Am ales aceasta metoda intrucat am dorit sa asigur un nivel de securitate in plus, acest protocolul
fiind unul cu atentficare. SFTP protejează împotriva atacurilor cu parolă și a atacurilor de tip "man-in-the-
middle". Reuseste sa protejeze integritatea datelor utilizând funcțiile de criptare hash criptografic și
autentifică atât serverul, cât și utilizatorul. SFTP (SSH File Transfer Protocol) este un protocol de transfer
de fișiere securizat. Rulează prin protocolul SSH. Acesta susține funcționalitatea completă de securitate și
autentificare a SSH.

Acest protocol poate fi utilizat peste o conexiune Lan, WIFI sau 3G/4G.

Ca si server, am ales Apache HTTP Server Project intrucat reuseste efortul de a dezvolta și
menține un server HTTP open-source pentru sistemele de operare moderne, inclusiv UNIX și Windows.
Scopul acestui proiect este de a furniza un server securizat, eficient și extensibil care să asigure
sincronizarea serviciilor HTTP cu standardele HTTP curente.

Am configurat atat in apache cat si in Rasbery Pi credentialele de acces pentru transmisia de date
prin SFTP.

Mai jos exemplific printr-o diagrama de componente, modul de utilizare si interconectare a partii
hardware ce se regaseste in aceasta lucrare.

33
Fig. 10 Diagrama componentelor hardware

34
Bibliografie

1. Controlling Software Projects, Management Measurement & Estimation, (1982), p. 3. Tom


DeMarco
2. Richard F. Schmidt, Software Engineering, 2013
https://www.sciencedirect.com/science/article/pii/B9780124077683000173
3. Software Engineering, Architecture-driven Software Development 2013, P. 323-333
https://www.sciencedirect.com/science/article/pii/B9780124077683000197
4. Accesat la: June 11, 2019, Editura: Encyclopædia Britannica, Data publicatiei: December
28, 2017, Numele articolului: Information system, Scris de: Vladimir Zwass,
https://www.britannica.com/topic/information-system
5. Carol Britton, Jill Doake, in A Student Guide to Object-Oriented Development, 2005,
https://www.sciencedirect.com/topics/computer-science/state-diagrams

6. 1990, Designing Information Systems Stanley G. Blethyn and Carys Y. Parker, Butterworth-
Heinemann https://www.sciencedirect.com/book/9780750610384/designing-information-
systems
7. Constantine, L. L., & Lockwood, L. A. D. (1999) Software for Use: A Practical Guide to the
8. Models and Methods of Usage-Centered Design. Boston: Addison-Wesley.
9. Ross Shannon, https://www.yourhtmlsource.com/starthere/whatishtml.html
10. Flanagan, David. JavaScript - The definitive guide (6 ed.). p. 1. JavaScript is part of the
triad of technologies that all Web developers must learn: HTML to specify the content of web
pages, CSS to specify the presentation of web pages, and JavaScript to specify the behaviour
of web pages.
11. Press release announcing JavaScript, "Netscape and Sun announce JavaScript", PR
Newswire, December 4, 1995

35

S-ar putea să vă placă și