7 competences workshop - 22.06 at spartez

Post on 02-Jul-2015

169 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Michal Kujalowicz ( QA Team Lead) - his presentation from workshops on 22.06 at Spartez.

TRANSCRIPT

7 kompetencji

● Partner!● Involved in development of core Atlassian

products!● Commercial, Open-Source add-ons,

customizations!● Developers, Product Managers, Designers,

QAs, Agile Team Leads!● Values

~ 50 000 Customers

OnDemand and Download

Tracker for teams building

awesome products

Now also supporting their customers

Developers, PM, UX Designer, QATeam of 15 people

Enterprise features Platform JIRA Importers Plugin

@

O mnie

Dlaczego?• Uniwersalne umiejętności/kompetencje

• Pozornie związane z pracą testera - krytyczne dla wszystkich

• Przydatne na uczelni, w pracy i życiu osobistym

• Intuicyjne dla niektórych

• Można się tego nauczyć

Reguły gry• Projekt, wybór zespołu, realizacja

• Każda osoba ma pewne umiejętności

• Niespodziewane zdarzenia (zaplanowane i losowe)

• Każde zdarzenie wpływa na czas trwania projektu

• Każde zdarzenie ma swoją specyfikę

• Waga zdarzenia * Najlepszy skill zespołu = ilość tygodni opóźnienia

Zaczynamy

Klient

Aplikacja • Czas na stworzenie: 6 miesięcy

• Zespół: 4 osoby

• Klient: Arabia Saudyjska

• Aplikacja: Nasz Intranet

• Jaka będzie tematyka: Kolejowa

Aplikacja • Tworzenie “Działów tematycznych”

• Tworzenie “Stron” w działach

• Tworzenie “Przestrzeni własnych”

• Zarządzanie dostępem w działach - strony i działy tajne

• Dzielenie się stronami z innymi

• Dodawanie załączników, obrazków

Szacunki

• Czas na stworzenie: 6 miesięcy = 24 tygodnie

• Programowanie i testowanie: 15 tygodni

• …?

Jaki zespół?

• Project manager

• Architekt Biznesowy - zbiera, opracowuje wymagania

• Programiści

• Testerzy

Umiejętność nr 1 CRITICAL & RISK THINKING• Na każdym etapie

• Praktycznie przy każdej decyzji

• Zadawanie pytań / poddawanie w wątpliwość

• Nie zakładamy niczego - błędne założenia są przyczyną porażek

• Nawet “najgłupsze” pytanie może być istotne

Umiejętność nr 1 CRITICAL & RISK THINKING• Zbierz “udziałowców”, ludzi z doświadczeniem

• Dowiedz się o innych projektach tego typu

• Wypisz wszystkie ryzyka i staraj się je ocenić

• Podejmij decyzje które są najważniejsze

• Zaplanuj akcje minimalizacyjne

Umiejętność nr 1 CRITICAL & RISK THINKING

Prawdopodobienstw

oSkutek Ważne? Mitygacja

Ryzyko 1 Duże Średni Tak

- Akcja 1- Akcja 2- Akcja 3

Ryzyko 2 Małe Duży Tak - Akcja 1

Ryzyko 3 Średnie Mały Nie -

Umiejętność nr 1 CRITICAL & RISK THINKING

Matryca ryzyka

• https://www.youtube.com/watch?v=WHGoCybrX1k

Umiejętność nr 1 CRITICAL & RISK THINKING

Przydaje się zawsze?

• Zakup mieszkania

• Oszczędzanie i inwestowanie

• Podjęcie nowej pracy

Miesiąc 1

Co się działo• Zbieraliśmy wymagania na system

• Zapoznaliśmy się z technologią

• Kompletowanie zespołu

• Zespół zaczął się zgrywać

• Rozpoznanie technologii, narzędzi, procesu

• Postęp w implementacji - 0%

Oooops nr 1• Zbieraliśmy wymagania na system i nie moglismy

się dogadać

• Ktoś musiał polecieć do Klienta

• Kto?

• 2 tygodnie na wizytę

• 2 tygodnie (2 tyg * średnia zarz. wym. 2 wybranych osób) do przygotowania pierwszych wymagań

Wymagania gotowe

Umiejętność nr 2 PRZEGLĄDY

• Stosowane do wszystkiego: wymagania, kod, testy, UI, produkt, bezpieczeństwo

• Im szybciej tym lepiej - najlepiej jeszcze “na papierze”

• Nie bać się ich!

• Szukaj błędów ale też niejasności

• Każda niejasność to potencjalny błąd

Umiejętność nr 2 PRZEGLĄDY

• Każdy znaleziony błąd to uniknięty problem u klienta

• Każdy znaleziony błąd to nauka dla autora

• Proście o przeglądy “wszystkiego”

• Nie traktujcie jako “czepianie się”

• WAŻNE: komunikacja błędów!!! Empatia

Przegląd specyfikacji

Komunikacja błędów

• Oceniam “dziecko” czyjejś pracy

• Obiektywizm, skupienie na faktach

• “I am the one to tell you your child is ugly”

• Wczuj się w sytuację innej osoby

Komunikacja błędów

• Częsty błąd: “To jest bez sensu”

• Pokora, zrozumienie sytuacji, poprawa

Wreszcie kodowanie

• Wymagania na tyle gotowe że można zacząć implementację

• 1szy etap - 33% - 5 tygodni

Ooops nr 2

• Praca nie idzie tak szybko jakbyśmy się spodziewali

• Ludzie mają “jakieś” obowiązki w innych projektach

• Kultura organizacji nie pomaga

• “Ciężko się skupić, inni proszą o pomoc, dużo czasu schodzi nam na dyskusje, spotkania”

Umiejętność nr 3 TIME MANAGEMENT

• Wiele technik - każdy wypracowuje swoją własną

• Ważne - zacząć pracować nad nią wcześnie

• 99% pewności że się z tym spotkacie

• Złota zasada - myśleć o tym ile poświęcacie na poszczególne zadania

Umiejętność nr 3 TIME MANAGEMENT

• 3 sposoby wykorzystania czasu: myślenie, konwersacje, działanie

1. Zmierz lie czasu poświęcasz na poszczególne zadania w tygodniu.

2. Na początku tygodnia zbierz wszystkie zadania które masz do zrobienia na ten tydzień

3. Zaplanuj w swoim kalendarzu spotkania ze sobą na realizację tych zadań

4. Zaplanuj czas na “przeszkadzajki” (np. “office hours”)

5. Pierwsze 30 minut swojego dnia poświęć na zaplanowanie dnia

6. Wystaw “Nie przeszkadzać” jeżeli masz coś ważnego do zrobienia

7. Staraj się nie dawać się zdekoncentrować (telefony, e-mail, czat, social media)

8. Analizuj jak sprawdzają się Twoje tygodniowe i dzienne planowania i modyfikuj je

Umiejętność nr 3 TIME MANAGEMENT

Umiejętność nr 3 TIME MANAGEMENT

!

Pomodoro Technique:

• https://www.youtube.com/watch?v=PInj5HDbhO8

Kodowanie i testy faza 2

• Kolejne 33% - 5 tygodni

• Poradziliśmy sobie z time management

• Idzie znacznie szybciej

• Iteracje: Wymagania - Design - Programowanie - Testy - Demo

Ooops nr 3

• Aby zrobić to dobrze musimy zmienić technologię / przepisać część tego co już mamy

• Nie przewidzieliśmy dodatkowych wymagań związanych z wydajnością

• Obecna technologia nie spełni wymagań

• Znaleźliśmy już odpowiednie rozwiązanie

Umiejętność nr 4 TRUDNA KOMUNIKACJA

• Czy do zarządu czy też do klienta końcowego

• Popełniliśmy błąd

• Co chcemy osiągnąć?

• Panujemy and sytuacją

• Wyciągnęliśmy wnioski

• “Nie mam więcej pytań”

Umiejętność nr 4 TRUDNA KOMUNIKACJA

• Co może zawierać:

• Opis sytuacji - krótko, analitycznie, prawda

• Jaką decyzję podjęliśmy

• Jakie są konsekwencje i ryzyka

• Jak zapewnimy że to się nie powtórzy

• Następne kroki

• Następny czas sprawdzenia

Do zastosowania zawsze

Implementacja faza 3

• Przebrnęliśmy przez fazę 1, w fazie 2 zaczęły pojawiać się problemy z regresjami

• To co działało wcześniej przestawało działać :(

• Skupiliśmy się na implementacji nowych funkcjonalności kosztem testów automatycznych

• Co teraz?

Ooops nr 4

• Co teraz?

• Inwestujemy czas w nadrobienie - 2 tygodnie

• Kontynuujemy pracę jak dotąd - będziemy testować wszystko na koniec

Umiejętność nr 5 CIĄGŁA POPRAWA

• Nawet jeżeli na początku idzie nam rewelacyjnie musimy myśleć o tym czy nie udałoby się robić lepiej

• Ponownie zarządzanie ryzykiem

• Zatrzymajmy się na chwile

• Obserwujmy symptomy

• Prewencja problemów a nie ich rozwiązywanie

Umiejętność nr 5 CIĄGŁA POPRAWA

• Agile, iteracje i retrospekcje!

• Continue doing

• Stop doing

• Start doing

• x Actions

• Brak poczucia potrzeby retrospekcji - konieczna retrospekcja

Testy automatyczne

• Unit tests

• Integration tests

• System tests (End-to-end tests)

Implementacja zakończona

Ooops nr 5

• Zespół nie czuje że system jest dobry

• Wydaje się nie do końca stabilny

• Nie mamy pewności

Umiejętność nr 6 TESTY EXPLORACYJNE

• Nie na końcu - w całym procesie tworzenia aplikacji!!!!!!

• Testy manualne

• Podejmowanie decyzji o następnym teście na podstawie rezultatu testów poprzednich

• Zależne od doświadczenia, umiejętności i wiedzy osoby testującej

• Nie tylko dla testerów

Finał!

• W jakim czasie udało się stworzyć Waszą aplikację?

• Jak chcecie ją zaprezentować klientowi?

• Jak klient będzie ją odbierał?

Następne kroki?

• Zbierz, skumuluj wszystkie doświadczenia dla przyszłych projektów

• Związane z: technologią, aplikacją, zdarzeniami i ryzykami które wystąpiły, ryzykami które nie wystąpiły (i dlaczego?), o współpracy z klientem

• Nie zakładaj że “ktoś” będzie o tym pamiętał

Czy czegoś nie brakuje?

Umiejętność nr 7 BTCYS

• Be the change you seek

• Nie narzekaj na coś - zmień to!

• Staraj się przekonać innych że to dobra zmiana

• Ciągła poprawa

Pytania

top related