Prototiparea software-ului

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 5 februarie 2016; verificările necesită 13 modificări .

Prototiparea software (din engleză prototip) este o etapă a dezvoltării software (software), procesul de creare a unui prototip de program  - un aspect (schiță, versiune de probă) a unui program, de obicei pentru a verifica adecvarea conceptelor, arhitecturale și / sau soluții tehnologice propuse spre aplicare, precum și să prezinte clientului programul în fazele incipiente ale procesului de dezvoltare.

Prototipul vă permite, de asemenea, să obțineți feedback de la viitorii utilizatori și, în plus, exact când este cel mai necesar: la începutul proiectului, există încă o oportunitate de a corecta erorile de proiectare aproape fără pierderi.

Prezentare generală

Procesul de prototipare constă de obicei din următorii pași:

  1. Definiția cerințelor inițiale
  2. Dezvoltarea primei versiuni a prototipului, care conține doar interfața cu utilizatorul a sistemului
  3. Examinarea prototipului de către client și utilizatorii finali, obținerea de feedback cu privire la modificările și completările necesare
  4. Reprelucrare și îmbunătățire a prototipului: ținând cont de comentariile și sugestiile primite, se modifică atât specificațiile, cât și prototipul, după care se pot repeta pașii 3 și 4.

Tipuri de prototipuri

Prototiparea are multe opțiuni diferite. Cu toate acestea, toate metodele se bazează într-o oarecare măsură pe două tipuri principale.

Prototipare rapidă

Cu prototiparea rapidă ( în engleză  rapid prototyping sau throwaway prototyping ) se presupune că se creează un aspect, care la un moment dat va fi lăsat (“aruncat”) și nu va deveni parte a sistemului finit.

Principalul avantaj al acestei abordări este viteza: ca răspuns la cerințele lor, clientul primește aproape imediat un prototip al interfeței și poate clarifica imediat cerințele înainte de a scrie codul de lucru al sistemului. Costul modificării cerințelor în această etapă este foarte mic deoarece nu există cod de rescris.

Este foarte important ca astfel de prototipuri să fie finalizate cât mai curând posibil, deoarece în acest caz timpul și resursele sunt irosite pe cod care nu va mai fi folosit.

Prototiparea rapidă nu se realizează neapărat pe aceeași platformă și pe aceleași tehnologii ca și sistemul în curs de dezvoltare. Prototipurile interfeței grafice cu utilizatorul (GUI) pot fi folosite ca pagini HTML standard sau prototipul poate fi pregătit într-un program special conceput pentru crearea de machete (de exemplu: Axure RP , Microsoft Expression Blend etc.).

Prototipări evolutive

Prototiparea evolutivă urmărește să creeze în mod constant machete de sistem care vor fi din ce în ce mai apropiate de produsul real . 

Această abordare are avantajul că la fiecare pas avem un sistem funcțional, deși nu cu toată funcționalitatea necesară, ci îmbunătățindu-se cu fiecare iterație. În același timp, nu se irosesc resurse pentru codul care va fi „aruncat”.

O abordare evolutivă a prototipării poate fi aleasă pe baza presupunerii că toate cerințele necesare sunt necunoscute la momentul începerii dezvoltării și vor fi determinate pe măsură ce programul este creat; apoi la fiecare etapă implementăm doar acele cerințe care sunt cunoscute și clare. În același timp, dezvoltatorii se concentrează uneori să lucreze numai pe acele module de sistem, ale căror cerințe au fost deja stabilite.

În unele cazuri, când vine vorba de un produs pentru o anumită nișă neocupată, utilizatorii încep să folosească sistemul chiar înainte ca acesta să fie complet finalizat, așteptând sistemul terminat, deoarece „un sistem neterminat este mai bun decât absența lui completă”.

Beneficii și riscuri

Principalele avantaje ale prototipării sunt reducerea timpului și a costurilor de dezvoltare datorită faptului că evaluarea prototipului vă permite să detectați insuficiențe sau inconsecvențe în cerințe într-un stadiu mai devreme. Cu cât se fac modificări ulterioare ale unei specificații, cu atât sunt mai scumpe, astfel încât clarificarea „ce doresc cu adevărat utilizatorii/clienții ” la începutul dezvoltării reduce costul total.

Implicarea clientului în procesul de dezvoltare joacă, de asemenea, un rol important din punct de vedere psihologic. Lucrul cu un prototip permite viitorilor utilizatori să vadă cum va arăta viitorul program și să influențeze comportamentul acestuia, ceea ce reduce discrepanțele în ideea programului dintre dezvoltatori și utilizatori. De asemenea, efectul respingerii aproape inevitabile a noului sistem în timpul implementării este redus, mai ales când acesta este introdus în locul celui utilizat anterior.

Cu toate acestea, utilizarea prototipurilor creează o serie de riscuri suplimentare.

Aplicabilitate

Întrebarea cu privire la măsura în care utilizarea prototipurilor, într-o formă sau alta, la un anumit proiect este justificată, nu are un răspuns clar. Prototiparea dă rezultate bune la proiectarea sistemelor în care o parte semnificativă a costurilor forței de muncă este asociată cu implementarea interfețelor om-calculator, iar evaluarea conformității sistemului cu cerințele clienților este în mare măsură subiectivă. În astfel de sisteme, crearea unei specificații detaliate este foarte dificilă, deoarece clientul nu poate lua în considerare toate nuanțele, iar programatorii organizează părți nespecificate la propria discreție; ca urmare, reacția tipică la demonstrarea sistemului finit este: „Da, totul corespunde în mod formal termenilor de referință, dar nu am avut nevoie deloc!”. Crearea și evaluarea unui prototip în astfel de cazuri permite, în primele etape de dezvoltare, separarea detaliilor care sunt importante pentru client, care nu au intrat în caietul de sarcini, de cele neimportante, a căror implementare poate fi arbitrară. .

În dezvoltarea sistemelor a căror sarcină principală este calculul, cum ar fi programele și utilitarele din linia de comandă, prototiparea oferă puține avantaje reale.

Vezi și

Link -uri