Co to jest Agile: tłumaczenie, obszary zastosowań. Elastyczna metodologia rozwoju

Trudno jest znaleźć osobę, która nie chciałaby być traktowana z szacunkiem. Ale w tym stanie rzeczy musi być jakiś powód. Na przykład, gdy dana osoba jest uznanym na całym świecie specjalistą w dziedzinie tworzenia oprogramowania. I do tego trzeba się uczyć. W tym artykule zostanie rozważone, czym jest Agile, jakie są korzyści i jak rozumieć tę technologię.

Informacje ogólne

Najpierw przyjrzyjmy się problemom technicznym. Co to jest Agile? Tłumaczenie (werbalne) słowa z języka angielskiego - "na żywo, mobilne", jest nieco rzadziej określane jako "elastyczne". A tak przy okazji, jest to redukcja. Pełna nazwa tego podejścia to rozwój oprogramowania Agile. Ale ponieważ był zbyt długi, postanowiono go obciąć. A teraz mówią po prostu Agile. Tłumaczenie jako "elastyczne" jest używane, ponieważ jest najbardziej istotne dla rzeczywistej sytuacji.


Co tu jest zawarte?

Wciąż rozważamy, czym jest Agile. Tutaj należałoby skoncentrować się na tym, że jest to elastyczne podejście oparte na wielu różnych metodach (Scrum, XR, Kanban, Lean). Aby lepiej zrozumieć temat, narysujmy paralele. Załóżmy, że technologia Agile jest procesem powstawania wszechświata. Końcowym produktem jest samo istnienie świata. Wielki wybuch to najbardziej bolesny problem, z którym trzeba się spotkać - zmiana w liście wymagań dla produktu. Zazwyczaj proces tworzenia wymaga użycia modelu kaskadowego. W tymsprawa wszystko idzie konsekwentnie i etapami. To podejście można krótko wyrazić: Widzę cel - podchodzę do niej. A jeśli wymagania dotyczące końcowego wyniku ulegają zmianie, czasami konieczne jest ponowne wykonanie lub nie wszystkie. Co dodatkowo komplikuje tę sytuację, to próbować udawać, że wszystko jest w porządku i trzeba iść naprzód.


I tutaj Agile, metodologia zarządzania, jest wezwana do walki z tym wszystkim ze względu na jego elastyczność. Ten skład "Sól" minimalizuje różne zagrożenia, stosując zestawy zasad. Wszystkie znajdują odzwierciedlenie w manifestie Agile, wydanym w 2001 roku. Krótko mówiąc, brzmią tak:
  • Najważniejsze są ludzie, nie rzeczy.
  • Współpracuj i nie czytaj umowy.
  • Dokumentacja nie powinna zakłócać pracy.
  • Zmień tak szybko, jak to możliwe.
  • Może wydawać się to zbyt nieprecyzyjne i niedokładne, ale spójrzmy na szczegóły.

    Urządzenia procesowe

    Biorąc pod uwagę to, czym jest Agile, przejdźmy do jednej z najpopularniejszych metodologii, znanej jako Scrum. Co oferuje? Na początek potrzebujesz:
  • Wybierz właściciela produktu. Ta osoba wymyśli osobę, która widzi, jakie cele przejść, a co ostatecznie.
  • Zdefiniuj drużynę. Aby to zrobić, potrzebujesz grupy od 3 do 10 osób, które mają umiejętności, aby uzyskać wynik.
  • Wybierz odpowiedzialnego specjalistę. To jest osoba, która będzie monitorować rozwój projektu i pomoże zespołowi w przezwyciężeniu trudności.
  • Aby przezwyciężyć trudności. Powinien zostać zebrany w jednym miejscuwszystkie istniejące wymagania dotyczące produktu i priorytetyzacja. Właściciel produktu musi tutaj zebrać wszystkie życzenia. Następnie zespół ocenia i rozumie je, czy można je zrealizować i ile czasu to zajmuje.
  • Konieczne jest podzielenie całego wolumenu pracy na długości tygodni lub dwóch, podczas których zespół wykona określone zestawy zadań.
  • Każdego dnia powinny odbywać się spotkania, nie dłuższe niż piętnaście minut. W celu omówienia tego, co zostało zrobione, jakie są plany na dzisiaj i przeszkody, które kolidują z wysokością.
  • Przejrzyj wyniki tygodnia (dwa), podczas których zespół jest informowany o tym, co zostało zrobione. Konieczne jest wykazanie działania części produktu.
  • Po każdym okresie należy omówić problemy i szukać rozwiązań. Ponadto wszystkie prace muszą być natychmiast wdrożone.

  • Jak rozpoznać zwinność?

    Metodologia zarządzania, niezależnie od wybranego kierunku, ma zawsze następujące cechy:
  • Minimalizacja ryzyka. Jest to główny cel, do którego dąży każde elastyczne podejście.
  • Rozwój iteracyjny. W tym przypadku mamy na myśli robota w małych cyklach.
  • Najważniejsze są ludzie i komunikacja między nimi.
  • Wyobraźmy sobie rzekę. Na jednym brzegu klient. Drugi to zespół. W tym przypadku elastyczna metodologia rozwoju przynosi korzyści wszystkim:
  • Klient potrzebuje minimalnego, wykonalnego produktu. W tym samym czasie w trakcie jego tworzenia warunki mogą się zmieniać.
  • Przydatne jest, aby zespół komunikował sięze współpracownikami i klientem. W takim przypadku ryzyko pomyłki jest minimalizowane, zwiększa się przejrzystość procesów, szybko rozwiązuje się problemy, zmniejsza się ryzyko niespodziewanego wystąpienia podczas tworzenia produktu.
  • Czynnik społeczny

    Jeśli chodzi o mówienie Agile, zwykle mówi się o rzeczach pozytywnych. I rzeczywiście poprawia się interakcja wewnątrz zespołu. Wszyscy ludzie koncentrują się na jednej idei, nie tworzą sekretów między sobą, angażują się. Dzięki temu zespół pracuje w komfortowych warunkach i w szybkim tempie. Takie podejście pozwala uporządkować chaos.
    Od momentu powstania był w stanie znaleźć uznanie w dziedzinie technologii. Jest on obecnie szeroko stosowany do projektowania nowych produktów oprogramowania. Jednak w ramach ogólnej praktyki biznesowej podejście to jest nadal mało znane. Dlatego ci, którzy wcześniej nie spotkali Agile, są ostrożni. Należy również rozumieć, że powinno ono być stosowane tylko w tych przypadkach, w których zadanie pracy umysłowej napotyka się na ludzi.

    Mały przykład

    Zastanówmy się, jak działają te metody opracowywania oprogramowania. Na przykład mamy Petera, właściciela produktu. Nie zna szczegółów technicznych, ale ma wizję ogólnego obrazu. Wie, dlaczego produkt potrzebuje problemu, że zadecyduje, kto go zaspokoi. Są też zainteresowane osoby. Mogą używać produktu, wspierać go lub zaangażować się przed jego utworzeniem. Możesz także tworzyć własne historie, w którychwyrażane są życzenia zainteresowanych osób. Na przykład: system rezerwacji biletów na autobusy Moskwa-Sankt Petersburg powinien być wyszukiwany w locie. Piotr pomoże ludziom, których to dotyczy. Przejmie kontrolę nad realizacją pomysłów na historie użytkowników. Istnieje również zespół programistów. Są to ludzie, którzy zbudują działający system. Ponieważ stosowana jest elastyczna metodologia rozwoju, historie użytkowników nie kumulują się aż do wydania dużego i są wydawane natychmiast po zakończeniu i tak często, jak to możliwe. Liczba przetworzonych trafień to przepustowość zespołu przez tydzień. Aby nadążyć za tempem i nie zawracać sobie głowy ręcznymi testami, zespół powinien pracować nad automatyczną integracją. O co chodzi? Dla każdego momentu roboczego zapisywany jest test automatyczny. Jeśli jest tak wiele historii, możesz mieć pośpiech, utratę motywacji, niższą produktywność i jakość. W takich przypadkach udostępniana jest metoda "pogoda wczorajsza". Polega ona na tym, że konieczne jest ustanowienie ścisłego zakresu prac i staranne wybieranie tego, co będzie realizowane. Wspomniany wcześniej Kanban sugeruje ustawienie limitu zadań.

    A co zrobić z turą?

    Okay, tutaj zespół zdecydował, że poradzi sobie z czterema historiami w tygodniu. Ale jak orientować się we wszystkim, co jest? Załóżmy, że użytkownicy rzucają dziesięć historii w tygodniu. Cztery są przetwarzane. W ten sposób kolejka będzie stale rosnąć. W tym przypadku istnieje tylko jedna skuteczna metoda - słowo "nie". Dla właściciela produktu jestniezwykle ważne. Powiedzenie "tak" nie jest trudne. O wiele trudniejsze i ważniejsze jest podjęcie decyzji, co robić, nie jest konieczne. I do tego należy ponosić odpowiedzialność. W związku z tym należy zdecydować, dlaczego należy teraz zwrócić uwagę i co należy odłożyć na później. Aby prawidłowo ustalić priorytety, właściciel produktu musi zrozumieć wartość i objętość każdej historii.

    Podejmujemy decyzję

    Część historii jest niezwykle potrzebna. Inne stanowią po prostu niezłą premię. Niektóre historie zostaną opracowane na kilka godzin. Tworzenie innych zajmie miesiące. Wiele często tworzy korelację między rozmiarem opowieści a jej wartością. Ale nie zawsze jest to poprawne. Więcej - nie równie dobrze. Peter uważa, że ​​priorytety należy odpowiednio rozwiązać poprzez złożoność i wartość wykonywanego zadania. Jak określić te cechy w kategoriach ilościowych? Ale nie ma mowy. To jest prawdziwa gra zgadywania. A dla większej efektywności musi przyciągnąć wiele osób. Jest to zespół programistów, którzy poinformują o zakresie prac i zainteresowanymi osobami. Należy jednak rozumieć, że wszystkie dane uzyskane w ten sposób są przybliżonymi przypuszczeniami. Tutaj nie ma dokładnych numerów. Najpierw będą pudła. Ale w miarę zdobywania doświadczenia ich liczba i skala będą spadać.

    Możliwe zagrożenia

    Aby uniknąć problemów, należy udzielać szczerych odpowiedzi na wiele kwestii. Jest:
  • Czy robimy właściwe rzeczy? Jest to ryzyko biznesowe.
  • ​​
  • Czy zdajemy sobie sprawę, czego potrzebujemy? Jest to ryzyko społeczne.
  • Czy projekt będzie działał na tej platformie? Jest to ryzyko techniczne.
  • Czy to wystarczypieniądze i czy będziemy mieli czas? Są to ryzyko związane z wdrożeniem i kosztami.
  • W tym przypadku wiedza jest potrzebna. Można je uznać za przeciwieństwo ryzyka. Kiedy odnotowywany jest znaczny poziom niepewności, zdobywamy wiedzę - na przykład tworzymy prototypy interfejsu lub eksperymenty techniczne. A już je posiadając, podejmujemy decyzję, w którym kierunku się poruszać.

    Jak się uczyć?

    Branża IT rozwija się niezwykle szybko i aby nie stracić na dłuższą metę, konieczne jest ciągłe uczenie się, podnoszenie kwalifikacji i zwiększanie wydajności pracy. Dlatego, jak nigdy wcześniej, kwestie szkolenia i wdrażania. Gdzie zacząć? Najlepszą opcją jest współpraca z firmą, która już używa Agile. Studiowanie w tym przypadku będzie prowadzone przez osoby, które nie są pogłoski o tym, jak elastyczny jest rozwój. Ale to niestety nie zawsze jest możliwe. Najczęściej używany jest specjalista strony trzeciej, który wie, czym jest Agile. Wdrożenie tego podejścia jest pod jego nadzorem. To prawda, że ​​usługi takiego specjalisty są warte swojej ceny. Ale jeśli narysujesz naprawdę dobrze poinformowaną osobę, wszystkie koszty zostaną spłacone setnie. Rzeczywiście, w dzisiejszym świecie istotną rolę odgrywa efektywność pracowników.

    Czego można się spodziewać w przyszłości?

    Metodyki opracowywania oprogramowania stale się rozwijają. Poszukiwanie nowych dróg i możliwości zwiększenia wydajności pracy i pracy. Stwierdzenie, że czekamy na przyszłość, jest dość problematyczne. Prawdopodobnie elastyczny system rozwoju zostanie zintegrowany ze środkami automatyzacji procesów produkcyjnych. Na przykład będzie można zdecydowaćproblemy nawet z dala od lokalizacji firmy. Pod wieloma względami określa się przyszłość nowych technologii informatycznych. W końcu, kiedy powstają, trzeba opanować nowe metody pracy z nimi. I w tym przypadku jest rozwój, zamknięty w pętli.

    Podsumowując

    Tu i tam zakończyła się wycieczka na elastyczne metody rozwoju. Ale należy pamiętać, że jedną rzeczą jest teoria, a całkiem inna - praktyka. Nowe, wschodzące technologie informatyczne stanowią wyzwanie dla dużej liczby programistów. Jak sprawić, by zespół był bardziej skuteczny? Odpowiedź na to pytanie znajduje każdy. Przedstawione tu informacje mogą posłużyć do stworzenia szkieletu. Ale w praktyce będzie musiała współpracować z istniejącym modelem i zaktualizować sytuację do istniejących wyzwań. Wtedy zespół może skutecznie realizować swoje cele.

    Powiązane publikacje