Webinarium by Krzysztof Walczak
To nie będzie webinarium reklamowe.
Pokazuję tutaj narzędzia z którymi pracowałem lub pracuję, więc jest to po części subiektywna prezentacja świata DevOps i PMO (Project Management Office).
Z drugiej strony prezentuję również analizy Gartner Group wskazujące na postrzeganie świata narzędzi przez uznanych analityków rynku. Czyli już niesubiektywnie. ;-)
7. - Meta framework
- Praktyki
- wizualizacja przepływu
- ograniczenie WIP
- inspekcja i adaptacja
przepływu / praktyk
KANBAN
SCRUM VS
KANBA
N
regularne sprinty Rytm pracy stały przepływ
na koniec sprintu Wydania produktu stałe dostarczanie
określone Role dowolne
prędkość
(i pojemność)
zespołu
Metryki
WIP, lead time,
cycle time,
throughput
nie chcemy zmian
podczas Sprintu
Podejście do
zmiany
zmiany są OK
kiedykolwiek!
18. - Agile, DevOps, SCRUM, KANBAN, LeSS, SAFe …
- Od PPM do EAT i jeszcze dalej - PPT (Product Planning Tools)
- Nowe zawody: DevOps Egnineer, Scrum Master, Agile Coach
RODZINA ?
Narzędzia PPM do DevOps z nowym EAP
To nie będzie webinarium reklamowe. Pokazuję tutaj narzędzia z którymi pracowałem lub pracuję, więc jest to po części subiektywna prezentacja.
Z drugiej strony pokażę również analizy Gartner Group wskazujące na postrzeganie świata narzędzi przez uznanych analityków rynku.
Odejście od paradygmatu pracownika - kółka w maszynie, na rzecz pracownika - kluczowego zasobu firmy. Poszanowanie, pobudzanie i wykorzystanie potencjału jednostek w ramach zespołu.
Manifest Waterfall - Agile
Ludzie i interakcje od procesów i narzędzi
Działające oprogramowanie od szczegółowej dokumentacji
Współpracę z klientem od negocjacji umów
Reagowanie na zmiany od realizacji założonego planu.
Pryncypia - zasady
Najwyższy priorytet ma dla nas zadowolenie klienta dzięki wczesnemu i ciągłemu wdrażaniu wartościowego oprogramowania.
Bądźcie gotowi na zmiany wymagań nawet na późnym etapie jego rozwoju.
Procesy zwinne wykorzystują zmiany dla zapewnienia klientowi konkurencyjności.
Dostarczajcie funkcjonujące oprogramowanie często,w kilkutygodniowych lub kilkumiesięcznych odstępach. Im częściej, tym lepiej.
Zespoły biznesowe i deweloperskie muszą ściśle ze sobą współpracować w codziennej pracy przez cały czas trwania
projektu.
Twórzcie projekty wokół zmotywowanych ludzi. Zapewnijcie im potrzebne środowisko oraz wsparcie i zaufajcie, że wykonają powierzone zadanie.
Najbardziej efektywnym i wydajnym sposobem przekazywania informacji zespołowi deweloperskiemu i wewnątrz niego jest rozmowa twarzą w twarz.
Działające oprogramowanie jest podstawową miarą postępu.
Procesy zwinne umożliwiają zrównoważony rozwój.
Sponsorzy, deweloperzy oraz użytkownicy powinni być w stanie utrzymywać równe tempo pracy.
Ciągłe skupienie na technicznej doskonałości i dobrym projektowaniu zwiększa zwinność.
Prostota – sztuka minimalizowania ilości koniecznej pracy – jest kluczowa.
Najlepsze rozwiązania architektoniczne, wymagania i projekty pochodzą od samoorganizujących się zespołów.
W regularnych odstępach czasu zespół analizuje możliwości poprawy swojej wydajności, a następnie dostraja i dostosowuje swoje działania do wyciągniętych wniosków.
Scrum – keypoints
Podziel zasoby organizacji na małe, cross-funkcjonalne, samoorganizujące się zespoły.
Podziel całość pracy (produkt) na małej wielkości, konkretne zadania, nadając im odpowiedni priorytet i szacując potrzebny nakład pracy
Podziel czas przeznaczony na dany projekt na konkretnej wielkości iteracje (z reguły od 2-4 tygodni)
Po każdej iteracji omów i zoptymalizuj priorytety i czas poświęcany na konkretne taski.
Zoptymalizuj cały proces organizując spotkanie retrospektywne po zakończonym projekcie.
Jeżeli mielibyśmy zmieścić opis tej metodyki w jednym zdaniu zapewne brzmiałoby ono: Zamiast dedykować duże zadanie zbudowania dużego produktu dużej grupie ludzi, postaw na małe zespoły, pracujące w krótkich iteracjach dostarczające małe części produktu końcowego.
Wartości:
Zaangażowanie to dawanie z siebie wszystkiego w kontekście pracy
Odwaga to umiejętność jasnego i transparentnego powiedzenia sobie i innym, że coś nie działa
Skupienie to myślenie tylko o tym, co mamy do wykonania w bieżącym Sprincie
Otwartość to gotowość na przyjęcie wszelkich bodźców i informacji jakie do nas docierają.
Poszanowanie to te wszystkie zachowania, które powodują respektowanie innych ludzi oraz ich przekonań i odmienności
Filary
Przejrzystość
Inspekcja
Adaptacja
Lead Time to średni czas mierzony od momentu powstania zadania do jego dostarczenia (delivery). Cycle Time to natomiast średni czas spędzony na wykonaniu zadania – rozpoczyna się w chwili jego podjęcia, a kończy, kiedy zadanie osiąga status “Done”.
https://www.sparkbit.pl/pl/scrum-vs-kanban-krotki-przewodnik-metodykach-zwinnych/
Kanban – keypoints
Zwizualizuj przepływ pracy – podziel główne zadania na mniejsze taski, każdy task zapisz na oddzielnej kartce i umieść je na tablicy i użyj kolumn z odpowiednimi nazwami by określić w na którym etapie prac jest konkretny task
Przypisz konkretny limit pracy in progress (work in progress (WIP)) – ile konkretnie zadań może być wykonywanych jednocześnie
Określ czas realizacji (średni czas ukończenia jednego zadania, czasem nazwany “czasem cyklu”). Zoptymalizuj cały proces tak by czas jego realizacji był jak najkrótszy i jak najbardziej przewidywalny.
BuzzWord - modne powiedzonko, słowo, zwrot
Książka: Projekt Fenix
DevOps engineer
DevOps is a set of software development practices, processes and tools that combine software development (Dev) and information technology operations (Ops) to facilitate the software development life cycle.
Ta metodologia kładzie nacisk na bliską komunikację i wzajemne zaangażowanie obydwu pionów w celu usprawnienia zarówno procesów, jak i jakości produktu. DevOps ma pomagać w przełamywaniu barier, stymulować współpracę oraz innowacyjność w całym procesie tworzenia oprogramowania.
Dev Ops plays a vibrant part in delivering automation in the area of Build, Testing and Release to software development teams which are normally termed today as Continuous Integration, Continuous Testing, and Continuous Delivery. Dev Ops needs a delivery cycle that includes planning, development, testing, deployment, release, and monitoring with active cooperation between different members of a team.
DevOps – a co to takiego?
DevOps to termin powstały ze złączenie dwóch słów: development oraz operations. Choć od pewnego czasu bardzo popularny, badania pokazują, że niewiele osób wie, co się faktycznie za nim kryje.
Przeprowadzone przez Puppet Labs w 2015 r. badanie „State of DevOps” pokazało, że aż 19% firm na świecie połączyło już działy operacyjny i rozwoju w jeden departament DevOps. Jest to prawie 20% więcej niż rok wcześniej. DevOps jest innowacyjnym podejściem do prowadzenia projektów IT, które przynosi szereg korzyści, m.in. znaczne oszczędności oraz skrócenie czasu wdrażania zmian w oprogramowaniu i weryfikowania poprawności tych zmian. Efektem jest sprawniejsze dotarcie produktu na rynek oraz docelowo uzyskanie przewagi nad konkurencją.
Dwa w jednym
DevOps zakłada połączenie dwóch obszarów, które w firmach z reguły funkcjonują oddzielnie: zespołu rozwijającego oprogramowanie (Dev) z zespołem operacji (Ops). Ta metodologia kładzie nacisk na bliską komunikację i wzajemne zaangażowanie obydwu pionów w celu usprawnienia zarówno procesów, jak i jakości produktu. DevOps ma pomagać w przełamywaniu barier, stymulować współpracę oraz innowacyjność w całym procesie tworzenia oprogramowania. To z kolei wiążę się z edukowaniem pracowników ze wszystkich obszarów IT, że wspólne procedury umożliwiają osiągnięcie zamierzonych celów łatwiej, szybciej, bezpieczniej, a co za tym idzie – skuteczniej. DevOps to kultura organizacyjna, polegająca na pracy razem, jako zespół. DevOps jest ważnym elementem, który umożliwia z jednej strony stworzenie warunków do organizowania nawet dużych zespołów, a z drugiej pozwala na wykorzystanie modelu, dzięki któremu proces tworzenia oprogramowania może przebiegać stosunkowo szybko.
Nowy model pracy
DevOps wprowadza również iteracyjny model pracy, zgodny z założeniami Agile. W praktyce oznacza to wiele iteracji i udostępnianie produktu (działającego kodu) tak wcześnie, jak to tylko możliwe. Po krótkich, trwających kilka tygodni sprintach, daje się użytkownikom działający kod i zbiera opinie. Taki model pracy deweloperom jest znany od kilkunastu lat, ale w świecie działów operacyjnych nie było podobnej inicjatywy aż do czasu pojawienia się DevOps. Istotnym elementem jest też automatyzacja procesów, czyli zbudowanie środowiska pracy realizującego funkcje, które dotychczas wymagały czasochłonnej, ręcznej pracy (np. automatyzacja wdrożeń).
Szybko widoczne korzyści
Prezentowana metodologia narodziła się w dużych firmach, które traciły na nieskoordynowanym funkcjonowaniu działów rozwoju i operacji. Dlatego jest lepiej dopasowana do specyfiki korporacji. Jednak kryteria wdrożenia DevOpsa spełnia również wiele niedużych firm, których działy IT stoją przed potrzebą wdrażania częstych zmian.
DevOps przynosi korzyści nie tylko firmom technologicznym, w środowisku których wyrósł. Jest to metodologia dla każdego, kto chce być bardziej zwinny. Dla IT jest to też sposób, aby trafniej realizować potrzeby użytkowników. DevOps sprzyja bowiem działaniom, które finalnie zwiększają jakość produktu dostarczanego klientowi, a więc przekładają się na zadowolenie użytkownika końcowego. Trzeba też podkreślić, że mimo rewolucyjnych zmian w organizacji pracy, które wprowadza DevOps, jego wdrożenie nie jest przedsięwzięciem rozłożonym na lata. Pierwsze korzyści widać już po 2-3 miesiącach.
DevOps is usually called pipeline, i.e. a linear workflow moving from build test to release. Pipeline displays a total visualization of application from source control to production. It is not about CI, it is about CD -continuous delivery. Enterprises are devoting their time and struggles in understanding more about automating their complete software development process. 2019 have presented the shift from just CI pipelines to DevOps assembly lines.
Poprawa jakości wdrożeń oprogramowania 63%
Częstsze udostępnianie nowych wersji oprogramowania 63%
Lepszy wgląd w procesy i wymagania 61%
Kulturowa zmiana współpracy 55%
Lepsze reagowanie na potrzeby biznesowe 55%
Bardziej zwinne wdrożenia 51%
Bardziej zwinne zarządzanie zmianami 45%
Poprawa jakości kodu 38%
Microsoft Project
Project Server
SharePoint
O wspólnym zarządzaniu zasobami, bilansowaniu między projektami
Raportowanie na poziomie organizacji
Współpraca pomiędzy projektami
Magiczny Kwadrat - rozpoznawalny punkt Gartner Group
Agile Craft acquisition – they are surely King of the Hill!
Po przejęciu AgileCraft lider na rynku wg Garnter Magic quadrant 2020
Since we know that the majority of Agile teams use Jira (more than twice the share of the nearest competitor);
Agile Craft to pełny PPM, Jira była wykorzystywana przez zespoły. Teraz mamy całość PPM z EAP
⇒ Zespoły planowały w Atlassian Jira
⇒ All modes of planning supported, Waterfall, Agile, ScrumFall, SAFe, etc.
⇒ Raportowanie, współpraca na poziomie Enterprise Jira wspierała się połączeniem z AgileCraft, który w końcu kupili
This creates a blockbuster Portfolio and Project Management solution (PPM).
2019
https://www.blendedperspectives.com/holy-guacamole-1-1-3-atlassian-jira-align-agilecraft-is-by-far-the-market-leader-in-the-enterprise-agile-planning-tool-space/
2020
Po przejęciu AgileCraft lider na rynku wg Garnter Magic quadrant 2020
Do czego może służyć?
Tablice, przepływ pracy elastyczność
Planuj
Twórz historie użytkowników i zgłoszenia, planuj przebiegi oraz przydzielaj zadania w zespole programistów.
Harmonogramy / Road Mapy brak GantChart natywnie, ale Marketplace to załatwia
Śledzenie
Ustawiaj priorytety i omawiaj pracę zespołu, posiadając wszystkie istotne informacje i pełną widoczność.
Wydawaj
Bezproblemowo dostarczaj wysokiej jakości produkty, zawsze mając dostęp do aktualnych danych.
Raport
Popraw wydajność zespołu dzięki wizualizacji przydatnych danych w czasie rzeczywistym.
Czemu na topie?
Samouczki,
Elastyczność,
Pokrywa cały DevOps Toolchain
Do 10 członków zespołu - za darmo. Potem kosztuje, podobnie jak Azure DevOps Microsoftu. Tyle że funkcji jest tyle, że hej
Kupione przez Atlassian w 2017 r za 425 mln $
Trello to proste, bezpłatne, wszechstronne i przejrzyste graficznie rozwiązanie do zarządzania projektami i organizowania wszystkiego. Tej aplikacji zaufały miliony ludzi na całym świecie.
Model sprzedaży freemium, pozwala na korzystanie z narzędzia właściwie za darmo, a jedynym ograniczeniem są pluginy, gdzie w wersji darmowej można mieć ich tylko kilka aktywnych. Połączenie go ze Slackiem lub… czymkolwiek co potrzebujesz daje ogromne możliwości.
Cały Devops tool chain, tak jak Produkty Atlassian.
Tutaj skupiam się na Planner czyli Azue Boards
Ciągła integracja/ciągłe wdrażanie na dowolnej platformie
Duża elastyczność, jednak mniejsza niż w Jira.
Silne powiązanie ze środowiskiem Microsoft - dobrze i źle
Cenowo taniej niż Jira, jednak dochodzą ukryte koszty np. serwerów, jeżeli chcemy mieć na własnych serwerach
PipeLines:
Kompiluj, testuj i wdrażaj rozwiązania w dowolnym języku — w wybranej chmurze lub lokalnie. Uruchamiaj zadania równolegle w systemie Linux, macOS i Windows oraz wdrażaj kontenery na indywidualnych hostach na platformie Kubernetes.
Microsoft otworzy centrum danych, aby dostarczać chmurowe usługi klasy enterprise polskim start-upom, firmom i instytucjom rządowym. Oznacza to między innymi lokalny dostęp do usług, takich jak Microsoft 365 oraz chmury Azure.
Project Protfolio Management do Enterprise Agile Planning aż do Product
Repozytoria
Kontenery
Wirtualizacja
Automatyzacja testów
Świat zarządzania projektami, a szczególnie tworzenia oprogramowania bardzo poszedł do przodu,
Jest mnóstwo opcji do śledzenia i trudno podjąć decyzje, co lepsze, co dla nas.
Za każdym razem trzeba indywidualnie dopasować narzędzia do potrzeb organizacji, tak, żeby zbudować cały DevOps toolchain.
Jeżeli nie macie Państwo na to czasu, do tego właśnie są konsultanci i firmy szkoleniowe, które są nośnikiem wiedzy.
Zapraszamy do kontaktu!