Kaj je Agile: prevod, obseg. Prilagodljiva razvojna metodologija
Težko je najti nekoga, ki ne želi biti spoštovan. Toda za takšno stanje mora obstajati razlog. Na primer, ko je oseba vrhunski priznani strokovnjak na področju razvoja programske opreme. In za to se je treba naučiti. In v okviru tega članka se bo štelo, kaj je Agile, kakšna je njegova uporaba in kako razumeti to tehnologijo.
Vsebina
Splošne informacije
Sprva se ukvarjamo s tehničnimi težavami. Kaj je Agile? Prevod (beseda) te besede iz angleškega jezika - "živahna, mobilna" je nekoliko manj pogosto omenjena kot "prilagodljiva". In mimogrede, to je zmanjšanje. Polno ime tega pristopa je Agile razvoj programske opreme. Toda, ker je to predolgo, je bilo odločeno, da se zmanjša. In zdaj pravijo preprosto Agile. Prevod kot "prilagodljiv" se uporablja, ker v največji meri ustreza dejanskemu stanju.
Kaj je tukaj vključeno?
Še naprej razmišljamo, kaj je Agile. Tu bi bilo zaželeno osredotočiti pozornost na dejstvo, da gre za prilagodljiv pristop, ki temelji na različnih različicah metodologije (Scrum, XP, "Kanban", Lean). Da bi bolje razumeli temo, vzemimo vzporednice. Recimo, da so Agile tehnologije proces iz vesolja. Končni izdelek je svet sam. Velika eksplozija je najbolj boleča težava, ki jo mora izpolniti samo - spreminjanje seznama zahtev za izdelek. Običajno procesi kreiranja vključujejo uporabo kaskadnega modela. V tem primeru gre vse dosledno in v stopnjah. Takšen pristop lahko na kratko izrazimo: vidim cilj - grem k njej. In če se zahteve glede končnega rezultata spremenijo, včasih morate ponovno narediti vse. Oprostitev te situacije je poskus, da se pretvarjamo, da je vse normalno, zato moramo iti naprej.
In Agile, metodologija upravljanja, je pozval k boju proti vsem tem zaradi svoje prožnosti. Ta skupina "hodgepodge" minimizira različna tveganja z uporabo sklopov načel. Vsi se odražajo v Agilnem manifestu, izdanem leta 2001. Na kratko, zveni takole:
- Glavna stvar so ljudje, ne stvari.
- Sodelujte, vendar ne preberite pogodbe.
- Dokumentacija ne sme posegati v delo.
- Čim prej spremenite.
Morda se zdi preveč nejasno in ni točno, a natančneje pojasnimo.
Oblikovanje procesov
Glede na to, kaj je Agile, pojdimo na eno od najbolj priljubljenih metodologij, znanih kot »Scrum«. Kaj ponuja? Najprej potrebujete:
- Izberite lastnika izdelka. Oseba je primerna za to vlogo, ki vidi cilj, ki ga je treba upoštevati, in kaj se bo na koncu zgodilo.
- Odločite se z ekipo. Če želite to narediti, potrebujete skupino od treh do desetih ljudi, ki imajo spretnosti za doseganje rezultatov.
- Izberite odgovornega strokovnjaka. To je oseba, ki bo spremljala razvoj projekta in pomagala ekipi, da se izogne težavam.
- Razumeti težave. Na enem mestu je treba zbrati vse obstoječe zahteve za izdelek in določiti prednostne naloge. Lastnik proizvoda mora zbrati vse njegove želje. Nato jih ekipa oceni in razume, ali se lahko izvaja in koliko časa traja.
- Treba je prekiniti celotno količino dela na delovni čas, teden ali dva, v katerem bo skupina opravila določene naloge.
- Dnevna srečanja morajo potekati največ petnajst minut. Na dnevnem redu je treba razpravljati, kaj je bilo včeraj, kakšni so načrti za danes, in ovire, ki preprečujejo vzpenjanje.
- Ali raziskave o rezultatih tedna (dva), v katerem ekipa pove, kaj je bilo storjeno. V tem primeru je treba dokazati delovanje delov izdelka.
- Po vsakem časovnem obdobju je treba razpravljati o težavah in poiskati rešitve. In vsa dogajanja se morajo nemudoma izvajati.
Kako identificirati Agile?
Metodologija upravljanja, ne glede na izbrano smer, ima vedno te lastnosti:
- Minimiziranje tveganj. To je glavni cilj, ki ga zasleduje vsak prilagodljiv pristop.
- Iterativni razvoj. V tem primeru pomeni delo v majhnih količinah.
- Najpomembnejša stvar je ljudje in komunikacija med njimi.
Predstavimo si reko. Na eni strani je stranka. Na drugi strani - ekipa. V tem primeru ima prožna razvojna metodologija prednosti za vse:
- Stranka potrebuje minimalno uporaben izdelek. Ob istem času se lahko pogoji med ustvarjanjem spremenijo.
- Ekipa je koristna za komuniciranje s kolegi in stranko. V tem primeru je tveganje za napačno razumevanje zmanjšano, preglednost procesov se poveča, težave se hitro rešijo, verjetno pa bo, da bo prišlo do presenečenja pri izdelavi izdelka.
Družbeni dejavnik
Ko je povedal, kaj je Agile, ponavadi govorijo samo pozitivne stvari. In dejansko se poveča interakcija znotraj ekipe. Vsi ljudje se osredotočajo na eno idejo, ne ustvarijo skrivnosti med seboj, se zavezujejo. Kot rezultat, ekipa deluje v udobnih razmerah in hitro. Ta pristop vam omogoča, da razvrstite kaos.
Od svoje ustanovitve je bil sposoben najti priznanje v tehnoloških industrijah. Trenutno se pogosto uporablja za oblikovanje novih programskih izdelkov. Toda v okviru splošne poslovne prakse je ta pristop še vedno malo znan. Zato je previden pri tistih, ki se prej niso srečali s Agile. Prav tako je treba razumeti, da ga je treba uporabiti le, kadar se ljudje srečujejo z nalogo intelektualne delovne sile.
Majhen primer
Poglejmo, kako deluje te metodologije razvoja programske opreme. Recimo, da imamo Petra, lastnika izdelka. Ne pozna tehničnih podrobnosti, vendar ima vizijo celotne slike. Ve, zakaj je izdelek potreben, kakšne probleme bo rešil in koga bo zadovoljil. Obstajajo tudi zainteresirane osebe. Lahko uporabijo izdelek, podpirajo njegovo ustvarjanje ali pa nekako še vedno sodelujejo pri njegovem nastanku. Lahko ustvarite več in uporabniške zgodbe, v katerih so izražene želje zainteresiranih oseb. Na primer: sistem rezervacij za avtobuse Moskva-St. Petersburg mora imeti iskanje na letih. Peter bo pomagal zainteresiranim ljudem. Prevzel bo nadzor nad izvajanjem idej o uporabniških zgodbah. Prav tako obstaja skupina razvijalcev. To so ljudje, ki bodo zgradili delovni sistem.
Ker se uporablja prilagodljiva razvojna metodologija, uporabniške zgodbe niso kopirane v veliko izdajo, temveč se sprostijo takoj po zaključku in čim pogosteje. Število obdelanih zadetkov je enosmerni pretok ekipe. Da ne bi izgubili tempa in se ne bi zmotili pri ročnem testiranju, bi morala ekipa delovati na avtomatizirani integraciji. Kaj je to? Za vsak delovni trenutek je napisan samodejni preizkus. Če so zgodbice preveč, lahko pride do hitenja, izgube motivacije, upada produktivnosti in kakovosti. V takšnih primerih je zagotovljena metoda "včerajšnje vreme". Sestoji iz tega, da je treba določiti natančen obseg dela in natančno izbrati, kaj natančno bo realizirano. Prej omenjeni "Kanban" predlaga nastavitev omejitve nalog.
In kaj storiti z vrsto?
V redu, tukaj je ekipa odločila, da lahko za štiri tedne obdeluje teden dni. Toda kako se lahko usmerimo v vse, kar obstaja? Recimo, da uporabniki zapustijo 10 zgodb na teden. Predelana štiri. Tako bo čakalna vrsta nenehno rasla. V tem primeru obstaja samo ena učinkovita metoda - beseda "ne". Za lastnika izdelka je to izredno pomembno. Reči "da" ni težko. Veliko težje in pomembnejše je odločiti, kaj ne bi storili. Za to pa je treba tudi nositi odgovornost. Zato se je treba odločiti, na kaj naj zdaj posvetijo pozornost, in kaj je treba odložiti. Da je pravilna prednost, Potrebno je, da lastnik izdelka razume vrednost in obseg vsake zgodbe.
Odločanje
Del zgodb je zelo potreben. Drugi preprosto predstavljajo prijeten bonus. Nekatere zgodbe bodo razvite več ur. Ustvarjanje drugih bo trajalo nekaj mesecev. Mnogi pogosto povezujejo velikost zgodovine in njeno vrednost. Ampak to ni vedno pravilno. Več ni enako boljše. Petro pravilno meni, da prednostne naloge pomagajo pri zapletenosti in vrednosti naloge. Kako določiti te značilnosti v kvantitativnem smislu? Ja, nič. To je prava uganka. Za večjo učinkovitost je potrebno vanj vključiti kar veliko ljudi. To je skupina razvijalcev, ki bodo obveščali o obsegu dela in zainteresiranih osebah. Vendar je treba razumeti, da vsi pridobljeni podatki predstavljajo približno ugibanja. Tu ni natančnih podatkov. Sprva se bodo zgrešile. Toda, ko pridobivate izkušnje, se bo njihovo število in obseg zmanjšalo.
Možna tveganja
Da bi se izognili težavam, je treba odgovoriti na številna vprašanja. To so:
- Ali delamo prave stvari? To je poslovno tveganje.
- Ali lahko ugotovimo, kaj je potrebno? To je socialno tveganje.
- Ali bo projekt deloval na tej platformi? To je tehnično tveganje.
- Ali bo dovolj denarja in bomo imeli čas? To so tveganja izvajanja in stroškov.
V tem primeru je potrebno znanje. Lahko jih obravnavamo kot nasprotje tveganj. Ko je določena pomembna stopnja negotovosti, potem pridobimo znanje - na primer izdelamo prototipe vmesnika ali tehničnih eksperimentov. In že jih imamo, sprejemamo odločitve o tem, v katero smer se želite premakniti.
Kako se učiti?
Industrija informacijske tehnologije se razvija zelo hitro in zato, da ne izgubimo na koncu, je treba nenehno učiti, izboljševati spretnosti in delovno učinkovitost. Zato so vprašanja usposabljanja in izvajanja nujnejša kot kdaj koli prej. Kje začeti? Najboljša možnost je sodelovanje z družbo, kjer se že uporablja Agile. Usposabljanje v tem primeru bodo izvajali ljudje, za katere se ne govori, da vedo, kakšen je prožen razvoj. Ampak takšno, žal, ni vedno mogoče. Najpogosteje se ukvarja zunanji sodelavec, kdo ve, kaj je Agile. Izvajanje tega pristopa se izvaja pod njegovim nadzorom. Res je, storitve takega specialista stanejo denarja. Ampak, če dobite resnično dobro osebo, bodo vsi stroški povrnjeni stokrat. Navsezadnje v današnjem svetu igra pomembno vlogo učinkovitost zaposlenih.
Kaj čaka v prihodnosti?
Metodologije razvoja programske opreme se nenehno razvijajo. Iščejo nove načine in priložnosti za povečanje učinkovitosti dela in dejavnosti. Povedati, kaj nas čaka v prihodnosti, je precej problematično. Verjetno bo integriran fleksibilen razvojni sistem s sredstvi avtomatizacija proizvodnih procesov. Na primer, lahko rešite težave, tudi pri oddaljenosti od lokacije podjetja. Na mnoge načine, prihodnost določa nova informacijska tehnologija. Konec koncev, ko se pojavijo, se morate naučiti novih načinov dela z njimi. In v tem primeru je razvoj, zaprt v ciklu.
Na koncu
Tako se je končal izlet do prilagodljivih razvojnih metod. Vendar je treba opozoriti, da je ena stvar teorija, in drugič je praksa. Nove informacijske tehnologije, ki se nenehno pojavljajo, zahtevajo veliko skupnost razvijalcev. Kako narediti ekipo bolj učinkovito? Vsakdo sam najde odgovor na to vprašanje. Informacije, predstavljene tukaj, se lahko uporabijo za formalizacijo hrbtenice. Toda v praksi bomo morali delati z obstoječim modelom in postaviti stanje v stanje skladnosti z obstoječimi izzivi. Nato bo skupina sposobna učinkovito izpolnjevati svoje cilje.
- Project Corvette 20385 `Thundering`: značilnosti in fotografije. Corvette…
- Escapada je ... Kaj pomeni beseda?
- Kiwi ptica - nasmeh narave
- Kakšna je adaptacijska gimnastika Bubnovskega?
- Kaj bi bilo v strahu? Iščete pomen besede
- Sinodalni prevod Biblije v ruščini
- Beaumonde je izraz, ki živi večno.
- Kako narediti smodnik v Minecraftu dostopno?
- Fus ro dah: kar pomeni
- Scrum - metodologija projektnega vodenja
- Danke shon: prevod iz nemščine in primeri uporabe
- Firmware: kaj je to?
- Voziček Britax: značilnosti, prednosti in slabosti
- Kaj je programska oprema? Kakšen program je Programska oprema?
- Chekni - to je s čim se jedo?
- Projekt 20385: oblikovne značilnosti in namen
- DevOps - kaj je to?
- "Orevoir" je ... Prevod besede iz francoščine
- Dobesedni prevod je dobesedno razmnoževanje besedila ali ne?
- Ejayl - kaj je to?
- Prva lokomotiva Stephensona in Cherepanova