Planowanie pracy małego zespołu nad witryną: podział ról i zadań, zależności, szacowanie czasu, przekazanie pracy, krótkie spotkania, kontrola jakości i usprawnienia. Lekcja 14.3 kursu INF.03.
Organizacja pracy zespołu to ustalenie celu, podziału zadań, kolejności, odpowiedzialności i sposobu sprawdzenia wspólnego rezultatu. W części pisemnej INF.03 trzeba rozpoznać poprawne delegowanie, harmonogram i cel krótkiego spotkania. Przy wspólnym projekcie witryny te zasady ograniczają oczekiwanie na cudzy plik, dublowanie pracy i oddawanie niesprawdzonych funkcji.
Cel i role przed podziałem plików
Cel zespołu opisuje rezultat potrzebny odbiorcy. W ćwiczeniu może brzmieć: „W piątek przekazujemy katalog produktów z formularzem filtrowania, działający na serwerze testowym”. Taki zapis wyznacza funkcje, środowisko i termin. „Robimy sklep” nie określa granic zadania.
Struktura zespołu to układ ról i relacji potrzebnych do wykonania celu. W małej grupie można wyznaczyć osobę koordynującą, odpowiedzialną za bazę i PHP, odpowiedzialną za widok oraz osobę sprawdzającą rezultat. Jedna osoba może pełnić więcej niż jedną rolę, jeśli obciążenie i kompetencje na to pozwalają. Rola oznacza odpowiedzialność, nie tytuł świadczący o większej wartości człowieka.
Koordynujący pomaga rozstrzygać zależności, pilnuje ustaleń i usuwa przeszkody organizacyjne. Nie musi samodzielnie pisać całego kodu. Członkowie zespołu odpowiadają za swoje zadania, przekazują informacje i pomagają zgodnie z uzgodnionymi zasadami. Współpraca nie polega na tym, że jedna osoba po cichu kończy pracę za wszystkich.
Przed startem sprawdź zasoby i bezpieczeństwo: przygotowanie stanowisk, dostęp do środowiska testowego, kopię danych, uprawnienia i ochronę informacji. Zaplanuj przerwy oraz porządek przewodów. Osoba koordynująca sprawdza wykonanie tych czynności także później, na przykład po przeniesieniu stanowiska lub zmianie sprzętu.
Podział zadania ujawnia zależności
Zadanie robocze powinno mieć określony wynik, odpowiedzialną osobę i kryterium ukończenia. „Baza danych” jest za szerokie. „Utwórz tabelę produktu według uzgodnionego schematu i przekaż plik odtwarzający bazę testową” daje rezultat, który można odebrać.
Zależność występuje wtedy, gdy jedna część wymaga wyniku innej. PHP wyświetlające produkty potrzebuje nazw tabel i kolumn. Widok potrzebuje wiedzieć, jakie pola ma pokazać. Uzgodnienie tych nazw na początku pozwala równolegle przygotować makietę i bazę. Bez niego dwie poprawnie napisane części mogą do siebie nie pasować.
Zadanie
Warunek rozpoczęcia
Kryterium ukończenia
Schemat produktu
lista potrzebnych danych
uzgodnione kolumny i typy
Baza testowa
gotowy schemat
import tworzy tabele i dane
Widok katalogu
uzgodnione pola
widoczne pola i układ
Odczyt przez PHP
baza testowa i dane połączenia
poprawnie wyświetlone rekordy
Test całości
połączony widok i odczyt
spełnione uzgodnione scenariusze
Podział według odpowiedzialności ułatwia wyjaśnianie błędów. Nie należy jednak tworzyć barier: osoba od widoku powinna wiedzieć, jak otrzyma dane, a osoba od bazy znać potrzebę użytkownika. Zależności wymagają rozmowy, nie samego przekazania folderu.
Harmonogram i dobór osób
Harmonogram to rozplanowanie zadań w czasie z uwzględnieniem kolejności i dostępnych zasobów. Oszacuj czas analizy, wykonania, połączenia części i testów. Dwa zadania po cztery godziny nie zawsze kończą się po czterech godzinach pracy dwóch osób. Jeśli drugie wymaga wyniku pierwszego, trzeba uwzględnić tę kolejność.
Przykładowo w poniedziałek zespół ustala schemat i widok, we wtorek przygotowuje równolegle bazę oraz układ, w środę łączy PHP, w czwartek testuje, a w piątek poprawia i przekazuje wynik. Jest to plan ćwiczenia, nie standard każdego projektu. Zmiana wymagań albo dostępności osoby wymaga aktualizacji harmonogramu.
Dobór wykonawcy polega na porównaniu wymagań zadania z kompetencjami i dostępnością. Osobie znającej SQL można przydzielić bazę, a osobie znającej CSS widok. Nowe umiejętności rozwija się przez mniejsze zadanie, pracę w parze i przegląd. Powierzenie krytycznego elementu osobie bez przygotowania i bez wsparcia zwiększa ryzyko opóźnienia.
Szacunek czasu powinien pochodzić również od wykonawcy. Koordynujący pyta, co jest niejasne, jakie są zależności i kiedy będzie pierwszy sprawdzalny wynik. W harmonogramie pozostawia miejsce na testy i poprawki. Zapełnienie całego terminu samym pisaniem kodu nie oznacza, że projekt jest dobrze zaplanowany.
Delegowanie to pełne przekazanie zadania
Delegowanie oznacza powierzenie zadania wraz z potrzebnymi informacjami i zakresem odpowiedzialności. Komunikat powinien wskazywać, co wykonać, po co, w jakim terminie, według jakich warunków i komu pokazać rezultat. Trzeba też zapewnić zasoby i ustalić, kiedy zgłaszać blokadę.
Przykład: „Przygotuj do środy odczyt produktów z bazy testowej. Wyświetl nazwę i cenę zgodnie z uzgodnionym widokiem. Sprawdź pustą tabelę oraz brak połączenia. Wynik przekaż do przeglądu w ustalonym repozytorium. Jeśli brakuje danych, zgłoś to dziś”. Wykonawca może potwierdzić zakres własnymi słowami, zanim zacznie kodować.
Zasady wzajemnej pomocy określają, gdzie pytać, kto może pomóc i jak nie blokować wszystkich jednocześnie. Przykładowo po opisaniu problemu w zadaniu osoba od bazy sprawdza zapytanie, a osoba od widoku przygotowuje niezależną część. Pomoc nie musi oznaczać odebrania całej odpowiedzialności pierwotnemu wykonawcy.
Dyspozycja ma być rzeczowa i wykonalna. „Napraw to szybko” nie wskazuje oczekiwanego zachowania. „Po wysłaniu pustego formularza pokaż komunikat i nie zapisuj rekordu; potem wykonaj oba uzgodnione scenariusze” daje warunek, według którego można ocenić poprawkę.
Daily ujawnia postęp i przeszkody
Daily (codzienne krótkie spotkanie) służy zespołowi do oceny postępu i uzgodnienia najbliższej pracy. W Scrumie, czyli ramach organizacji pracy nad złożonym produktem, Daily Scrum jest zdarzeniem piętnastominutowym. Nie każdy mały zespół musi stosować Scrum, aby krótko synchronizować zadania.
Podczas spotkania istotne są stan realizacji, plan najbliższych działań i blokady. „Baza jest gotowa do importu, dziś łączę ją z PHP, potrzebuję potwierdzenia nazwy pola ceny” przekazuje więcej niż „wczoraj pracowałem nad bazą”. Spotkanie nie służy codziennemu wybieraniu lidera ani szczegółowemu rozwiązywaniu każdego błędu.
Monitorowanie obejmuje także tablicę zadań lub prosty rejestr: do zrobienia, w pracy, do sprawdzenia, gotowe. Status „gotowe” powinien oznaczać spełnienie kryterium, nie zakończenie pisania. Jeśli test nie przeszedł, zadanie nadal wymaga pracy. Wykryte opóźnienie wymaga decyzji o zakresie, pomocy albo kolejności, a nie wyłącznie zmiany daty w tabeli.
Dokumentacja realizacji zapisuje ustalenia, sposób uruchomienia, wykonane kontrole, znane ograniczenia i rezultat odbioru zgodnie ze standardem przyjętym w zespole. Ułatwia przejęcie zadania przez inną osobę. Nie zapisuje się w niej jawnych haseł ani sekretów.
Odbiór sprawdza warunki, a usprawnienie zmienia proces
Odbiór to sprawdzenie rezultatu względem uzgodnionych wymagań. Koordynujący ocenia pracę zespołu i poszczególnych wykonawców na podstawie dowodów: uruchomienia, testów i kompletności plików. Sympatia do autora albo liczba przepracowanych godzin nie potwierdzają działania funkcji.
Dla katalogu sprawdź między innymi poprawne dane, pusty wynik, formularz, wymagany wygląd i instrukcję uruchomienia. Uwagi powinny wskazywać fakt i poprawkę: „Po wybraniu pustej kategorii znika nagłówek. Zachowaj układ i pokaż komunikat o braku produktów”. Po poprawce ponownie sprawdź warunek, którego uwaga dotyczyła.
Usprawnienie techniczne może polegać na wspólnym skrypcie przygotowania bazy albo automatycznej kontroli składni. Usprawnienie organizacyjne może oznaczać wcześniejsze uzgadnianie nazw pól i przekazywanie małych części do przeglądu. Najpierw ustal przyczynę problemu, potem wybierz zmianę i sprawdź, czy ograniczyła czekanie lub błędy.
Jeżeli dwa dni utracono przez różne nazwy kolumn, zakup szybszego komputera nie usuwa przyczyny. Jeśli problemem są długie, ręczne czynności, sama dodatkowa narada ich nie przyspieszy. Rozwiązanie musi odpowiadać rozpoznanemu ograniczeniu i poprawiać także warunki pracy ludzi.
Na egzaminie
W pytaniu o delegowanie szukaj zgodności kompetencji, zakresu, terminu i odpowiedzialności. W pytaniu o krótkie spotkanie chodzi o postęp oraz plan pracy. W pytaniu o odbiór oceniaj zgodność z warunkami technicznymi. Sama deklaracja wykonawcy nie zastępuje kontroli.
Egzamin praktyczny wykonujesz samodzielnie według jego zasad. Metody zespołowe ćwiczy się przy projektach szkolnych; podczas indywidualnego egzaminu korzystasz z umiejętności planowania, dokumentowania i sprawdzania własnych rezultatów.
Ściąga
Element
Co trzeba ustalić
Cel
rezultat, zakres i termin
Rola
odpowiedzialność i współpraca
Zadanie
wynik, wykonawca, zależność, kryterium
Harmonogram
kolejność, czas, dostępność, testy
Delegowanie
zakres, zasoby, termin i sposób przekazania
Daily
postęp, plan i blokady
Odbiór
dowód spełnienia wymagań
Usprawnienie
przyczyna problemu i sprawdzony efekt zmiany
Pobierz ściągę PDF