Tag: agile

Korsfunktionell syn

Sprang över denna bild som visar på en mogen organisation, eller som jag hörde någon säga vid lunchbordet:

- Ja, jag hörde att ni skulle bli agila på riktigt – flytta ihop korsfunktionella team i samma rum osv. När skulle ni “flytta”?
-  Det gjorde vi redan i måndags – men var bara lugn: vi har fortfarande kvar flyttbara väggar mellan de olika delarna. PO, systemtest och PM har vi tryckt in i en egen liten modul.

 

Korsfunktionell matrisorganisation

Tecken på agil utveckling

Sitter och rensar ut gammal e-post och hittade följande som skickades till en kund när ett POC-projekt övergick i “vi gör lite mer än POC” (från 2008).

Som förespråkare för agil utveckling vill jag ju poängtera att

  •  agila utvecklare aldrig undviker att “träffa” ett lager utan tvärtom har som mål att i varje utvecklingssteg se till att man tar ett “helt snitt av kakan” – man tar inte bara glasyren som vi gjort nu, utan strävar att alltid jobba sig hela vägen ner till botten (databasen) utan fusk eller genvägar.

Om vi har 30 minuter kan vi diskutera vilka agila principer vi skall hålla högt i detta projekt :)

Det förra projektet hade följande högt:

  • gemensamt kodägande
  • daglig regelbunden standup (med de tre frågorna: vad har jag gjort sedan senast, vad gör jag till nästa gång, har jag några hinder i vägen)
  • standupen får vara högst 15 minuter
  • planering i iterationer med synlig sprint backlog och …
  • … burndown chart
  • utvecklarna estimerar och planerar sprinten ihop med beställaren
  • sprintens backlog respekterades av alla
  • utvecklarna bestämmer egna dagordningen – alla jobbar med allt, inga revir
  • show and tell i slutet av iterationen
  • kontinuerligt bygge & test av koden
  • alltid körbar kod
  • sprintens backlog underhölls av och var till för utvecklarna och gav PM info om progress
  • endast återstående tid rapporteras

och halvhögt hölls

  • one shot build – ett kommmando är allt som behövs för att bygga och testa allt
  • retrospective – utan regelbunden utvärdering utvecklas man inte
  • gemensam arbetsyta (open work-area)
  • velocity – utvecklingstakt beräknades efter varje iteration utan indelning i mötestid, utvecklingstid, reviewtid, …
  • enhetstestning
  • coding standards – code review

och halvlågt hölls tyvärr

  • testdriven utveckling
  • automatiserad acceptanstestning
  • parprogrammering

och obefintligt var:

  • on-site customer
  • continuous deployment
  • relativa estimat i produktbacklogen (estimaten där hade rubriken timmar vilket var missvisande)

Det finns andra “agila tecken”, jag tog bara ett par ur huvudet och från http://jsolutions.se/2009/10/29/undersokning-om-agil-utveckling/

/Fredrik :)

Böcker om Scrum mm

Jag brukar ta med mig ett par böcker när jag håller workshops eller predikar om ett ämne jag håller nära hjärtat. Eftersom det ofta är svårt att hinna svara alla frågor eller gå på djupet på alla ämnen så brukar det uppskattas att jag lämnar referenser till böcker (eller bloggar) där man kan gräva sig djupare. Efter fredagens “Agile Injection” fick jag frågan om att skicka över listan med böcker jag hade med mig då. Här är den. :)

Följande utmärkta böcker rekomenderas varmt

Agile Project Managemeng with Scrum, Ken Schwaber
9780735619937
Appendix A är Scrum i ett nötskal (~10 sidor). “A book of case studies about Scrum”. Som Knibergs bok, fast mer polerad och mindre detaljrik.

Scrum and XP from the Trenches, Henrik Kniberg
9781430322641
125 sidor med erfarenheter: how we do testing, how we do sprint backlog, how we arrange the team room, how we do daily scrums, … Man bör kunna grunderna (helst prövat på) för att fullt uppskatta boken.

Clean Code, Robert C. Martin
9780132350884
Utmärkt genomgång av hur man renskriver kod, och varför. Ögonöppnare för många.

Working Effectively with Legacy Code, Michael C. Feathers
9780131177055
Utmärkt bok om “refactoring” – hur skall man attackera legacy code (dvs kod som inte täcks av automattest).

Mycket bra är också

The Pragmatic Programmer, Andrew Hunt, David Thomas
9780201616224
Insiktsfullt om kärnan av systemutveckling – hur jobbar en “bra” utvecklare (eller hur blir man).

Följande böcker har inte samma nivå, men är fortfarande bra.

Extreme Programming Explained, Second Ed, Kent Beck, Cynthia Andres
0321278658
Kent Beck försöker förklara Extreme Programming. Lyckas sådär.

Test-Driven Development, Kent Beck
9780321146533
Kent Beck visar upp TDD i praktiken med riktig kod i tre kapitel. En bra praktisk genomgång.

Andra har uppskattat

User Stories Applied, Mike Cohn
Agile Estimating and Planning, Mike Cohn
Agile Software Development with Scrum, Schwaber, Beedle

och lite utanför ämnet

The Mythical Man-Month, Frederick P. Brooks, JR
9780201835953
Insikter kring mjukvaruutvecklingen från 1975, med uppdatering tjugo år senare. Intressant om man tycker utveckling av systemutveckling över tiden är intressant.

Projektdelen i Avancerade Webbteknologier 1

Detta är min egen utvärdering av sättet att arbeta i projekt efter halva tiden.

Aktiva val

  • Fyra projekt presenterades. Studenterna fick 10 minuter på sig att skriva upp sitt namn på det projekt som de ville jobba med.
  • Grupperna formas inte om.
  • Helt fri indelning i grupper.
  • Två projekt fick user stories från mig, samt “vision” för webbplatsen som skall byggas.
  • Det tredje projektet var student-idé.
  • Projekten skall använda gemensam databas och källkodsrepo.
  • Inga sprintplaneringar, inga burndowns (vi har chansen att jobba med detta i nästa kurs).
  • Det ska finnas en fil som skapar hela databasen, inkl grunddata för att demonstrera den differentierande featuren.
  • Fokus på att producera user story med störst affärsvärde först – “ni möter VC om ett fåtal dagar: vad måste ni visa för att ro hem kosingen?”

Positivt

  • Bra storlek på grupper och lämplig fördelning med (för-)kunskaper.
  • Bra närvaro.
  • Bra stå-uppmöten (inga lösningsdiskussioner, inget trams, en talar i taget, avstämningsinriktat) och projektdiskussioner i helhet.
  • Varierande arbetssätt, bra variation i ena gruppen, mer statisk indelning/uppdelning i de andra.
  • Högt intresse för projekten.

Negativt

  • Studenterna har spenderat mycket tid på att diskutera projektets innehåll, såsom funktion.
  • Studenterna har spenderat mycket tid på att diskutera och få till databasdesign.
  • Överlag har ett fåtal producerat lösningarna, medan flertalet haft svårt att få ihop det själva.

Sammanfattning

Till nästa period kommer jag nog gå in och tillhandahålla en färdiddesignad databas. Detta kommer få dem att inte lägga tid på sådant som ligger utanför kursen. Jag kommer försöka tillhandahålla user stories, viktade efter affärsvärde. Eftersom det varit ett par personer som dominerat kanske dessa skall sättas i eget projekt för att få utmaning?

Notiser

  • Teckenkodning har varit en issue i Eclipse men framför allt i MySQL.
  • Två grupper har valt att använda user stories/tickets på papper, uppsatta på väggen. Tredje gruppen jobbar ad-hoc.

Agile Testing Days 2010 coming up

Speaker at Agile Testing Days 2010

I'll Be There


In about six weeks I’ll give a talk at Agile Testing Days together with Emily Bache. The talk’s title is set to “The Coding Dojo
as a forum for teaching TDD” and we are last to speak on Wednesday before the final key note of the day (and the “chill out” event). I’m looking forward to the conference which I’m sure will be full of insights and rewarding in many ways.

Management 101 för 2000-talet

Detta är ett ofärdigt utkast.

Jag är riktigt intresserad av människor. Det är därför jag började bli intresserad av datorer, eller iaf fortsatte vara det. Datorer kan få människor att interagera mer, genom att göra tråkiga, enkla, dumma uppgifter åt människan. Människan blir glad för att hon slipper de tråkiga upptigfterna och kan ägna sig åt något kul istället.

Management by fear

Varje människa jag möter som har ansvar för en grupp människor, hoppas jag skall ha läst följande böcker och sett presentationerna nedan (som bara stärker det böckerna försöker förmedla).

  • Knowledge Worker, Thomas Davenport
  • Agile project management with Scrum, Microsoft
  • Rothstein

TED: Daniel Pink on Motivation

Get the Flash Player to see this content.