Scrum in education (dutch)
-
Upload
rody-middelkoop -
Category
Education
-
view
460 -
download
0
Transcript of Scrum in education (dutch)
Scrum voor onderwijsHoe we in de course DEA werken richting het OOSE project
Voor we starten….
Ga naar http://m.socrative.com Kies voor de kamer/room IOTIVul de vragenlijst in
Een semester in de hoofdfaseBlok 1 (9 weken)• Course 1: OOSE -> OOAD• Course 2: OOSE -> DEA• Professional skills
Blok 2 (9 weken)• Project
Uitdagingen:• Courses zijn
voorgestuctureerd, project is een open opdracht met een externe opdrachtgever
• Professional skills staat nogal los (qua rooster en opdrachten)
Kunnen we dit slimmer organiseren als voorbereiding op het project?
DEA = Distributed Enterprise Applications:• Clean Code• Unit-testen• Protocollen• Build-tooling• Multithreading• Design Patterns en
principes• Refactoring• Research• Java EE: Web-applicaties
& databasetoegang
Principles behind the Agile Manifesto1. Our highest priority is to satisfy the
customer through early and continuous delivery of valuable software.
2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
Principles behind the Agile Manifesto4. Business people and developers
must work together daily throughout the project.
5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
Principles behind the Agile Manifesto7. Working software is the primary
measure of progress.8. Agile processes promote sustainable
development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
9. Continuous attention to technical excellence and good design enhances agility.
Principles behind the Agile Manifesto10. Simplicity--the art of maximizing the
amount of work not done--is essential.
11. The best architectures, requirements, and designs emerge from self-organizing teams.
12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
Principles behind the Agile ManifestoAgile alleen in softwareprojecten?Welk van de
begrippen aan de rechterkant gaat specifiek over software?
Veel principes zijn dus ook buiten de software-
wereld bruikbaar.
Agile in Education Compass
Agile werken kan ook in een onderwijssituatie, in de klas dus. Niet om software mee te ontwikkelen maar om mee te leren / studeren!
Er zijn verschillende methoden om agile les te geven, een daarvan is Scrum die dezelfde pijlers deelt:- Samenwerken- Cultuur- Vertrouwen- Feedback en
reflectie
Roles = Rollen
Artifacts = Producten
Meetings = Ceremonies
afbeelding toevoegen (optioneel)
Rollen
Product Owner (PO)
Is (of vertegenwoordigt) de klant.Is tussenpersoon voor eventuele stakeholders.Bepaalt de eisen en wensen naar het team toe.Bespreekt samen met het team de prioriteiten en acceptatiecriteria. Bij DEA wordt deze rol ingevuld door twee docenten. • In het rooster zie je twee coursecodes
staan: DEA en PS, er is dan (minimaal) 1 van de docenten aanwezig. Zij houden wekelijks onderling contact.
OOSE-A: Rody Middelkoop (DEA) en Tineke Jacobs (PS)OOSE-C: Michel Koolwaaij (DEA) en Pim Haenen (PS)
PS staat voor professional skills, daarover later meer.
Scrum Master (SM)
• Houdt zicht op de correcte toepassing van alle rollen, producten en ceremonies.
• Is de voorzitter van de daily scrum meeting (Stand-up).
• Werkt de Burndown Chart, Planning Board (“flap”) en Impediment Backlog bij.
De docent kan niet elke les 5 of 6 Stand-ups voorzitten, de teamleider is dus verantwoordelijk voor de bullets 2 en 3. Na 1 of meerdere sprints kan de SM-rol grotendeels of geheel bij de teamleider liggen.
In het project is er geen onderscheid tussen teamleider en Scrum Master.
Stakeholder
Buiten de klas kijken meer mensen mee naar het onderwijs, bijv.:• Collega-docenten, soms zijn de
assessor (= 2e beoordelaar)• Examen-/toetscommissie die de
kwaliteit van de toetsen waarborgt
De Product Owner (docent) vertegenwoordigt deze stakeholders maar soms zul je als team ook contact met hen hebben.
Team
Samengesteld op basis van kwaliteitenTeams van 5 waarvan 1 teamleiderSamenstelling vast gedurende de courseSamen plannen, samen werken, samen communiceren, samen reflecteren = samen leren
PO vs SMWie doet welke rol?
De rol van Scrum Master kan verplaatsen van docent naar student. De rol van Product Owner blijft bij de docent(en).
tijd
100 % student
100% docentProduct Owner
invullinginvulling
50% / 50%Scrum Master
afbeelding toevoegen (optioneel)
Producten
Product Backlog
De Product Backlog is een verzameling eisen (en soms wensen) van de Product Owner. In een leersituatie zoals in de course zijn de eisen geformuleerd in de vorm van opdrachten en/of toetsen. In Scrum worden vaak “user stories” geformuleerd. Een opdracht kan bestaan in de vorm van 1 of meerdere user stories. De course is ingedeeld in 4 ”Sprints” van 2 weken, in elke sprint pak je 1 of meerdere items van de product backlog op in opdracht van de product owner.
In DEA: 1 opdracht/toets integratie van meerdere onderwerpen/thema’s.
Plan: per thema een user story.
Sprint Backlog
Een sprint is een periode van 2 weken.De Sprint Backlog is een lijst met user stories die gedurende de sprint worden afgerond en waarmee 1 of meerdere opdrachten/toetsen kunnen worden gemaakt.
User Story
Een user story is een stukje functionaliteit dat klein genoeg is om geschat en gepland te worden maar te groot om door 1 teamlid direct uit te voeren. Een user story heeft doorgaans een voor- en achterkant.
User Story - vervolg
Gebruikelijk formaat:As a <type of user>, I want <some goal> so that <some reason>.“As a user, I can indicate folders not to backup so that my backup drive isn't filled up with things I don't need saved.”
Alternatief voor (theorie-/programmeer-)toetsenAs a student, I need to learn <learning objective> so that <learning purpose>.“As a student, I need to learn Maven so I can build, test and run applications with a script”.
Naast de beschrijving bevat elke user story een schatting in de vorm van planning poker punten.
Voorkant Werkt goed voor casussen/case studies maar niet voor toetsen. Voor onze onderwijssituatie hebben we een alternatief format.
User Story - vervolg
Op de achterkant van een story neem je de acceptatiecriteria op en beantwoord je de vraag: • Wanneer is het goed (genoeg)?• Wat hoort er wel en wat (net) niet meer bij.
Bijvoorbeeld• Kan externe libraries toevoegen als Maven
dependency.• Kan versies van dependencies aanpassen.• Kan Maven command-line gebruiken voor het
runnen en unit-testen van een applicatie. • Hoeft geen rekening te houden met multi-
modules
AchterkantAcceptatiecriteria zijn gerelateerd aan succescriteria voor een project maar ook aan randvoorwaarden. Acceptatiecriteria zijn een vorm van productkwaliteit.
Task
De kleinste eenheid van planning is de taak (task). Elke taak:• Is tussen de 30 minuten en 2 uur groot (straks in
project hanteren we 1-4 uur)• Zo doe je elke les minimaal 1 taak en vaak meer.
• Heeft een assignee (uitvoerder). Deze kan wisselen door de tijd heen doordat 1 teamlid iets leert/maakt en een ander dat controleert/test/reviewt
• Hangt op het taskboard.• Op de taak houd je de voortgang bij, indien
nodig herzie je je urenplanning.• Elke Stand-up verwerk je voortgang in de
burndown.
TaskboardGeorganiseerd per story
Stories worden in punten geschat.
Burndown chart
De burndown is een grafiek die weergeeft:• Voor hoeveel uren en punten er werk
is bij de start• Wat de ideale lijn is• Voor nu en het verleden hoeveel uur
er die dag gewerkt is
De burndown geeft inzicht of je de sprint gaat halen. Als je vaak tegenslag hebt omdat je meer tijd nodig had dan zie je dat tussentijds en kun je in overleg met de product owner (docent).
Impediment Backlog
Elke Stand-up houd de teamleider bij of er nog blokkades zijn (in Scrum: Impediments). Deze worden geadministreerd op de flap en besproken met de Product Owner.
Definition of Done
Wanneer is iets voor ons echt klaar?
Voorbeelden:• als iedereen het gemaakte werk snapt.
(geleerd, samengevat, overhoort)• iedereen leert minimaal x dagen van te voren
voor toetsen.• gemaakt werk wordt met alle teamleden
besproken / nagekeken
De DoD is waarschijnlijk constant gedurende alle sprints, maar mogelijk komen er items bij of worden ze aangescherpt na afloop van een sprint.
DoD = Proceskwaliteit
Definition of Fun
Wat zorgt ervoor dat ik met veel plezier in dit team samenwerk?
Voorbeelden:• Vertrouwen (kunnen vertrouwen in de ander
en jezelf)• Positieve feedback (geven en krijgen)• Samen kunnen lachen• Respect (afspraak = afspraak)
De DoF is waarschijnlijk constant gedurende alle sprints, maar mogelijk komen er items bij of worden ze aangescherpt na afloop van een sprint.
DoF
afbeelding toevoegen (optioneel)
Ceremonies
Sprint Planning
Gedurende de Sprint Planning:• Inventariseer je de user stories• Prioriteer je de user stories• Schat je de user stories met Planning
Poker• Splits je de user stories in taken,
verdeel je de taken en schat je uren per taak.
Bij sprints van 2 weken is een Sprint Planning van 1 tot 2 dagdelen gebruikelijk.
Daily Scrum Meeting (Stand-up)Doel van de Stand-up: gaan we de sprint halen?De teamleider begeleidt de Stand-up van max. 5 minuten.Ieder teamlid staat om de flap heen.Ieder teamlid de volgende vragen.
– Wat heb je gedaan? (moeten er taken worden verhangen?)
– Wat ga je doen? (moeten er taken worden verhangen?)
– Wat zijn je problemen en blokkades?Tijdens de Stand-up bespreek je als team hoe je de eventuele problemen gaat oplossen. Het echte oplossen gebeurt pas na de Stand-up.
Blokkade = “Impediment”. Bespreek deze met de product owner (docent), maar los ze in je team op.
Teamnaam Namen studenten
Sprint backlog met taken
Status van taken
Definition of Fun
Definition of DoneBurndown
Acties uit retrospective
Impediment backlog
De flap
De flap is een verzameling van enkele Scrum-producten• Sprint Backlog• Taskboard• Burndown• DoD• DoF• Impediment Backlog• Verbeterpunten na Retrospective
Sprint Review
Is de sprint gehaald, zijn alle taken af, is het “product” af?• Demonstreer je product(en)Heeft iedereen voldoende geleerd?• Checken middels een toets of opdracht (4x)
Er zijn verschillende soorten toetsen:• Programmeertoetsen (2x)
• Deze maak je na een sprint, individueel.• Programmeeropdracht (case study)
• Deze maak je tijdens een sprint, individueel.• Onderzoeksopdracht
• Deze maak je tijdens een sprint, in tweetallen.• Assessment
• Deze maak je na een sprint, individueel.
Sprint Retrospective
Aan het einde van een Sprint is het van belang om na te gaan wat er goed ging en wat je de volgende keer anders / beter kunt doen. De volgende vragen kun je daarvoor beantwoorden: • Wat ging er goed?• Wat kan of moet verbeterd worden?• Wat moeten we niet meer doen?• Wat doen we met taken die niet uitgevoerd
zijn?
Deze vragen betreffen het team maar ook alle teamleden: kritisch kijken naar je eigen handelen en dat van je teamgenoten.
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
Bepalen Sprint Backlog
en Planning
poker
3 uu
rW1
W2
W3
Retrospective
Bepalen Sprint Backlog
en Planning
poker
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
Vaak heb je meer tijd nodig voor het bepalen en schatten van stories en verdelen van taken. Je werkt dus buiten de contacturen gewoon door!
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
Bepalen Sprint Backlog
en Planning
poker
3 uu
r
W1
W2
W3
Retrospective
Bepalen Sprint Backlog
en Planning
poker
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
klassikaal
klassikaal
mini-review
standup
TOETS
klassikaal
mini-review
standup
werken aan Sprint-backlog
items
PS = Professional SkillsHeb je gezien dat begrippen/termen een afwijkende kleur hadden?
Op het moment dat er “PS” in je rooster staat zal de Product Owner zich vooral focussen op deze aspecten van de course. Deze aspecten zitten verweven in de course, maar op 1 specifiek dagdeel heeft dit de focus.
Op deze wijze wordt je just-in-time voorbereid voor de sprint maar ook het komende project dat start met een assessment.