FI:PV293 Softwarové architektury - Informace o předmětu
PV293 Softwarové architektury
Fakulta informatikypodzim 2024
- Rozsah
- 0/2/1. 3 kr. (plus ukončení). Ukončení: k.
Vyučováno kontaktně - Vyučující
- doc. Ing. RNDr. Barbora Bühnová, Ph.D. (přednášející)
Ing. Lukáš Grolig (přednášející)
Bc. Erik Báča (cvičící)
Filip Kaštovský (cvičící)
Bc. Josef Krušina (cvičící)
Ing. Dominik Lašo (cvičící)
Ing. Marek Mišík (cvičící)
Ing. Petr Šlézar (cvičící) - Garance
- Ing. Lukáš Grolig
Katedra počítačových systémů a komunikací – Fakulta informatiky
Dodavatelské pracoviště: Katedra počítačových systémů a komunikací – Fakulta informatiky - Rozvrh
- St 25. 9. až St 18. 12. St 18:00–19:50 D2
- Rozvrh seminárních/paralelních skupin:
PV293/02_CSharp: Út 24. 9. až Út 17. 12. Út 16:00–17:50 B204, E. Báča
PV293/03_CSharp: Út 24. 9. až Út 19. 11. Út 18:00–19:50 C511, Út 26. 11. až Út 17. 12. Út 18:00–19:50 S209, P. Šlézar
PV293/04_Typescript: Čt 26. 9. až Čt 21. 11. Čt 18:00–19:50 C511, Čt 28. 11. až Čt 19. 12. Čt 18:00–19:50 S209, F. Kaštovský
PV293/05_Typescript: Út 24. 9. až Út 17. 12. Út 18:00–19:50 B204, J. Krušina
PV293/06_Java_Kotlin: Út 24. 9. až Út 17. 12. Út 18:00–19:50 B410, M. Mišík - Předpoklady
- Pro úspěšné absolvování předmětu se očekávají základní znalosti softwarového inženýrství, databází a zkušenosti s objektovým a funkcionálním programováním. Studenti by měli být obeznámeni s technologiemi C#, Java, Javascript a frameworkem React.
- Omezení zápisu do předmětu
- Předmět je nabízen i studentům mimo mateřské obory.
Předmět si smí zapsat nejvýše 60 stud.
Momentální stav registrace a zápisu: zapsáno: 64/60, pouze zareg.: 15/60, pouze zareg. s předností (mateřské obory): 11/60 - Mateřské obory/plány
- předmět má 21 mateřských oborů, zobrazit
- Cíle předmětu
- Předmět má za cíl seznámit studenty s procesem návrhu architektury softwarových systémů s porozuměním dopadů architektonických rozhodnutí na výsledný systém, a naučit je využívat Domain Driven Design (DDD). Studenti se seznámí s architektonickými vzory, jejich variacemi a charakteristikami, jako je škálovatelnost, spolehlivost, laditelnost, monitorování, cena provozu a implementační složitost. Pro každý vzor budou studenti schopni formulovat implementační doporučení a identifikovat potenciální problémy. Během kurzu si studenti vyzkouší implementaci jednotlivých architektur a důležitých komponent v konkrétním jazyce (C#, Javascript/Typescript).
- Výstupy z učení
- Po absolvování předmětu bude student schopen:
- aplikovat principy DDD, návrhu software na základě DDD a jejich dopadů na implementaci
- posoudit výhody a nevýhody konkrétních architektur
- vybrat vhodnou architekturu a přístupy pro daný systém
- stanovit očekávané vlastnosti systému dle zvolené architektury
- orientovat se v agilních přístupech k aplikační architektuře - Osnova
- - Úvod do architektury rozsáhlých aplikací: architektonický proces, role a úkoly architekta.
- - Domain Driven Design (DDD):
- - a. Strategický návrh
- - b. Taktický návrh
- - Monolitické architektury:
- - a. Vrstvená architektura
- - b. Pipeline architektura
- - c. Microkernel architektura
- - d. Plug-in architektura
- - Servisně orientované architektury:
- - a. Service-based architektura
- - b. Mikroslužby
- - c. Sidecar architektura
- - d. Service mesh
- - Event-driven architektury
- - Serverless architektura
- Výukové metody
- Výuka je realizována prostřednictvím přednahrávaných videí (nahrazujících přednášku), která pokrývají jednotlivá témata. Cvičení probíhají ve formě skupinových sezení (hromadné cvičení) zaměřených na konkrétní programovací jazyk, kde lektor ukáže implementaci architektury v daném jazyce (skupiny dle jazyka). Studenti si osvojí učivo prostřednictvím interaktivních online cvičení, testů a realizace projektu.
- Metody hodnocení
- Hodnocení studentů spočívá v průběžném vypracování pěti testů (max. 35 bodů), které zahrnují znalosti z přednášek a cvičení. Dále je hodnocen projekt zaměřený na návrh a implementaci klíčových částí vybraného systému, který se skládá z esejové části (25 bodů) a implementační části (40 bodů). Esej se zaměřuje na úvahy o navrhovaném systému, zatímco implementační část hodnotí provedení důležitých částí systému.
- Informace učitele
- Předmět předpokládá značný podíl samostatné práce navíc při studování používaných technologií, jejich (anglicky psaných) specifikací a dalších zdrojů. Materiály jsou k dispozici v češtině a angličtině. V rámci závěrečného projektu bude nejprve ohodnocena esej, a následně může student přistoupit k implementaci.
- Další komentáře
- Studijní materiály
Předmět je vyučován každoročně.
- Statistika zápisu (nejnovější)
- Permalink: https://is.muni.cz/predmet/fi/podzim2024/PV293