Specyfikacja na przykładach. Poznaj zwinne metody pracy i dostarczaj właściwe oprogramowanie — Gojko Adzic

przez | 8 sierpnia, 2021

 

Przeczytałem ostatnio kolejną książkę. W tym wpisie dzielę się informacjami, które w niej znalazłem oraz które wdrożyłem w swoim życiu. Staram się z każdej książki wdrażać minimum jedną rzecz.

Wdrożyłem:

  1. Pytanie tak głęboko o cel czegoś, aż dojdziemy do prawdziwego uzasadnienia biznesowego.
  2. Proszenie o przykłady na poziomie specyfikacji.
Bestseller dnia w księgarni Złote Myśli

Książkę możesz kupić tutaj:

Notatki:

Specyfikacja na przykładach to idea stworzenia żyjącej dokumentacji. W specyfikacji umieszczone są prawdziwe (biznesowe) przykłady osiągania danego celu biznesowego. Te przykłady umieszczone są w automatycznych testach akceptacyjnych. Dzięki temu są one cały czas aktualne (a przez to również aktualna jest dokumentacja). Implementowanie kolejnych funkcjonalności zwiększa przyrostowo dokumentację dotyczącą systemu. Powstaje żyjąca dokumentacja, bardzo ważny artefakt procesu wytwórczego.

Definiowanie zakresu zadań i historyjek użytkownika, należy robić na podstawie celów biznesowych.

Na początku drogi usprawniania procesu wytwórczego zidentyfikuj największą przeszkodę, która uniemożliwia Ci dostarczanie oprogramowania wysokiej jakości. Następnie usuń ją. W swojej drodze do wdrożenia specyfikacji przez przykłady zacznij od TDD. Specyfikacja przez przykłady to TDD na poziomie całej funkcjonalności i systemu.

Przede wszystkim trzeba poprawić komunikację i współpracę między testerami, programistami, analitykami biznesowymi i biznesem. Automatyzacja to tylko technikalia i narzędzie wspomagające, a nie cel. Warto jest robić spotkania: analitycy, programiści i testerzy, na których szybko przegląda się zadania w celu odkrycia czy każde zadanie jest sensownie podzielone i czy jest odpowiednio małe (np. można je zrobić w maksymalnie 4 dni).

Specyfikacja przez przykłady bardzo dobrze sprawdza się w systemach pracy opartych na przepływach oraz w multidyscyplinarnych zespołach, które same mogą dostarczyć całe funkcjonalności.

Kluczowe znaczenie ma zrozumienie: dlaczego coś jest istotne i jaki jest tego cel biznesowy. Zacznijmy zadawać tak często pytanie, dlaczego, aż uzyskamy odpowiedź związaną z pieniędzmi.

Analitycy powinni dostarczyć przykłady wysokiego poziomu. Dobrze jest też robić małe spotkania jeden deweloper, jeden tester i jeden analityk biznesowy. Niech przykłady tworzą razem deweloper, tester i analityk. Przed spotkaniem, niech analityk przygotuje wstępne przykłady. Przykłady powinny być konkretne, zawierać konkretna liczby i wartości oraz warunki brzegowe, powinny wykorzystywać prawdziwe dane, być skoncentrowane na funkcjonalności biznesowej. Specyfikację zacznij od bardzo prostych przykładów i usuń z nich szczegóły, a dopiero dalej rozbudowuj specyfikację poprzez bardziej zaawansowane przykłady. W tworzeniu specyfikacji używaj list kontrolnych. Unikaj opisów: jak system powinien działać, lecz skup się na tym, co system powinien robić.

Niezadowalająca jakość oprogramowania jest problemem wszystkich osób pracujących nad nim.

Proces budowy tworzenia oprogramowania na podstawie specyfikacji na przykładach:

  1. Zdefiniuj cel – pożądany efekt -> Definiowanie zakresu na podstawie celów ->
  2. Zakres -> Opisywanie z wykorzystaniem przykładów ilustrujących ->
  3. Kluczowe przykłady -> Udoskonalenie specyfikacji ->
  4. Specyfikacja z przykładami -> Automatyzacja walidacji bez zmiany specyfikacji
  5. Wykonywalne specyfikacja -> Częsta walidacja, Stworzenie systemu dokumentacji
  6. Żyjący dokument

Książkę możesz kupić tutaj:

Wszystkie posty związane z książkowymi wdrożeniami:

Źródła

Obraz główny

Materiały

Linki oznaczone (*) są linkami afiliacyjnymi. Jeżeli uważasz, że czerpiesz korzyści z mojej pracy, to kup coś korzystając z powyższego linku. Sprawi to, że dostanę prowizję z afiliacji.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *