dezvoltare software

De ce este important sa cereti cerinte si specificatii corecte de la clienti?

Un studiu realizat pe 350 de companii de software arata ca marea majoritate a proiectelor nu au fost finalizate la timp sau au fost abandonate inainte sa fie lansate:

Cauzele gasite au fost urmatoarele:

1. cerinţe incomplete (13.1%)

2. lipsa implicării utilizatorilor (12.4%)

3. lipsa resurselor (10.6%)

4. aşteptări nerealiste (9.9%)

5. lipsa suportului executivului (9.3%)

6. schimbarea cerinţelor şi a specificaţiilor (8.7%)

7. lipsa planificării (8.1%)

8. sistemele nu au mai fost cerute în întregime (7.5%)

Din aceast cauza Liga Software ajuta clientii pentru stabilirea unor cerinte coerente  si care sa ajute la o finalitate si o implementare cat mai buna a proiectelor software.

Cerintele pe care le elaboram impreuna cu clientii nostri trebuie  :

  • să furnizeze o descriere generală a ceea ce utilizatorul doreşte să execute sistemul.
  • să conţină toate cerinţele cunoscute, ale utilizatorilor
  • să descrie toate operaţiile pe care le va executa sistemul
  • să descrie toate constrângerile impuse sistemului
  • să definească toate interfeţele externe sistemului sau să conţină referinţe despre ele în alte documente.

Etapele dezvoltarii unui produs software

In general exista urmatoarele etape de dezvoltare al unui produs software:

  • analiza cerintelor
  • proiectarea arhitecturala
  • proiectarea detaliata
  • scrierea codului
  • integrarea componentelor
  • validare
  • verificare
  • intretinere

Analiza cerintelor

Se stabileste ce anume vrea clientul ca programul sa faca. Scopul este inregistrarea cerintelor intr-o maniera cat mai clara si mai fidela. Claritatea se refera la lipsa ambiguitatii iar fidelitatea la inregistrarea cat mai exacta (posibil cuvant cu cuvant).

Proiectarea arhitecturala

Din motive de complexitate, programele mari nu pot fi concepute si implementate ca o singura bucata. Programul va trebui construit asadar din module sau componente. Proiectarea arhitecturala imparte sistemul într-un numar de module mai mici si mai simple, care pot fi abordate individual.

Proiectarea detaliata

Se realizeaza proiectarea fiecarui modul al aplicatiei, in cele mai mici detalii.

Scrierea codului

Proiectul detaliat este transpus într-un limbaj de programare. In mod tipic, aceasta se realizeaza modular, pe structura rezultata la proiectarea arhitecturala.

Integrarea componentelor

Modulele programului sunt combinate in produsul final.

Rezultatul este sistemul complet.

Validare

In procesul de validare ne asiguram cã programul indeplineste cerintele utilizatorului.

Un exemplu de validare este testul de acceptare, în care produsul este prezentat clientului. Clientul spune daca este multumit cu produsul sau daca mai trebuie efectuate modificari.

Verificare

In procesul de verificare ne asiguram cã programul este stabil si ca functioneaza corect din punctul de vedere al dezvoltatorilor. Intrebarea la care raspundem este: construim corect produsul?

Intretinere

Dupa ce programul este livrat clientului, mai devreme sau mai tarziu sunt descoperite defecte sau erori ce trebuie reparate. De asemenea, pot aparea schimbari in specificatiile utilizatorilor, care vor diverse imbunatatiri.