Planera Motivering Kontrollera

Metod för Scrum-utveckling

Klunga(skrʌm "scramble") är en metod för projektledning. Huvudfokus med att använda denna metod läggs på kvalitetskontrollen av utvecklingsprocessen. Klungaär en av de mest populära "metoderna" för programvaruutveckling. Förutom att hantera programvaruutvecklingsprojekt, Klunga kan också användas för att stödja program.

I The New Product Development Game (Harvard Business Review, januari-februari 1986) noterade Hirotaka Takeuchi och Ikujiro Nonaka att projekt som små team av specialister arbetar med tenderar att ge bättre resultat. De hänvisade till "rugbymetoden" Klunga(krossa, skrapa runt bollen).

För första gången metoden Klunga presenterades för allmänheten av den dokumenterade, välformade och beskrivna gemensamt av Schwaber och Jeff Sutherland, som under de kommande åren arbetade tillsammans för att beskriva och presentera all sin erfarenhet och bästa praxis för projektledning i en helhet, i den metod som är känd idag hur Klunga.

Användande Klunga antar vid planeringsstadiet att dela upp programvaruutvecklingsprojektet i flera fasta, kortvariga iterationer, annars kallade sprints Sprinta... Varje sekventiell iteration, enligt dess prioritet, slutar med tillhandahållandet av en fungerande programvara med nya funktioner till slutanvändaren. Samtidigt ger en strikt fast kort sprintlängd utvecklingsprocessen förutsägbarhet och flexibilitet.

Scrum Project Management Process

Scrum-projektterminologi

  • Sprinta- utvecklingsstadie;
  • Sprint eftersläpning- uppgifter för utvecklingsstadiet;
  • Projektets eftersläpning- en lista över krav på funktionalitet.

Sprint iteration

Grunden Klungaär en Sprinta- utvecklingsstadiet, under vilket en viss mängd arbete utförs på produkten. Fullständig projektutveckling består av korta etapper Sprint's... Funktioner som ska implementeras på var och en Sprint "e, är strikt fixade och kan inte ändras under sprinten; de är uppdelade i uppgifter med betyg och prioriteringar.

Innan alla börjar Sprint "a produceras Sprintplanering där innehållet utvärderas Projektets eftersläpning och bildas Sprint eftersläpning som innehåller de uppgifter (Story, Bugs, Tasks) som ska slutföras i den aktuella sprinten. Varje sprint ska ha ett motiverande mål som kan uppnås genom att slutföra uppgifter från Sprint eftersläpning.

Sprintaär alltid tidsbegränsad (1-4 veckor) och har samma varaktighet under hela produktens livstid. I slutet Sprint "a en ny fungerande men inte slutlig version av produkten ska tas emot.

Lista över projektkrav Projektets eftersläpning

Projektets eftersläpningär ett dokument som innehåller en lista över alla funktionella krav för ett projekt, dvs. en lista över funktionaliteten i programmet som ska implementeras. Föremålen på listan bör beställas i ordning efter betydelse. När projektet fortskrider kan listan och prioriteringarna förändras beroende på kundens behov, nya idéer eller förändrade förhållanden.

I klassikern Klunga det är underförstått att kunden i projektet kan göra ändringar direkt under projektet, men inte i nuvarande Sprinta... I de flesta fall är programvaruutvecklingsbudgeten fast. Detta innebär att kundens förmåga att påverka utvecklingen av genomförandet också är begränsad. Ändå, om det behövs, kan du upprätta ett "Tilläggsavtal" till kontraktet med hänsyn till förändringen i projektets ekonomiska del, eftersom behovet av att lägga till eller ändra projektfunktioner för kunden är mycket relevant. Detta bidrar till utvecklingen av projektet som kunden behöver, och inte det som formellt presenteras i TOR.

Därför, som Eftersläp "a som regel används en lista över uppgifter från referensvillkoren, beskrivna och förankrade i kontraktet, plus förbättringar som fixats i ytterligare avtal som uppstår under arbetets gång.

Lista över efterbehov för sprint

Sprint önskelogg Sprint eftersläpning innehåller projektfunktionalitet för ett specifikt Sprint-steg "a.

Roller i Scrum Project Management

Enligt metod Klunga i produktionsprocessen finns det vissa roller, indelade i två grupper av "grisar" och "kycklingar". Dessa namn användes på grund av följande vanliga skämt:

Kycklingen erbjuder grisen: "Låt oss öppna en restaurang!" Grisen tittar förvånad på kycklingen och svarar: "Idén är bra, men vad vill du kalla den?" Kycklingen tänker inte länge och svarar: "Varför inte kalla det" Stekta ägg och bacon "?"
"Detta kommer inte att fungera", svarar grisen, "för då måste jag ägna mig helt åt projektet och du kommer bara att vara delaktig."

Enligt Klunga Grisarna skapar produkten, medan kycklingarna inte är så intresserade av den färdiga produkten. De bryr sig inte om projektet lyckas eller inte, det kommer att ha liten effekt på dem. Därför beaktas kraven, önskningarna och idéerna från "kycklingarna", men de får inte direkt delta i Scrum-projekt.

Klassisk Klunga använder tre grundläggande roller ( "Grisar") :

  • Produktägare (PO) - produktägaren representerar kundens intressen i projektet.
    POär inte medlem i utvecklingsteamet utan en kontakt mellan utvecklingsteamet och kunden, dvs. detta bör vara en representant för kunden. Eftersom rollen ställer höga krav på individens erfarenhet och kompetens i utvecklingen och utvecklingen av projektet och också kräver ständigt personligt deltagande i projektet (vilket inte alltid är möjligt för kunden) utförs denna roll vanligtvis av projektledare.
  • Scrum master (SM) "tjänande ledare" - en medlem i teamet som verkställer principerna Klunga.
    Roll SM innebär inga ytterligare befogenheter för projektet. En uppgift SM- hjälpa teamet att maximera sin effektivitet genom att ta bort hinder, hjälpa, undervisa och motivera laget, hjälpa PO.
  • Utvecklingsteam (DT) är ett utvecklingsteam.
    Utvecklingsteamet består av specialister som arbetar direkt med projektet. Enligt The Scrum Guide ska DT ha följande egenskaper:
    • bör vara självorganiserande. Ingen (inklusive SM och PO) kan inte ange DT hur man konverterar Projektets eftersläpning till en fungerande produkt;
    • måste vara multifunktionell och ha alla nödvändiga färdigheter för att skapa en fungerande produkt;
    • hela teamet ska vara ansvarigt för projektet, inte dess enskilda medlemmar.
    Rekommenderad lagstorlek DT, vanligtvis 6 ... 8 personer. Enligt ideologer Klunga, kräver ett större team för många kommunikationsresurser, medan ett mindre team ökar riskerna (på grund av eventuell brist på nödvändiga färdigheter) och minskar mängden arbete som kan utföras under en viss tidsperiod.

Ytterligare roller ( Hjälproller) i metoden Klunga ("Kycklingar") :

  • Intressenternas kunder är personer som initierar projektet och för vilka projektet kommer att gynnas. De är inblandade i Klunga endast under sprintgranskningsmötet Sprintgranskning;
  • Personaladministratörer;
  • expertkonsulter Konsulterande experter.

Arbeta stegvis

Huvuduppgiften Produktägare "a kopplat till att hålla projektlistan uppdaterad Orderstock och rätt prioritering enligt projektets affärsmål. Dessutom i Orderstock Som regel är det inte små uppgifter, som att ändra gränssnittet för ett formulär, som faller, utan större affärsuppgifter, till exempel "att implementera en enda auktorisering via sociala nätverk."

I början av varje steg rekryterar laget sig från listan Projektets eftersläpning så många uppgifter som hon faktiskt kan utföra i ett skede Sprint "a... Delas upp i deluppgifter och anger tidsfrister.


Sprintplaneringsmöte

I början av en ny iteration Sprint "a lämplig planering måste genomföras. För detta från Eftersläp "a i projektet väljs uppgifter som är Sprinta team DT borde göra. Baserat på de valda uppgifterna, a Backlog Sprint "a.

Varje sprintuppgift måste utvärderas i perfekta arbetstider. Lösningen på problemet bör ta från 8 till 16 timmar, dvs. högst två arbetsdagar. Om det behövs kan uppgiften delas upp i deluppgifter.

Under planeringen diskuteras och bestäms ordningen på genomförandet av hela arbetsområdet. Mötets varaktighet är strikt begränsad (högst en arbetsdag) och beror på varaktigheten av iterationen och teamets erfarenhet.


Daglig övervakning, Dagliga möten

Dagliga möten, annars kallad Stand-up-möte hålls varje dag. Genom hela Sprint "a teamet träffas regelbundet samtidigt. Varje lagmedlem DT ska svara på tre frågor:

  • Vad gjordes igår?
  • Vad kommer att göras idag?
  • Vilka är problemen?

När du utför Dagligt möte Det är viktigt att inte luta sig för att diskutera de tekniska detaljerna i projektet eller formellt klargöra projektets status.

Sprintstopp, onormal avslutning

Att stoppa en sprint tidigare än planerat kan göras i exceptionella situationer. Om laget inser att det inte kan nå sprintmålet under den tilldelade tiden kan det sluta Sprinta... Sprinten kan också stoppas av projektägaren om behovet av att implementera sprintmålet försvinner.

Efter att sprinten har stoppats hålls ett möte med laget DT där skälen till stoppet diskuteras. Därefter fortsätter kommandot till utförandet av nästa Sprint "a.

Burndown-diagram

För att visualisera projektets tillstånd används ett utbrändhetsdiagram. Burndown-diagram, som visar mängden utfört arbete och återstående arbete i förhållande till den totala tid som tilldelats projektets utveckling. Diagrammet måste uppdateras regelbundet (dagligen) för att visa realtidsframsteg och kostnader i arbetet med sprinten och projektet. Burndown-diagram måste vara tillgänglig för alla medlemmar i projektet.

Det finns två typer av diagram:

  • ett sprint-utbränt diagram som representerar mängden slutförda och ouppfyllda uppgifter i den aktuella sprinten;
  • ett utbrändhetsdiagram för ett projekt som representerar volymen av färdiga och ouppfyllda uppgifter för den färdiga programvaruprodukten (vanligtvis baserat på flera sprints).

Funktioner i ett Scrum-projekt

1. I ett Scrum-projekt kan kravändringar göras när som helst.
Således kan du ändra Produktstock längs vägen. Detta gör det svårt att använda principerna Klunga i fasta / fasta projekt. Ideologi Klunga hävdar att det är omöjligt att förutse alla förändringar i förväg, så det är ingen mening att planera hela projektet i förväg och begränsa oss till just-in-time planering, det vill säga planera bara de arbeten som ska utföras i nästa sprint .

2. I ett Scrum-projekt är den viktigaste källan till pålitlig information deltagarnas empiriska upplevelse.
Scrumguiden talar om behovet av ett fullständigt och korrekt genomförande av bestämmelserna Klunga med tanke på frånvaron av en formell ledare och ledare.

3. Teammotivation spelar en viktig roll för framgången för ett Scrum-projekt.
En av de grundläggande principerna Scrum-projektär närvaron av ett multifunktionellt och självorganiserande DT-utvecklingsteam. Sociologiska studier visar att antalet självmotiverade anställda som kan organisera sig inte är stort. Således är det bara en liten del av de anställda som kan arbeta effektivt i Scrum-projekt utan betydande rollförändringar, vilket leder till missbruk av Scrum-principer.

För- och nackdelar med ett Scrum-projekt

En av de största fördelarna, ur kundens synvinkel, är den snabba lanseringen av Srcum-projektet med högst prioriterade funktioner och lägsta möjliga budget. Således är Scrum kundcentrerat. Scrum ger klienten möjlighet att göra ändringar i kraven när som helst, men garanterar inte att dessa ändringar kommer att genomföras. Förmågan att ändra krav är attraktiv för många programvarukunder. Dessutom gör Scrum det lättare att övervaka arbetets framsteg.

Ändringar av kraven Scrum-projektåtföljs av en ändring av projektbudgeten. En rimlig kompromiss är ingåendet av ett kontrakt för utveckling av projektet med en stegvis uppdelning plus ytterligare avtal för nya förändringar under projektutvecklingen.

En viktig svaghet Klungaär skapandet av ett multifunktionellt självorganiserande team. Bildandet av ett effektivt utvecklingsteam för ett Scrum-projekt är ofta förknippat med brist på relevanta specialister (kunskap + erfarenhet + lön) både i företaget och på arbetsmarknaden.

Det ska noteras att Klunga inte lämpligt för att uppfylla statliga order, där allt måste överenskommas innan programvaruutveckling påbörjas TOR bildades och kraven bestämdes, tidsfrister för etapper och en budget godkändes.