Sunteți pe pagina 1din 2

Etapele realizarii programelor

Etapele realizarii programelor

Procesul de rezolvare a unei probleme incepe cu specificarea acesteia si se incheie cu obtinerea unui program
concret si corect. Etapele procesului de programare sunt urmatoarele:

I. Specificarea problemei

In prima etapa are loc analiza problemei. Rolul analizei consta in elaborarea unui enunt complet si precis al
problemei, care sa tina seama de conditiile concrete de realizare si executie a programului. Enuntul trebuie sa
evidentieze ceea ce urmeaza sa realizeze programul, adica functiile programului. In acest scop este necesar sa se
identifice informatiile de prelucrat (datele de intrare) si rezultatele cerute (datele de iesire) ale programului.

Pentru referirea la datele de intrare si de iesire se folosesc variabile de intrare si respectiv de iesire. Ele
furnizeaza notatii simbolice pentru date. Tot in aceasta etapa se stabilesc reprezentarile si organizarea datelor de
intrare si de iesire pe suporturile externe de informatie. Acestea pot fi impuse prin enuntul initial al problemei sau pot
fi definite de catre utilizator. Rezultatul primei etape este specificatia programului.

Exemplul 1.3

Pentru exemplificarea acestei etape, se considera urmatoarea problema:

Fiind dati coeficientii unei ecuatii de gradul doi, a, b si c, de tip real, sa se calculeze (daca exista!) radacinile
reale ale acesteia. In caz contrar, sa se dea un mesaj corespunzator.

1) marimi de intrare: a, b, c;

marimi de iesire: x1, x2;

2) functia: calculeaza radacinile reale ale ecuatiei:

a*x2 + b*x + c = 0 daca exista sau afiseaza mesajul “Ecuatia nu are radacini reale” sau “Nu este o ecuatie
de gradul doi”, in cazul cand a = 0;

3) organizarea si reprezentarea datelor de intrare si iesire pe suportul extern: datele se introduc de la


tastatura si rezultatele se afiseaza pe display (monitor).

II. Determinarea algoritmului de rezolvare a problemei

Scopul acestei etape este elaborarea unui algoritm care sa realizeze functiile programului. Programatorul
trebuie sa conceapa o lista de comenzi care sa descrie secventa de operatii care va fi executata de calculator
pentru solutionarea problemei. Un calculator devine functional daca este programat, adica i se “spune” in cele mai mici
amanunte ce sa faca. Acest lucru se realizeaza prin program. In sens general, un program reprezinta descrierea unui
algoritm intr-o forma interpretabila (“inteleasa”) de catre calculator. El rezulta din codificarea algoritmului intr-un
limbaj de programare.

Gasirea algoritmului constituie de cele mai multe ori cea mai grea etapa a procesului programarii. Pentru
obtinerea algoritmului sunt necesare cunostinte din matematica, discipline stiintifice si tehnice. Studiul algoritmilor
constituie un domeniu clar delimitat in aria larga a stiintei calculatoarelor.

In general, dezvoltarea algoritmului se realizeaza iterativ, trecandu-l prin mai multe niveluri de detaliere.
Acest mod de detaliere pas cu pas este denumita proiectarea descendenta, sugerand faptul ca se trece treptat de la
o reprezentare generala, abstracta, a rezolvarii problemei la o prezentare detaliata a sa.

Problemele simple conduc la un singur algoritm compact, codificat intr-o singura unitate e program. In
exemplul prezentat anterior, algoritmul poate fi explicat foarte simplu:

Daca a = 0, atunci afiseaza mesajul “Nu este o ecuatie de gradul doi”


Problemele complexe si de dimensiuni mari sunt descompuse din punct de vedere logic
in subprobleme (parti) mai simple, corelate, care pot fi tratate separat, devenind ele insele probleme de rezolvat.
Programul rezultat din codificarea unui astfel de algoritm va fi organizat ca un sistem de module program. Prin
modularizare se simplifica nu numai procesul de dezvoltare si verificare a algoritmului, ci si procesul de codificare,
depanare si testare a programelor. Totodata, modularizarea usureaza modificarea programului si deschide posibilitatea
refolosirii unitatilor de program componente.

III. Codificarea algoritmului

Dupa elaborare, algoritmul este codificat cu ajutorul unui limbaj de programare, obtinandu-se astfel
programul care il implementeaza.

Limbajul utilizat este ales in conformitate cu specificul problemei, cu particularitatile sistemului de calcul pe
care urmeaza sa fie executat programul si, desigur, cu experienta programatorului. Codificarea algoritmului este
inlesnita de utilizarea unor simboluri si reguli speciale, precum schemele logice (organigrame) sau limbajul pseudocod.

IV. Testarea si validarea programului

Programul astfel obtinut trebuie verificat in scopul eliminarii erorilor de sintaxa si al celor de logica.
Chiar daca in urma executiei programului se obtin rezultate, adica s-au eliminat erorile de sintaxa, aceasta nu
inseamna ca acesta este corect, adica realizeaza functiile specificate.

Programul poate contine erori de logica, pentru eliminarea carora trebuie executat de mai multe ori,
folosindu-se seturi de date stabilite pe baza unor criterii considerate ca fiind adecvate problemei.

Sintaxa si semantica limbajelor de programare

Fiecare limbaj de programare, ca orice alt limbaj, se caracterizeaza prin anumite reguli de scriere corecta,
numite reguli de sintaxa. Orice instructiune a limbajului are o forma si o semnificatie. Sintaxa se refera numai
la forma instructiunii, in timp ce semnificatia este de domeniul semanticii. Semantica se refera la modul in care
trebuie interpretata instructiunea respectiva. Este evident ca, atunci cand se concepe un program, este necesar sa se
acorde atentie atat sintacticii, cat si semanticii.

Daca intr-un program nu sunt respectare regulile de sintaxa, compilatorul sesizeaza anomaliile si le
semnaleaza sub forma unor mesaje de erori de sintaxa. In astfel de situatii, codul de octeti al programului respectiv
nu va mai fi generat. Programatorul trebuie sa remedieze erorile de sintaxa semnalate si sa ceara repetarea compilarii,
pana cand nu vor mai fi constatate erori de sintaxa.

Faptul ca un program nu mai contine erori de sintaxa, deci este corect sintactic, nu inseamna insa ca el
este corect si sub aspectul realizarii sarcinii pentru care a fost conceput. Asa cum un text scris intr-o limba naturala (in
limba romana, de exemplu) poate fi corect gramatical, dar sa exprime conceptii gresite, un program poate fi corect
sintactic, dar sa descrie un set de date si/sau un algoritm care nu corespund probl emei rezolvate si deci nu permit
obtinerea solutiei corecte. Aceasta situatie nu mai poate fi sesizata de compilator, ci este in intregime pe raspunderea
programatorului.

Activitatea de dezvoltare a unui program nu se incheie in momentul validarii programului. Din acel
moment incepe etapa de intretinere, care, spre deosebire de celelalte etape, este nelimitata. In aceasta etapa
sunt efectuate modificari ale programului, fie in scopul corectarii unor erori identificate in cursul utilizarii sale, fie
pentru a-l adapta unor cerinte noi.

In aceasta etapa are o mare importanta documentatia programului; aceasta faciliteaza atat modificarile
ulterioare, cat si intelegerea sa de catre alte persoane decat cele care l-au creat.

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