Programmatūras izstrādes dzīves cikls (SDLC) iet cauri dažādām fāzēm, piemēram, plānošanai, prasību novērtēšanai, analīzei, projektēšanai, izpildei, dokumentēšanai, testēšanai utt. Katrs posms ir tālāk sadalīts uzdevumos ar pareizi definētiem mērķiem un rezultātiem.
Analīze un projektēšana ir fāzes, kurās tiek noteikta programmatūras produkta izveides faktiskā arhitektūra, darba modelis un izpildes process.
Divi būtiski soļi šajās fāzēs ir augsta līmeņa sistēmas projektēšana un zema līmeņa sistēmas projektēšana.
Kas ir augsta līmeņa sistēmas dizains?
Augsta līmeņa dizains (HLD) sniedz visaptverošu pārskatu par programmatūras izstrādes procesu, kā arī sistēmas arhitektūra, lietojumprogrammas, datu bāzes pārvaldība un pilnīga sistēmas blokshēma un navigācija. Tas ir plāns, kas apvieno dažādas darbības un moduļus, to mērķus, mainīgos komponentus, rezultātus, arhitektūru un laika grafiku programmatūras izstrādei. HLD pārvērš biznesa plānu programmatūras produktā vai pakalpojumā.
HLD piemēri programmatūras izstrādē ir sistēmas arhitektūras dokumenti, lietotņu izstrādes blokshēmas utt.
Kas ir zema līmeņa sistēmas dizains?
Zema līmeņa projektēšana (LLD) nodarbojas ar dažādu HLD komponentu, moduļu un darbību plānošanu, kodēšanu un izpildi individuālā līmenī. Katram HLD modulim ir unikāls LLD dokuments, kas sniedz visaptverošu informāciju par to, kā modulis tiks kodēts, izpildīts, pārbaudīts tā kvalitāte un integrēts lielākā programmā. LLD nodrošina īstenojamus plānus, dekonstruējot HLD komponentus darba risinājumos.
LLD piemēri programmatūras izstrādē ietver grozu integrāciju, drošības testēšanu, lietotāja interfeisa dizainu utt.
Atšķirības starp HLD un LLD
HLD un LLD arī kalpo dažādām funkcijām un mērķiem, piemēram augsta līmeņa programmēšanas valodas un zema līmeņa programmēšanas valodas.
Makro vs. Mikroarhitektūra un dizains
HLD ir makro līmeņa dizains, kas nodrošina programmatūras izstrādes procesa skatu no putna lidojuma. Tajā ir iekļautas diagrammas, blokshēmas, navigācijas informācija un citas tehniskās prasības, kas veidos izstrādes procesa būtību.
Papildus blokshēmām, diagrammām, navigācijas informācijai un tehniskajām prasībām, LLD ir arī visaptveroša informācija par katras HLD sastāvdaļas pakāpenisku izpildi. Tā nodarbojas ar programmatūras izstrādi mikrolīmenī.
Katram HLD komponentam ir unikāls LLD dokuments.
Attīstības hronoloģija
HLD notiek pirms LLD fāzes. Kad HLD ir ieviests un apstiprināts izpildei, var sākties darbs pie atsevišķiem LLD.
HLD sākas pēc plānošanas un prasību posmiem, un tam nav citu atkarību.
No otras puses, LLD ir jāizpilda noteiktā secībā. Dažiem moduļiem ir jāgaida izpilde, līdz tiek pabeigti citi.
LLD ietilpst SDLC projektēšanas fāzē, savukārt HLD ietilpst SDLC analīzes fāzē.
Mērķis
- HLD mērķis ir uzskaitīt dažādu moduļu funkcionālos aspektus kopā ar gala rezultātu.
- LLD mērķis ir detalizēt katra HLD moduļa loģiku un izpildi.
Ieinteresētās personas
Risinājumu arhitekti ir atbildīgi par HLD dokumenta izveidi. Tajā var būt iekšējas un ārējas ieinteresētās personas, piemēram, pārskatīšanas komanda, kas ņem vērā programmatūras metrika, dizaina komanda, klienti un vadītāji.
LLD apstrādā programmatūras izstrādātāji, tīmekļa administratori, drošības inženieri utt., kas ir daļa no uzņēmuma vai pārdevēju komandām. LLD parasti ir tikai iekšējās ieinteresētās personas.
Mērķauditorija
HLD dokumentu mērķauditorija ir vadītāji, klienti un programmatūras izstrādes komandas.
Programmatūras inženieri, kodētāji, testētāji un izstrādātāji, kas strādā pie projekta, ir LLD dokumentu mērķauditorija.
Paredzamais rezultāts
- HLD rezultāts ir programmatūras produkts vai pakalpojums, kas ir gatavs nosūtīšanai galalietotājam.
- LLD rezultāts ir viena HLD moduļa, piemēram, kodēšanas vai testēšanas fāzes, pabeigšana.
Izpratne par programmatūras projektēšanas dokumentiem
Programmatūras izstrādes dokumentos ir izklāstīti a. izstrādes strukturālie, funkcionālie un loģiskie aspekti programmatūras produktu vai pakalpojumu papildus tehniskajām prasībām un citai ieviešanai detaļas. Neatkarīgi no tā, vai dizains attiecas uz makro vai mikro līmeņa izpildi, programmētājiem un citām ieinteresētajām personām ir jāzina un jāsaprot programmatūras izstrādes procesa darbības joma un dažādie posmi.