Životní cyklus vývoje softwaru (SDLC) prochází různými fázemi, jako je plánování, posouzení požadavků, analýza, návrh, provádění, dokumentace, testování atd. Každá fáze je dále rozdělena na úkoly s řádně definovanými cíli a výsledky.

Analýza a návrh jsou fáze, ve kterých je stanovena skutečná architektura, pracovní model a proces provádění vytváření softwarového produktu.

Dva zásadní kroky v těchto fázích jsou návrh systému na vysoké úrovni a návrh systému na nízké úrovni.

Co je návrh systému na vysoké úrovni?

High-Level Design (HLD) poskytuje komplexní přehled o procesu vývoje softwaru architekturu systému, aplikace, správu databází a kompletní vývojový diagram systému a navigace. Je to plán, který konsoliduje různé kroky a moduly, jejich cíle, proměnné komponenty, výsledky, architekturu a časovou osu vývoje softwaru. HLD převádí obchodní plán do softwarového produktu nebo služby.

Příklady HLD ve vývoji softwaru zahrnují dokumenty systémové architektury, vývojové diagramy vývoje aplikací atd.

Co je návrh nízkoúrovňového systému?

Low-Level Design (LLD) se zabývá plánováním, kódováním a prováděním různých komponent, modulů a kroků v HLD na individuální úrovni. Každý modul v HLD má jedinečný dokument LLD, který poskytuje komplexní podrobnosti o tom, jak bude modul kódován, spouštěn, testován na kvalitu a integrován do většího programu. LLD poskytuje akční plány dekonstrukcí HLD komponent na fungující řešení.

Příklady LLD ve vývoji softwaru zahrnují integraci košíku, testování zabezpečení, návrh uživatelského rozhraní atd.

Rozdíly mezi HLD a LLD

HLD a LLD také slouží různým funkcím a účelům programovací jazyky na vysoké úrovni a nízkoúrovňové programovací jazyky.

Makro vs. Mikro architektura a design

HLD je návrh na makroúrovni, který poskytuje pohled na proces vývoje softwaru z ptačí perspektivy. Zahrnuje diagramy, vývojové diagramy, navigační detaily a další technické požadavky, které budou tvořit jádro vývojového procesu.

Kromě vývojových diagramů, diagramů, navigačních informací a technických požadavků má LLD také komplexní informace o postupném provádění každé součásti HLD. Zabývá se vývojem softwaru na mikroúrovni.

Každá součást HLD má jedinečný dokument LLD.

Chronologie vývoje

HLD předchází fázi LLD. Jakmile bude HLD zavedeno a schváleno k provedení, mohou začít práce na jednotlivých LLD.

HLD začíná, jakmile jsou vyřízeny fáze plánování a požadavků, a nemá žádné další závislosti.

Na druhou stranu LLD musí být provedeny v určitém pořadí. Některé moduly musí čekat na provedení, dokud nebudou dokončeny jiné.

LLD spadá do fáze návrhu SDLC, zatímco HLD spadá do fáze analýzy SDLC.

Účel

  • Účelem HLD je vypsat funkční aspekty různých modulů spolu s konečným výsledkem.
  • Účelem LLD je podrobně popsat logiku a provádění každého modulu v HLD.

Zúčastněné strany

Architekti řešení jsou zodpovědní za vytvoření dokumentu HLD. Může mít interní a externí zainteresované strany, jako je kontrolní tým, který bere na vědomí softwarové metriky, designový tým, klienti a manažeři.

LLD zajišťují vývojáři softwaru, weboví administrátoři, bezpečnostní inženýři atd., kteří jsou součástí týmů společnosti nebo dodavatelů. LLD jsou obecně omezeny na interní zainteresované strany.

Cílová skupina

Dokumenty HLD mají cílovou skupinu manažerů, klientů a týmů pro vývoj softwaru.

Softwaroví inženýři, kodéři, testeři a vývojáři pracující na projektu jsou cílovou skupinou dokumentů LLD.

Očekávaný výsledek

  • Výsledkem HLD je softwarový produkt nebo služba připravená k odeslání koncovému uživateli.
  • Výsledkem LLD je dokončení jediného modulu HLD, jako jsou fáze kódování nebo testování.

Porozumění dokumentům návrhu softwaru

Dokumenty k návrhu softwaru nastiňují strukturální, funkční a logické aspekty vývoje a softwarový produkt nebo službu nad rámec technických požadavků a další implementace podrobnosti. Ať už se návrh zabývá prováděním na makro nebo mikroúrovni, programátoři a další zúčastněné strany by měli vědět a rozumět rozsahu a různým krokům procesu vývoje softwaru.