Liga Software
De ce este important sa cereti cerinte si specificatii corecte de la clienti?
Apr 20th
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.
Modelul cascada (waterfall) de dezvoltare al unui program software
Mar 15th
Modelul cascada defineste urmatorii pasi in dezvoltarea unui program:
- Specificarea cerintelor
- Proiectarea arhitecturala
- Proiectarea detaliata
- Scrierea codului
- Testarea componentelor
- Testarea sistemului
- Acceptarea proiectului
Nu se stipuleaza cum se fac acesti pasi (metodologie, notatii), ci doar ordinea efectuarii lor.
Avantajul metodei de dezvoltare in cascada este acela ca o sarcina complexa este impartita in mai multi pasi mici, ce sunt mai usor de administrat. Fiecare pas are ca rezultat un produs bine definit (documente de specificatie, model, etc.)
Etapele dezvoltarii unui produs software
Mar 6th
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.
Etapele principale ale unei scheme de testare
Feb 11th
- Selectati ce trebuie măsurat (cuantificat) de testul respectiv. Înainte de realizarea testului,
- trebuie identificate scopurile acestuia. Scopurile pot fi diferite (spre exemplu, testarea fiabilitătii, testarea completitudinii cerintelor).
- Decideti cum faceti testarea a ceea ce trebuie testat. După ce ati stabilit ce este de testat, trebuie să decideti cum realizati testele relevante.
- Dezvoltati cazurile de test. Pentru tipurile de testare deja acceptate, trebuie creată o colectie de cazuri de test (situatii de test) pentru antrenarea sistemului supus testării.
- Determinati rezultatele asteptate ale testului respectiv.
- Executati cazurile de test.
- Comparati rezultatele obtinute cu cele asteptate.
Reguli de bază pentru realizarea testării sistemelor software:
Feb 11th
- Se determină momentul în care se opreste testarea;
- Responsabilitatea testării programului revine unui tester, nu celui ce realizat programul;
- Se descriu rezultatele asteptate pentru fiecare caz de test;
- Se scriu cazuri de test pentru condiŃii de intrare valide si nevalide;
- Se verifică rezultatele fiecărui test.
- Testarea se atribuie celor mai creative persoane din echipă

