Jak dobrze zdefiniowany musi być projekt, wystarczy, aby zacząć i wiedzieć, dokąd zmierzasz w ciągu najbliższych dwóch tygodni.
Jako Scrum Master chciałbym po prostu powiedzieć, że musisz zdefiniować cechy brutto swojego produktu w arkuszu Excela lub gdziekolwiek indziej, tylko po to, aby śledzić twoje funkcje. Stworzenie ich Historie użytkowników pomagają dużo zastanowić się, jakiej funkcji potrzebujesz później. Następnie uszereguj je według priorytetów: Najważniejsza lub najważniejsza cecha na górze, a najmniej na dole.
Po tym, jak wymienisz niektóre z najważniejszych funkcji, wybierz funkcje, które Twoim zdaniem możesz opracować, aby przejść do stanu Gotowe po upływie dwóch tygodni lub okresu miesiąca, jeśli wolisz. Następnie eksploduj wybraną funkcję, aby zacząć kodowanie za kilka.
Podczas kodowania z pewnością pomyślisz o innych elementach, które należy opracować, aby doprowadzić wybrane funkcje do stanu Gotowe. Gotowe oznacza, że nie masz już nic do roboty, czyli testowanie, kodowanie, składanie, dokumentacja jest gotowa!
W dowolnym momencie lista wybranych funkcji może się rozwinąć, o ile osiągniesz cel, to znaczy będziesz w stanie opracować wszystko, co powiedziałeś, że byłeś w danym okresie.
Krótko mówiąc, nic nie musi być idealne. Wrzuć kilka pomysłów, podziel się ze swoimi towarzyszami i sprawdź, czy to, co jest napisane, ma sens, aby spełnić wymagane wymagania dotyczące produktu. Jeśli tak, to jesteś w! Aby to wyjaśnić, wybiorę prosty produkt do zarządzania klientami. Co jest potrzebne?
As a user, I may manage the Customers;
As a system, I persist changes to the underlying data store;
As a user, I need to enter my credentials to be able to manage customers;
As a system, I have to authenticate the user against the Active Directory;
Twój pierwszy szkic może być tak prosty! Widzimy zatem, że bezpieczeństwo jest ważną częścią naszego systemu, czy jest wystarczająco ważne, aby nadać najwyższy priorytet (T / N)? Będzie to zależeć od wymagań, które musisz spełnić. Powiedzmy, że tutaj najważniejsza jest obsługa klienta. Tak więc w kolejnym Sprint musimy móc zarządzać klientami w prosty, ale akceptowalny sposób. Co to jest zarządzanie klientami?
As a user, I may manage Customers;
-> As a user, I add a customer to the system;
-> As a user, I change a customer details;
-> As a user, I delete a customer;
-> As a system, I flag a deleted customer as being inactive instead of deleting it;
-> As a user, I need to list the customers;
-> As a user, I search the customers data bank for a given customer;
-> ...
To już ilustruje wystarczającą liczbę funkcji, aby móc rozpocząć tworzenie aplikacji. Jeśli twoi programiści potrzebują dalszych instrukcji, być może jeden programista, który jest zaznajomiony z diagramami klas, może zaprojektować klasę klienta oraz jej właściwości i metody! Ale o ile mi chodzi, z tymi kilkoma, które napisałem, miałbym dość, aby zacząć. Niektóre funkcje mogą być dodawane lub zmieniane po drodze. Ważne jest, aby skupić się na tym, co powiedziałeś, że będzie Gotowe. W naszym przykładzie jest to kwestia zarządzania klientami. Od tej chwili nie musimy się przejmować uwierzytelnieniem użytkownika. Nadejdzie później w następnym Sprint.
Mam nadzieję, że to pomoże! =)