Jdi na navigaci předmětu

NI-SI

Softwarové inženýrství

platnost od června 2023

aktualizace 20. 2. 2023

OznačeníOtázkaPředmět
NI-SI-1Základní principy objektového návrhu (DRY, KISS, YAGNI, SOLID(SRP, OCP, LSP, ISP, DIP), POLA, TBSR, Tech debt, SoC, LoD, APO)NI-ADP
NI-SI-2Vytvářecí návrhové vzory (Abstract factory, Factory method, Builder, Prototype, Singleton) a Non-GoF návrhové vzory (Double-checked locking, Thread pool, Mock object, Null object).NI-ADP
NI-SI-3Strukturální návrhové vzory (Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy) a Non-GoF návrhové vzory (Lazy loading, Dependency injection)NI-ADP
NI-SI-4Vzory pro chování objektů (Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategy, Template method, Visitor).NI-ADP
NI-SI-5Architektonické vzory (MVC, MVP, MVVM, Client-Server, Microservices vs monolithic server, Asynchronous messaging, Blackboard architecture, Rule-based architecture, Publish-subscribe).NI-ADP
NI-SI-6Specifikace správnosti programů, psaní specifikací v predikátové logice, axiomatické modelování datových struktur.NI-FME
NI-SI-7Dokazování správnosti programů: aserce, ověřovací podmínky, invarianty smyček, důkazy terminace.NI-FME
NI-SI-8Automatizace dokazování správnosti programů: principy, možnosti, omezení.NI-FME
NI-SI-9Architektura softwarového systému, pojem služba a její charakteristiky. Architektura REST (vlastnosti, zdroj, srovnání se SOAP). Optimalizace protokolu HTTP (latence, keepalive, pipelining).NI-AM1
NI-SI-10Integrační návrhové vzory, synchronní a asynchronní komunikace, blocking a non-blocking I/O.NI-AM1
NI-SI-11Teoretické základy evolvabiltních softwarových systémů: principy a zákony, stabilita systému, normalizované systémy, kombinatorický efekt, problematika modularity. Historie přístupu k evolvabilitě softwarových systémů.NI-NSS
NI-SI-12Způsoby zajištění evolvability software pomocí NSS (Normalizované softwarové systémy): principy, návrhové vzory, architektura, generování kódu. Další oblasti aplikace NSS mimo doménu softwarových systémů.NI-NSS
NI-SI-13Proces návrhu uživatelských rozhraní. Parametry lidského vnímání a jejich vliv na tento návrh.NI-NUR
NI-SI-14Prototypy a prototypování uživatelských rozhraní. Použitelnest (Usability).NI-NUR
NI-SI-15Metody vyhodnocování a testování uživatelských rozhraní.NI-NUR
NI-SI-16Vyhodnocování a optimalizace SQL: prováděcí plány (execution plans), optimalizace řízená odhadem ceny (cost-based optimization), statistiky databázových objektů, metody přístupu k datům a jejich cena, metody vyhodnocení spojení a jejich cena.NI-PDB
NI-SI-17Databázové modely: relační, objektově-relační, dokumentový, XML, sloupcový, klíč-hodnota, grafový; jejich rozdíly a vhodné aplikace (aplikační domény). Dotazovací jazyky: SQL, XQuery, Cypher; jejich typické konstrukce a vyjadřovací možnosti.NI-PDB
NI-SI-18CAP teorém a NoSQL databáze. Klasifikace NoSQL databází z pohledu CAP teorému, příklady konkrétních NoSQL databází a jejich architektury; horizontální vs. vertikální škálování, replikace a sharding. Koncepce BASE vs. ACID.NI-PDB
NI-SI-19OLTP vs. OLAP databáze. Komplexní benchmarky (TPC-C, TPC-E, TPC-H): princip, metriky.NI-PDB
NI-SI-20Architektury informačních systémů – vliv kontextu a velikosti organizace na architekturu systémů. Taxonomie informačních systémů. Praktické využití distribuovaných systémů.NI-PIS
NI-SI-21Práce se vstupními a výstupními daty v informačních systémech – konsolidace, normalizace, agregace. Manažerské informační systémy. Využití pokročilé analýzy dat v podnikové praxi, zpracování velkých dat.NI-PIS

📄 Tabulka je dostupná také v CSV (hodnoty oddělené středníkem).
🔙 Historii změn najdete na GitLabu.