Course Outline

Software Engineering 5 dagen

Dag 1: Project Management

  • Project- versus lijnbeheer en onderhoud en ondersteuning
  • Projectdefinitie en projectformulieren
  • Management – Algemene regels en projectbeheer.
  • Management Stijlen
  • Wat is er speciaal voor IT-projecten?
  • Basis projectproces
  • Iteratief, incrementeel, waterval, agile en lean projectproces
  • Fasen van het project
  • Rollen in het project
  • Projectdocumentatie en andere artefacten
  • Zachte factoren en peopleware
  • PRINCE 2, PMBOK, PMI, IPMA en andere projectstandaarden

Dag 2: Business Analyse en Requirements Engineering Fundamentals

  • Definiëren van bedrijfsdoelen
  • Business analyse, business process management, business process improvement
  • De grens tussen bedrijfs- en systeemanalyse
  • Belanghebbenden van het systeem, systeemgebruikers, systeemcontext en systeemspecificaties
  • Waarom zijn eisen nodig?
  • Wat ons requirements engineering
  • De grens tussen requirements engineering en architectonisch ontwerp
  • Waar zit requirements engineering vaak verborgen?
  • Requirements engineering in iteratieve, lean en agile ontwikkeling en in continue integratie – FDD, DDD, BDD, TDD
  • Basisvereisten engineeringproces, rollen en artefacten
  • Normen en certificeringen: BABOK, ISO/IEEE 29148, IREB, BCS, IIBA

Dag 3: Basisprincipes van architectuur en ontwikkeling

  • Programming Talen – structurele en objectgeoriënteerde paradigma's.
  • Objectgeoriënteerde ontwikkeling – hoeveel is geschiedenis, hoeveel is de toekomst
  • Modulariteit, portabiliteit, onderhoudbaarheid en schaalbaarheid van architecturen
  • Definitie en type software-architecturen
  • Enterprise-architectuur en systeemarchitectuur
  • Programming Stijlen
  • Programming Omgevingen
  • Programming Fouten en hoe ze te vermijden en te voorkomen
  • Modellering van architectuur en componenten
  • SOA, Web Services en microdiensten
  • Automatische opbouw en continue integratie
  • Hoeveel architectuurontwerp is er op een project?
  • Extreme programmering, TDD en re-factoring

Dag 4: Basisprincipes van kwaliteitsborging en testen

  • Productkwaliteit: wat is het? ISO 25010, FURPS enz.
  • Productkwaliteit, gebruikerservaring, Kano Model, customer experience management en integrale kwaliteit
  • Gebruikersgericht ontwerp, persona's en andere manieren om kwaliteit individueel te maken
  • Precies genoeg kwaliteit
  • Kwaliteitsborging en kwaliteitscontrole
  • Risicostrategieën bij kwaliteitscontrole
  • De componenten van kwaliteitsborging: vereisten, procescontrole, configuratie- en wijzigingsbeheer, verificatie, validatie, testen, statisch testen en statische analyse
  • Kwaliteitsborging op basis van risico's
  • Testen op basis van risico's
  • Risicogedreven ontwikkeling
  • De curve van Boehm in kwaliteitsborging en bij testen
  • De vier testscholen – welke past bij uw behoefte?

Dag 5: Procestypes, volwassenheid en procesverbetering

  • De evolutie van IT-processen: van Alan Turing via Big Blue naar lean startup
  • Proces en procesgerichte organisatie
  • De geschiedenis van processen in ambachten en industrieën
  • Procesmodellering: UML, BPMN en meer
  • Procesmanagement, procesoptimalisatie, procesre-engineering en procesmanagementsystemen
  • Innovatieve procesbenaderingen: Deming, Juran, TPS, Kaizen
  • Is (proces)kwaliteit gratis? (Philip Crosby)
  • De noodzaak en geschiedenis van volwassenheidsverbetering: CMMI, SPICE en andere volwassenheidsschalen
  • Speciale soorten volwassenheid: TMM, TPI (om te testen), Requirements Engineering Volwassenheid (Gorschek)
  • Procesvolwassenheid versus productvolwassenheid: enige correlatie? Is er een causaal verband?
  • Procesvolwassenheid versus zakelijk succes: is er een correlatie? Is er een causaal verband?
  • Een vergeten les: Geautomatiseerde Defectpreventie en De Volgende Sprong in Productivity
  • Pogingen: TQM, SixSigma, agile retrospectives, procesframeworks

Requirements Engineering - 2 dagen

Dag 1: Vereisten uitlokken, onderhandelen, consolidatie en Management

  • Requirements vinden: wat, wanneer en door wie
  • Classificatie van belanghebbenden
  • Vergeten stakeholders
  • Systeemcontext definiëren – bronnen van vereisten definiëren
  • Elicitatiemethoden en -technieken
  • Prototyping, persona's en het uitlokken van vereisten door middel van testen (verkennend en anderszins)
  • Marketing en het uitlokken van vereisten – MDRA ("Market-Driven Requirements Engineering")
  • Prioriteren van requirements: MoSCoW, Karl Wiegers en andere technieken (o.a. agile MMF)
  • Verfijning van de vereisten – agile "specificatie door voorbeeld"
  • Onderhandeling over vereisten: soorten conflicten, methoden voor het oplossen van conflicten
  • Oplossen van interne incongruentie tussen sommige soorten vereisten (bijv. beveiliging versus gebruiksgemak)
  • Vereisten traceerbaarheid – waarom en hoe
  • Wijzigingen in de status van vereisten
  • Vereisten CCM, versiebeheer en baselines
  • Productweergave en projectweergave op vereisten
  • Productmanagement en requirements management in projecten

Dag 2: Vereistenanalyse, modellering, specificatie, verificatie en validatie

  • Analyse is het denken en heroverwegen dat je doet tussen elicitatie en specificatie
  • Het vereistenproces is altijd iteratief, zelfs in opeenvolgende projecten
  • Vereisten beschrijven in natuurlijke taal: risico's en voordelen
  • Requirements modellering: baten en kosten
  • De regels voor het gebruik van natuurlijke taal voor de specificatie van vereisten
  • Verklarende woordenlijst met vereisten definiëren en beheren
  • UML, BPMN en andere formele en semi-formele modelleringsnotaties voor vereisten
  • Document- en zinssjablonen gebruiken voor de beschrijving van vereisten
  • Verificatie van vereisten – doelen, niveaus en methoden
  • Validatie – met prototyping, beoordelingen en inspecties, en testen
  • Validatie van vereisten en validatie van het systeem

Testen - 2 dagen

Dag 1: Testontwerp, testuitvoering en verkennend testen

  • Testopzet: na risicogebaseerd testen, kiezen voor de optimale manier om de beschikbare tijd en middelen in te zetten
  • Testontwerp "van oneindig tot hier" – uitputtend testen is niet mogelijk
  • Testcases en testscenario's
  • Testontwerp op verschillende testniveaus (van unit- tot systeemtestniveau)
  • Testontwerp voor statisch en dynamisch testen
  • Business-georiënteerd en techniekgericht testontwerp ("black-box" en "white-box")
  • Pogingen om het systeem te kraken ("negatieve testen") en het ondersteunen van de ontwikkelaars (acceptatietesten)
  • Testontwerp om testdekking te bereiken – verschillende testdekkingsmaatregelen
  • Testontwerp op basis van ervaring
  • Ontwerpen van testcases op basis van requirements en systeemmodellen
  • Heuristieken van testontwerpen en verkennend testen
  • Wanneer testcases ontwerpen? – traditionele en verkennende aanpak
  • Testcases beschrijven – hoeveel details?
  • Testuitvoering – psychologische aspecten
  • Testuitvoering – logging en rapportage
  • Ontwerpen van tests voor "niet-functionele" tests
  • Automatisch testontwerp en MBT (Model-Based Testing)

Dag 2: Testorganisatie, Management en automatisering

  • Testniveaus (of -fasen)
  • Wie doet het testen, en wanneer? – diverse oplossingen
  • Testomgevingen: kosten, administratie, toegang, verantwoordelijkheid
  • Simulatoren, emulators en virtuele testomgeving
  • Testen in agile scrum
  • Organisatie en rol van het testteam
  • Testproces
  • Testautomatisering – wat kan er geautomatiseerd worden?
  • Automatisering van testuitvoering – benaderingen en tools
 63 Hours

Getuigenissen (6)

Related Courses

Related Categories