U ovoj lekciji obrađivaćemo:

  • Aktivnosti softverskog dizajna
  • Proizvodi softverskog dizajna
  • Veza specifikacije i softverskog dizajna
  • Model dizajn procesa
  • Uloga dizajnera u razvoju softvera

 

Dizajn proces uopšteno gledano možemo predstaviti kao na slici 1. Ulazni elementi u proces u dokumenta specifikacije zahteva, dok su pojedine aktivnosti dizajna i dizajn proizvodi prikazani na slici 1.


Slika 1. Aktivnosti i proizvodi softverskog dizajna


Proces softverskog dizajna može se prikazati i kao na slici 2. Arhitekturalni dizajn se dešava u ranoj fazi procesa dizajna i predstavlja link između specifikacije i procesa dizajna. Često se sprovodi i paralelno sa određenim aktivnostima specifikacije zahteva. Podrazumeva identifikovanje osnovnih sistemskih komponenti i njihovih komunikacija.

Slika 2. Veza specifikacije i softverskog dizajna

Na nivou arhitekturalnog dizajna donose se odluke i daje odgovor na pitanja:

  • Kako će sistem biti distribuiran?
  • Koji arhitekturalni stil će biti prikladan?
  • Koji pristup će biti korišćen u cilju strukturiranja sistema?
  • Kako će sistem biti dekomponovan u module?
  • Koje strategije kontrole treba primeniti?
  • Kako će se vršiti evaluacija arhitekturalnog dizajna?
  • Kako će se dokumentovati arhitektura?

 


Slika 3. Model dizajn procesa[2]

Na slici 3 je prikazan model dizajn procesa. Pojedine akcije mogu da se predstave kao:

  • Pretpostavka rešenja
  • Izgradnja modela rešenja
  • Evaluacija modela prema originalnom zahtevu
  • Razrada modela radi proizvodnje detaljne specifikacije rešenja[1]

Navedeni model je dosta generalan, ali može da posluži kao osnova za dalji razvoj.

Uloga dizajnera

Uloga dizajnera može se prikazati kao na slici 4. Osnovni zadatak za dizajnera je da precizira nabolje rešenje problema i proizvede opis kako da se rešenje organizuje. Na osnovu opisa nastaje plan koji koriste realizatori sistema. Dizajner tokom svojih aktivnosti mora da uzme u obzir i ograničenja koja postoje, kao i da primeni znanje iz domena aplikacije, što zahteva dodatne veštine dizajnera.


Slika 4. Uloga dizajnera u razvoju softvera

Reference:

1. Gero J.S. (1990). Design prototypes: a knowledge representation scheme for design. AI Magazine
2. David Budgen, Software design, Addison Wesley, 2003

Dodaj komentar Sviđa mi se - (0) Ne sviđa mi se - (0)    

  • Proces softverskog dizajna 1
  • Proces softverskog dizajna 2
  • Proces softverskog dizajna 3