Kaj je Agile: prevajanje, področja uporabe. Prilagodljiva razvojna metodologija

Težko je najti osebo, ki ne bi želela, da bi bila obravnavana s spoštovanjem. Toda za to stanje stvari mora obstajati razlog. Na primer, ko je oseba vrhunski priznani strokovnjak na področju razvoja programske opreme. In za to je treba študirati. In v tem članku bomo obravnavali, kaj je Agile, kaj je korist od tega in kako razumeti to tehnologijo.

Splošne informacije

Najprej poglejmo tehnična vprašanja. Kaj je Agile? Prevajanje (verbalno) besede iz angleškega jezika - "živo, mobilno", je nekoliko manj pogosto imenovano "prilagodljivo". In mimogrede, to je zmanjšanje. Polno ime tega pristopa je Agile razvoj programske opreme. Ker pa je bilo predolgo, je bilo odločeno, da se ga zmanjša. In zdaj pravijo samo Agile. Prevajanje kot "prilagodljiv" se uporablja, ker je najbolj relevantno za dejansko stanje.


Kaj je tu vključeno?

Še naprej razmišljamo, kaj je Agile. Tukaj bi bilo zaželeno, da se osredotočimo na dejstvo, da je to prilagodljiv pristop, ki temelji na številnih različnih metodologijah (Scrum, XR, Kanban, Lean). Da bi bolje razumeli temo, naj pripravimo vzporednice. Predpostavimo, da je Agile-tehnologija proces nastanka vesolja. Končni izdelek je sam obstoj sveta. Veliki bang je najbolj boleč problem, s katerim se moramo spopasti - spremembo seznama zahtev za izdelek. Običajno postopek ustvarjanja vključuje uporabo kaskadnega modela. V temprimeru gre vse dosledno in v fazah. Ta pristop lahko na kratko izrazimo: vidim cilj - grem k njej. In če se zahteve za končni rezultat spremenijo, je včasih potrebno ponovno opraviti ali ne vse. Kar še bolj zaplete to situacijo, je, da se skušate pretvarjati, da je vse v redu in da se morate premakniti naprej.


In tukaj je Agile, metodologija upravljanja, pozvana k boju proti vsem tem zaradi svoje prožnosti. Ta ekipa "Salt" zmanjšuje različna tveganja z uporabo načel načel. Vsi so izraženi v Agilnem manifestu iz leta 2001. Skratka, zvenijo takole:
  • Glavna stvar so ljudje, ne stvari.
  • Sodelovati in ne prebrati pogodbe.
  • Dokumentacija ne bi smela posegati v delo.
  • Spremeni se čim prej.
  • Morda se zdi preveč nejasno in ni natančno, ampak naj podrobneje.

    Procesne naprave

    Glede na to, kaj je Agile, se vrnimo k eni izmed najbolj priljubljenih metodologij, imenovanih Scrum. Kaj ponuja? Za začetek potrebujete:
  • Izberite lastnika izdelka. Ta oseba prihaja z osebo, ki vidi, katere cilje naj gre in kaj se bo končalo.
  • Opredelite ekipo. Da bi to naredili, potrebujete skupino od 3 do 10 ljudi, ki so sposobni dobiti rezultat.
  • Izberite odgovornega strokovnjaka. To je oseba, ki bo spremljala razvoj projekta in pomagala ekipi pri premagovanju težav.
  • Premagovanje težav. Zbirati ga je treba na enem mestuvse obstoječe zahteve za izdelke in prednost. Lastnik izdelka mora tukaj zbrati vse želje. Nato jih ekipa oceni in razume, ali je to mogoče in koliko časa potrebuje za to.
  • Celoten obseg dela je treba prekiniti na teden ali dva, v katerem bo skupina opravljala določene sklope nalog.
  • Sestanki morajo biti vsak dan dolgi največ petnajst minut. Da bi razpravljali o tem, kaj je bilo storjeno, kakšni so načrti za danes in ovire, ki ovirajo višino.
  • Preglejte rezultate tedna (dveh), v katerem je ekipa obveščena o tem, kaj je bilo storjeno. Treba je prikazati delovanje delov izdelka.
  • Po vsakem časovnem obdobju je treba razpravljati o težavah in poiskati rešitve. Poleg tega je treba takoj začeti izvajati vsa dela.

  • Kako prepoznati Agile?

    Metodologija upravljanja, ne glede na izbrano smer, ima vedno naslednje značilnosti:
  • Zmanjševanje tveganj. To je glavni cilj, ki ga zasleduje vsak fleksibilen pristop.
  • Iterativen razvoj. V tem primeru mislimo na robota v majhnih ciklih.
  • Najpomembnejša stvar so ljudje in komunikacija med njimi.
  • Predstavljajmo si reko. Na eni obali stranka. Druga je ekipa. V tem primeru ima fleksibilna metodologija razvoja prednosti za vse:
  • Stranka potrebuje minimalni uporaben izdelek. Hkrati se lahko v času njegovega ustvarjanja spremenijo pogoji.
  • Koristno je, da skupina komuniciras sodelavci in strankami. V tem primeru se zmanjša tveganje za napačno razumevanje, poveča preglednost postopkov, hitro rešijo težave, zmanjšajo se možnosti za presenečenje pri izdelavi izdelka.
  • Socialni dejavnik

    Ko govorimo o Agilu, se običajno govori o pozitivnih stvareh. In dejansko se izboljša interakcija znotraj ekipe. Vsi ljudje se osredotočajo na eno idejo, med seboj ne ustvarjajo skrivnosti, se zavežejo. Zato ekipa deluje v udobnih pogojih in hitrem tempu. Ta pristop vam omogoča razvrščanje kaosa.
    Od svoje ustanovitve je lahko našel priznanje na tehnoloških področjih. Trenutno se pogosto uporablja za oblikovanje novih izdelkov programske opreme. Toda v okviru splošne poslovne prakse je ta pristop še vedno malo znan. Zato so tisti, ki niso spoznali Agila, previdni glede tega. Razumeti je treba tudi, da se uporablja le v tistih primerih, ko je naloga intelektualnega dela soočena z ljudmi.

    Majhen primer

    Poglejmo, kako te metodologije za razvoj programske opreme delujejo. Na primer, imamo Peter, lastnika izdelka. Tehničnih podrobnosti ne pozna, vendar ima vizijo splošne slike. Ve, zakaj izdelek potrebuje problem, ki se bo odločil, koga bo zadovoljil. Obstajajo tudi zainteresirane osebe. Lahko uporabijo izdelek, ga podprejo ali kako se vključijo, preden ga ustvarite. Izdelate lahko tudi lastne zgodbe, v katerihizražene so želje zainteresiranih oseb. Na primer: sistem za rezervacijo vozovnic za avtobuse Moskva-St. Peter bo pomagal ljudem. Prevzel bo nadzor nad izvajanjem idej uporabniških zgodb. Obstaja tudi skupina razvijalcev. To so ljudje, ki bodo zgradili delovni sistem. Ker se uporablja fleksibilna razvojna metodologija, se uporabniške zgodbe ne zbirajo do velike izdaje in se izdajo takoj po zaključku in čim pogosteje. Število obdelanih zadetkov je pasovna širina ekipe za en teden. Da bi ohranili hitrost in se ne trudili za ročno testiranje, bi morala ekipa delati na avtomatizirani integraciji. Za kaj gre? Za vsak delovni trenutek je napisan samodejni test. Če je toliko zgodb, lahko imate naglico, izgubo motivacije, nižjo produktivnost in kakovost. V takih primerih je zagotovljena metoda "včerajšnje vreme". Sestavlja ga dejstvo, da je treba vzpostaviti strog obseg dela in skrbno izbrati, kaj se bo izvajalo. Omenjeni Kanban predlaga določitev omejitve nalog.

    In kaj storiti z obratom?

    Ok, tukaj se je ekipa odločila, da bo lahko opravila štiri zgodbe na teden. Toda kako se usmeriti v vse, kar je? Recimo, da uporabniki oddajo deset zgodb na teden. Štirje so obdelani. Tako bo čakalna vrsta stalno rasla. V tem primeru obstaja samo ena učinkovita metoda - beseda "ne". Za lastnika izdelka jeizjemno pomembno. Reči "da" ni težko. Veliko težje in bolj pomembno je odločiti se, kaj storiti, ni potrebno. In za to je potrebno nositi odgovornost. Zato se je treba odločiti, zakaj je treba zdaj posvetiti pozornost in kaj je treba odložiti. Za pravilno določanje prednostnih nalog mora lastnik izdelka razumeti vrednost in obseg vsake zgodbe.

    Odločitev

    Del zgodb je zelo potreben. Drugi preprosto predstavljajo lep bonus. Nekaj ​​zgodb se bo razvilo nekaj ur. Vzpostavitev drugih bo trajala mesece. Mnogi pogosto povezujejo velikost zgodbe in njeno vrednost. Toda to ni vedno pravilno. Več - ni enako boljši. Peter meni, da je treba prednostne naloge ustrezno obravnavati z zapletenostjo in vrednostjo opravljene naloge. Kako določiti te značilnosti v kvantitativnem smislu? Ampak nikakor ne. To je prava igra ugibanja. Za večjo učinkovitost pa mora pritegniti veliko ljudi. To je skupina razvijalcev, ki bodo obveščali o obsegu dela in zainteresiranih. Vendar je treba razumeti, da so vsi podatki, pridobljeni na ta način, približni ugibanja. Tu ni natančnih številk. Najprej bodo zgrešeni. Toda zaradi pridobivanja izkušenj se bo njihovo število in obseg zmanjšalo.

    Možna tveganja

    Da bi se izognili težavam, je treba na številna vprašanja dati poštene odgovore. To je:
  • Ali delamo prave stvari? To je poslovno tveganje.
  • ​​
  • Ali lahko ugotovimo, kaj potrebujemo? To je socialno tveganje.
  • Ali bo projekt deloval na tej platformi. To je tehnično tveganje.
  • Ali je dovoljali bomo imeli čas? To so tveganja izvajanja in stroškov.
  • V tem primeru je potrebno znanje. Lahko se štejejo za nasprotno od tveganj. Ko se zabeleži pomembna stopnja negotovosti, pridobimo znanje - na primer izdelamo prototipe vmesnika ali tehnične eksperimente. In že jih imamo, se odločimo, v katero smer se bomo premaknili.

    Kako se učiti?

    Industrija informacijske tehnologije se izjemno hitro razvija in zato, da se dolgoročno ne izgubi, je treba nenehno učiti, izboljševati kvalifikacije in delovno učinkovitost. Zato, kot še nikoli doslej, vprašanja usposabljanja in izvajanja. Kje začeti? Najboljša možnost je sodelovanje s podjetjem, ki že uporablja Agile. Proučevanje v tem primeru bodo izvajali ljudje, ki ne govorijo, da vedo, kaj je prilagodljiv razvoj. To pa žal ni vedno mogoče. Najpogosteje uporabljen je tretji strokovnjak, ki ve, kaj je Agile. Izvajanje tega pristopa je pod njegovim nadzorom. Res je, da so storitve takega strokovnjaka vredne denarja. Toda, če si narišete resnično dobro osebo, bodo vsi stroški izplačani stotinam. Dejansko ima v današnjem svetu učinkovitost zaposlenih pomembno vlogo.

    Kaj je mogoče pričakovati v prihodnosti?

    Metodologije razvoja programske opreme se nenehno razvijajo. Iskanje novih načinov in priložnosti za povečanje učinkovitosti dela in dela. Reči, da čakamo na prihodnost, je precej problematično. Verjetno bo s sredstvi za avtomatizacijo proizvodnih procesov integriran fleksibilen razvojni sistem. Lahko se na primer odločitežave, tudi ko ste oddaljeni od lokacije podjetja. V mnogih pogledih je določena prihodnost novih informacijskih tehnologij. Konec koncev, ko se pojavijo, morate obvladati nove metode dela z njimi. In v tem primeru je razvoj, zaprt v zanki.

    Na koncu

    Tu in tam je izlet končal v fleksibilne metode razvoja. Vendar je treba opozoriti, da je ena stvar teorija in še ena - praksa. Nove nastajajoče informacijske tehnologije zahtevajo veliko število razvijalcev. Kako narediti ekipo bolj učinkovito? Odgovor na to vprašanje so našli vsi. Tu predstavljene informacije se lahko uporabijo za izdelavo okostja. Toda v praksi bo moral sodelovati z obstoječim modelom in posodobiti stanje z obstoječimi izzivi. Nato lahko ekipa učinkovito izpolni svoje cilje.

    Sorodne publikacije