Warning: Cannot modify header information - headers already sent by (output started at /home/intheory/public_html/ro/modele_de_abordare_a_problemelor_iterativa.php:2) in /home/intheory/public_html/counter.inc on line 31
 Modele teoretice de abordare a problemelor. Abordarea iterativă
in-theory.info

Modele teoretice de abordare a problemelor. Abordarea iterativă


Metoda iterativă presupune rezolvarea unei probleme cunoscute printr-o abordare iterativă, la fiecare iteraţie făcând un pas către rezolvarea problemei (ceea ce nu înseamnă neapărat rezolvarea integrală a unei sub-probleme, aşa cum vedem la descompunere).

La această abordare, fiecare iteraţie presupune îndeplinirea unui anumit obiectiv, obiectivul final fiind rezolvarea problemei iniţiale. Poate că această metodă poate să fie văzută ca o descompunere pe obiective, însă acest lucru este puţin important, importantă fiind ideea de abordarea iterativă.

De pildă, să analizăm problema unui voievod medieval român: trebuie să îi batem pe turci cu o armată mai puţin numeroasă. Prin descompunere aceasta înseamnă (1) să le cunoaştem poziţia în teren, (2) să le cunoaştem numărul cât mai exact, (3) să îi împingem pe un teren mlăştinos care să îi defavorizeze, apoi (4) cât timp sunt blocaţi în mlaştină să îi atacăm necontenit şi (5) restul armatei să atace de pe dealul care mărgineşte mlaştina.

Într-o abordare iterativă, în prima iteraţie voievodul îşi propune, trimiţând iscoade, să afle precis poziţia adversarilor în teren, să aibă o evaluare grosieră a numărul acestora.

În a doua iteraţie, lansarea primului atac, începe împingerea adversarilor către terenul mlăştinos (pornind de la datele obţinute în prima iteraţie) dar se păstrează obiectivul de a cunoaşte cu precizie poziţia lor în teren, precum şi obţinerea unor date mai precise privind numărul adversarilor şi împărţirea lor pe tipuri de arme.

La lansarea celui de-al doilea atac, adică la a treia iteraţie, se porneşte de la datele deja obţinute: poziţia actuală după primul atac, numărul adversarilor şi împărţirea lor pe tipuri de arme. Atacul vizează poziţionarea mai precisă a adversarului astfel încât să se poată declanşa atacul de pe deal.

La a patra iteraţie se lansează atacul de pe deal dar se menţine obiectivul de a poziţiona adversarul în locul cel mai potrivit.

Dacă vreţi un exemplu şi mai clar (dar cam simplist), unul dintre tunarii voievodului trebuie să lovească o anumită ţintă. Neavând aparatură performanţă de ochire, el abordează problema iterativ: trage un foc, vede locul unde a lovit, repoziţionează tunul, tage din nou şi aşa mai departe până când îşi atinge ţinta. Ceea ce trebuie spus este că, în situaţia lui, această abordarea este cea mai realistă.


Probabil că metoda iterativă împrumută câte ceva de la fiecare dintre celelalte trei metode. Important, în cazul ei, este următorul aspect: fiecare dintre iteraţii rezolvă atâta cât este posibil în acel stadiu şi creează baza pentru ca în iteraţia următoare să se poată face un nou pas. Fiecare etapă trebuie să aducă echipei de proiect rezolvarea acelor probleme, precum şi suficient feed-back, încât etapa următoare să poată fi desfăşurată cu efectul scontat şi cu risc minim.

Evident, această metodă nu trebuie confundată cu ciclul de dezvoltare iterativ deoarece sunt lucruri diferite, chiar dacă ea poate fi considerată baza teoretică pentru acest ciclu.

Adrian Ionescu





Colecția:  🏅 Analiza cerinţelor software

Articolul precedent:  Modele teoretice de abordare a problemelor. Crearea unui trunchi de bază
Articolul următor:  Definiţia cerinţei software



👍 Topul celor mai citite articole

1. Analiza cerinţelor software. Introducere
Această serie de articole este destinată tuturor persoanelor implicate în proiecte de dezvoltare de software: şefi de departament, şefi de proiec...

2. Despre Analiza cerinţelor
Analiza cerinţelor software (pe care o vom numi în continuare Analiza de business sau Analiză software) este aceea dintre disciplinele existente î...

3. Axiomele dezvoltării software
Adevăruri ale dezvoltării software care susțin nevoia Analizei cerințelor. Unul dintre ele este: "Întotdeauna, într-un proiect software apar si...

4. Ciclul de dezvoltare al produsului software (SDLC)
Deşi în limba engleză este denumit Software Development Life Cycle (SDLC) am ales traducerea „Ciclul de dezvoltare al produsului software”, chi...

5. Ciclul de dezvoltare iterativ
Asumarea realităţii că întotdeauna, în decursul proiectului, cerinţele se vor schimba a condus la apariţia unui model de dezvoltare realist, ca...

6. Locul Analizei în proiectul de dezvoltare software
Analiza Software este o disciplină care se află în relaţie de dependenţă cu celelalte discipline din proiect. Concret, task-urile din proiectul ...

7. Modele teoretice de abordare a problemelor. Decompoziţia
Modalităţile teoretice de abordare a problemelor sunt universale şi pot fi folosite oriunde însă pentru domeniul nostru, este important să le co...

8. Modele teoretice de abordare a problemelor. Sinteza
Sinteza este o modalitate, prin care, din manifestări punctuale se determină problema reală. Cel mai simplu şi clar exemplu este acela al mediculu...

9. Modele teoretice de abordare a problemelor. Crearea unui trunchi de bază
De foarte multe ori, în viaţa reală, o problemă nu poate fi punctată decât cu un efort substanţial sau chiar deloc. Pur şi simplu, obţinerea ...

10. Modele teoretice de abordare a problemelor. Abordarea iterativă
Metoda iterativă presupune rezolvarea unei probleme cunoscute printr-o abordare iterativă, la fiecare iteraţie făcând un pas către rezolvarea pr...



📜 Căutare după etichetă:

Analiza Business
Baze de date
C#
Cerințe software
CSS
Dictionar IT
HTML
MySQL
PHP
Riscuri
SDLC
Specificații software
SQL
UML