Documente Academic
Documente Profesional
Documente Cultură
Prof.coord.:Novac Cornelia
Studenti:
Cornea Madalina
Dumitru Georgiana
Niculescu Ana-Maria
Cuprins
Introducere..................................................................................................................................................3
Ciclul de viata al unui site de licitatii online................................................................................................5
1. Faza de analiza................................................................................................................................5
2. Faza de proiectare............................................................................................................................7
Metodologii de dezvoltare a programelor - Modelul cascada............................................................10
Modelul relational al bazei de date....................................................................................................12
3. Faza de implementare....................................................................................................................12
4. Faza de testare...............................................................................................................................24
Modulul de inregistrare.........................................................................................................................24
Modulul de autentificare........................................................................................................................25
5. Monitorizare si control..................................................................................................................26
Managementul proiectului.........................................................................................................................27
1. Managementul scopului.................................................................................................................27
Diagrama WBS..................................................................................................................................28
2. Managementul Calitatii.................................................................................................................30
3. Managementul Riscului.................................................................................................................31
IDENTIFICAREA RISCURILOR....................................................................................................31
ANALIZA RISCURILOR.................................................................................................................31
REACTIA LA RISC..........................................................................................................................32
4. Managementul resurselor umane...................................................................................................32
1 . Identificarea nevoilor de personal.................................................................................................32
2. Definirea rolurilor si responsabilitatilor membrilor echipei...........................................................33
5. Managementul investitiilor (achizitiilor).......................................................................................34
6. Managementul costului..................................................................................................................35
Modelul COCOMO...........................................................................................................................35
7. Managementul timpului.................................................................................................................37
Diagrama Gantt.................................................................................................................................38
Concluzii...................................................................................................................................................41
2
Introducere
Realizarea unui sistem informatic reprezinta
o activitate complexa si de durata, ce antreneaza
mari resurse materiale, umane si de timp. Prin
analogie, realizarea unui sistem informatic se poate
asemana foarte bine cu realizarea unui obiectiv de
investitii. In acest sens, este lesne de intuit
paralelismul dintre acestea. Asa cum obiectivele de
investitii necesita un plan de realizare si de urmarire
sub aspectul incadrarii in costuri, termene de punere in functiune si niveluri
calitative, tot la fel se pune problema si pentru realizarea unui proiect informatic
Managementul proiectelor consta in aplicarea cunostintelor,
capabilitatilor, instrumentelor si tehnicilor specifice pentru activitatile unui
proiect, care au obiective, scopuri si cerinte definite, referitoare la timp,
costuri, calitate si parametri de performanta, activitati considerate ca importante si
adecvate pentru finantare. Timpul, costul, calitatea si performantele sunt
constrangeri pentru proiect.
Managementul proiectelor reprezintă un mod de a acţiona pe baza unui plan
riguros, pentru a atinge unele obiective formulate cât mai limpede posibil, într-o
perioadă limitată de timp şi cu resurse limitate.
Indiferent de dimensiunea unui proiect sau de complexitatea acestuia,
îndeplinirea obiectivelor înseamnă atingerea standardelor de calitate propuse, în
limitele de timp şi de buget stabilite.
Se poate spune ca traim într-o societate informatizata. În zilele noastre,
întâlnim calculatoare peste tot, de la micul magazin din colt, care-si tine evidentele
3
sale cu ajutorul unui calculator si pâna la ghiseul la care platim abonamentele de
telefonie, cablu TV, Internet, la examenele pentru permisul de conducere sau alte
examene pentru diferite domenii oricare ar fi acestea si multe altele. Peste tot sunt
calculatoare, legate eventual între ele si formând astfel retele de calculatoare. Toate
acestea se datoreaza faptului ca ne dam seama din ce în ce mai mult ca sistemele
de calcul, calculatoarele ne usureaza munca si viata prin aparitia lor.
Internetul este un canal de comunicare atat de important incat a devenit parte
integranta din activitatea zilnica a multor oameni. Internetul favorizeaza deci
comunicarea si prin urmare vanzarile, contactele si notorietatea unei firme.
Licitaţii on-line este un termen utilizat în mod generic pentru a desemna
site-urile care permit persoanelor fizice şi juridice vânzarea unui număr variat de
bunuri prin utilizarea mai multor mijloace, incluzând licitaţia.
Aceste site-uri nu îndeplinesc funcţiile unui organizator de licitaţii şi prin
urmare obligaţiile legale din acest domeniu nu li se aplică.
4
Ciclul de viata al unui site de licitatii online
1. Faza de analiza
~ Documentul de specificare ~
1. Solicitari de date
1.1.Tipuri
Date de intrare : user (id, adresa, telefon, email, nume user,
parola, tipul de persoana: fizica-CNP, nume, prenume- sau
juridical –CUI, denumire); date referitoare la produsele licitate
si categoriile din care fac parte;
Date de iesire : rezultatul fiecarei licitatii la finalizarea
acesteia;
Date memorate in sistem : tipul de persoana(fizica sau
juridica)
1.2.Solutia de back-up trebuie sa asigure o protectie eficienta a datelor
prin stocarea copiilor de salvare pe medii de stocare.
1.3.Baza de date relationala trebuie sa ofere facilitati pentru
modificari, inserari, stergeri, de catre administrator ale obiectelor
bazei de date.
1.4.Sa existe un sistem de validare a introducerii datelor (validare
CNP/CUI-se va verifica pe baza CNP-ului daca persoana
respectiva este majora, caz in care i se va permite participarea la
licitatie). Aplicatia va asigura calitatea datelor introduse prin
proceduri de validare :
prin definirea campurilor obligatorii (id-uri);
a formatului acceptat pentru anumite campuri(CNP/CUI);
5
a unor valori sau plaje de valori posibile pentru anumite
campuri(pf/pj);
prin verificarea si atentionarea utilizatorilor asupra
contradictiilor dintre inregistrari( reintroducerea parolei la
inregistrarea unui cont nou);
sa nu permita existenta datelor dublate, sa sesizeze datele
inconsistente si datele lipsa.
2. Solicitari functionale
2.1.Site-ul va avea o interfata grafica din care vor fi accesibile toate
functionalitatile, si o parte de administrare;
2.2.Autentificarea-accesul user-ului sau administratorului in modulele
pentru care dispune de drepturile necesare se va face pe baza unui
nume de utilizator si parola.
2.3.Atributiile administratorului constau in:
Introducerea/stergerea/modificarea categoriilor si a produselor
aferente acestora;
Introducerea/stergerea/modificarea licitatiilor;
2.4.Sistemul trebuie sa permita administratorului cautarea unui
utilizator: dupa nume sau/si prenume in cazul persoanelor fizice si
dupa denumire in cazul persoanelor juridice, si cautarea
produselor dupa denumire;
2.5.User-ul logat in site sa poata vizualiza toate licitatiile curente,
respectiv produsele care fac obiectul acestora si sa poata participa
la licitatii.
2.6.Aplicatia trebuie sa permita retinerea ultimei oferte lansate de un
utilizator pentru un produs in cadrul unei licitatii, astfel incat
acestuia nu i se va permite sa introduca o suma mai mica decat
valoarea ofertei maxime pana la momentul respectiv.
2.7.Sistemul trebuie sa permita afisarea ofertei castigatoare la
expirarea perioadei de desfasurare a unei licitatii.
2.8.Se vor folosi liste de selectie pentru introducerea informatiilor
predefinite si respectiv campuri editabile pentru editarea directa.
3. Restrictii
3.1.Aplicatia este realizata in limbajul de programare PHP, in mediul
Dreamweaver, baza de date relationala fiind reprezentata de MySQL .
6
2. Faza de proiectare
In aceasta etapa, site-ul este planificat in detaliu. Probabilitatea de
succes a proiectului este intr-o mare masura, direct proportional cu perioada
de planificare si cu nivelul de detaliu la care aceasta se face. Planificarea a
economisit timp si bani, prin evitarea situatiilor de pierdere a eficientei
echipei de implementare.
Planificarea a presupus o intelegere aprofundata a clientului si
totodata ne-am asigurat ca putem realiza un proiect care sa furnizeze cu
succes serviciile si informatiile necesare. Rezultatul acestei etape este un
document de proiectare, ce va include informatii detaliate despre limbajele
de programare, despre metodele de dezvoltare si stuctura bazei de date.
~ Documentul de proiectare ~
7
Eficiența : PHP-ul se folosește de mecanisme de alocare a resurselor,
foarte necesare unui mediu multiutilizator, așa cum este web-ul;
Securitate : PHP-ul pune la dispoziția programatorului un set flexibil
și eficient de măsuri de siguranță;
Flexibilitate : fiind apărut din necesitatea dezvoltării web-ului, PHP a
fost modularizat pentru a ține pasul cu dezvoltarea diferitelor tehnologii.
Nefiind legat de un anumit server web, PHP-ul a fost integrat pentru
numeroasele servere web existente: Apache, IIS, Zeus, server, etc.;
Gratuitate : este probabil cea mai importantă caracteristică a PHP-
ului. Dezvoltarea PHP-ului sub licența open-source a determinat adaptarea
rapidă a PHP-ului la nevoile web-ului, eficientizarea și securizarea codului.
PHP poate rula pe majoritatea sistemelor de operare, de
la UNIX, Windows, sau Mac OS X și poate interacționa cu
majoritatea serverelor web. Codul dumneavoastră PHP este interpretat de
serverul WEB și generează un cod HTML care va fi văzut de utilizator
(clientului -browserului- fiindu-i transmis numai cod HTML).
PHP Romania este comunitatea oficială de programatori de PHP din
România. Grupul a fost înființat în 2002, ajungând să cuprindă peste 18.000
de membrii înscriși oficial în 2011. Comunitatea oferă suport tehnic gratuit
tuturor membrilor prin intermediul forumului de discuții și prin intermediul
blogurilor membrilor activi ai comunității.
8
Serverul de baze de date MySQL este foarte rapid, fiabil şi uşor de
utilizat. Iniţial a fost dezvoltat pentru a manipula baze de date de dimensiuni
mari mult mai rapid decât soluţiile existente.
Câteva dintre caracteristicile de bază ale MySQL sunt:
- Funcţionează pe diferite platforme
- Dispune de API pentru C, C++, Eiffel, Java, Perl, PHP, Pyton, Ruby şi Tcl
- Complet multi-threaded folosind thread-uri de kernel. Acest lucru
înseamnă că poate lucra cu uşuinţă pe mai multe procesoare dacă sunt
disponibile
- Un sistem de alocare a memoriei foarte rapid şi bazat pe thread-uri
- Foloseşte tabele temporare stocate în memorie
- Funcţiile SQL sunt implementate folosind o bibliotecă de clase optimizată
şi sunt foarte rapide. De obicei, nu are loc alocare a memoriei după
iniţializarea interogărilor.
- Serverul este disponibil ca program separat ce poate fi folosit într-un mediu
de reţea de tip client/server. De asemenea, este disponibil şi ca bibliotecă ce
poate fi inclusă în aplicaţii de sine stătătoare
- Oferă motoare tranzacţionale şi non-tranzacţionale de stocare a datelor
Comenzile SQL se pot scrie cu litere mari sau mici, având acelaşi
efect. Comenzile SQL se termină, uzual, cu caracterul “ ; “. Dând comanda
help; (sau \h sau ?) pe ecran apar o serie de
comenzi MySQL importante.
9
show - se foloseşte pentru listarea tabelelor care alcătuiesc
baza de date
select - este cea mai complexă comandă din limbajul SQL şi
este destinată regăsiriiunor anumite date
quit - determină întreruperea conexiunii cu serverul MySQL
10
Dacă aceste reveniri sunt ocazionale şi limitate la faze adiacente, modelul în
Avantaje:
3. Faza de implementare
In aceasta etapa am dezvoltat structura site-ului si am finalizat
designul grafic, urmarind sa respectam cu strictete atat documentul de
specificare, cat si documentul de proiectare.
In cadrul aceleiasi etape, ne-am ocupat si de indepartarea erorilor.
12
~ Manual utilizare site licitatii online ~
1. Autentificare
13
2. Inregistrare
o Persoana fizica
o Persoana juridica
Interfata
14
I. Vizualizarea licitatiilor disponibile cu posibilitatea selectarii uneia
dintre ele.
a. Vizualizare produs
15
b. Licitare
16
In fiecare moment se retine pentru ultima oferta plasata de catre un
participant la licitatie, care trebuie sa depaseasca oferta maxima la acel
moment.
Administrare
17
1. Introducere categorie
18
3. Licitatie noua
4. Sterge categorie
19
5. Sterge produs pe categorie
6. Sterge licitatie
7. Sterge utilizator
8.
20
9. Modifica categorie
21
11.Modifica licitatie
12.Modifica fisier
22
13.Cautare utilizator
14.Cautare produs
23
4. Faza de testare
Procedura de testare este imparita in doua etape:
- testarea interna - realizata de catre echipa de dezvoltare
- testarea externa - realizata in colaborare cu personalul din partea
clientului
Aceasta etapa este una ciclica permitand rezolvarea tuturor
problemelor de functionalitate, asigurandu-se in final un produs software
corect si perfect functionabil, care poate fi lansat cu incredere.
24
Modulul de autentificare
Verificare introducere valori in ambele campuri
25
5. Monitorizare si control
In cadrul acestei etape se gestioneaza si intretine produsul software
livrat , efectuandu-se imbunatatiri la cererea clientului. Aceasta implica
de asemenea si o actualizare continua a site-ului si o monitorizare cu
regularitate a performantelor pentru asigurarea succesului site-ului. Ne
am angajat sa realizam si o evaluare periodica a site-ului, evaluare in
urma careia se poate ajunge la o decizie de redefinire sau de inchidere a
site-ului.
Redefinirea implica din nou faza de proiectare, urmata de cea de
implementare si testare a noii versiuni, in paralel cu operarea si intretinerea
versiunii existente.
In cazul in care scopul definit al site-ului nu mai este unul de
actualitte sau in cazul in care acesta nu mai este util nici pentru client, nici
pentru vizitatori, se poate ajunge la inchiderea site-ului.
26
Managementul proiectului
1. Managementul scopului
27
Diagrama WBS
Dintre toate tehnicile de management de proiect, este poate cea mai clară
si auto-explicativa: denumirea sa ne spune că trebuie sa realizam o
descompunere (a întregii munci din cadrul proiectului), iar rezultatul obţinut
este o structura ordonata. WBS oferă o metodă de descriere în mod vizual a
activităţilor şi proceselor proiectului. Se prezintă în mod uzual sub forma unei
structuri arborescente pe mai multe nivele, fiecare nivel reprezentând un grad
de detaliere a proiectului. Toata munca proiectului este inclusa in WBS;
activitățile care nu se afla in WBS nu există, si in consecință, nu li se pot aloca
resurse, nu pot fi bugetate si programate spre execuţie. Din acest motiv, trebuie
sa fim foarte atenţi atunci când alcătuim WBS, astfel încât sa includem toate
activităţile.
28
Diagrama WBS
2. Managementul Calitatii
3. Managementul Riscului
Cand vine vorba despre riscuri trebuie sa se identifice atat riscurile care pot
interveni intr-un mod total neplanificat, cat si cele care apar pentru ca nu lucru
planificat nu se desfasoara conform planificarii. Deoarece ne este imposibil sa
anticipam viitorul sau sa luam in calcul absolute toate situatiile posibile, toate
proiectele includ anumite riscuri.
IDENTIFICAREA RISCURILOR
31
ANALIZA RISCURILOR
Aceasta etapa presupune stabilirea impactului pe care fiecare dintre riscurile
stabilite il poate avea asupra proiectului si asupra procesului de dezvoltare a
produsului software. Astfel: daca ar fi intervenit cerinte suplimentare, termenul
de finalizare al proiectului ar fi fost cu siguranta deposit. Daca s-ar fi produs in
echipa schimbari, calitatea produsului software ar fi fost posibil sa scada
calitatea acestuia si de ce nu, sa se depaseasca limitele proiectului.
REACTIA LA RISC
In aceasta ultima etapa a managementului de proiect am urmarit sa eliminam
riscurile sau sa le reducem.
32
îți informezi clienții și furnizorii cu privire la activitățile firmei
îți promovezi afacerea în cel mai vast spațiu comercial care exista
îți vinzi produsele sau serviciile, prin intermediul site-ului
îți păstrezi clienții și îi fidelizezi, prin intermediul sistemului de
management al clienților
a) Manager
33
asigura rezolvarea problemelor aparute in realizarea proiectului si
informeaza la timp echipa de management despre problemele aparute si pe care
nu le poate rezolva la nivelul sau.
face propuneri de imbunatatire a stilului de lucru pentru a maximiza
eficienta atingerii obiectivelor propuse
motiveaza echipa de proiect prin comunicare
raspunde de rezolvarea prompta a problemelor de comunicare ce apar
in cadrul activitatilor proiectului.
raspunde de respectarea termenelor stabilite prin contracte.
raspunde de pastrarea confidentialitatii informatiilor la care are acces
b) Programator
34
5. Managementul investitiilor (achizitiilor)
6. Managementul costului
35
Modelul COCOMO
COCOMO (COnstuctive COst MOdel) este unul din cei mai bine
documentati algoritmi de estimare a costului (Boehm, 1981). În forma sa cea
mai simplã, numitã “Basic COCOMO”, formula care exprimã legãtura dintre
efort si mãrimea programului este:
E = b*KLOC^c ,
unde b si c sunt constante ce depind de tipul proiectului ce este executat iar
KLOC reprezintã mãrimea programului în kilo-linii de cod.
Boehm distinge trei clase de proiecte:
Organice: În proiectele de tip organic o echipã relativ micã dezvoltã
programul într-un mediu cunoscut. Persoanele implicate au în general
experientã în proiecte similare realizate în organizatia lor. Astfel, ei pot
sã lucreze de la început, nefiind necesare investitii initiale.Proiectele de
acest tip sunt de multe ori programe relativ mici;
Integrate: Proiectele din acest tip implicã sisteme unde mediul impune
constrângeri severe.Produsul va fi integrat într-un mediu care este foarte
strict. Exemplu de asemenea proiecte sunt programe de control al
traficului aerian sau aplicatiile militare;
Semidetasate: Aceasta este o formã intermediarã. Echipa poate fi formatã
din persoane experimentate si neexperimentate, proiectul poate fi destul
de mare, dar nu foarte mare.
Pentru clase diferite, parametrii metodei Basic COCOMO iau urmãtoarele
valori:
Clasa de proiect b c
Organic 2.4 1.05
Semidetasatã 3.0 1.12
Integrate 3.6 1.20
Tabelul urmãtor prezintã estimãri ale efortului pentru fiecare din cele trei
moduri, pentru diferite valori ale KLOC (desi un proiect organic de un milion
de linii de cod nu este realist). Se
36
observã influenta foarte mare a constantei c asupra estimãrilor obtinute.
Estimãrile efortului sunt exprimate tot în luni-om.
b=2.4 ;
c=1.05
KLOC ≅ 0,5;
c=1685 ;
}
→ E=2.4 ∙ 0,51.05=1,15
Scrierea de mai putin cod: Mãrimea sistemului este una din cauzele
principale ale efortului si costului. Prin metode care încearcã sã reducã
mãrimea, cum ar fi reutilizarea
componentelor si utilizarea de limbaje de nivel înalt, se pot obtine reduceri
semnificative;
37
Stimularea oamenilor sã lucreze la capacitatea maximã: Capacitatea de lucru
individual si în echipã au un mare impact asupra productivitãtii. Angajarea
celor mai buni oameni este de obicei o afacere profitabilã. O mai bunã
stimulare, conditii mai bune de lucru, cursurile de perfectionare asigurã
oportunitãti de crestere a productivitãtii;
Evitarea refacerii componentelor dezvoltate anterior: Studiile au arãtat cã
pentru a rescrie ceea ce s-a produs deja este necesar un efort considerabil.
Aplicând modele cum ar fi
realizarea prototipurilor si utilizarea metodelor de programare orientatã obiect
(precum
abstractizarea datelor), se pot reduce semnificativ costurile;
Dezvoltarea si folosirea mediilor de dezvoltare integrate, cu instrumentele ce
pot ajuta la eliminarea sau eficientizarea unor etape.
7. Managementul timpului
Diagrama Gantt
38
Prezentarea caracteristicilor metodei
39
40
41
Concluzii
Închiderea proiectului are loc odată cu prezentarea rezultatelor finale
şi a concluziilor care vor servi ca „lecţii” viitoare.
În momentul în care destinaţia a fost atinsă, proiectul este încheiat, dar
mai trebuie făcut „ceva”, se poate numi audit. Este vorba de a învăţa din
propria experienţă, de a trece în revistă ce a fost bine, ce a fost rău, ce poate
fi îmbunătăţit pe viitor, nu pentru a blama pe cineva, ci pentru a nu repeta
greşelile
Probleme:
Imbunatatiri:
Aplicatia ar putea fi dezvoltata într-un fel ca sa
deserveasca toate domeniile de vanzare
Al treilea punct de dezvoltare ar putea fi crearea
unui forum de discutii între vanzatori si cumparatori
42