Návrh Školení

Software Engineering 5 dní

Den 1: Projektové řízení

  • Projekt versus operativní řízení a údržba a podpora
  • Definice projektu a jeho formy
  • Řízení – obecná pravidla a projektové řízení
  • Styly řízení
  • Co je specifické pro IT projekty?
  • Základní proces projektu
  • Iterativní, inkrementální, vodopádový, agilní a štíhlý (lean) proces projektu
  • Fáze projektu
  • Role ve projektech
  • Dokumentace projektu a další artefakty
  • Měkké faktory a lidský rozměr (peopleware)
  • PRINCE 2, PMBOK, PMI, IPMA a jiná standardizace projektů

Den 2: Základy analyzy podniku a inženýrství požadavků

  • Definování obchodních cílů
  • Análza podniku, řízení obchodních procesů, optimalizace obchodních procesů
  • Hranice mezi analýzou podniku a systému
  • Aktéři systému, uživatelé systému, kontext systému a hranice systému
  • Proč jsou požadavky nezbytné?
  • Co je inženýrství požadavků?
  • Hranice mezi inženýrstvím požadavků a architektonickým návrhem
  • Kde se často skrývá inženýrství požadavků?
  • Inženýrství požadavků v iterativních, štíhlých (lean) a agilních metodologiích vývoje a při kontinuální integraci – FDD, DDD, BDD, TDD
  • Základní proces inženýrství požadavků, role a artefakty
  • Standardy a certifikace: BABOK, ISO/IEEE 29148, IREB, BCS, IIBA

Den 3: Základy architektury a vývoje

  • Programovací jazyky – strukturální a objektově orientované paradigmy
  • Objektově orientovaný vývoj – kolik je historie, kolik budoucnost?
  • Modularita, přenositelnost, udržovatelnost a škálovatelnost architektur
  • Definice a typy softwarových architektur
  • Vědecké a systémové architektury
  • Styly programování
  • Programovací prostředí
  • Chyby v programování a jak je eliminovat a předejít jim
  • Modelování architektury a komponent
  • SOA, Webové služby a mikroslužby
  • Automatická budova (build) a kontinuální integrace
  • Kolik architektura je na projektu?
  • Extrémní programování, TDD a refaktoring

Den 4: Základy zajišťování kvality a testování

  • Kvalita produktu: co to je? ISO 25010, FURPS atd.
  • Kvalita produktu, uživatelské zážitky, model Kano, manažment zákaznických zážitků a integrovaná kvalita
  • User-centered design (UZD), persona a jiné metody pro individualizaci kvality
  • Kvalita v rozumném množství
  • Zajišťování kvality a kontrola kvality
  • Risková strategie ve kontrole kvality
  • Složky zajišťování kvality: požadavky, řízení procesu, konfigurační a změnové řízení, verifikace, validace, testování, statické testování a analýza
  • Risková zajišťování kvality
  • Riskové testování
  • Vývoj řízený rizikem
  • Křivka Boehma v zajišťování kvality a při testování
  • Čtyři školy testování – která se hodí pro vaše potřeby?

Den 5: Typy procesů, maturity a zlepšování procesů

  • Vývoj IT procesu: od Alana Turinga přes Big Blue k štíhlému (lean) startupu
  • Proces a procesní organizace
  • Dějiny procesů v řemeslech a průmyslu
  • Modelování procesů: UML, BPMN a další
  • Řízení procesu, optimalizace procesu, re-inženýring procesu a systémy řízení procesů
  • Innovativní přístupy k procesům: Deming, Juran, TPS, Kaizen
  • Je (procesní) kvalita zdarma? (Philip Crosby)
  • Potřeba a historie zlepšování maturity: CMMI, SPICE a jiné stupnice maturity
  • Zvláštní typy maturity: TMM, TPI (pro testování), Maturity požadavků na inženýrství (Gorschek)
  • Maturita procesu versus maturita produktu: existuje nějaká korelace? Existuje nějaké příčinné vztahy?
  • Maturita procesu versus úspěch podnikání: existuje nějaká korelace? Existuje nějaké příčinné vztahy?
  • Zapomenutým lekce: Automatizace prevence vad a další skok produktivitě
  • Pokusy: TQM, SixSigma, agilní retrospektyvy, rámce procesů

Inženýrství požadavků - 2 dny

Den 1: Elicitace, vyjednávání, konsolidace a řízení požadavků

  • Hledání požadavků: co, kdy a kým
  • Klasifikace stakeholderů
  • Zapomenutí stakeholderové
  • Definování kontextu systému – definování zdrojů požadavků
  • Elicitační metody a techniky
  • Prototypování, persona a elicitační techniky prostřednictvím testování (explorativního a jiné)
  • Marketing a elicitace požadavků – MDRA (“Market-Driven Requirements Engineering”)
  • Prioritizace požadavků: MoSCoW, Karl Wiegers a další techniky (včetně agilní MMF)
  • Rafinování požadavků – agilní “specifikace na základě příkladu”
  • Negociace požadavků: typy konfliktů, metody řešení konfliktů
  • Rozhodování v interních nekonzistencech mezi některými druhy požadavků (např. bezpečnost versus snadno použitelnost)
  • Sledovatelnost požadavků – proč a jak
  • Změny stavu požadavků
  • CMM, verze a baseline požadavků
  • Výpověď produktu a projektový pohled na požadavky
  • Manažment produktu a manažment požadavků ve projektech

Den 2: Analýza, modelování, specifikace, verifikace a validace požadavků

  • Analyza je myšlení a přemýšlení mezi elicitací a specifikací
  • Proces požadavků je vždy iterativní, i ve sériových projektech
  • Popis požadavků přirozeným jazykem: rizika a úspěchy
  • Modelování požadavků: výhody a náklady
  • Pravidla pro použití přirozeného jazyka pro specifikaci požadavků
  • Definování a řízení slovníku požadavků
  • UML, BPMN a další formální a semiforální modelovací notace pro požadavky
  • Použití šablon dokumentů a vět pro popis požadavků
  • Verifikace požadavků – cíle, úrovně a metody
  • Validace – s prototypováním, revizemi a inspekčními kontrolami, a testováním
  • Validace požadavků a validace systému

Testování - 2 dny

Den 1: Návrh testů, provádění testů a explorativní testování

  • Návrh testů: po riskovém testování, výběr optimálního způsobu využití dostupného času a zdrojů
  • Návrh testů “z nekonečna k tady” – vyčerpávající testování není možné
  • Testovací případy a scénáře testů
  • Návrh testů na různých úrovních testování (od unit testů k systémovým testům)
  • Návrh testů pro statické a dynamické testování
  • Obchodně orientovaný a technicky orientovaný návrh testů (“black-box” a “white-box”)
  • Pokus o porušení systému (“negativní testování”) a podporu vývojářů (akceptační testování)
  • Návrh testů pro dosažení pokrytí testů – různé míry pokrytí testů
  • Zkušenostmi založený návrh testů
  • Návrh testovacích případů z požadavků a modelů systému
  • Heuristiky pro návrh testů a explorativní testování
  • Kdy navrhnout testovací případy? – tradiční a explorativní přístup
  • Popis testovacích případů – kolik detailu?
  • Provádění testů – psychologické aspekty
  • Provádění testů – protokolování a sestavování zpráv
  • Návrh testů pro “nepodstatné” testování (non-functional testing)
  • Automatický návrh testů a MBT (Model-Based Testing)

Den 2: Organizace, řízení a automatizace testování

  • Úrovně testování (nebo fáze)
  • Kdo provádí testování a kdy? – různé řešení
  • Testovací prostředí: náklady, administrace, přístup, odpovědnost
  • Simulátory, emulátory a virtuální testovací prostředí
  • Testování v agilním scrumu
  • Organizace týmu pro testování a role
  • Proces testování
  • Automatizace testování – co lze automatizovat?
  • Automatizace provádění testů – přístupy a nástroje
 63 hodiny

Počet účastníků


Cena za účastníka

Reference (5)

Nadcházející kurzy

Související kategorie