Skip to main content

Hvad er Lean Software Development?

Lean Software Development er et paradigme, der beskriver et teoretisk ideal sæt af omstændigheder til oprettelse af software.Det er vigtigt at tænke på mager softwareudvikling som blot en af mange softwareudviklingsteorier, hver med deres fordele og ulemper.Når du bruger den magre softwareudviklingsmodel, er der syv afgørende punkter at forstå: eliminere affald, forstærke læring, sen beslutningstagning, hurtig levering, team empowerment, integritetsopbygning og visualisering af hele.

Eliminering af affald er både en tidog penge, der sparer mål.Ved at reducere mængden af overskydende kode og overflødige funktioner i magert softwareudvikling sparer softwareudviklingsteamet penge og leverer strammere kode til slutbrugeren.Således er programmer oprettet ved hjælp af Lean Software-modellen mindre ressourceintensive og mere fokuserede.

Læringsforstærkning i Lean Software Development refererer til begrebet brug af korte cyklusser mellem testfaser.I teorien giver dette mere konstant feedback til ingeniørerne, hvilket gør det muligt at identificere problemer tidligere i udviklingskæden.Slutbrugerne er inkluderet i disse faser, hvilket sikrer, at beta-versionerne af programmet imødekommer deres behov.

Sen beslutningstagning giver mulighed for yderligere fleksibilitet i designplanen, hvilket gør det muligt at træffe beslutninger, når det maksimale antal fakta harblevet samlet.For eksempel kan det at beslutte, inden det begynder at udvikle, at program X skal have funktioner A, B og C, kan virke som en god idé, indtil testen på jorden afslører, at disse funktioner ikke er mulige at gennemføre til tiden.I Lean Software Development ville beslutningen om at inkludere A, B og C blive forsinket, indtil det var sikkert, om det faktisk var muligt.

Hurtig levering henviser til en præference for at give slutbrugeren en fungerende beta-model så hurtigt sommulig mdash;Eventuelt når programmet er 85 til 90 procent komplet mdash;og fortsætter med at lappe og opgradere denne model over programmets levetid.Dette står i kontrast til at vente, indtil programmet er 100 procent komplet og leverer det derefter.I teorien giver dette slutbrugeren mulighed for at presse mere liv ud af programmet sammen med at tillade udviklingsteamet yderligere feedback fra de arbejdende beta-modeller.

Team Empowerment betyder at give teamet mere autonomi under programmeringsprocessen.Som et resultat vil de teoretisk blive mere investeret i projektet.Derudover betyder det at give dem adgang til kunderne, mere tæt matchende forventninger til faktisk levering.

Endelig er integritetsopbygning og at se hele fokusere på at se programmet som en enkelt enhed.Kontrast dette med andre systemer, der betragter et program som en patchwork -samling af forskellige systemer.Denne store billedmåde til at tænke teoretisk giver et mere komplet produkt, da hele teamet er på den samme side, når det kommer til det færdige produkt.