Documente Academic
Documente Profesional
Documente Cultură
March 3, 2015
ELABORAREA PRODUSELOR-PROGRAM
Elaborarea unui produs-program constituie o activitate deosebit de complex, care
necesit utilizarea unei metodologii clare i unitare. De regul, o asemenea activitate se
desfoar n echipe de lucru complexe n care sunt inclui analiti, specialiti ai domeniului
pentru care se dezvolt produsul-program, programatori, specialiti n testarea i
implementarea produselor-program, utilizatori etc.
Literatura de specialitate pune n discuie o multitudine de probleme legate de
metodologia elaborrii produselor-program i subliniaz n mod deosebit necesitatea
existenei unei metodologii unitare. Totui, putem afirma c n forma sa final orice produsprogram poate fi privit ca un sistem cu funcii i componente proprii, cu intrri, ieiri,
prelucrri specifice i bucl de autoreglare i cu un scop bine stabilit.
Acest model a fost dezvoltat de ctre Royce n 1970 i este cel mai familiar
programatorilor. Aa dup cum se observ n figura precedent, caracteristica fiecrei etape
const n a se finaliza cu o verificare i o validare n scopul eliminrii eventualelor anomalii
care ar putea s apar n cadrul fiecreia. Dac se constat eventuale anomalii, atunci se va
reveni la etapa precedent pn cnd acestea vor fi eliminate. n acest fel se realizeaz o
minimizare a costului pentru produsul-program dezvoltat. n acelai timp, trecerea de la o faz
la alta, n sus i n jos, ofer modelului un caracter iterativ i incremental.
Modelul n V
Modelul n V poate fi considerat ca un caz particular al modelului n cascad prin faptul
c activitile necesare elaborrii produsului-program sunt reprezentate grafic sub forma lui
V. Esena modelului const n aceea c separ primele etape ale procesului de dezvoltare n
sub-activiti ce au legtur cu construcia sistemului. Aceast organizare sub forma literei
V este dat de faptul c se pune n relaie direct de dependen primele etape cu cele aflate
n partea de jos din modelul n cascad.
n acest model se delimiteaz urmtoarele activiti 1 [Grama, 2000,55]:
1. analiza cerinelor i studiul de fezabilitate;
2. specificarea global;
3. proiectarea de ansamblu;
4. proiectarea de detaliu;
5. programarea;
6. testarea unitar;
7. integrarea i testul de integrare;
8. testul de acceptare;
9. implementarea i testul sistem.
Grama, A., Filip, M., Medii de programare n economie, Editura Sedcom Libris, Iai, 2000, p. 55
March 3, 2015
Constatm c din lista de mai sus activitile 1-5 influeneaz n mod permanent o
activitate din 6-9, ceea ce permite o mai bun organizare a etapelor finale.
Dezavantajul acestui model const n c nu pune n eviden posibilitatea relurii unei
activiti deja parcurse, ceea ce poate s conduc la depistarea unor anomalii funcionale ale
produsului-program n faza de implementare. Acest lucru va duce la reluarea ntregului proces
de elaborare a produsului program cu costuri corespunztoare i pierderi de timp.
Modelul incremental
n modelele prezentate anterior rezult c dup o descompunere n elementele
componente, acestea sunt dezvoltate independent unele dup altele, n paralel sau secevenial
potrivit cu resursele disponibile. n modelul incremental, la un moment dat se dezvolt un
singur subansamblu de componente. Iniial se dezvolt un nucleu, iar apoi succesiv se
dezvolt incrementii care sunt totodat i integrai n sistemul propriu-zis.
Avantaje:
fiecare dezvoltare n parte este mai puin complex;
integrrile sunt progresive;
dup fiecare integrare de increment sistemul poate fi exploatat.
Dezavantaj:
necesitatea ca specificarea nucleului, a incremenilor i interaciunea lor s fie stabilite
de la nceputul proiectului.
Modelul n spiral
Modelul n spiral a fost propus n 1988 de ctre B. W. Boehm i este cel mai cunoscut
model evolutiv. El are la baz dou premise 2:
natura iterativ a dezvoltrii i nevoia de planificare i evaluare a riscurilor
fiecrei iteraii;
realizarea validrii ct mai devreme posibil i de ct mai multe ori, prin
construirea prototipurilor.
Obiectivul principal urmrit prin modelul spiral este gestiunea atent a riscurilor prin
combinarea modelului cascad cu prototipizarea. Se construiete mai nti o prim versiune a
sistemului, sub forma unui prototip, n care nu este definit ntregul sistem ci sunt luate n
considerare doar caracteristicile sale principale. Dup transpunerea prototipului n aplicaie,
aceasta este evaluat de ctre beneficiari, iar n funcie de rezultatul evalurii se pot defini i
implementa noi caracteristici ale sistemului, construindu-se un nou prototip ce va fi supus
evalurii. Acest proces se reia de mai multe ori, urmtoarele prototipuri fiind versiuni din ce
n ce mai complete ale sistemului propus. Modelul cascad se va regsi n cadrul fiecrei
iteraii.
Modelul spiral este descompus n mai multe activiti-cadru maxim 6, cum sunt
prezentate n continuare:
comunicarea cu beneficiarul (stabilirea i meninerea contactului dintre beneficiar
i proiectant);
planificarea (definirea resurselor, a termenelor limit de realizare);
analiza riscului (riscuri tehnice i de organizare);
proiectarea (definirea uneia sau mai multor reprezentri ale aplicaiei);
Oprea, D., Analiza i proiectarea sistemelor informaionale economice, Ed. Polirom, Iai, 1999, p. 68
Analiza
riscului
Evaluarea
beneficiarului
Proiectare
Silvestre, P., Verlhac, D., Le development de systemes dinformation, Edition Hermes, Paris, 1996, p. 112
March 3, 2015
abordare foarte riguroas, bazat pe echipe mici de specialiti bine pregtii, pe utilizarea
prototipurilor i impunerea unor limite rigide de timp n planificarea activitilor.
RAD se bazeaz pe modelul spiral, ceea ce permite dezvoltarea incremental i
repetitiv. Dei nu reiese din figura modelului, trebuie precizat influena metodelor orientateobiect, ce asigur o eficien sporit pentru RAD, prin utilizarea de componente pre-fabricate.
De asemenea, RAD apeleaz la generarea automat a codurilor prin sisteme CAPS
(Computer-Aided Prototyping System), care nlocuiesc scrierea manual, mai nceat a
codului i minimizeaz erorile. n fine, RAD nseamn flexibilitate, prin faptul c permite
utilizatorilor s foloseasc propriile limbaje de interogare sau generatoare de rapoarte. Dup
definirea de ctre J. Martin a filosofiei RAD 4 a urmat un val de propuneri de modele de
dezvoltare a aplicaiilor de tip RAD.
Planificarea cerinelor
Proiectare
Construire
Finalizare
dezvoltarea vizual,
crearea de prototipuri,
controlul versiunilor;
March 3, 2015
Limbajul C#
Lansat publicului n iunie 2000 i oficial n primvara anului 2002, C# este un limbaj de
programare care combin facilit i testate de-a lungul timpului cu inova ii de ultim moment. C#
deriva din doua dintre cele mai de succes limbaje de programare: C si C++. De asemenea,
limbajul este o ruda apropiat a limbajului Java.
C# pronunat (C sharp) este un limbaj de programare orientat pe obiecte dezvoltat de firma
Microsoft, ca soluie standard pentru dezvoltarea aplicaiilor Windows. Creatorii lui sunt
Anders Hejlsberg (autor al limbajelor Turbo Pascal i Delphi), Scot Wiltamuth i Peter Golde.
C# respect standardul ECMA-334 (European Computer Manufactures Association).
Bunicul limbajului C# este C-ul. De la C, C# mosteneste sintaxa, multe din cuvintele cheie
si operatorii. De asemenea, C# construieste peste modelul de obiecte definit in C++. Relatia
dintre C# si Java este mai complicata. Java deriva la randul sau din C si C++. Ca si Java, C# a
fost proiectat pentru a produce cod portabil. Limbajul C# nu deriva din Java. Intre C# si Java
exista o relatie similara celei dintre veri, ele deriva din acelasi stramos, dar deosebindu-se
prin multe caracteristici importante. Dei Java a rezolvat cu succes problema portabiliii,
exista unele aspecte care i lipsesc. Una dintre acestea este interoperabilitatea limbajelor
diferite, sau programarea n limbaj mixt (posibilitatea codului scris ntr-un limbaj de a lucra
n mod natural cu codul scris n alt limbaj). Interoperabilitatea limbajelor diferite este
esenial la realizarea sistemelor software de dimensiuni mari.
Limbajul C# contine mai multe facilitati inovatoare, dintre care cele mai importante se refera
la suportul ncorporat pentru componente software. C# dispune de facilitati care
implementeaza direct elementele care alcatuiesc componentele software, cum ar fi
proprietile, metodele si evenimentele. Poate cea mai importanta facilitate de care dispune
C# este posibilitatea de a lucra intr-un mediu cu limbaj mixt.
March 3, 2015
Laborator 3
1. Controlul de tip GroupBox
Un GroupBox este un control de tip container care se folosete pentru a plasa controale copil
pe un formular. Este un chenar dreptunghiular etichetat care nconjoar mai multe controale.
Scopul unui GroupBox este s arate vizual relaiile dintre controale. Proprietatea Text
reprezint eticheta controlului. Un asemenea control se utilizeaz de obicei pentru a grupa
controale de tip RadioButton. Dac exist dou asemenea controale, fiecare coninnd mai
multe butoane de opiune (radio), fiecare grup este mutual exclusiv, setnd o singur valoare
pentru fiecare grup.
2. Controlul de tip RadioButton
Un control de tip RadioButton permite selectarea unei singure opiuni dintr-un grup de
variante. Butoanele radio sunt plasate de obicei ntr-un grup sau un container cum ar fi Panel
sau GroupBox i permite selecatra unei singure opiuni din cadrul acelui control. n fiecare
grup o singur opiune poate fi selectat. Atunci cnd o opiune este selectat, celelalte opiuni
sunt automat deselectate. Plasate pe un formular, toate butoanele radio funcioneaz ca un
grup, permind selecia unei singure opiuni. Pentru proprietatea Name a unui control de tip
RadioButton se folosete prefixul opt (de la opiune).
Dac se dorete selecia mai multor opiuni se utilizeaz controale de tip CheckBox. Ambele
tipuri de controale ofer posibilitatea selectrii sau deselectrii opiunilor. Diferena este c
mai multe controale de tip CheckBox pot fi selectate n acelai timp pe cnd butoanele de
opiune sunt mutual exclusive.
Proprietatea Checked permite setarea sau verificarea selectrii butonului. Aceasta are implicit
valoarea true:
if (optRadioButton.Checked)
{
// codul care se execut dac opiunea este selectat
}
else
{
// codul care se execut dac opiunea nu este selectat
}
March 3, 2015
Dac o declaraie nu include ramura else, iar condiia este adevrat, se va executa ramura
Then. Dac condiia este fals, se transfer controlul la prima instruciune de dup If.
Ambele ramuri (then i else) pot conine una dau mai multe instruciuni care sunt incluse ntre
acolade ({}). Pentru o singur declaraie acoladele sunt opionale dar sunt recomandate, cu
atat mai mult cu ct Visual Studio adaug imediat acoladele, deci nu mai exist nici problema
pierderii timpului punnd acoladele.
Expresia trebuie evaluat la valoarea true sau false. Nu este acceptat un rezultat numeric sau
un tip de referin aceasta va produce o eroare de compilare. Expresiile pot fi complexe.
Operatori:
= = egalitate (nu atribuire!!!)
! operatorul negaie
&& operatorul AND
|| operatorul OR
Exemple de condiii:
(!checkBox1.Checked)
(optZece.Checked == false && optCinspe.Checked == false && optDouazeci.Checked
== false)
O declaraie sau mai multe declaraii din cadrul ramurilor Then sau Else pot fi de orice tip,
inclusiv o alt declaraie if imbricat n if-ul original. n cazul declaraiilor imbricate, fiecare
clauz else aparine ultimului If care nu are un else corespunztor. Imbricarea creeaz un flux
asemntor cu utilizarea operatorului &&. Aranjarea declaraiilor If poate afecta performana
sistemului n unele situaii.
Exemplu:
if (condition)
{
code to execute;
if (condition)
{
code to execute;
}
else if (condition)
{
if (condition)
{
code to execute;
}
}
}
else
{
if (condition)
{
code to execute;
}
}