Programmering

7 bedste praksis for fjerntliggende agile teams

Agile metoder fungerer bedst, når alle i teamet er samlet ét sted. Når hold deler et arbejdsområde, er det let for holdkammerater at stille spørgsmål, parre programmeringsopgaver og løse problemer uden at planlægge møder. Brug af teknologier som webkonferencer, gruppechats og e-mail er bare ikke så effektivt som direkte person-til-person-interaktion.

Teknisk spotlight:

Samarbejde besvarer opkaldet

  • Fjernarbejde nu og for evigt? (Computerverden)
  • Videokonference hurtige rettelser har brug for en nytænkning, når pandemien er forbi (Network World)
  • 8 vigtige sikkerhedshensyn til beskyttelse af fjernarbejdere (CSO)
  • 7 hemmeligheder for succesrige eksterne IT-teams (CIO)

Når det er sagt, kan organisationer få agile metoder til at udmærke sig med fjerntliggende og distribuerede hold, men det kræver noget arbejde og eksperimentering. Teammedlemmer skal finde den optimale brug af teknologier og tilpasse sig kommunikationsformer for at sikre holdets produktivitet, samarbejde og kvalitet.

Med udbruddet af COVID-19 skal mange adræt hold skifte fra at arbejde på kontorer til at arbejde eksternt. Dette vil være en ny oplevelse for mange mennesker, der ikke har arbejdet derhjemme en væsentlig del af deres karriere og for hold, der er vant til personlige interaktioner. Desuden kan nogle teammedlemmer blive syge eller møde andre vanskeligheder på grund af den voksende pandemi, så agile teams skal tilpasse sig en ny måde at arbejde på.

Denne artikel er en enkel guide, der har til formål at hjælpe teammedlemmer, teams og organisationer med at skifte fra primært personlige agile teams til stærkt distribuerede.

Vælg korrekt udstyr, værktøj og arbejdsområde

Hvis du skal arbejde eksternt, skal du sørge for at have en opsætning, der fungerer for dig, din virksomhed og dit team. Tænk på det som et kontorflyt og invester tid på forhånd for at evaluere mulighederne og sørg for, at du har alt hvad du behøver for at være produktiv, behagelig og i et rum, hvor du mindst sandsynligvis bliver distraheret.

Overvej disse 12 overvejelser, når du arbejder eksternt i længere perioder, der inkluderer anbefalinger om arbejdsdiscipliner, arbejdsområde, udstyr, netværk og værktøjer.

Nogle ændringer, du bliver nødt til at foretage, bliver først klart, efter du er kommet i gang. Hvis du har dårlig forbindelse, skal du muligvis flytte den trådløse router eller skifte til en kabelforbindelse. Placeringen af ​​dit skrivebord skal muligvis justeres, hvis du laver en masse videokonferencer. Du bliver sandsynligvis nødt til at bede familiemedlemmer om at holde afstand, når du arbejder.

Vær til stede og tale med holdkammerater

Agile teams lykkes ved at afbalancere den tid, der er afsat til samarbejde, med den tid, der er afsat til den koncentrerede indsats, der kræves til kodning og andre udviklingsaktiviteter. På kontoret er det lidt nemmere at se en holdkammerats fokus, og disciplinerede smidige hold finder måder at undgå distraktioner og kontekstskift.

Når man arbejder eksternt, skal hold være online, men også dele deres tilgængelighed. Værktøjer som Slack og Microsoft Teams giver dig mulighed for at indstille tilgængelighedsstatus, mens andre samarbejdsværktøjer giver dig mulighed for at ignorere underretninger. Brug af statusindstillingerne er kritisk vigtigt, når holdene har åbent for fleksibel arbejdstid.

Agile teams skal planlægge tid til formelle samarbejdssessioner og til at udføre arbejdet for at færdiggøre brugerhistorier, men teammedlemmer skal også deltage i smalltalk. Folk reagerer forskelligt på stresstider og at arbejde eksternt, så det er vigtigt at tjekke ind med hinanden. Også mennesker har forskellige kommunikationsformer online versus personligt, og der er en ny mulighed for at få flere mennesker involveret i online samtaler.

Scrummastere, tekniske kundeemner og produktejere bør regelmæssigt stille teamets spørgsmål om deres niveau af forståelse omkring krav, blokering af deres fremskridt, og hvis der er noget, de har brug for for at forbedre deres produktivitet og lykke.

Endelig skal scrummasters og tekniske leads fra flere hold være i regelmæssig kontakt med hinanden. Deres erfaringer og problemer med at styre deres fjernteam er sandsynligvis ikke unikke. At dele enhver læring om, hvordan de får deres adrætte teams til at samarbejde eksternt, vil utvivlsomt gavne hele gruppen.

Gennemgå tilgange til smidige ceremonier

Agile teams, der skifter til eksternt samarbejde, behøver ikke at redesigne deres proces eller fjerne agile ceremonier. Men fjernbetjening kan kræve, at scrum-mestre overvejer, hvordan man gennemfører mødet, afhængigt af teamets størrelse og de tilgængelige samarbejdsværktøjer.

For eksempel skal personlige hold, der kigger over scrumbrættet under den daglige standup, udvikle en digital version af denne ceremoni. Hvis teamet er lille og historisk set har oplevet relativt få blokke, der hindrer arbejdet i brugerhistorier, kan de muligvis fjerne et møde og erstatte det med en planlagt chatindsamling.

Andre forslag til smidige fjerntliggende hold:

  • Brug digitale tavleværktøjer til sprintplanlægning og designsessioner
  • Opret video-webkonference til forpligtelsesmøder
  • Vælg en person, der skal skærmdeles under sprintanmeldelser
  • Brug undersøgelser eller programmer med lav kode til at indhente feedback med tilbagevirkende kraft

Forpligt dig til realistiske team- og individuelle opgaver

Agile teams, der skifter fra personligt til eksternt samarbejde, skal nulstille deres sprinthastigheder og gennemgå niveauet og kompleksiteten af ​​det arbejde, de realistisk kan forpligte sig til og gennemføre. Scrummastere og agile ledere bør anvende praksis svarende til nyoprettede agile teams og lade holdene tilpasse sig nye måder at arbejde på.

For eksempel er det ikke tilrådeligt at forpligte sig til komplekse brugerhistorier, der kræver bidrag fra flere teammedlemmer, fordi nogle holdkammerater måske bliver utilgængelige under sprinten. Hvis det er muligt, bør disse historier opdeles i mindre eller forsinkes, hvis produktejeren er i stand til at prioritere dem.

På samme måde vil agile teams måske undgå at forpligte sig til historier, der har afhængighed af arbejde fra andre teams. Det ekstra samarbejde kan tage et par sprints at definere for nydannede fjernteam.

Forøg dokumentationsniveauet

Agile udviklingsteams prioriterer arbejdskode frem for dokumentation, men det betyder ikke, at dokumentation af arkitektur, API'er og kode ikke er nødvendig.

Hold, der arbejder eksternt i længere tid, vil måske diskutere dokumentationsstandarder og se, om der er behov for en større indsats. Undertiden kan dokumentation af koden erstatte nogle af de personlige implementeringsdiskussioner omkring, hvordan et kodemodul fungerer, eller hvordan en holdkammerat adresserer teknisk gæld.

Invester i spikes, CI / CD og adressering af teknisk gæld

Team, der forventer at arbejde eksternt i længere perioder, kan have lettere ved at fokusere på mere tekniske historier snarere end dem, der kræver interaktion med produktejeren og interessenter. For eksempel involverer instrumentering af en flertrins brugeroplevelse samarbejde mellem produktejeren, designere, udviklere og testere. Det kan være sværere at koordinere diskussioner eller udvikle en fælles forståelse af slutbrugernes behov, når hold lige er begyndt at arbejde eksternt.

Der er andre muligheder for at prioritere arbejde, der kræver mindre samarbejde og mere individuel koncentration og innovation. Prioritering af små pigge for at teste nye ideer er et eksempel, især hvis en udvikler kan arbejde på et kort bevis på konceptet med få afbrydelser eller kontekstskift. En anden mulighed er at prioritere adressering af teknisk gæld på kodeniveau, især refactoring af kodemoduler, tilføjelse af enhedstest eller forbedring af undtagelseshåndtering. En tredje mulighed er at investere tid i at udvikle eller forbedre CI / CD-automatisering.

Disse mere teknisk udfordrende opgaver hjælper også udviklere med at koncentrere sig om at udføre et job i områder, hvor de ser fordelene direkte.

Gennemgå implementeringsstrategier og reducer risici

Meget samarbejdende agile hold lærer at arbejde sammen som højtydende hockeyhold. I hockey, selvom pucken bevæger sig hurtigt og kan hoppe uretmæssigt, bruger spillerne en blanding af designede spil og improvisationer, der muliggør både stærkt defensivt spil og eksplosivt offensivt spil.

Flyt nu dette hold fra en indendørs arena og bed dem om at spille på en udendørs sø, og de har brug for lidt tid til at tilpasse sig elementerne. De spiller konservativt forsvar et stykke tid, indtil de bliver fortrolige med det nye miljø og genvinder deres rytme.

Det samme gælder for agile teams og agile organisationer af flere teams. Det er rigtigt, om holdene arbejder på ældre systemer eller bygger cloud-first-applikationer ved hjælp af den nyeste devops-praksis.

De forhold, der kræver, at agile teams arbejder eksternt, vil sandsynligvis påvirke andre aspekter af virksomheden, herunder drift, kundeforventninger og forsyningskædedynamik.

Kunder og slutbrugere ønsker muligvis ikke den samme implementeringsfrekvens, især hvis denne frekvens risikerer applikationens pålidelighed eller ydeevne. Hvis du har API'er, der arbejder med din virksomheds leverandører, er disse leverandører muligvis mindre tilgængelige for at deltage i at teste ændringerne. Hvis softwareapplikationen er underlagt overholdelse eller tilsyn med lovgivningen, kan det være sværere at få de krævede anmeldelser og godkendelser.

Agile teams skal anerkende det bredere sæt ændringer, der påvirker deres organisations forretningsmodel, kunder og arbejdsmiljø. Organisationsprincipperne, der kørte alt fra hastigheden og hyppigheden af ​​implementeringen til de typer arbejde og brugerhistorier, der prioriteres, skal gennemgås ud fra et nyt driftsperspektiv.

En stor del af at være adræt og ikke kun følge adræt praksis er at erkende hvornår og hvordan man kan ændre sig.

Læs mere om agil udvikling

  • Hvordan man udmærker sig i agil softwareudvikling
  • 7 vigtige kodningsmetoder for agile udviklere
  • 5 planlægningsprincipper for agil udvikling
  • 5 måder, agile hold opfylder sprintforpligtelser
  • Agil produktstyring og porteføljeplatforme forklaret
  • Sådan kører du kortere udviklingsfrigivelsescyklusser
  • 5 principper til at blive et samarbejde agile devops team
  • Hvordan man skriver smidige brugerhistorier: 7 retningslinjer
  • 3 smidige nedbrydningsrapporter og hvordan man bruger dem
  • Sådan foretages agil estimering på den rigtige måde
  • Sådan håndteres data og arkitekturstandarder i agil udvikling
  • Sådan justeres testautomatisering med agile og devops
  • 3 trin til anvendelse af smidige metoder i it-operationer
  • Hvordan agile teams kan understøtte hændelsesstyring
  • 5 ansvarsområder for en agil softwareudviklingschef
  • Sådan forbedrer du dine scrummasterkompetencer
  • Hvad er en scrum master? Den agile udviklingsleder definerede
  • Hvad er agil metode? Modern softwareudvikling forklaret