Přehled studia |
Přehled oborů |
Všechny skupiny předmětů |
Všechny předměty |
Seznam rolí |
Vysvětlivky
Návod
Anotace:
Účelem je seznámit studenty s principy integrace softwarových systémů a použití návrhových vzorů pro integraci. Kurz nabízí seznámení se s technologiemi pro řízení toku zpráv, jejich transformací napříč formáty, integraci byznys pravidel pro řízení událostí, řízení distribuovaných transakcí, apod. Kurz poskytuje kompletní přehled o Architekturách orientovaných na služby (SOA), se zaměřením na integraci služeb a byznys pravidel nebo heterogenních systémů. Mimo decentralizovaný softwarový návrh pro SOA se studenti naučí návrhu ?Microservice Architecture?, který umožní nezávislé nasazení a správu jednotlivých částí systému a služeb. Mimo výše uvedené se studenti naučí pracovat s cloudovými službami v přístupu Platform as a Service (PaaS), který se vyznačuje charakteristickými rysy pro vývoj a integraci služeb včetně snadné migrace v cloudových aplikacích. Studenti se seznámí se standardní specifikací pro modularizaci systémů v technologii Java - Open Service Gateway Iniciative (OSGi). Poslední část kurzu je zaměřena integraci služeb pro mobilní platformy, a to jak z pohledu frontendu, tak i možnosti připojení mobilních backendů.
Cíle studia:
Účelem je seznámit posluchače s projekty JBoss Fuse, JBoss SwitchYard a dalšími, a demonstovat na nich řešení problémů z oblasti integrace heterogenních systémů.
Studenti se seznámí s pojmy jako jsou
* Architektura orientovaná na služby (SOA)
* Podniková sběrnice služeb (ESB)
* Architektura řízená událostmi (EDA)
* Service Component Architecture (SCA)
* Mikroslužby
Obsah:
Viz anotace, průmyslový předmět, 4 dny intenzivní kurz (Po, Út, Čt, Pá), před začátkem semestru
Účelem je seznámit studenty s principy integrace softwarových služeb a s představením návrhových vzorů a best practices. Studenti se seznámí se specifikací Open Service Gateway iniciative (OSGi), standard pro modularizaci systémů. Dále se studentu seznámí s problematikou transakcí pro distribuovaný software. Kurz poskytne seznámení se s technologiemi řízení toku zpráv, transformací standardních formátů zpráv, pravidly řízení, apod. Studenti se seznámí se softwarově architektonickým stylem Service-Oriented Architecture (SOA), Platform as a Service (PaaS) a Microservices, dále pak s integraci služeb, byznys pravidel, heterogenních systémů a zdrojů. Poslední část poskytuje přehled o možnostech integrace mobilní platformy, a to jak z pohledu frontend, tak i možnosti připojení mobilních backendů.
V rámci cvičení se studenti seznámí s technologiemi a nástroji pro integraci SW služeb a distribuovaných systémů. Naučí se pracovat s se standardem OSGi, naimplementují aplikaci využívající distribuované transakce. Další část předmětu je seznámí technologií pro posílání a směrování zpráv v rozsáhlých systémech. Předmět dodá studentům praktickou zkušenost s integrací služeb v architektonickém stylu Architektury orientované na služby (SOA), Platform as a Service (PaaS) a Microservices. Osvojí si práci s integrací, business proces managementem (BPM) a clusteringem pro škálovatelnost, dále se seznámí s testovatelností distribuovaných aplikací. Pro správu rozsáhlých systémů se naučí řízení a správu kontejnerů, integraci heterogenních zdrojů. Poslední částí předmětu je pohled na systémovou integraci z pohledu mobilních aplikací.
Osnovy přednášek:
Plán seminářů
Den 1
1. | | Principy systémové integrace softwarových služeb |
2. | | Nástroje integrace softwarových služeb |
3. | | Základy standardní specifikace pro modularizaci systémů - OSGi |
4. | | Aplikace OSGi |
Den 2
5. | | Distribuované transakce a webové služby a zdroje |
6. | | Technologie posílání zpráv, pravidla směrování, Komponenty (Apache Camel) |
7. | | Integrace komponent SOA, Základní vzory integrace, Testování |
Den 3
8. | | Integrace SW služeb a business proces management (BPM) |
9. | | Integrace SW služeb a clustering |
10. | | Testování Integrace SW služeb |
11. | | Specifikace a aplikace architektury Platform as a Service (PaaS) |
12. | | Řízení kontejnerů s PaaS |
13. | | Integrace heterogenních služeb v architektuře SOA |
14. | | Řízení a správa systémů SOA - Unified SOA Governance |
Den 4
15. | | Mobilní aplikace pro integraci SW služeb |
16. | | Mobilní backend |
17. | | Mobilní frontend |
Osnovy cvičení:
Plán cvičení
Den 1
1. | | Základy standardní specifikace pro modularizaci systémů OSGi |
2. | | Základy standardní specifikace pro modularizaci systémů OSGi |
3. | | Classloading, JBoss Fuse |
4. | | Frameworky Karaf a Blueprint |
Den 2
5. | | Posílání zpráv - Apache Camel |
6. | | Posílání zpráv - Apache Camel: Consumer-Provider, komponenty |
7. | | Posílání zpráv - Apache Camel: Konvertory, WS, REST |
Den 3
8. | | Integrace SW služeb - SwitchYard |
9. | | Integrace SW služeb - SwitchYard: Transformace, validace |
10. | | Integrace SW služeb - SwitchYard: BPM, SCA |
11. | | Integrace SW služeb - SwitchYard: Clustering, failover |
12. | | Architektura PaaS - Fabric8 |
Den 4
13. | | Řízení kontejnerů |
14. | | hawt.io |
15. | | Mobilní JMS |
16. | | Mobilní JMS iBus//Mobile |
Literatura:
Literatura a reference:
* Beginning Java EE 6 with GlassFish 3, Antonio Goncalves, Apress
* Java EE 7 Essentials, Arun Gupta, O'Reilly
* The Java EE 6 Tutorial, 4th Edition, Eric Jendroc et al. Addison-Wesley
*
http://docs.oracle.com/javaee/6/tutorial/doc/
Povinná literatura:
Předmět studentům nabídne materiály které budou vypracované ke kurzu.
Materiály a detaily budou postupně přidány zde:
https://developer.jboss.org/wiki/SystemIntegrationWithJBoss a dále pak na courseware fakulty
https://cw.fel.cvut.cz
Doporučená literatura:
* Richard S. Hall, Karl Pauls, Stuart McCulloch, David Savage: OSGi in Action
* Craig Walls: Spring in Action
* Holly Cummins, Timothy Ward: Enterprise OSGi in Action
* Claus Ibsen, Jonathan Anstey: Camel in Action
* Scott Cranton, Jakub Korab: Apache Camel Developer's Cookbook
* Mark Little, Jon Maron: Java Transaction Processing: Design and Implementation
* Thomas Erl: Next Generation SOA: A Concise Introduction to Service Technology & Service-Orientation
* Gregor Hohpe, Bobby Woolf: Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions
* InfoQ eMag: Microservices
Požadavky:
Student musí být seznámen s Enterprise Java technologií (Java EE) a být schopen vytvořit jednoduchou aplikaci a tu nasadit na webový server, dále by měl mít znalosti objektově-orientovaného návrhu a mít základní přehled softwarových architekturách, měl by znát práci s relační databází. Tyto znalosti může získat v bakalářských předmětech OI nebo STM, či nastudováním běžné literatury o Java EE (i starších verzích), objektovém návrhu a návrhových vzorech.
Poznámka:
předmět probíhá formou blokové výuky po dobu 1 týdnů |
Klíčová slova:
SOA, ESB, Microservices
Předmět je zahrnut do těchto studijních plánů:
Plán |
Obor |
Role |
Dop. semestr |
Stránka vytvořena 11.12.2024 07:50:59, semestry: Z/2025-6, Z,L/2024-5, připomínky k informační náplni zasílejte správci studijních plánů |
Návrh a realizace: I. Halaška (K336), J. Novák (K336) |