
I letos nabízíme studentům ČVUT FIT možnost pustit se do závěrečné práce po boku našich expertů a absolventů fakulty. Mezi letošními tématy najdeš třeba mobilní aplikace pro platformy Apple a cross-platform řešení pro iOS a Android, porovnání on-device a cloudových jazykových modelů, testování Android aplikací pomocí AI agentů a screenshot testy v Jetpack Compose. Na webu tě čeká bezpečnost a výkon AI-generovaného kódu, weby připravené pro autonomní agenty a bezpečná práce agentů s hesly přes protokol MCP. Většina témat se točí kolem AI coding agentů a dává prostor poctivě změřit, co v praxi funguje a co ne. Zaujalo? Klikni na konkrétní zadání a ozvi se kontaktu u tématu – těšíme se, až se zapojíš!
Návrh, implementace a evaluace mobilní aplikace pro platformy Apple (iOS/iPadOS/macOS/visionOS)
Cílem této diplomové práce je navrhnout, implementovat a vyhodnotit mobilní aplikaci pro platformy Apple (iOS, případně iPadOS, macOS nebo visionOS). Aplikace bude řešit konkrétní problém zvolené oblasti (po konzultaci s vedoucím práce) a nabídne uživatelům intuitivní a přístupné rozhraní v souladu s Human Interface Guidelines. Důraz bude kladen na efektivní návrh architektury, využití aktuálních možností platformy a na měřitelnou evaluaci výsledné aplikace. Serverová část může být implementována vlastním API, nebo nahrazena službou typu backend-as-a-service; volba musí být zdůvodněna. Použití AI coding agentů při vývoji je povoleno a očekává se, že student jejich využití zdokumentuje a kriticky zhodnotí.
- Prozkoumejte a analyzujte existující aplikace v dané oblasti s ohledem na jejich funkcionalitu, uživatelské rozhraní a hodnocení uživatelů.
- Navrhněte architekturu aplikace a definujte klíčové funkcionality. Zahrňte alespoň jednu aktuální technologii platformy (App Intents, Foundation Models, widgety, Live Activities nebo obdobnou) a zdůvodněte její přínos pro uživatele.
- Navrhněte serverovou část včetně API pro komunikaci s aplikací, nebo zdůvodněte volbu služby backend-as-a-service a popište její integraci.
- Implementujte aplikaci s důrazem na uživatelskou přívětivost, přístupnost a dodržení moderních standardů vývoje pro platformy Apple.
- Navrhněte evaluaci s měřitelnými kritérii (uživatelské testování, výkon, stabilita, přístupnost) a proveďte ji na různých zařízeních a verzích systému.
- Zdokumentujte použití AI nástrojů při vývoji a zhodnoťte jejich vliv na kvalitu kódu a produktivitu.
👉 https://projects.fit.cvut.cz/topics/6567
Implementace cross-platform mobilní aplikace pro systémy iOS a Android
Cílem této diplomové práce je navrhnout a implementovat cross-platform mobilní aplikaci pro operační systémy iOS a Android. Aplikace bude řešit konkrétní problém zvolené oblasti (po konzultaci s vedoucím práce) a nabídne uživatelům intuitivní a uživatelsky přívětivé rozhraní. Důraz bude kladen na analýzu a zdůvodněnou volbu cross-platform přístupu (Kotlin Multiplatform s Compose Multiplatform, Skip, Flutter, React Native s Expo, případně kombinace sdílené logiky a nativního UI), efektivní návrh architektury, optimalizaci výkonu a dodržení standardů obou platforem. Součástí práce je vyhodnocení zvoleného přístupu oproti nativní implementaci, včetně otázky, jak dostupnost AI coding agentů mění ekonomiku rozhodnutí mezi cross-platform řešením a dvěma nativními aplikacemi.
- Analyzujte dostupné cross-platform přístupy pro vývoj mobilních aplikací, definujte kritéria výběru a zvolte vhodný framework pro danou oblast.
- Prozkoumejte a analyzujte existující aplikace v dané oblasti s ohledem na jejich funkcionalitu, uživatelské rozhraní a hodnocení uživatelů.
- Navrhněte architekturu aplikace a definujte klíčové funkcionality, včetně rozhraní mezi sdílenou a platformně specifickou částí.
- Navrhněte a implementujte mobilní aplikaci pro systémy iOS a Android s důrazem na uživatelskou přívětivost a dodržení konvencí obou platforem.
- Otestujte aplikaci na různých zařízeních a verzích systémů iOS a Android a zhodnoťte její výkon a stabilitu.
- Vyhodnoťte zvolený přístup oproti nativní implementaci z hlediska pracnosti, kvality uživatelského rozhraní a udržovatelnosti. Zdokumentujte použití AI nástrojů při vývoji a jejich vliv na toto porovnání.
👉 https://projects.fit.cvut.cz/topics/6568
Kontextové inženýrství pro AI coding agenty ve vývoji iOS aplikací
Cílem této diplomové práce je zjistit, které formy projektového kontextu nejvíce zvyšují úspěšnost a kvalitu výstupu AI coding agentů při implementaci funkcí v modulární iOS aplikaci a jaký je jejich poměr přínosu k nákladům na spotřebované tokeny a čas. Vývoj iOS aplikací pomocí AI agentů naráží na specifika platformy: jazyk Swift se striktní kontrolou souběžnosti, deklarativní UI ve SwiftUI, modulární architektury a generované projekty. Vývojové týmy proto agentům poskytují kontext ve formě pravidel, dokumentace architektury, opakovaně použitelných postupů a automatických kontrol spouštěných během práce agenta, chybí však kvantitativní důkaz, které z těchto forem skutečně zlepšují výsledek. Výstupem práce bude benchmark implementačních úloh nad referenční iOS aplikací, evaluační nástroj měřící úspěšnost sestavení, testů, lintu a nálezy při code review, a sada doporučení pro strukturu projektového kontextu podložená experimentálním porovnáním napříč dostupnými agenty.
- Analyzujte současné AI coding agenty a způsoby, jakými přijímají projektový kontext (konfigurační soubory, pravidla, opakovaně použitelné postupy, automatické kontroly).
- Navrhněte sadu reprezentativních implementačních úloh nad otevřenou nebo referenční iOS aplikací s modulární architekturou a definujte kritéria správnosti řešení každé úlohy.
- Navrhněte varianty projektového kontextu (od žádného po plně vybavený) a metriky pro hodnocení výstupu agenta, včetně nákladů.
- Implementujte evaluační nástroj, který úlohy automatizovaně spouští a výsledky měří.
- Proveďte experimenty s více agenty a variantami kontextu a statisticky je vyhodnoťte.
- Formulujte doporučení pro vývojové týmy a diskutujte limity a přenositelnost výsledků
👉 https://projects.fit.cvut.cz/topics/6569
Automatizovaná detekce a oprava bezpečnostních zranitelností v AI-generovaném kódu mobilních aplikací
Cílem této diplomové práce je zjistit, jak spolehlivě dokážou současné AI nástroje identifikovat a opravit bezpečnostní zranitelnosti v AI-generovaném kódu mobilních aplikací a kde jsou jejich limity oproti zavedeným nástrojům statické analýzy. Rostoucí podíl kódu mobilních aplikací vzniká s pomocí AI coding agentů a mobilní platformy mají vlastní třídy bezpečnostních chyb popsané standardem OWASP MASVS: nezabezpečené lokální úložiště, chybějící ověřování certifikátů, logování citlivých dat, nebezpečné zpracování deep linků nebo obsahu ve WebView. Výstupem práce bude sada testovacích scénářů s AI-generovaným zranitelným kódem pro iOS a Android, experimentální nástroj pro automatizovanou analýzu a opravu vybraných tříd zranitelností a kvantitativní vyhodnocení jeho účinnosti v porovnání se statickou analýzou.
- Analyzujte třídy zranitelností mobilních aplikací podle OWASP MASVS a MASTG a existující nástroje pro jejich detekci na platformách iOS a Android.
- Vytvořte sadu testovacích scénářů obsahující AI-generovaný kód s vybranými třídami zranitelností a jejich bezpečné varianty.
- Navrhněte a implementujte nástroj pro automatizovanou detekci a opravu vybraných tříd zranitelností s využitím AI modelů.
- Proveďte experimentální vyhodnocení nástroje na sadě a porovnejte výsledky se statickou analýzou z hlediska přesnosti, úplnosti a správnosti oprav.
- Zhodnoťte limity přístupu, rizika chybných oprav a navrhněte doporučení pro zapojení do vývojového procesu.
👉 https://projects.fit.cvut.cz/topics/6570
On-device a cloudové jazykové modely v mobilních aplikacích: porovnání pro vybrané třídy funkcí
Cílem této diplomové práce je zjistit, pro které třídy funkcí mobilních aplikací jsou jazykové modely běžící přímo na zařízení dostatečné z hlediska kvality výstupu, latence, spotřeby energie a ochrany soukromí, a kdy je nutný cloudový model. On-device modely jsou dnes dostupné jako běžné API (Foundation Models framework na platformách Apple, Gemini Nano na Androidu) a oproti cloudovým modelům nabízejí nulovou latenci sítě, práci offline a ochranu soukromí, ale za cenu menší kapacity modelu, spotřeby energie a různé dostupnosti napříč zařízeními. Výstupem práce bude experimentální aplikace s vybranými funkcemi implementovanými v on-device i cloudové variantě, metodika měření, výsledky naměřené napříč zařízeními a rozhodovací rámec pro volbu mezi on-device a cloudovým zpracováním.
- Analyzujte dostupné on-device a cloudové jazykové modely pro mobilní platformy, jejich API, omezení a požadavky na zařízení.
- Vyberte reprezentativní třídy funkcí (například sumarizace, extrakce strukturovaných dat, klasifikace, konverzační asistence) a navrhněte experimentální aplikaci.
- Implementujte vybrané funkce v on-device i cloudové variantě se společným rozhraním, aby byly zaměnitelné.
- Navrhněte metodiku měření kvality výstupu, latence, spotřeby energie a ochrany soukromí a proveďte měření na různých zařízeních.
- Vyhodnoťte výsledky a formulujte rozhodovací rámec pro volbu přístupu, včetně hybridních variant.
👉 https://projects.fit.cvut.cz/topics/6571
Autonomní testování Android aplikací pomocí AI agentů
Cílem této diplomové práce je zjistit, jak spolehlivě dokážou AI agenti ověřit funkční scénáře Android aplikace zadané v přirozeném jazyce a kdy mohou doplnit nebo nahradit skriptované UI testy. Agenti dnes ovládají zařízení přes adb, strom přístupnosti a snímky obrazovky. Slibují testy bez křehkých skriptů a bez údržby. Současné studie ale ukazují falešné verdikty a nekonzistentní výsledky opakovaných běhů. Přímé porovnání se skriptovanými testy na stejné sadě chyb chybí. Výstupem práce bude sada scénářů nad otevřenou Android aplikací se záměrně vnesenými chybami, evaluační nástroj a kvantitativní porovnání agentního a skriptovaného testování.
- Analyzujte přístupy k automatizovanému UI testování Android aplikací (Espresso, Compose UI Test, UI Automator, Maestro) a současné přístupy s AI agenty v akademické i průmyslové praxi.
- Zvolte otevřenou Android aplikaci. Navrhněte sadu funkčních scénářů v přirozeném jazyce s jednoznačnými kritérii úspěchu a k nim ekvivalentní skriptované testy.
- Připravte chybné verze aplikace se záměrně vnesenými chybami v UI i v logice a sadu změn UI beze změny chování.
- Navrhněte a implementujte evaluační nástroj, který spustí scénáře agentem i skriptovanými testy, sbírá důkazy (snímky, logy, síťovou komunikaci) a zaznamenává verdikty.
- Proveďte experimenty s alespoň dvěma agenty nebo modely. Porovnejte míru odhalení chyb, falešné verdikty, konzistenci opakovaných běhů, čas, náklady a pracnost údržby po změně UI. Výsledky statisticky vyhodnoťte.
- Formulujte doporučení pro praxi a diskutujte limity výsledků.
👉 https://projects.fit.cvut.cz/topics/6572
Porovnání přístupů ke screenshot testování UI v Jetpack Compose
Cílem této diplomové práce je zjistit, jak se liší přístupy ke screenshot testování UI v Jetpack Compose ve věrnosti vykreslení, schopnosti odhalit vizuální regrese, rychlosti, stabilitě a ceně údržby. Screenshot testy jsou dnes běžnou ochranou proti vizuálním regresím. Vývojové týmy volí mezi testy na JVM bez zařízení (Paparazzi, Roborazzi, Compose Preview Screenshot Testing) a instrumentovanými testy na emulátoru nebo zařízení (např. Dropshots). Volba ovlivňuje dobu běhu v CI, počet falešných rozdílů a to, které chyby testy zachytí. Chybí ale systematické porovnání těchto přístupů na stejné aplikaci. Výstupem práce bude referenční Compose aplikace se sadou screenshot testů ve více nástrojích, sada záměrně vnesených vizuálních chyb a kvantitativní porovnání s doporučením pro volbu přístupu.
- Analyzujte principy screenshot testování na Androidu a dostupné nástroje, včetně způsobu vykreslení, porovnání snímků a integrace do CI.
- Navrhněte a implementujte referenční Compose aplikaci s reprezentativními obrazovkami a komponentami (tmavý režim, velikosti písma, lokalizace, velké obrazovky, animace).
- Implementujte sadu screenshot testů ve vybraných nástrojích a připravte záměrně vnesené vizuální chyby a změny prostředí (verze knihoven, operační systém, CI stroj).
- Porovnejte nástroje podle věrnosti vykreslení oproti reálnému zařízení, míry odhalení chyb, falešných rozdílů, doby běhu, stability a pracnosti údržby. Výsledky statisticky vyhodnoťte.
- Formulujte doporučení pro volbu a kombinaci přístupů v praxi a diskutujte limity výsledků.
👉 https://projects.fit.cvut.cz/topics/6573
Automatizovaná detekce a oprava bezpečnostních zranitelností v AI-generovaném kódu webových aplikací
Cílem této diplomové práce je prozkoumat bezpečnostní rizika při vývoji webových aplikací pomocí AI coding agentů. Práce se zaměří na vybrané typy zranitelností, například chyby v autorizaci, autentizaci, validaci vstupů nebo práci s citlivými daty, a na možnosti jejich automatické detekce a opravy. Hlavní otázka zní: jak efektivně dokážou současné AI nástroje identifikovat a opravovat bezpečnostní zranitelnosti v AI-generovaném kódu a jaké jsou limity těchto přístupů? Výstupem práce bude experimentální nástroj pro analýzu a opravu zranitelností, sada testovacích scénářů a kvantitativní vyhodnocení účinnosti různých přístupů k automatizované bezpečnostní analýze.
- Analyzujte typické bezpečnostní zranitelnosti webových aplikací (např. podle OWASP Top 10) se zaměřením na chyby, kter é vznikají v kódu generovaném AI agenty, a existující nástroje pro jejich detekci.
- Vytvořte sadu testovacích scénářů obsahující AI-generovaný kód s vybranými typy zranitelností a jejich bezpečné varianty.
- Navrhněte a implementujte experimentální nástroj pro automatizovanou detekci a opravu vybraných zranitelností s využitím AI modelů.
- Vyhodnoťte účinnost nástroje a dalších přístupů k automatizované bezpečnostní analýze z hlediska přesnosti, úplnosti a správnosti oprav.
- Diskutujte limity jednotlivých přístupů, rizika chybných oprav a formulujte doporučení pro vývojovou praxi.
👉 https://projects.fit.cvut.cz/topics/6451
Návrh a evaluace webových rozhraní optimalizovaných pro autonomní AI agenty
S rostoucím využitím autonomních AI agentů vzniká otázka, zda jsou současné webové aplikace dostatečně připravené na strojovou interakci. Cílem této diplomové práce je zkoumat, jak struktura HTML, přístupnost, sémantika a alternativní způsoby poskytování informací ovlivňují schopnost agentů plnit úkoly. Hlavní otázka zní: které vlastnosti webového rozhraní mají největší vliv na úspěšnost a spolehlivost agentů při práci s webovou aplikací? Výstupem práce bude experimentální framework pro testování agentní použitelnosti webů, sada doporučení pro vývojáře a nová metodika hodnocení webových rozhraní z pohledu člověka i autonomních systémů.
- Analyzujte současné přístupy AI agentů k ovládání webových aplikací a vlastnosti webu, které je mohou ovlivnit (sémantika HTML, přístupnost, struktura, alternativní zdroje informací).
- Navrhněte metodiku a metriky pro hodnocení agentní použitelnosti webového rozhraní.
- Implementujte experimentální framework, který agentům zadává úlohy nad variantami webového rozhraní a měří jejich úspěšnost a spolehlivost.
- Proveďte experimenty a vyhodnoťte, které vlastnosti rozhraní mají na výsledek největší vliv.
- Formulujte doporučení pro vývojáře a diskutujte, jak se požadavky agentů potkávají s požadavky lidských uživatelů.
👉 https://projects.fit.cvut.cz/topics/6452
Automatizovaná optimalizace výkonu webových aplikací pomocí AI agentů
Cílem této diplomové práce je prozkoumat, jak lze AI agenty využít k nalezení a automatickému odstranění výkonnostních problémů webových aplikací. Systém bude analyzovat zdrojový kód, výsledky profilování a metriky Core Web Vitals a bude optimalizace navrhovat, nebo je rovnou implementovat. Hlavní otázka zní: dokážou AI agenti samostatně optimalizovat výkon webové aplikace, aniž by narušili její funkčnost a udržovatelnost kódu? Výstupem práce bude prototyp optimalizačního agenta a experimentální vyhodnocení na reprezentativních webových aplikacích, včetně analýzy kompromisů mezi výkonem, kvalitou kódu a správností.
- Analyzujte typické výkonnostní problémy webových aplikací, metriky Core Web Vitals a nástroje pro jejich měření a profilování.
- Navrhněte architekturu optimalizačního agenta, který pracuje se zdrojovým kódem, výsledky profilování a naměřenými metrikami.
- Implementujte prototyp agenta.
- Vyhodnoťte agenta na sadě reprezentativních webových aplikací: změřte zlepšení výkonu a ověřte zachování funkčnosti a kvality kódu.
- Diskutujte limity přístupu a kompromisy mezi výkonem, kvalitou kódu a správností.
👉 https://projects.fit.cvut.cz/topics/6453
Bezpečné poskytování tajemství AI agentům ze správce hesel pomocí protokolu MCP
S rychlým nástupem autonomních AI agentů vyvstává problém jejich přístupu k chráněným systémům. Pokud agent obdrží statické heslo nebo API klíč přímo do svého kontextu (LLM promptu), hrozí jeho exfiltrace pomocí prompt injection útoků nebo neúmyslné prozrazení. Tato práce zkoumá možnosti využití Model Context Protocol (MCP) k vytvoření architektury, kde agent operuje pouze s bezpečnými referencemi na tajemství, zatímco reálné hodnoty se doplňují až v oddělené síťové vrstvě (např. v HTTP proxy). Cílem je zjistit, jak lze tímto přístupem minimalizovat riziko kompromitace při úspěšném útoku na jazykový model. Práce přinese formální model hrozeb pro AI agenty pracující s tajemstvími a praktický prototyp MCP serveru s proxy vrstvou, jehož odolnost bude experimentálně ověřena pomocí sady adversariálních scénářů.
- Analyzujte protokol MCP, architekturu AI agentů a existující způsoby, jak agentům poskytovat tajemství (např. 1Password, Bitwarden, HashiCorp Vault).
- Sestavte model hrozeb pro přístup AI agentů k tajemstvím (prompt injection, tool poisoning, exfiltrace, confused deputy) a zhodnoťte, jak se s nimi existující řešení vyrovnávají.
- Navrhněte architekturu, ve které agent pracuje jen s odkazy na tajemství a skutečné hodnoty se doplní až při provedení akce (např. v HTTP proxy). Porovnejte ji s přímým vracením hodnot.
- Navrhněte autorizační model: rozsah přístupu, časově omezená oprávnění, schválení uživatelem a auditní záznam. Počítejte s tím, že trezor je end-to-end šifrovaný.
- Implementujte MCP server a související komponenty v Node.js a ukázkovou integraci s AI agentem.
- Otestujte implementaci a ověřte odolnost navržené architektury proti útokům z modelu hrozeb pomocí sady adversariálních scénářů. Výsledky porovnejte s přímým přístupem k hodnotám.


