Documente Academic
Documente Profesional
Documente Cultură
Prezentare 5
‹1›
4.3. Elemente ale analizei de sistem
Un management eficient implica existenta unui sistem
informational fiabil, în masura sa faca fata solicitarilor procesului
de decizie. Aparitia unor discordante în procesul de decizie,
furnizarea cu întârziere a informatiilor, nerealismul acestora,
aparitia unor conflicte ca urmare a existentei unor circuite
paralele a caror existenta încalca criteriile de confidentialitate
impuse, pot fi cauze ale începerii unor procese de proiectare
sau reproiectare a sistemului informational.
El consta, de fapt, în implementarea unui nou set de
proceduri de procesare a informatiei.
‹#›
Pentru elaborarea modelului functional, cel mai important
pentru o analiză corectă, trebuie parcurse următoarele etape:
- identificarea datelor globale de intrare;
- identificarea datelor globale de ieşire din sistem;
- descompunerea sistemului în componente functionale;
- elaborarea schemelor diagramelor de flux pentru legăturile dintre
intrările şi ieşirile fiecărei componente a sistemului;
- identificarea eventualelor restrictii asupra circulatiei informatiilor;
- cresterea eficientei fluxurilor informationale prin adăugarea,
modificarea si suprimarea unor componente ale acestora.
Integrarea modelelor static, dinamic şi functional ale
domeniului sistem se poate finaliza în obtinerea unei solutii de
optim între două variante extreme, fiecare având avantaje si
dezavantaje.
O primă abordare constă în obtinerea unui model puternic
dependent de aplicatii (în special modelul functional) iar cealală
se referă la modelarea complet independentă de aplicatii,
‹#›
costisitoare însă eficientă.
4.4. Proiectarea propriu-zisa
Design-ul sistemului – dacă analiza sistemului descrie ce fel
de sistem trebuie folosit pentru îndeplinirea scopului, design-ul
sistemului specifică cum sistemul îşi va atinge obiectivele.
Design-ul este constituit din specificaţii utilizate pentru:
- dezvoltare de softuri;
- achiziţia de hardware;
- testarea sistemului;
- alte activităţi legate de implementarea sistemului.
Totodată, design-ul sistemului are la bază trei activităţi:
- designul interfaţei cu utilizatorul;
- datele utilizate;
- procesul.
Fazele proiectarii
Procesul de proiectare, care este întâlnit în literatura de
specialitate si sub termenii de rationalizare sau reproiectare,
este un proces complex, care poate sa afecteze întreg
‹#›
sistemul sau parti componente ale sale.
. Criteriul de baza al proiectarii consta în eliminarea redundantelor
informationale. Privit la nivelul întregului sistem al întreprinderii comerciale,
procesul de eliminare a redundantelor este orientat pe urmatoarele etape:
‹#›
Definirea proiectului presupune o bună întelegere a problemei de rezolvat,
schitarea interfetei cu utilizatorul şi stabilirea posibilitătilor de comunicare cu alte
produse informatice. Pornind de la aceste informatii se trece la elaborarea unui caiet
de sarcini care trebuie să contină descrierea tehnică a proiectului şi un prototip al
viitorului manual de utilizare.
În urma încheierii acestor primi paşi se va trece la faza de proiectare a
produsului. Prin proiectare se întelege stabilirea structurilor de date cele mai potrivite,
găsirea algoritmilor optimali, împărtirea programului în module independente şi
stabilirea interfetelor de comunicare între acestea. Cu alte cuvinte, este o fază de
definire abstractă a modului de realizare a obiectivelor specificate în caietul de sarcini.
Implementarea constituie începutul activitătii de programare, care va
continua şi pe parcursul următoarelor etape. În această fază modelul abstract obtinut
în urma proiectării va fi transpus în practică cu ajutorul limbajelor de programare.
După implementarea setului de module, se trece la testarea individuală a fiecăruia
dintre ele. Apoi modulele vor fi interconectate în cadrul produsului final, care va fi la
rândul său supus unui set de teste cât mai complete. În urma obtinerii unei functionări
corespunzătoare se poate finaliza şi manualul de utilizare.
proiectarea logică
(proiectarea sistemului)
proiectarea fizică
( proiectarea
programului)
implementarea
testarea modulelor
independente
testarea sistemului ca un
tot unitar
intrarea în exploatare
întreţinerea
‹#›
Gruparea fazelor ciclului de viată ale unui produs software sugerează
existenta a trei etape de bază: analiza, proiectarea şi implementarea.
Analiza constă în realizarea unui dialog eficient cu beneficiarul sau potentialul
utilizator al produsului software, în urma căruia să poată fi stabilit un set de facilităti pe
care le va contine produsul final. Faza de proiectare are drept scop crearea unui
schelet functional pe care să se bazeze programatorii la implementare. Acest schelet
va trebui să asigure protejarea informaţiilor, independenta modulelor si coeziunea
produsului final.
Modelul "în cascadă" al ciclului de viată al unui produs software este numai
un cadru general în jurul căruia orice echipă de programatori îşi poate clădi propria sa
metodologie dedicată. În funcţie de dimensiunea unui proiect, cele şase etape pot fi
detaliate mai amănuntit, sau concentrate într-un număr mai redus de paşi.
Un proiect de uz intern şi de mici dimensiuni ar putea fi rezolvat în numai patru etape:
- stabilirea caietului de sarcini;
- proiectarea produsului;
- implementarea programului;
- testarea codului programului scris.
Un exemplu detaliat a ciclului de viată a unui produs software include:
- stabilirea specificaţiilor;
- proiectarea preliminară;
- proiectarea detaliată;
- implementarea;
- testarea la nivel de module;
- integrarea modulelor în cadrul proiectului final;
‹#› - validarea produsului;
- exploatarea programului.
Pornind de la modelul " în cascadă " au fost create variante, unele numai prin
schimbarea terminologiei, altele aducând modificări mai importante. Aceste
modele au la bază avantajul simplităţii şi clarităţii si constau din definirea unui
număr de etape distincte si a unui set relativ stabil de cerinte de intrare si iesire
pentru fiecare etapă. Astfel se pot evita revenirile şi modificările haotice ale
rezultatelor unei etape anterioare.
Orice model însă are avantaje şi dezavantaje. O primă problemă
constă în asigurarea eficienţei comunicării între beneficiari şi analisti. Lipsa unui
limbaj comun accesibil specialiştilor din diverse domenii creează confuzii care
sunt clarificate tocmai după încheierea analizei şi întocmirea caietului de
sarcini. În cadrul proiectelor de mari dimensiuni, se poate întâmpla ca pe
parcursul dezvoltării produsului software specificaţiile initiale să se modifice în
urma evoluţiilor ştiinţifice sau tehnologice înregistrate în diverse domenii ale
industriei. Principalul avantaj al modelului " în cascadă " constă în
"industrializarea" procesului de dezvoltare a software-ului, iar principalul său
dezavantaj constă în faptul că nu asigură decât o comunicare unidirecţională.
Ideea care a stat la baza acestui model a fost încercarea de a evita revenirea şi
modificarea rezultatelor fazelor precedente. Datorită eficientei relativ scăzute a
dialogului cu beneficiarul, s-a făcut simţită necesitatea introducerii unui
mecanism puternic de feedback, care să optimizeze dialogul specialiştilor din
domenii
‹#› de activitate complet diferite. Astfel a apărut modelul "în cascadă"' cu
prototipuri. Acesta introduce un nou parametru din caietul de sarcini - prototipul.
Prototipul reprezintă un program care simulează functionarea produsului final. O
asemenea simulare este utilă deoarece dă posibilitatea viitorului beneficiar să testeze
interfaţa cu utilizatorul (user interface) şi să evalueze setul de facilităti pe care le va
oferi programul final. Aceste etape vor avea loc într-o fază initială a dezvoltării
produsului, astfel încât orice modificare să implice un cost minim.
Folosirea prototipurilor facilitează în mod evident realizarea unui dialog
eficient între informaticieni şi beneficiarii lor. Atât unii cât şi ceilalti vor avea ocazia să
vadă dacă au înteles şi au fost înteleşi corect.
Prototipurile contin însă două inconveniente: tendinta înlocuirii întregului ciclu
de viată al produsului software cu un prototip în continuă evolutie si tendinta utilizării
prototipului ca nucleu al viitorului produs. Prima abordare duce la o îndepărtare de la
rigurozitatea modelului " în cascadă " şi conduce, în cel mai bun caz, la o "programare
intuitivă '' iar în cel mai rău caz, la un blocaj total în procesul de dezvoltare a
programului. Cea de a doua problemă constă în mirajul unui produs aproape finalizat
(prototipul) şi în tentatia de a mai "aranja" putin prototipul pentru a-l transforma într-un
produs cu aspect comercial. O astfel de improvizatie va afecta în mult eficienta
programului deoarece prototipul nu este decât o cale de experimentare a ceea ce ar
trebui să însemne programul final.
Au apărut mai multe metodologii de dezvoltare a produselor software, bazate
pe diversele variante ale modelului " în cascadă " care propun tehnici de lucru
capabile să coordoneze eforturile făcute în cadrul etapelor ciclului de viată al
produselor software.
‹#›