Životni ciklus razvoja softvera (SDLC) prolazi kroz različite faze kao što su planiranje, procjena zahtjeva, analiza, dizajn, izvedba, dokumentacija, testiranje itd. Svaka faza dalje je podijeljena na zadatke s pravilno definiranim ciljevima i rezultatima.

Analiza i dizajn su faze u kojima se postavlja stvarna arhitektura, radni model i proces izvođenja izrade softverskog proizvoda.

Dva ključna koraka u ovim fazama su dizajn sustava visoke razine i dizajn sustava niske razine.

Što je dizajn sustava visoke razine?

Dizajn visoke razine (HLD) pruža sveobuhvatan pregled procesa razvoja softvera zajedno s arhitekturu sustava, aplikacije, upravljanje bazom podataka i potpuni dijagram toka sustava i navigacija. To je nacrt koji objedinjuje različite korake i module, njihove ciljeve, promjenjive komponente, rezultate, arhitekturu i vremenski okvir za razvoj softvera. HLD prevodi poslovni plan u softverski proizvod ili uslugu.

Primjeri HLD-a u razvoju softvera uključuju dokumente o arhitekturi sustava, dijagrame toka razvoja aplikacija itd.

instagram viewer

Što je dizajn sustava niske razine?

Low-Level Design (LLD) bavi se planiranjem, kodiranjem i izvođenjem različitih komponenti, modula i koraka u HLD-u, na individualnoj razini. Svaki modul u HLD-u ima jedinstveni LLD dokument koji pruža opsežne pojedinosti o tome kako će modul biti kodiran, izvršen, testiran na kvalitetu i integriran u veći program. LLD pruža praktične planove dekonstruirajući HLD komponente u radna rješenja.

Primjeri LLD-a u razvoju softvera uključuju integraciju kolica, sigurnosno testiranje, dizajn korisničkog sučelja itd.

Razlike između HLD-a i LLD-a

HLD i LLD također služe različitim funkcijama i svrhama poput programski jezici visoke razine i programski jezici niske razine.

Makro vs. Mikro arhitektura i dizajn

HLD je dizajn na makro razini koji pruža pogled iz ptičje perspektive na proces razvoja softvera. Uključuje dijagrame, dijagrame toka, navigacijske detalje i druge tehničke zahtjeve koji će činiti srž procesa razvoja.

Osim dijagrama toka, dijagrama, navigacijskih informacija i tehničkih zahtjeva, LLD također ima sveobuhvatne informacije o izvođenju korak po korak svake komponente HLD-a. Bavi se razvojem softvera na mikrorazini.

Svaka komponenta HLD-a ima jedinstveni LLD dokument.

Kronologija razvoja

HLD prethodi fazi LLD. Kada se HLD uspostavi i odobri za izvršenje, može započeti rad na pojedinačnim LLD-ovima.

HLD počinje nakon što se riješe faze planiranja i zahtjeva i nema drugih ovisnosti.

S druge strane, LLD se mora izvršiti određenim redoslijedom. Neki moduli moraju čekati izvršenje dok se drugi ne dovrše.

LLD spada u fazu dizajna SDLC-a, dok HLD spada u fazu analize SDLC-a.

Svrha

  • Svrha HLD-a je navesti funkcionalne aspekte različitih modula zajedno s konačnim rezultatom.
  • Svrha LLD-a je detaljno opisati logiku i izvođenje svakog modula u HLD-u.

Sudionici

Arhitekti rješenja odgovorni su za izradu HLD dokumenta. Može imati interne i vanjske dionike kao što je tim za pregled koji uzima u obzir softverske metrike, dizajnerski tim, klijenti i menadžeri.

LLD-om upravljaju programeri softvera, web administratori, sigurnosni inženjeri itd., koji su dio tvrtke ili timova dobavljača. LLD-ovi su općenito ograničeni na interne dionike.

Ciljana publika

HLD dokumenti imaju ciljanu publiku menadžera, klijenata i timova za razvoj softvera.

Softverski inženjeri, koderi, testeri i programeri koji rade na projektu ciljana su publika za LLD dokumente.

Očekivani ishod

  • Ishod HLD-a je softverski proizvod ili usluga spremna za isporuku krajnjem korisniku.
  • Ishod LLD-a je završetak jednog modula HLD-a, poput faza kodiranja ili testiranja.

Razumijevanje dokumenata dizajna softvera

Dokumenti o dizajnu softvera ocrtavaju strukturne, funkcionalne i logičke aspekte razvoja a softverski proizvod ili uslugu uz tehničke zahtjeve i drugu implementaciju detaljima. Bilo da se dizajn bavi izvođenjem na makro ili mikro razini, programeri i drugi dionici trebali bi znati i razumjeti opseg i različite korake procesa razvoja softvera.