Smidig programmering

Smidig process har en viktig roll att spela i mjukvaruutvecklingen och hanteringscykeln. Agile har en uppsättning principer som sätter ett direkt fokus på kundvärde, iterativ och inkrementell leverans. Agile metoder sätter fokus på två olika aspekter, en är smidig praxis som är extrem programmering och parprogrammering, andra fokuserar på att hantera projekten som är genom scrummetoden. Smidig process används när företaget eller organisationen har tydligheten i sitt mål men vägen att komma till lösningen är oklar, den smidiga processhanteringen används.

Den smidiga extrema programmeringen betraktas som den bästa metoden att dra nytta av programmeringscykeln. Extrem programmering kom till efter att problemen uppstod i den traditionella mjukvaruutvecklingscykelmodellen. Introduktionen gjordes bara för att fokusera på ”helt enkelt få jobbet gjort” och det visade sig vara effektivt för utvecklingen. extrem programmering är beprövad agil utvecklingspraxis; det sätter maximalt fokus på kundinteraktion för att känna till det exakta kravet och sedan bara komma in i utvecklingen av produkten.

Funktionen av smidig programmering

Den delar upp hela processen i mindre eller korta cykler. Under utvecklingsfasen eller så kan vi säga steg innan leverans (kan också vara det sista steget) kan kunden göra ändringar baserat på hans krav. Det fungerar i fem faser-

  • Utforskning - Extrem programmering initierar produktutvecklingscykeln genom att samla in kraven från användaren. Användaren anger sina idéer eller krav på berättelseskortet som de vill se under släpptiden. Historikkortplatser definierar attributet som ska läggas till i produkten. I samma fas dokumenterar teamet protokoll över praxis, verktyg och teknik som behövs för produktutvecklingen baserat på användarens krav. Tekniken som behövs för att skapa den nya produkten testas och nya möjligheter utforskas genom att skapa en prototyp av systemet. Det kan ta en vecka eller några månader att slutföra undersökningsfasen, det beror helt på programmeraren hur bekant programmet är för tekniken.
  • Planering - Den insamlade informationen delas sedan upp i små cykler för att förstå varje bit av användarens krav. Uppgifterna prioriteras för den första utgåvan av produkten sedan utvecklingen sker. Uppskattningen och schemat för ansträngningar för den första utgåvan beräknas och överenskommas sedan om utgivningen. Det första utgivningsområdet är under två månader.
  • Iterationer - Under detta skede sker flera iterationer av systemen före den första produktlanseringen. Iterationerna är indelade i ett antal små iterationer och ges två till fyra veckor att genomföra. Nu är iterationsplaneringsfasen aktiv, vilket innebär att beslutet om cykeldelning, prioriteringskrav och arbetskrafter som behövs för utvecklingen tas om hand. Iterationerna skapar systemets kontur och sedan uppnås systemet genom att välja korten från berättelseskort som gjorts av användaren. Beslutet fattas av användaren som först ska välja. Kunden kör iteration i slutet av varje slot som han har bestämt för varje iterationsdel.
  • Produktionering - Denna fas anses vara viktig eftersom den slutliga testningen görs till denna fas innan produkten levereras till kunden och prestanda testas. Nya förändringar kommer sannolikt att hittas under denna tid och som måste vara korrekta i produkten innan den första släppningen av produkten. Ett team är beredd att acceptera förändringar i alla faser av utvecklingen eftersom nya krav kan dyka upp under vilken fas som helst. För korrigeringar måste iterationstiden minskas från tre till en vecka. Andra idéer och förslag lagras för senare implementering. Produktionen hålls igång efter den första släppningen av produkten för samma produkt eller för den kan vara för nya iterationer. Underhållsteamet uppmanas att korrigera fel i denna fas, detta görs efter den första släppningen av produkten. Kommunikationen med kunden kan också fråga via kundtjänstskrivbordet. Tillägg av nya teammedlemmar och förändring i teamet, en struktur kan behövas under underhåll.
  • Dödsfas - Detta är den fasen då kunden går med på att inte ha mer historikskort för implementering. Detta är den fasen där den slutliga dokumentationen avseende produkten kan göras, antas att inga fler förändringar i arkitektur, design eller kod görs. Det är att se till att produkten har levererat den önskade produkten annars kommer systemet att betraktas som död. Det borde hålla utgifterna i gränsen för vidareutveckling.

Teamet (roll och ansvar)

Agile cykler har flera medlemmar (team) för att skapa den nya produkten. Varje uppgift är indelad i teamet och samlas trots allt väl.

  • Programmerare - Programmerare är en av huvudorganen, han skapar koden för produkten och håller koden enkel och bestämd för möjligheten. Det bästa sättet att koda korrekt är att kommunicera hela tiden med andra programmerare och teamkamrater. Det kan vara för att känna till de exakta kraven för produkten.
  • Kund - Kunden är huvudorganet som skriver berättelseskort för sina krav och bestämmer vilket krav som kommer att tillfredsställa hans behov. Implementeringsprioriteten fastställs av kunden.
  • Tester - Tester är ansvarig för att köra funktionella tester, han hjälper kunden att skriva funktionella tester. Testningen genomförs hela tiden (regelbundet) och testverktygen upprätthålls.
  • Tracker - Tracker ger feedback och håller reda på uppskattningar gjorda av teamet ger också förslag för att förbättra.
  • Coach - Coach är guiden för teammedlemmarna under hela utvecklingsprocessen. Han är den erfarna som har behandlats i många år.
  • Konsult - Konsult är den externa medlemmen som guider teamet med specifik teknisk kunskap som kan behövas för utvecklingen av projektet.
  • Manager - Han är det beslutande organet. Chefen håller teamet på rätt spår för att få arbetet gjort. Han är öppen för kommunikation till teammedlemmar angående frågor som teamet möter under utvecklingen. Han ser till att arbetet fortskrider smidigt tills projektet levereras.

Rekommenderade artiklar

Detta har varit en guide till Agile-programmering. Här diskuterar vi funktionen och teamrollen och ansvaret för Agile-programmering. Du kan också titta på följande artiklar för att lära dig mer -

  1. Vad är Agile Software Development?
  2. Är MySQL programmeringsspråk?
  3. Vad är smidig och Scrum?
  4. Vad är Kotlin programmeringsspråk?