Programowanie zespołowe Laboratorium 1 - wprowadzenie do zarządzania projektami mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 21 lutego 2017 1 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Kontakt z prowadzącym Pokój 122. Konsultacje w poniedziałki od 13:00 do 14:30. Adres email: krzysztof@szwarc.net.pl 2 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Ogólne ramy projektu Zespołowe zaprojektowanie i zaimplementowanie systemu zarządzania przedsiębiorstwem transportowym. 3 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Ogólne ramy projektu Zespołowe zaprojektowanie i zaimplementowanie systemu zarządzania przedsiębiorstwem transportowym. Diagram klas oraz ERD. 3 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Ogólne ramy projektu Zespołowe zaprojektowanie i zaimplementowanie systemu zarządzania przedsiębiorstwem transportowym. Diagram klas oraz ERD. Zastosowanie Scruma. 3 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Ogólne ramy projektu Zespołowe zaprojektowanie i zaimplementowanie systemu zarządzania przedsiębiorstwem transportowym. Diagram klas oraz ERD. Zastosowanie Scruma. Zastosowanie OOP. 3 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Ogólne ramy projektu Zespołowe zaprojektowanie i zaimplementowanie systemu zarządzania przedsiębiorstwem transportowym. Diagram klas oraz ERD. Zastosowanie Scruma. Zastosowanie OOP. Pokrycie kodu testami jednostkowymi. 3 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Ogólne ramy projektu Zespołowe zaprojektowanie i zaimplementowanie systemu zarządzania przedsiębiorstwem transportowym. Diagram klas oraz ERD. Zastosowanie Scruma. Zastosowanie OOP. Pokrycie kodu testami jednostkowymi. Wykorzystanie serwisu GitHub. 3 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Plan zajęć Data Temat 21.02.2017 Wprowadzenie do zarządzania projektami i dobór grup 28.02.2017 Dobre praktyki tworzenia oprogramowania 07.03.2017 Podstawy testów jednostkowych 14.03.2017 Wybrane modele tworzenia oprogramowania i manifest Agile 21.03.2017 Scrum cz. 1 28.03.2017 Scrum cz. 2 i przeglad wybranych metodyk zwinnych 04.04.2017 Przypomnienie ERD i diagramu klas 11.04.2017 Systemy kontroli wersji 18.04.2017 Wolne 25.04.2017 Sprint 4 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Plan zajęć cd. Data Temat 02.05.2017 Wolne 09.05.2017 Sprint 16.05.2017 Sprint 23.05.2017 Sprint 30.05.2017 Sprint 06.06.2017 Prezentacje + wpisy 5 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Podstawowe pojęcia Projekt Projekt to złożone działanie o charakterze jednorazowym, które podejmuje się w celu osiągnięcia założonych celów (poprzez realizację szeregu działań wykonywanych w określonej kolejności). Zarządzanie projektem Zarządzanie projektem polega na podejmowaniu decyzji dotyczących użycia odpowiednich metod, technik i narzędzi tak, aby osiągnąć cel przedsięwzięcia w założonym terminie oraz w ramach określonego budżetu. 6 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Cechy projektu Złożone przedsięwzięcie. 7 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Cechy projektu Złożone przedsięwzięcie. Ma swój początek i koniec. 7 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Cechy projektu Złożone przedsięwzięcie. Ma swój początek i koniec. Powinien doprowadzić do pozytywnego efektu. 7 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Cechy projektu Złożone przedsięwzięcie. Ma swój początek i koniec. Powinien doprowadzić do pozytywnego efektu. Ma tworzyć nową jakość. 7 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Cechy projektu Złożone przedsięwzięcie. Ma swój początek i koniec. Powinien doprowadzić do pozytywnego efektu. Ma tworzyć nową jakość. Jest zaplanowany i kontrolowany. 7 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Cechy projektu Złożone przedsięwzięcie. Ma swój początek i koniec. Powinien doprowadzić do pozytywnego efektu. Ma tworzyć nową jakość. Jest zaplanowany i kontrolowany. Jest działaniem wyjątkowym i niepowtarzalnym. 7 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Trójkąt ograniczeń projektu 8 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Cele w projekcie SMART (ZMORA) Specyficzny sprecyzowany. Mierzalny możliwy do zmierzenia. Ambitny osiągnięcie go wymaga wysiłku. Realny osiągnięcie go musi być realne Terminowy jest ograniczony ramami czasowymi. 9 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Zadanie 1 Sformułuj cel główny dla projektu realizacji CRMa dla przedsiębiorstwa XYZ. 10 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Ile projektów w branży kończy się sukcesem (2012)? 11 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Ile projektów w branży kończy się sukcesem (2015)? http://vitalitychicago.com/blog/agile-projects-are-more-successfultraditional-projects mgr inż. Krzysztof Szwarc Programowanie 12 / 28 zespołowe
Przyczyny porażek projektów (2009) Lp. Czynnik % odpowiedzi 1 Niekompletne wymagania 13,1 2 Brak zaangażowania użytkowników 12,4 3 Brak zasobów 10,6 4 Nierealistyczne oczekiwania 9,9 5 Brak wsparcia kierownictwa 9,3 6 Zmieniające się wymagania 8,7 7 Brak planowania 8,1 8 Projekt nie jest już potrzebny 7,5 9 Brak zarządzania IT 6,2 10 Analfabetyzm technologiczny 4,3 11 Inne 9,9 http://it.pwn.pl/artykuly/zarzadzanie-projektami/bez-celu-anirusz 13 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Problem z komunikacją https://socjomania.pl 14 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Zasada 1-10-100 http://kjarocka.pl 15 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Istotność przepływu informacji http://szwarc.net.pl/piwna 16 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Zadania 1 Zbudujcie zespół projektowy. 2 Wybierzcie lidera. 17 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Test osobowości https://www.16personalities.com/pl 18 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Lider zespołu Lider Według badań przeprowadzonych przez Ashridge Business School najlepszymi typami psychologicznymi do pełnienia funkcji lidera są: ESTJ, ENTJ, ISTJ oraz ENTP. 19 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Zadania 1 Dokonaj analizy bliskości emocjonalnej każdego członka zespołu z pozostałymi osobami obliczając średnią arytmetyczną wartości wszystkich relacji zachodzących między nim, a resztą drużyny. 2 Dokonaj analizy bliskości emocjonalnej zespołu obliczając średnią arytmetyczną wartości wszystkich relacji zachodzących między jego członkami. 20 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Test osobowości Grabowska, Bliskość emocjonalna w tworzeniu zespołów 21 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Fazy tworzenia zespołu wg Tuckmana http://blogtrenerski.pl/ 22 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Faza pierwsza - formowanie zespołu Członkowie zespołu nie znają się między sobą. Panuje atmosfera niepewności. Osoba kierująca powinna określić strukturę, role oraz wzajemne zależności oraz normy obowiązujące w zespole. Grupa wymaga jasnego określenia celów, jak i klarownego podawania zadań. Duże zapotrzebowanie na informacje zwrotne od lidera na temat sposobu wykonywania zadań (zespół powinien być dokładnie kontrolowany). 23 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Faza druga - konflikt (docieranie) Członkowie zespołu otwierają się na siebie, co prowadzi do konfrontacji przeciwstawnych poglądów. Kształtują się nieformalne zasady pracy indywidualnej i grupowej. Widoczne są przejawy wrogości i walka o pozycję. Członkowie zespołu nie wymagają dużej kontroli nad realizowanymi zadaniami - lider może ograniczyć się do konsultacji i powierzyć im odpowiedzialność za wykonanie pracy. Lider powinien rozwiązywać konflikty i inicjowanć jak najwięcej bezpośrednich kontaktów między członkami grupy. 24 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Faza trzecia - normowanie Powstają wspólne zasady. Zostają rozwiązane kluczowe konflikty. Członkowie zespołu zaczynają działać jako całość. W zespole pojawia się otwartość i bezpośrednie rozmowy o tym, co się dzieje w projekcie. Lider powinien wspierać myślenie o zespole jako całości (promowanie dobra zespołu). Lider ma pomóc w ustaleniu norm oraz wspierać w efektywnej komunikacji między członkami zespołu. 25 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Faza czwarta - działanie Celem staje się efektywna praca zespołu jako całości. Proces, narzędzia, role oraz podział odpowiedzialności stają się mniej istotne. Występuje sprawny przepływ informacji pomiędzy współpracownikami. Lider powinien wspierać samoorganizację zespołu. Lider musi eliminować dysfunkcje zespołu i wspierać wymianę wiedzy w zespole. 26 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Fazy tworzenia zespołu, a efektywność https://static1.squarespace.com 27 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Dziękuję za uwagę 28 / 28 mgr inż. Krzysztof Szwarc Programowanie zespołowe