Architektury softwarových systémů

B232 - Letní 23/24
Tento předmět se nenachází v Moodle. Na jeho domovskou stránku se můžete dostat pomocí tlačítka "Stránka kurzu (mimo Moodle)" vpravo (pokud existuje).

Architektury softwarových systémů - A4B77ASS

Kredity 6
Semestry letní
Zakončení zápočet a zkouška
Jazyk výuky čeština
Rozsah výuky 2P+2C
Anotace
Cílem předmětu je poskytnout studentům základní orientaci v technikách návrhu složitých informačních systémů, se zaměřením na metody distribuce. Ačkoliv předmět prezentuje i jednotlivé technologie, důraz bude kladen na pochopení obecně platných zásad. \\Výsledek studentské ankety předmětu je zde: http://www.fel.cvut.cz/anketa/aktualni/courses/A4B77ASS
Cíle studia
Cílem předmětu je seznámit studenty se standardními postupy softwarového vývoje a aplikovat tyto postupy na vývoj distribuovaných a výkonných řešení v jazyce Java.
Osnovy přednášek
01. [MR] Uvod: Architektury softwarových systému, komponentové a distribuované architektury
02. [DS] Koncepce jazyků na bázi virtualního stroje, srovnáni s jinými jazyky, přehled výhod a nevýhod; kompilace, decompilery, obfuscatory, classloaders, reflektivní operace
03. [DS] Vybrané návrhové vzory (design patterns)
04. [MR] Design patterns pro distribuované systémy
05. [DS] Vlákna, synchronizace, atomické typy, non-blocking algoritmy
06. [MR] RMI - architektura, podpůrné komponenty, vzdálená invokace, komunikace mezi procesy
07. [DS] Streamy, vstupní/výstupní operace, s흻ová komunikace, serializace, externalizace
08. [MR] Komponentové modely, Distribuované komponenty, CORBA
09. [MR] Vyhledávání služeb, dynamická kompozice, Redundance, design vysoce spolehlivých systémů
10. [DS] Datové struktury - primitiva, pole; memory management s garbage collectorem
11. [MR] Webové služby, service-oriented architectures
12. [MR] Architektury pro service oriented architectures
13. [DS] Asynchronní architektury, producer-consumer model
14. [DS] Agentní a multiagentní systémy
Osnovy cvičení
1. Úloha 1: Od designu k implementaci design patterns
2. Úloha 1: Od designu k implementaci design patterns
3. Úloha 2: Distribuovaná invokace, komunikace mezi procesy
4. Úloha 2: Distribuovaná invokace, komunikace mezi procesy
5. Úloha 3: Signalizace a redundance
6. Úloha 3: Signalizace a redundance
7. Úloha 4: CORBA, heterogenní systémy
8. Úloha 4: CORBA, heterogenní systémy
9. Úloha 4: CORBA, heterogenní systémy
10. Úloha 5: Webové služby, vzdálená invokace služeb
11. Úloha 5: Webové služby, vzdálená invokace služeb
12. Úloha 6: Asynchronní události, agenti a aktivní objekty
13. Úloha 6: Asynchronní události, agenti a aktivní objekty
14. Rezerva

Literatura
F. Buschmann, R. Meunier, H. Rohnert, P.Sommerlad, M. Stal: Pattern-Oriented Software Architecture: A System of Patterns, John Wiley and Sons Ltd, Chichester, UK, 1996

Douglas C. Schmidt, Michael Stal, Hans Rohnert and Frank Buschmann: Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked Objects, Wiley, 2000

Munindar P. Singh and Michael N. Huhns: Service-Oriented Computing, Semantics, Processes, Agents, John Wiley & Sons, Ltd., 2005
Požadavky
Programování 1+2, Operační systémy a sítě