Tips för bättre
agila webbprojekt
Maria Sognefors, 7minds
Vad är agilt?
 En grundtanke i agila metoder är att arbetet bedrivs
inkrementellt och iterativt vilket innebär att
fungerande delleveranser av funktionalitet sker
regelbundet enligt ett schema och att planer och
metoder löpande utvärderas och förbättras.
 Utvecklingsprojekt ska vara mer lättrörliga.
 Ett agilt arbetssätt gör det möjligt för beslutsfattare att
få ett bättre underlag inför beslut om resurser.
 I första hand skapad för systemutveckling.
Källa: Wikipedia
Exempel på "lättrörliga metoder":
 Feature Driven Development (FDD)
 Adaptive Software Development
 Dynamic Systems Development Method (DSDM)
 Scrum
 Kanban
 Extrem programmering (XP)
 Lean Software Development
 Crystal
 Nightly build
Källa: Wikipedia
Att arbeta agilt enligt Scrum
Vad görs i webbprojekt?
 Det flesta säger att de arbetar enligt Scrum.
 I praktiken är det oftast en variant av Scrum.
 Det agila arbetet är oftast mer internt hos
utvecklingsbyrån, än vad det involverar kunden.
Roller inom Scrum
 Produktägare – Hos kunden
– är beställare
– Administrerar en product backlog – en förändringsbar att-
göra-lista
 Scrumledare - Hos leverantören
– är en kombination av coach, fixare och dörrvakt.
– Daily scrums.
– Här-och-nu-perspektiv på arbetet.
 Scrum-team – Hos leverantören
– Består av 5-9 personer som är problemlösare och
konstruktörer.
– Inga specifika roller.
Produktägaren
 Skriver User Stories i en backlog
 Prioriterar User Stories
Som en besökare vill jag kunna skriva ut en
sida för att ta med mig exempelvis
vägbeskrivningen.
Ett agilt arbetsätt
ersätter inte
projektledaren,
eftersom det är
väldigt mycket
annat än teknik
som ska hanteras.
Är det verkligen
praktiskt att
jobba så här i
webbprojekt?
Jobba tillsammans mot ett
gemensamt mål och se till att
arbetssätt och kommunikation
fungerar i hela gruppen.
Skriv agila avtal
Uppdragsbeskrivning och
uppdragsplan
 För att förtydliga det som
ska levereras som helhet.
 Kunden skriver
uppdragsbeskrivningen.
 Leverantören gör
uppdragsplanen.
 Tillsammans är dessa
underlag i avtalet.
Uppdragsbeskrivningen
 Konceptet över helheten måste vara hyfsat klar.
 Detaljer kan man ta allt eftersom i projektet.
 Om det är samma företag som hjälper er med
koncept och med utveckling, bör ni kanske ha två
separata avtal.
Kommunicera budget
Är en del av
uppdragsbeskrivningen
och bör finnas med för
att leverantören inte ska
föreslå en orimlig
uppdragsplan.
Prioritera i projektet
Funktioner
Pengar
Tid
Kravhantering och test
 User Stories är inte alltid den bästa formen. På
webben vet vi oftast tydligare vad vi vill.
 Backloggen blir därför mer av Tasks/Uppgifter som
ska genomföras.
 Varje uppgift kompletteras med skisser med
tillhörande kommentarer.
 Att skriva omfattande testfall tar ofta lång tid och är i
många fall överdrivna.
 En erfaren kravledare har koll på kraven och kan
därför göra de flesta tester utan testfall.
Hantera krav i ett och samma system
Nytt krav Estimat
Godkänd
att göra
Jobbar
med den
Redo att
testa
Godkänd
Fråga?
Svar
Fråga?
Svar
Fråga?
Svar
Centrala roller i webbprojektet
Webbprojektledare
Produktägare
Kravledare
Testare
Scrum-master
Utvecklare
Interaktionsdesigner
Designer
Webbredaktör
Utbildare
Support
Drift och säkerhet
Skribent
Strateg
Kom överens om vem
som har vilken roll
Kom överens om vilka uppgifter
man har i en viss roll
Se till att alla roller är fördelade!
Maria Sognefors
maria@7minds.se
www.7minds.se
Twitter: @msognefors
Facebook: www.facebook.com/7mindsab

Tips för bättre agila webbprojekt

  • 1.
    Tips för bättre agilawebbprojekt Maria Sognefors, 7minds
  • 2.
    Vad är agilt? En grundtanke i agila metoder är att arbetet bedrivs inkrementellt och iterativt vilket innebär att fungerande delleveranser av funktionalitet sker regelbundet enligt ett schema och att planer och metoder löpande utvärderas och förbättras.  Utvecklingsprojekt ska vara mer lättrörliga.  Ett agilt arbetssätt gör det möjligt för beslutsfattare att få ett bättre underlag inför beslut om resurser.  I första hand skapad för systemutveckling. Källa: Wikipedia
  • 3.
    Exempel på "lättrörligametoder":  Feature Driven Development (FDD)  Adaptive Software Development  Dynamic Systems Development Method (DSDM)  Scrum  Kanban  Extrem programmering (XP)  Lean Software Development  Crystal  Nightly build Källa: Wikipedia
  • 4.
    Att arbeta agiltenligt Scrum
  • 5.
    Vad görs iwebbprojekt?  Det flesta säger att de arbetar enligt Scrum.  I praktiken är det oftast en variant av Scrum.  Det agila arbetet är oftast mer internt hos utvecklingsbyrån, än vad det involverar kunden.
  • 6.
    Roller inom Scrum Produktägare – Hos kunden – är beställare – Administrerar en product backlog – en förändringsbar att- göra-lista  Scrumledare - Hos leverantören – är en kombination av coach, fixare och dörrvakt. – Daily scrums. – Här-och-nu-perspektiv på arbetet.  Scrum-team – Hos leverantören – Består av 5-9 personer som är problemlösare och konstruktörer. – Inga specifika roller.
  • 7.
    Produktägaren  Skriver UserStories i en backlog  Prioriterar User Stories Som en besökare vill jag kunna skriva ut en sida för att ta med mig exempelvis vägbeskrivningen.
  • 8.
    Ett agilt arbetsätt ersätterinte projektledaren, eftersom det är väldigt mycket annat än teknik som ska hanteras.
  • 9.
    Är det verkligen praktisktatt jobba så här i webbprojekt?
  • 10.
    Jobba tillsammans motett gemensamt mål och se till att arbetssätt och kommunikation fungerar i hela gruppen.
  • 11.
  • 12.
    Uppdragsbeskrivning och uppdragsplan  Föratt förtydliga det som ska levereras som helhet.  Kunden skriver uppdragsbeskrivningen.  Leverantören gör uppdragsplanen.  Tillsammans är dessa underlag i avtalet.
  • 13.
    Uppdragsbeskrivningen  Konceptet överhelheten måste vara hyfsat klar.  Detaljer kan man ta allt eftersom i projektet.  Om det är samma företag som hjälper er med koncept och med utveckling, bör ni kanske ha två separata avtal.
  • 14.
    Kommunicera budget Är endel av uppdragsbeskrivningen och bör finnas med för att leverantören inte ska föreslå en orimlig uppdragsplan.
  • 15.
  • 16.
    Kravhantering och test User Stories är inte alltid den bästa formen. På webben vet vi oftast tydligare vad vi vill.  Backloggen blir därför mer av Tasks/Uppgifter som ska genomföras.  Varje uppgift kompletteras med skisser med tillhörande kommentarer.  Att skriva omfattande testfall tar ofta lång tid och är i många fall överdrivna.  En erfaren kravledare har koll på kraven och kan därför göra de flesta tester utan testfall.
  • 17.
    Hantera krav iett och samma system Nytt krav Estimat Godkänd att göra Jobbar med den Redo att testa Godkänd Fråga? Svar Fråga? Svar Fråga? Svar
  • 18.
    Centrala roller iwebbprojektet Webbprojektledare Produktägare Kravledare Testare Scrum-master Utvecklare Interaktionsdesigner Designer Webbredaktör Utbildare Support Drift och säkerhet Skribent Strateg
  • 19.
    Kom överens omvem som har vilken roll Kom överens om vilka uppgifter man har i en viss roll Se till att alla roller är fördelade!
  • 20.

Editor's Notes

  • #7 En sådan definition om vem som gör vad gjordes aldrig.
  • #16 En viktig del när det gäller webb är att ett webbprojektet och själva webbplatsen är inte samma sak. Traditionellt är vi duktiga på att mäta milstolpar, framgångar och ta fram risker i projekt. Detta är bra, men det är tyvärr sällan det som bedöms i slutändan. I slutändan är det webbplatsens framgång som bedöms. Det är därför att redan från början skilja på vad som har med projektet att göra och vad som har med webbplatsen att göra. . Ledningen måste innan man startar projektet, prioritera vad som är absolut viktigast. Tid, pengar eller funktioner. När jag tvingar ledningar att göra detta, får jag ofta svaret att det inte är möjligt för man vill ha allt. Men det är inte heller möjligt. Jag brukar jämföra med att bygga hus… Vi kanske inte kan välja det finaste kaklet och den dyraste tapeten om vi inte har råd med det. Vi kanske inte heller kan bygga en herrgård som vi tror ska stå färdig på två månader. Alla dessa parametrar går inte ihop. Innan projektet startar måste vi bestämma oss för vart prioriteringen ligger. Om det är att hålla budget som är absolut viktigaste då kommer vi kanske att få prioritera ner några funktioner och vara mer flexibel med tidsplanen. Den här måste också kommuniceras till alla inblandande.
  • #18 När vi bygger vårt hus har vi kommit på att vi vill ha en öppen spis mitt mellan köket och vardagsrummet. Vi lägger in det som ett önskemål att de flyttar den till den plats. De ställer lite kompletterande frågor för att förstå vad vi är ute efter. De räknar grovt på vad det kan innebära att och ger oss ett pris. Vi godkänner det ökade priset och låter dem köra. När de börjar att borra för den öppna spisen ställer det till problem i både värmeslingor i golvet och strömkablar i taket. Något som man inte kunde förutse när man estimerade. De ställer frågor, vi diskuterar lösningar och kommer fram till att vi kör ändå, fast det blir ännu lite dyrare. Det innebär att vi sannolikt behöver prioritera bort något annat eftersom den här delen blev dyrare än vad vi hade planerat för. För att hantera detta här så smidigt som möjligt är det viktigt att jobba i ett och samma system. Vilket system det är, är inte det viktiga, bara vi kan följa upp historik och diskussioner. Det händer tusen saker och ingen människa kan hålla koll på exakt vad som har sagts som olika saker i ett projekt som pågår under flera månader.
  • #19 I stora projekt finns en person på varje roll. I mindre projekt kanske det finns 3 personer som delar på alla dessa roller. Det är inte mängden människor som är avgörande.