Analiză (inginerie software)

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

În ingineria software , analiza este una dintre etapele ciclului de viață al software-ului ; are scopul general de a clarifica, detalia și documenta funcțiile, serviciile și performanțele care trebuie oferite de un sistem sau program software , pentru a rezolva o problemă dată în contextul în care va trebui să funcționeze. Informațiile colectate în faza de analiză reprezintă punctul de plecare pentru proiectarea unui produs software și pentru întregul proces de realizare , validare și întreținere a acestuia.

Descriere

Dacă analiza este o fază care se încheie odată pentru totdeauna la începutul procesului de creare a unui produs software sau o activitate care se desfășoară iterativ în procesul în sine, depinde de modelul particular al ciclului de viață al software-ului adoptat în proiect.

Metodele și instrumentele (atât conceptuale, cât și tehnice) cu care se efectuează analiza depind de metodologia aleasă. În cazul analizei orientate obiect , de exemplu, instrumentele pot include notații precum UML , care permite descrierea domeniului aplicației , precum și modul în care sistemul trebuie să interacționeze cu acel domeniu, în ceea ce privește clasele, relațiile dintre clase, și alte concepte tipice dezvoltării orientate pe obiecte ; și instrumentele pot include medii specifice Inginerie software asistată de computer ( CASE) , cum ar fi Rational Rose .

Activitatea de analiză este totuși complexă și se pot distinge diferite aspecte sau subtaskuri; în funcție de metodologia aleasă și de modelul ciclului de viață al software-ului utilizat ca referință, aceste sarcini secundare pot avea un accent relativ diferit (sau chiar nu pot fi luate în considerare).

Exemple de sarcini secundare care pot fi considerate parte a analizei în sens general includ:

  • definirea problemei , care constă în înțelegerea deplină a problemei pe care sistemul care urmează să fie dezvoltat este chemat să o rezolve;
  • analiza de fezabilitate urmărește să stabilească dacă obiectivele stabilite pentru dezvoltarea sistemului sunt rezonabile și realizabile;
  • analiza costurilor și beneficiilor , care evaluează mai întâi comoditatea economică a dezvoltării sistemului software în cauză, luând în considerare costurile preconizate ale acestuia și beneficiile pe care le poate oferi utilizatorilor săi;
  • analiza domeniului , care constă în înțelegerea deplină a contextului sau a domeniului aplicației în care sistemul va trebui să acționeze;
  • analiza cerințelor , care constă în specificarea în detaliu a serviciilor, funcțiilor și, eventual, a performanțelor necesare sistemului; această fază conduce cel puțin la redactarea specificației cerințelor , care poate avea, de asemenea, o valoare contractuală între clientul de sistem și organizația care trebuie să o implementeze.