Table of Contents

Metodiky vývoje SW. Práce s požadavky a jejich modelování. Styly a vzory.

  1. Vize projektu. Tradiční a agilní metodiky vývoje SW. DevOps.
  2. Metodika SCRUM detailně. Role v týmu (Product Owner, SCRUM master,…). Sprint a product backlog. SCRUM události (sprint, sprint planning meeting, demo meeting, retrospectvive meeting, stand-up meeting). Výstupy sprintu.
  3. Byznys cíle, byznys požadavky a systémové požadavky. Textově formulované požadavky a jejich atributy. Zdroje a způsoby získavání požadavků. Kategorizace požadavků. Šablony textově formulovaných požadavků.
  4. Obchodní procesy a jejich vztah k požadavkům. Modelování požadavků pomocí UML - diagram aktivit.
  5. UML digram případů užití. Scénáře případů užití. Wireframes.
  6. UML diagram tříd, diagram stavů. Vazby aggregace a kompozice.
  7. UML diagramy nasazení, komponent a sekvencí.
  8. Komponentový vývoj, dependency injection, java EE architektura, kontejnery.
  9. JavaBeans.
  10. Perzistentní vrstva.
  11. GRASP, Byznys vrstva.
  12. Design Patterny, Prezentační vrstva, testy, základy deployment, maintenance.
  13. Softwarová architektura, škálování, SOA.

Vize projektu. Tradiční a agilní metodiky vývoje SW. DevOps

Vize projektu

Tradiční metodiky vývoje SW

Agilní metodiky

DevOps

Metodika SCRUM detailně

Role v týmu (Product Owner, SCRUM master,…). Sprint a product backlog. SCRUM události (sprint, sprint planning meeting, demo meeting, retrospectvive meeting, stand-up meeting). Výstupy sprintu.

Základní principy SCRUM

Role v týmu

Sprint a Product Backlog

SCRUM události

Výstupy sprintu

Byznys cíle, byznys požadavky a systémové požadavky. Textově formulované požadavky a jejich atributy. Zdroje a způsoby získavání požadavků. Kategorizace požadavků. Šablony textově formulovaných požadavků.

Byznys cíle, byznys požadavky a systémové požadavky

Textově formulované požadavky a jejich atributy

Mohou být dokumentovány jako volný nebo struktorovaný text, tabulky, grafy…

Šablony textově formulovaných požadavků

Zdroje a způsoby získávání požadavků

Kategorizace požadavků

Kategorizace podle Kano modelu

Obchodní procesy a jejich vztah k požadavkům. Modelování požadavků pomocí UML - diagram aktivit.

Obchodní procesy a jejich vztah k požadavkům

Modelování požadavků pomocí UML – diagram aktivit

UML digram případů užití. Scénáře případů užití. Wireframes.

UML diagram případů užití (Use Case Diagram)

Scénáře případů užití (Use Case Scenarios)

Wireframes

UML diagram tříd, diagram stavů. Vazby aggregace a kompozice.

UML diagram tříd

Vazby agregace a kompozice

UML diagram stavů (State Diagram)

UML diagramy nasazení, komponent a sekvencí.

UML diagram komponent

UML diagram nasazení (Deployment Diagram)

umístění SW na HW (Artefakty)

UML sekvenční diagram (Sequence Diagram)

Komponentový vývoj, dependency injection, java EE architektura, kontejnery.

Komponentový vývoj

Objekt vs Komponenta:

Dependency Injection (DI)

Java EE architektura

Client tier

Web tier

Business tier

Enterprise Information System (EIS) tier

Kontejnery v Java EE

JavaBeans

Co jsou JavaBeans

Základní vlastnosti JavaBean komponenty

Typy vlastností

Metody a události

Persistování stavu (Persistence)

Shrnutí výhod JavaBeans

Perzistentní vrstva

Úloha perzistentní vrstvy

Object-Relational Mapping (ORM)

Typické funkce perzistentní vrstvy

Design Patterns v perzistentní vrstvě

Příklady z Java EE

GRASP, Byznys vrstva

GRASP (General Responsibility Assignment Software Patterns)

Co je GRASP

Klíčové GRASP vzory

Byznys vrstva (Business Layer)

Úloha byznys vrstvy

Charakteristiky byznys vrstvy

Příklad z Java EE

Výhody oddělení byznys vrstvy

Design Patterny, Prezentační vrstva, testy, základy deployment, maintenance

Design Patterny

Facade (Fasáda)

Observer

Model-View-Controller (MVC)

Prezentační vrstva (Presentation Layer)

Testy

Základy deploymentu

Údržba (Maintenance)

Softwarová architektura, škálování, SOA

Softwarová architektura

Rozdíl mezi architektonickým stylem a softwarovou architekturou

Hlavní architektonické styly

Škálování (Scaling)

Service-Oriented Architecture (SOA)