L2: Expressing Software Architecture in UML

Zdroj
ručne priradené
Pridané

Pozrieť na YouTube →

Preber si túto prednášku so svojou AI

Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.

Otvoriť AI: ChatGPT · Claude · Gemini

Zhrnutie prednášky

Druhá prednáška z architektúry softvérových systémov sa zameriava na vyjadrovanie architektúry graficky pomocou UML a na hranice tohto jazyka. Po organizačnom úvode sa so študentmi diskutuje, prečo vôbec kreslíme diagramy: kvôli ľahšej pochopiteľnosti, zobrazeniu modularizácie a súvislostí medzi časťami systému, komunikácii medzi vývojármi a zainteresovanými stranami (stakeholders), zachyteniu správania a podpore opätovného použitia softvéru. Na príklade diagramu tried e-shopu v nástroji Enterprise Architect sa ukazuje, že triedy môžu byť detailné aj abstraktné, no nástroje zle podporujú skrývanie a odkrývanie detailov. Diagram tried môže vyjadrovať aj vyššie koncepty, napríklad cez asociačné roly, kde položka objednávky združuje produkty aj služby bez spoločnej nadtriedy.

  • - Diagramy uľahčujú pochopiteľnosť (comprehensibility) štruktúry softvéru a jeho modularizácie.
  • - Grafické vyjadrenie podporuje komunikáciu medzi vývojármi a ostatnými zainteresovanými stranami (stakeholders).
  • - Okrem štruktúry a súvislostí medzi časťami je dôležité zobraziť aj správanie (behavior), ktoré z kódu nie je zrejmé.
  • - Pochopenie softvéru je nevyhnutné pre jeho vývoj, údržbu a opätovné použitie (reuse).
  • - Diagram tried v UML umožňuje rôzne úrovne detailu, ale nástroje zvyčajne neponúkajú pohodlné selektívne skrývanie atribútov a operácií.
  • - Triedy v diagrame nemusia zodpovedať triedam v kóde a môžu vyjadrovať vyššie koncepty.
  • - Asociačná rola (napr. položka objednávky) zachytáva logické súvislosti aj medzi prvkami bez spoločnej nadtriedy.

Zhrnutie pripravené s pomocou AI z prepisu videa.