Ustanawianie standardów rozwoju

Ukończone
Optymalizowanie produktywności dzięki standaryzacji praktyk programistycznych, wymuszania bram jakości oraz śledzenia postępu i sukcesu dzięki systematycznego zarządzania zmianami.

Zespół deweloperów jest odpowiedzialny za rozwiązywanie problemów z obciążeniami przed wydaniem z minimalnym tarciem. Należy pamiętać o wydajności deweloperów i zoptymalizować pod kątem szybkich cykli realizacji, od kodowania po wyniki testowania. Zaimplementuj skuteczne i odpowiednie procesy, które planują i standandaryzują działania techniczne, a także napędzają konsensus w zespole i uczestnikach projektu.

Przykładowy scenariusz

Contoso Ticketing to małe startupy, które udostępnia rozwiązanie SAAS biznesowe (LOB) dla średnich firm. Dołączanie nowych klientów to złożony proces, który wymaga dostosowania produktu i niestandardowego programowania w celu integracji ze środowiskiem klienta. Zespół implementacji używa usługi Azure DevOps jako platformy do współpracy i dostarczania, ale nie jest zgodne z żadną formalną metodologią programowania.

Przyjęcie standardów branżowych na potrzeby opracowywania

Użyj standardowej metodologii tworzenia oprogramowania w branży, która jest odpowiednio dostosowana do potrzeb obciążenia i rozmiaru zespołu. Zachowaj listę prac współdzieloną między wszystkimi rolami.

Przyjęcie dobrze znanej metodologii określa rytm projektu. Usuwa niejednoznaczności procesów, dając członkom zespołu jasne oczekiwania i odpowiedzialność.

Śledząc wspólną listę, zadania można uściślić i ustalić priorytety przy użyciu standardowych rozwiązań. Projekt będzie miał większe szanse na dostarczenie na czas.

Standardowe metodologie ułatwiają zarządzanie ryzykiem. Dzięki szczegółowym przeglądom punktów kontrolnych deweloperzy mogą rozwiązywać potencjalne problemy, zanim staną się one showstoppers.

Wyzwanie firmy Contoso

  • Główny produkt firmy zyskał popularność, a zespół integracyjny pracuje obecnie nad bardziej równoczesnym projektami implementacji niż kiedykolwiek. Aby nadążyć za zwiększonym obciążeniem, zespół musiał zwiększyć liczbę pracowników.
  • Rozwój zespołu, w połączeniu z brakiem formalnych procesów, doprowadził do niektórych wyzwań, takich jak niejasna komunikacja między członkami zespołu, losowe i nieprodukcyjne spotkania, a także rzadko i nieplanowane cykle programowania. Kilka projektów dołączania jest teraz za harmonogramem, a kierownictwo firmy zwróciło się do zespołu o wprowadzenie niezbędnych zmian w celu poprawienia sytuacji.

Stosowanie podejścia i wyników

  • Aby przezwyciężyć te wyzwania, zespół decyduje się na przyjęcie metodologii scrum, popularnej struktury agile na potrzeby tworzenia oprogramowania.
  • Scrum pomoże zespołowi rozwiązać niektóre problemy, przed którymi stoi. Między innymi scrum zapewnia wyraźną i spójną strukturę procesu programowania ze wstępnie zdefiniowanymi rolami, zdarzeniami, artefaktami i regułami. Wspólna lista prac i cykl krótkich przebiegów programistycznych pomoże zespołowi w pracy nad wspólną wizją i zapewni wartość klientom regularnie i niezawodnie.

Shift w lewo na potrzeby testowania

Mają procesy zapewniania jakości, które podkreślają testowanie na wczesnym etapie cyklu projektowania. Uwzględnij wszystkie artefakty dla planowanych procedur testowania, w tym składniki aplikacji, infrastrukturę i operacje płaszczyzny danych, które są częścią wydania funkcji lub aktualizacji.

Traktuj artefakty jako niezmienne, gdy są promowane za pośrednictwem środowisk, zyskując pewność siebie za każdym razem, gdy przechodzą przez bramę jakości.

Gdzie jest to praktyczne, automatyzowanie rutynowych kontroli.

Zapewnienie jakości zapewnia, że wymagania funkcjonalne i niefunkcjonalne zostały spełnione z ufnością, co prowadzi do pozytywnego wpływu klientów.

Wyzwanie firmy Contoso

  • Strategia testowania funkcjonalnego zespołu obciążeń korzysta z kombinacji testów automatycznych i ręcznych. Ich podejście do testowania nie obejmuje wszystkich aspektów systemu, takich jak wydajność, bezpieczeństwo i użyteczność. Nie mają również spójnego sposobu wdrażania kodu w różnych środowiskach w pełni zautomatyzowany, co wprowadza zmienność i niepewność.
  • Wzrost ilości i złożoności wysiłków związanych z dołączaniem klientów zwiększył wyzwania związane ze strategią testowania, co prowadzi do częstych błędów, ponownej pracy i niezadowolenia klientów.

Stosowanie podejścia i wyników

  • Zespół ds. obciążeń podejmuje wysiłki mające na celu ulepszenie strategii testowania oraz zwiększenie spójności i przewidywalności potoków wdrażania.
  • Zaczynają od utworzenia planów testów dla każdej funkcji lub dostosowania w ramach programowania, obejmujące zarówno wymagania funkcjonalne, jak i niefunkcjonalne. Używają usługi Azure DevOps do zarządzania przypadkami testowymi, danymi testowymi i wynikami testów. Konfigurują bramy jakości w potokach wdrażania, które weryfikują jakość kodu, konfigurację i wdrożenie przed podwyższeniem poziomu artefaktów do następnego środowiska.
  • Po wdrożeniu tych ulepszeń zespół zobaczy spadek liczby wdrożeń zakończonych niepowodzeniem, a także liczbę usterek i zdarzeń w środowisku produkcyjnym. W rezultacie jakość, szybkość dostarczania i zadowolenie klientów znacznie wzrosły.

Mierzenie wydajności programowania

Zgłaszanie postępów i trendów w celu mierzenia wydajności. Śledzenie i raportowanie trendów w błędach, nieudanych aktualizacji, czas wdrażania i pętli opinii w celu wprowadzania ulepszeń w praktykach programistycznych.

Wyzwanie firmy Contoso

  • Zespół ds. obciążeń wprowadził niedawno kilka zmian w celu zwiększenia jakości i przewidywalności procesów dołączania klientów. Jednak firma stoi przed wyzwaniem w mierzeniu i raportowaniu wpływu tych zmian. Niestety, firma nie ma wiarygodnych danych ani metryk, aby pokazać, ile jakości i przewidywalności poprawiła się, lub które zmiany przyczyniły się do poprawy więcej niż inne.
  • Firma potrzebuje sposobu kwantyzacji i informowania o korzyściach związanych z inwestycjami w proces, dzięki czemu może określić priorytety swoich zasobów i wysiłków w przyszłości.

Stosowanie podejścia i wyników

  • Zespół decyduje się rozpocząć korzystanie z funkcji raportowania w narzędziu AzDO, których już używa zespół, aby móc określić ilościowe ulepszenia w czasie i określić priorytety alokacji zasobów na potrzeby przyszłych inwestycji.
  • Zaczynają od korzystania z kilku wbudowanych raportów:
    • Raporty prędkości
    • Diagramy przepływu skumulowanego
    • Trendy błędów: ile usterek zostało utworzonych, rozwiązanych i zamkniętych w czasie oraz jak wpływają one na metryki jakości.
    • Statystyki wdrażania: jak długo trwa dostarczanie oprogramowania z kodu do środowiska produkcyjnego oraz jak porównuje się z celami i testami porównawczymi.
  • Zespół planuje również opracowywanie dostosowanych raportów za pomocą raportów pulpitu nawigacyjnego i raportów usługi Power BI Analytics w najbliższej przyszłości.

Sprawdź swoją wiedzę

1.

Który z poniższych elementów jest przykładem standardowego narzędzia do obsługi listy prac?

2.

Które z poniższych strategii mogą pomóc zwiększyć szybkość rozwoju i wydajność?

3.

W jaki sposób firma Contoso mogła zidentyfikować, które z ostatnich zmian procesów były najbardziej skuteczne w poprawie jakości i wydajności?