Co je agilní?

Dokončeno

Agilní je termín, který se používá k popisu přístupů k vývoji softwaru, zdůraznění přírůstkového doručování, týmové spolupráce, průběžné plánování a učení. Agilní proces není tak velký, jako je filozofie nebo myšlení pro plánování práce, kterou bude tým provádět. Je založen na iterativním vývoji a pomáhá týmu lépe plánovat a reagovat na nevyhnutelné změny, ke kterým dochází při vývoji softwaru. Pojďme si poslechnout diskuzi o Mara s Andym po nejnovější verzi.

Mara cítila, že udělala několik malých kroků směrem k zajímavému týmu v DevOps, ale pokrok se zastavil. Tým je příliš zaneprázdněný opravou chyb v poslední verzi, aby přemýšlel o čemkoli jiném.

Vzpomeňte si, že Irwin, produktový manažer, poskytl týmu poměrně kritickou zpětnou vazbu zákazníků na závodní herní web. Řešení těchto problémů nebylo zábavné. Andy a Mara by napsali kód a pak ho předali Amitě, testerovi. Amita vždycky hledala nové chyby a musela kód předat zpět. Buildový server se nezdařil. Tim nemohl získat web hry pro práci v produkčním prostředí, i když pracoval ve vývojovém a testovacím prostředí. Všichni pracovali dlouhou dobu a ztratili pár víkendů.

Po odeslání uvolnění se Mara a Andy sedli na kávu. Oba byli unavení. Mara byla odrazována, ale Andy měl jiný postoj.

Andy: Nevím, proč jsi překvapen. Dostat software ven dveře je těžké. Vždycky je to slog. Už jste to někdy udělal jinak?

Maro: Mám a myslím, že bychom to mohli usnadnit i tady. Opravdu věřím, že devOps nám může pomoct.

Andy: Pamatuji si, že jsme provedli mapování hodnotového toku, ale co teď? Musíme začít s novou verzí. Myslela jsem, že jsme byli hotovi s DevOps.

Mara: Je toho mnohem víc, co můžeme udělat. Myslím, že bychom měli udělat první krok a provést agilní plánování. Můžeme použít Azure Boards, abychom nám pomohli.

Andy: Co myslíte agilním?

Mara: Agilní přístup k vývoji softwaru. Výraz "Agilní" byl v roce 2001 v agilním manifestu. Manifesto zavedl některé hlavní principy pro lepší přístup k vývoji softwaru. Manifest říká:

Hodnota:

  • Jednotlivci a interakce nad procesy a nástroji.
  • Funkční software v komplexní dokumentaci.
  • Spolupráce zákazníků přes vyjednávání smluv
  • Reagování na změnu podle plánu.

Andy: Podívej, jestli znáte nějaký kouzelný způsob, jak usnadnit život, jsem pro to všechno. Moje děti vždycky spí, když se vrátím domů. Ale to zní velmi dotkně bez konkrétních řešení.

Mara: Není to magie, ale můžeme to trochu udělat a Azure DevOps nám dává nástroje, které potřebujeme k implementaci agilních postupů. Teď, když chceme plánovat, můžeme použít Azure Boards. Nejdřív mi můžete vysvětlit proces sestavení a pomoct mi identifikovat velké problémy?

Po spoustě kávy, Mara a Andy identifikují největší problémy v procesu sestavení. Všechny problémy přišly během poslední verze. Jakmile Andy odejde, Mara se podívá na své čmárané poznámky a rozhodne se udělat trochu agilního plánování sama. Sama používá základní proces v Azure Boards k získání všech problémů na jednom místě.

Jejím dalším krokem je ukázat členům týmu a zapojit je.

Doporučení pro přijetí agilního přístupu

Tým se připravuje, aby se chystal provést první kroky k přijetí agilního přístupu. Tady je několik obecných doporučení, která může každý tým použít k začlenění agilního přístupu do organizace.

Vytvoření organizační struktury, která podporuje agilní postupy

Pro většinu organizací může být přijetí agilního přístupu obtížné. Vyžaduje posun mysli a posun kultury, který čelí mnoha stávajícím zásadám a procesům v rámci organizace. Tradičně většina společností používá vodorovnou strukturu týmu. V praxi to znamená, že týmy odpovídají architektuře softwaru. Může být například tým zodpovědný za uživatelské rozhraní aplikace, jiný tým zodpovědný za data a jiný tým zodpovědný za architekturu zaměřenou na služby.

Vertikální týmy ale poskytují lepší výsledky pro agilní projekty. Vertikální týmy pokrývají architekturu a jsou v souladu s výsledky produktů. Může se například jednat o tým zodpovědný za e-mailovou část aplikace a členové týmu pocházejí ze všech tří dříve zmíněných disciplín. Další výhodou vertikální struktury týmu je, že škálování probíhá přidáním týmů.

Členové týmu Mentor o agilních technikách a postupech

Když se poprvé začnou používat agilní techniky a postupy, některé týmy se rozhodnou najmout externí trenéry. Trenéré můžou dokonce pracovat s více týmy, aby pomohli odstranit organizační překážky a sila, takže často mají jak výuku, tak manažerskou dovednost. Členové týmu můžou také trénovat v agilních technikách, například jak spouštět samostatné schůzky a kontrolovat je. V průběhu času je ale důležité, aby členové týmu vyvinuli schopnost vzájemně se mentorovat. To znamená, že většina práce by měla být provedena společně, a ne jednotlivci, kteří tráví většinu svého času prací sami.

Povolení týmové spolupráce a spolupráce mezi týmy

Pokud je spolupráce klíčem k tomu, aby byla agilní spolupráce úspěšná, jaké jsou některé způsoby, jak ji můžete podpořit? Tady je několik nápadů.

Kulturní změna

Při změně kultury mějte na paměti několik věcí. Je důležité, aby členové týmu měli klidné a pohodlné místo pro práci. Potřebují mezery, kde se mohou soustředit, bez velkého rušivých prvků a hluku.

Schůzky jsou faktem života a mohou mít pocit, že přebírají pracovní život člověka. Aby členové týmu měli větší kontrolu, schůzky potřebují program a striktní časové rámce.

Asynchronní komunikace, jako jsou e-maily a zprávy, můžou být ohromující a lidé často cítí, že musí být okamžitě zodpovězeni. Ujistěte se, že ne všechny tyto komunikace potřebují okamžitou reakci.

Členové vzdáleného týmu jsou teď v mnoha společnostech normou. Všichni se musí cítit pohodlně se všemi členy týmu a zacházet s nimi stejně, ať už jsou v kanceláři nebo pracují mimo pracoviště. Spolupráce prostřednictvím komunikace by se měla stát součástí DNA organizace.

Důležitost dobré komunikace nemůžeme přefaklit, i když se neshodují. Řešení konfliktů je dobrou dovedností pro všechny agilní týmy, které mají.

Týmy napříč funkcemi

Stejně jako je důležité, aby členové týmu spolupracovali, je také důležité, aby týmy vzájemně spolupracovaly. Mezifunkční týmy přidávají nové dovednosti a perspektivy, které můžou rozšířit schopnost všech uživatelů řešit výzvy kreativním způsobem. Týmy napříč funkcemi také ztěžují celou organizaci co nejhesivnější. Snižují turf války a zvyšují smysl, že všichni pracují na společném cíli.

Nástroje pro spolupráci

Dobré nástroje můžou členům agilního týmu pomoct efektivněji spolupracovat, a to jak v rámci týmu, tak i s ostatními týmy. Tady je několik návrhů, které vám pomůžou začít:

  • Microsoft Teams: Teams je aplikace, která poskytuje pracoviště pro chat, schůzky, poznámky a úložiště souborů.
  • Skype: Skype je snadno použitelný a dobrý nástroj pro obecné účely. Mnoho lidí ho už má nainstalované.
  • Slack: Slack poskytuje mnoho samostatných komunikačních kanálů, a to vše od jednoho rozhraní. Tyto kanály můžete uspořádat mnoha způsoby, například podle projektu, týmu nebo tématu. Konverzace se zachovají a jsou prohledávatelné. Přidávání interních i externích členů týmu je snadné. Slack se přímo integruje s mnoha nástroji třetích stran, jako je GitHub pro zdrojový kód.

Mezi další běžné nástroje patří Google Hangouts, Asana, Trello, GoToMeeting a monday.com. Zkuste se seznámit s možnostmi, abyste viděli, které z nich vyhovují potřebám vašeho týmu a vaší společnosti.