Trace Id is missing
Przejdź do głównej zawartości
Azure

Samouczek dotyczący metodyki DevOps — wprowadzenie

Usprawnianie procesu dostarczania oprogramowania — samouczek dotyczący metodyki DevOps

Na metodykę DevOps składa się wiele różnych etapów, pojęć i składników. W tym samouczku podjęto próbę wyjaśnienia, czym jest metodyka DevOps i jak może ona pomóc w usprawnieniu procesu dostarczania oprogramowania.

Informacje o metodyce DevOps

Na początku tego samouczka dotyczącego metodyki DevOps wprowadzimy kilka podstawowych definicji ułatwiających zrozumienie, czym jest metodyka DevOps i jakie jest jej miejsce w ogólnym procesie opracowywania oprogramowania.

  • Metodyka DevOps to praktyka opracowywania oprogramowania promująca współpracę między zespołami programistycznymi i operacyjnymi, dzięki czemu oprogramowanie jest dostarczane szybciej i bardziej niezawodnie. Metodyka DevOps, często nazywana kulturą, łączy osoby, procesy i technologie w celu dostarczania ciągłej wartości.

    Dowiedz się więcej o metodyce DevOps

  • Proces opracowywania oprogramowania może być w dużej części procesem wykonywanym ręcznie, co prowadzi do występowania znacznej liczby błędów kodu. Często praca zespołów programistycznych i operacyjnych nie jest zsynchronizowana, co może spowalniać proces dostarczania oprogramowania i irytować uczestników projektu w firmie. Metodyka DevOps zapewnia wydajność wszystkich zadań składających się na opracowywanie, wdrażanie i konserwację oprogramowania.

    Połączenie prac zespołów programistycznych i operacyjnych prowadzi do zwiększenia widoczności, doprecyzowania wymagań, poprawy komunikacji i skrócenia czasu wprowadzenia na rynek.

  • Metodyka DevOps łączy zespoły programistyczne i operacyjne, co prowadzi do znacznego wzrostu wydajności procesu opracowywania i wdrażania oprogramowania. W metodyce DevOps kładziony jest szczególny nacisk na automatyzację, co prowadzi do zmniejszenia ogólnej liczby błędów.

  • Filozofia metodyki DevOps polega na wzięciu kompleksowej odpowiedzialności za wszystkie aspekty projektu. W przeciwieństwie do innych tradycyjnych metod opracowywania oprogramowania metodyka DevOps łączy działania zespołów programistycznych i operacyjnych, czego często brakuje w innych rozwiązaniach, a co może znacznie utrudnić proces dostarczania oprogramowania.

    Przez udostępnienie spójnej struktury do opracowywania i wydawania oprogramowania metodyka DevOps łączy zespoły programistyczne i operacyjne, co do tej pory mogło być źródłem wyzwań i nieefektywności podczas dostarczania oprogramowania.

  • Mimo że zarówno metodyka DevOps, jak i metoda Agile są praktykami stosowanymi podczas opracowywania oprogramowania, każda z nich skupia się na innym aspekcie tego procesu. Metodyka DevOps to kultura mająca na celu zwiększenie wydajności wszystkich osób biorących udział w opracowywaniu, wdrażaniu i konserwacji oprogramowania. Proces Agile to zwinny proces oszczędnej produkcji ułatwiający skonstruowanie struktury do opracowywania oprogramowania. Metoda Agile zwinnego wytwarzania jest często specyficzna dla zespołu deweloperów, podczas gdy zakres metodyki DevOps rozciąga się na wszystkie osoby biorące udział w produkcji i konserwacji oprogramowania. Metodyka DevOps i metoda Agile stosowane razem mogą doprowadzić do utworzenia wysoko wydajnego środowiska do opracowywania oprogramowania.

Pogłęb swoją wiedzę o metodyce DevOps, wykonując te zadania

W każdej sekcji tego samouczka dotyczącego metodyki DevOps zawarto kilka zadań ułatwiających podjęcie działań mających na celu opracowanie praktyki metodyki DevOps. Spróbuj odpowiedzieć na następujące pytania:

  • Czy możesz wymienić niektóre z wyzwań, przed jakimi przyszło Ci stanąć podczas opracowywania i wdrażania oprogramowania?
  • W jakich obszarach spodziewasz się poprawy wydajności procesu opracowywania i wdrażania oprogramowania?

Podstawy praktyki DevOps

W dalszej części tego podręcznika dotyczącego metodyki DevOps wyjaśniono główne pojęcia używane w praktyce DevOps. W tej sekcji podjęto próbę wyjaśnienia przeznaczenia głównych składników.

  • Agile to powszechnie używana w zespołach tworzących oprogramowanie metoda dostarczania związana z oszczędną produkcją. Opracowywanie odbywa się w krótkich, wykonywanych przyrostowo przebiegach. Mimo że takie podejście różni się od metodyki DevOps, oba sposoby nie wykluczają się wzajemnie. praktyki i narzędzia metody Agile może pomóc zwiększyć wydajność zespołu programistów, co przynosi korzyści dla całej kultury DevOps.

    Rozpocznij korzystanie z metody Agile za pomocą usługi Azure Boards

  • Kiedy członkowie zespołu współpracują ze sobą, kontrola wersji pełni kluczową rolę w dokładnym i wydajnym opracowywaniu oprogramowania. System kontroli wersji — taki jak na przykład Git — tworzy migawkę plików, dzięki czemu w dowolnym momencie można wrócić do dowolnej wersji. Dzięki systemowi kontroli wersji możesz mieć pewność, że nie wystąpią konflikty ze zmianami, nad którymi właśnie procujesz.

    Rozpocznij korzystanie z kontroli wersji usługi Azure Repos

  • Ciągła integracja to proces automatyzowania kompilacji i testowania zachodzące po utworzeniu kodu i jego zatwierdzeniu w systemie. Kod po zatwierdzeniu przechodzi zautomatyzowany proces walidacji. Tylko przetestowany i sprawdzony kod jest następnie zatwierdzany w głównym kodzie źródłowym nazywanym też gałęzią główną lub pniem. Ciągła integracja automatyzuje ten proces, co prowadzi do znacznego zwiększenia jego wydajności. Wszelkie usterki są identyfikowane na wczesnym etapie przed scaleniem kodu z gałęzią główną.

    Rozpocznij implementowanie ciągłej integracji za pomocą usługi Azure Pipelines

  • Ciągłe dostarczanie to podstawowa praktyka stosowana w metodyce DevOps, która umożliwia dostarczanie szybkiego i niezawodnego oprogramowania. Mimo że ten proces jest podobny do nadrzędnego pojęcia metodyki DevOps, ciągłe dostarczanie to struktura, w której każdy składnik kodu jest testowany, walidowany i zatwierdzany po ukończeniu, dzięki czemu oprogramowanie może być dostarczane w dowolnym momencie. Ciągła integracja to proces będący składnikiem ciągłego dostarczania.

    Rozpocznij implementowanie ciągłego dostarczania za pomocą usługi Azure Pipelines

  • Aprowizowanie i konfigurowanie zasobów to kluczowe operacje zarówno w środowisku lokalnym, jak i w chmurze. Dzięki zautomatyzowaniu procesu i użyciu narzędzi udostępniających deklaracyjną definicję infrastruktury — na przykład w postaci tekstowych plików definicji — zespoły mogą wdrażać i konfigurować zasoby w niezawodny i powtarzalny sposób. Tekstowymi plikami definicji można zarządzać podobnie jak kodem, z kontrolą wersji, co ułatwia przeprowadzanie wycofywania, ponownego tworzenia i usuwania złożonych środowisk. Popularnymi rozwiązaniami do implementowania infrastruktury jako kodu są na przykład technologie Terraform i Ansible.

    Utwórz infrastrukturę na platformie Azure za pomocą technologii Terraform

    Dowiedz się więcej na temat korzystania z technologii Ansible na platformie Azure

  • Metodyka DevOps to nie tylko opracowywanie oprogramowania. Twórcy są również odpowiedzialni za jego dostarczanie oraz za jego wydajność. Cały proces DevOps tworzy sprzężenie zwrotne przez dostarczanie punktów danych, dzięki którym można pomóc w ulepszaniu przyszłych projektów i zweryfikować decyzje dotyczące wdrożenia oprogramowania. Monitorowanie i rejestrowanie to kluczowe składniki wspierające uczenie walidowane, które z kolei jest podstawą ogólnej inicjatywy spójnego rozwoju w celu zwiększenia wydajności procesu opracowywania i dostarczania oprogramowania.

    Dowiedz się, jak można zbierać i analizować dane telemetryczne za pomocą usługi Azure Monitor

  • W całym cyklu życia są zbierane opinie i dane telemetryczne, dzięki którym w następnym cyklu łatwiej jest podejmować świadome decyzje. Proces pozyskiwania tych informacji jest nazywany uczeniem walidowanym. Uczenie walidowane pomaga w zdobyciu szczegółowych informacji o nowych sposobach zmniejszenia ilości czasu poświęcanego na jeden cykl. Dzięki zebranym danym można następnie znaleźć sposób na zwiększenie stopnia automatyzacji, poprawienie procesów i szybsze oraz wydajniejsze przygotowanie się na wdrożenie.

Pogłęb swoją wiedzę o metodyce DevOps, wykonując te zadania

Teraz, po poznaniu kluczowych pojęć dotyczących praktyk w metodyce DevOps, spróbuj odpowiedzieć na następujące pytania:

  • Jakie etapy procesu programowania są wykonywane ręcznie i mogłyby zyskać na automatyzacji?
  • Czy w procesie tworzenia wykonywanym przez Twój zespół istnieją możliwości wprowadzenia ciągłej integracji?
  • Jak Twój zespół aktualnie zarządza infrastrukturą? Czy ten proces jest powtarzalny i niezawodny, czy mógłby zostać ulepszony za pomocą infrastruktury jako kodu?
  • Jakie dane telemetryczne byłyby przydatne w pracy?
  • Jakie inne punkty danych mogłyby wspomóc uczenie walidowane?

Tworzenie kultury DevOps

W następnej części tego samouczka dotyczącego metodyki DevOps przedyskutowano sposób tworzenia kultury DevOps. W trakcie przygotowań do wprowadzenia metodyki DevOps w Twojej firmie prawdopodobnie zauważysz, że podejście do dostarczania oprogramowania różni się od stosowanego dotychczas.

Nowej kultury nie da się utworzyć przez jeden dzień i nie jest to proces tak prosty jak zakup nowego zestawu narzędzi. Aby członkowie Twojego zespołu nauczyli się stosować metodykę DevOps, konieczne może się okazać wprowadzenie zmian w bieżącej strukturze zespołu, przepływach pracy i przyzwyczajeniach jego członków.

Dowiedz się, jak firma Microsoft tworzy kulturę DevOps

Pogłęb swoją wiedzę o metodyce DevOps, wykonując te zadania

W każdej sekcji tego samouczka dotyczącego metodyki DevOps zawarto kilka zadań ułatwiających podjęcie działań mających na celu opracowanie praktyki metodyki DevOps. Spróbuj odpowiedzieć na następujące pytania:

  • Czy możesz wymienić niektóre z wyzwań, przed jakimi przyszło Ci stanąć podczas opracowywania i wdrażania oprogramowania?
  • W jakich obszarach spodziewasz się poprawy wydajności procesu opracowywania i wdrażania oprogramowania?

Rozpocznij pracę z pakietem Azure DevOps

Dostarczaj oprogramowanie szybciej i bardziej niezawodnie, korzystając z nowoczesnego zestawu usług programistycznych. Bardziej inteligentne planowanie, lepsza współpraca i szybsze dostarczanie — korzystaj ze wszystkich udogodnień metodyki DevOps lub wybierz funkcje odpowiednie dla siebie.