Plan Szkolenia

Software Engineering 5 dni

Dzień 1: Projekt Management

  • Zarządzanie projektami a zarządzanie liniowe oraz konserwacja i wsparcie
  • Definicja projektu i formularze projektu
  • Management – zasady ogólne i zarządzanie projektami
  • Management style
  • Co jest specjalnego w projektach IT?
  • Podstawowy proces projektowy
  • Iteracyjny, przyrostowy, kaskadowy, zwinny i odchudzony proces projektu
  • Fazy projektu
  • Role projektowe
  • Dokumentacja projektowa i inne artefakty
  • Czynniki miękkie i dobro ludzkie
  • PRINCE 2, PMBOK, PMI, IPMA i inne standardy projektowe

Dzień 2: Business Analiza i Requirements Engineering Podstawy

  • Definiowanie celów biznesowych
  • Business analiza, zarządzanie procesami biznesowymi, doskonalenie procesów biznesowych
  • Granica pomiędzy analizą biznesową i systemową
  • Interesariusze systemu, użytkownicy systemu, kontekst systemu i granice systemu
  • Dlaczego wymagania są konieczne?
  • Co nas inżynieria wymagań
  • Granica pomiędzy inżynierią wymagań a projektowaniem architektonicznym
  • Gdzie często kryje się inżynieria wymagań?
  • Inżynieria wymagań w iteracyjnym, odchudzonym i zwinnym rozwoju oraz w ciągłej integracji – FDD, DDD, BDD, TDD
  • Podstawowy proces inżynierii wymagań, role i artefakty
  • Normy i certyfikaty: BABOK, ISO/IEEE 29148, IREB, BCS, IIBA

Dzień 3: Podstawy architektury i rozwoju

  • Programming języki – paradygmaty strukturalne i obiektowe
  • Rozwój obiektowy – ile jest historią, ile przyszłością
  • Modułowość, przenośność, łatwość konserwacji i skalowalność architektur
  • Definicja i rodzaje architektur oprogramowania
  • Architektura korporacyjna i architektura systemu
  • Programming style
  • Programming środowiska
  • Programming błędy oraz sposoby ich unikania i zapobiegania
  • Modelowanie architektury i komponentów
  • SOA, Web Services i mikrousługi
  • Automatyczna kompilacja i ciągła integracja
  • Ile projektu architektonicznego jest w projekcie?
  • Programowanie ekstremalne, TDD i refaktoring

Dzień 4: Zapewnianie jakości i podstawy testowania

  • Jakość produktu: co to jest? ISO 25010, FURPS itp.
  • Jakość produktu, doświadczenie użytkownika, Model Kano, zarządzanie doświadczeniem klienta i integralna jakość
  • Projektowanie zorientowane na użytkownika, persony i inne sposoby na nadanie jakości indywidualnej
  • Wystarczająca jakość
  • Zapewnienie jakości i kontrola jakości
  • Strategie ryzyka w kontroli jakości
  • Elementy zapewnienia jakości: wymagania, kontrola procesu, zarządzanie konfiguracją i zmianami, weryfikacja, walidacja, testowanie, testy statyczne i analiza statyczna
  • Zapewnienie jakości w oparciu o ryzyko
  • Testowanie oparte na ryzyku
  • Rozwój oparty na ryzyku
  • Krzywa Boehma w zapewnianiu jakości i testowaniu
  • Cztery szkoły testowania – która odpowiada Twoim potrzebom?

Dzień 5: Rodzaje procesów, dojrzałość i doskonalenie procesów

  • Ewolucja procesu IT: od Alana Turinga, przez Big Blue, po Lean Startup
  • Organizacja procesowa i zorientowana na proces
  • Historia procesów w rzemiośle i przemyśle
  • Modelowanie procesów: UML, BPMN i więcej
  • Zarządzanie procesami, optymalizacja procesów, reengineering procesów i systemy zarządzania procesami
  • Innowacyjne podejścia procesowe: Deming, Juran, TPS, Kaizen
  • Czy jakość (procesu) jest bezpłatna? (Philip Crosby)
  • Potrzeba i historia doskonalenia dojrzałości: CMMI, SPICE i inne skale dojrzałości
  • Specjalne typy dojrzałości: TMM, TPI (do testowania), Requirements Engineering Dojrzałość (Gorschek)
  • Dojrzałość procesu a dojrzałość produktu: jakaś korelacja? Jakiś związek przyczynowy?
  • Dojrzałość procesowa a sukces biznesowy: jakaś korelacja? jakiś związek przyczynowy?
  • Porzucona lekcja: automatyczne zapobieganie defektom i kolejny krok w Productivity
  • Próby: TQM, SixSigma, retrospektywy zwinne, frameworki procesowe

Requirements Engineering - 2 dni

Dzień 1: Pozyskiwanie wymagań, negocjacje, konsolidacja i Management

  • Znajdowanie wymagań: co, kiedy i przez kogo
  • Klasyfikacja interesariuszy
  • Zapomniani interesariusze
  • Definiowanie kontekstu systemu – definiowanie źródeł wymagań
  • Metody i techniki wzbudzania
  • Prototypowanie, persony i pozyskiwanie wymagań poprzez testowanie (eksploracyjne i inne)
  • Marketing i pozyskiwanie wymagań – MDRA („Market-Driven Requirements Engineering”)
  • Priorytetyzacja wymagań: MoSCoW, Karl Wiegers i inne techniki (w tym zwinny MMF)
  • Doprecyzowanie wymagań – zwinna „specyfikacja na przykładzie”
  • Negocjowanie wymagań: rodzaje konfliktów, metody rozwiązywania konfliktów
  • Rozwiązywanie wewnętrznych niezgodności pomiędzy niektórymi typami wymagań (np. bezpieczeństwo a łatwość użycia)
  • Śledzenie wymagań – dlaczego i jak
  • Zmiany stanu wymagań
  • Wymagania CCM, wersjonowanie i linie bazowe
  • Widok produktu i widok projektu na wymagania
  • Zarządzanie produktami i zarządzanie wymaganiami w projektach

Dzień 2: Analiza wymagań, modelowanie, specyfikacja, weryfikacja i walidacja

  • Analiza to myślenie i ponowne przemyślenie, które dokonujesz pomiędzy wywołaniem a specyfikacją
  • Proces wymagań jest zawsze iteracyjny, nawet w projektach sekwencyjnych
  • Opisywanie wymagań w języku naturalnym: ryzyko i korzyści
  • Modelowanie wymagań: korzyści i koszty
  • Zasady stosowania języka naturalnego do specyfikacji wymagań
  • Słowniczek definiowania i zarządzania wymaganiami
  • UML, BPMN i inne formalne i półformalne zapisy modelowania wymagań
  • Używanie szablonów dokumentów i zdań do opisu wymagań
  • Weryfikacja wymagań – cele, poziomy i metody
  • Walidacja – obejmująca prototypowanie, przeglądy i inspekcje oraz testowanie
  • Walidacja wymagań i walidacja systemu

Testowanie - 2 dni

Dzień 1: Projektowanie testów, wykonanie testów i testowanie eksploracyjne

  • Projekt testu: po przetestowaniu opartym na ryzyku wybór optymalnego sposobu wykorzystania dostępnego czasu i zasobów
  • Projekt testu „od nieskończoności do tego miejsca” – wyczerpujące testowanie nie jest możliwe
  • Przypadki testowe i scenariusze testowe
  • Projektowanie testów na różnych poziomach testów (od poziomu testów jednostkowych po poziom testów systemowych)
  • Projektowanie testów do testów statycznych i dynamicznych
  • Projekt testów zorientowany na Business i technikę („czarna skrzynka” i „biała skrzynka”)
  • Próba złamania systemu („testy negatywne”) i wspieranie programistów (testy akceptacyjne)
  • Projektowanie testów w celu osiągnięcia pokrycia testami – różne miary pokrycia testów
  • Projektowanie testów oparte na doświadczeniu
  • Projektowanie przypadków testowych na podstawie wymagań i modeli systemów
  • Heurystyka projektowania testów i testowanie eksploracyjne
  • Kiedy projektować przypadki testowe? – podejście tradycyjne i eksploracyjne
  • Opisywanie przypadków testowych – ile szczegółów?
  • Wykonanie testu – aspekty psychologiczne
  • Wykonanie testów – logowanie i raportowanie
  • Projektowanie testów na potrzeby testów „niefunkcjonalnych”.
  • Automatyczne projektowanie testów i MBT (testowanie oparte na modelu)

Dzień 2: Organizacja testów, Management i automatyzacja

  • Poziomy testów (lub fazy)
  • Kto i kiedy przeprowadza badania? – różne rozwiązania
  • Środowiska testowe: koszt, administracja, dostęp, odpowiedzialność
  • Symulatory, emulatory i wirtualne środowisko testowe
  • Testowanie w zwinnym scrumie
  • Organizacja i rola zespołu testowego
  • Proces testowy
  • Automatyzacja testów – co można zautomatyzować?
  • Automatyzacja wykonywania testów – podejścia i narzędzia
 63 godzin

Liczba uczestników



Cena za uczestnika

Opinie uczestników (5)

Powiązane Kategorie