forked from AITech/aitech-ppb-pbr
740 lines
25 KiB
Plaintext
740 lines
25 KiB
Plaintext
|
{
|
|||
|
"cells": [
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n",
|
|||
|
"<div class=\"alert alert-block alert-info\">\n",
|
|||
|
"<h1> Przygotowanie do projektu badawczo-rozwojowego</h1>\n",
|
|||
|
"<h2> 13. <i>Planowanie prac badawczo-rozwojowych</i>[wykład]</h2> \n",
|
|||
|
"<h3>Krzysztof Jassem (2021)</h3>\n",
|
|||
|
"</div>\n",
|
|||
|
"\n",
|
|||
|
"![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<div class=\"alert alert-block alert-success\">\n",
|
|||
|
" \n",
|
|||
|
"<h3>Harmonogram projektu</h3> \n",
|
|||
|
" \n",
|
|||
|
"Harmonogram projektu to plan uzyskania celów projektu uwzględniający:\n",
|
|||
|
"<ul>\n",
|
|||
|
" <li> podział pracy na etapy i zadania,</li>\n",
|
|||
|
" <li> przydział zasobów do zadań,</li>\n",
|
|||
|
" <li> terminy wykonania zadań.</li>\n",
|
|||
|
"</ul>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"# 1. Zasady planowania harmonogramu"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"## 1.1. Bierz pod uwagę ograniczenia"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<div class=\"alert alert-block alert-success\">\n",
|
|||
|
"<h3>Ograniczenia</h3> \n",
|
|||
|
" \n",
|
|||
|
"Ograniczenia to czynniki, które wpływają na realizację harmonogramu.\n",
|
|||
|
"</div>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### Rodzaje ograniczeń:\n",
|
|||
|
"Wyróżniamy następujace typy ograniczeń:\n",
|
|||
|
" * Ograniczenia czasowe\n",
|
|||
|
" * Ograniczenia techniczne\n",
|
|||
|
" * Ograniczenia organizacyjne "
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### Ograniczenia czasowe\n",
|
|||
|
"**Ograniczenie czasowe** to ramy czasowe, w których musi się zmieścić projekt lub jego etap.\n",
|
|||
|
"\n",
|
|||
|
"* Rodzaje ograniczeń czasowych:\n",
|
|||
|
" * Nie wcześniej niż,\n",
|
|||
|
" * Nie później niż,\n",
|
|||
|
" * W konkretnym dniu.\n",
|
|||
|
"\n",
|
|||
|
"* Przykłady ograniczeń czasowych:\n",
|
|||
|
" * wykonanie pewnego zadania jest uwarunkowane ukończeniem innego zadania,\n",
|
|||
|
" * projekt ma być zakończony w określonym terminie.\n",
|
|||
|
" \n",
|
|||
|
"* Wskazówki: jak radzić sobie z ograniczaniami czasowymi?\n",
|
|||
|
" * Ustawiać zależności między zadaniami\n",
|
|||
|
" * Ustawiać hamronogram \"od końca\"."
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### Ograniczenia techniczne\n",
|
|||
|
"**Ograniczenie techniczne** to ograniczenia wynikające z przyczyn zewnętrznych, niezależnych od zespołu projektowego.\n",
|
|||
|
"\n",
|
|||
|
"* Przykłady ograniczeń technicznych:\n",
|
|||
|
" * termin dostawy sprzętu,\n",
|
|||
|
" * załamanie pogody,\n",
|
|||
|
" * pandemia,\n",
|
|||
|
" * współpraca z podmiotami zewnętrznymi.\n",
|
|||
|
" \n",
|
|||
|
"* Wskazówki: jak radzić sobie z ograniczeniami technicznymi?\n",
|
|||
|
"\n",
|
|||
|
" * Ustawiać zależność ZR (Zakończenie Rozpoczęcie) dla zadań zależnych od innych przedsiębiorstw,\n",
|
|||
|
" * Dodawać do zadań odstępy czasowe,\n",
|
|||
|
" * Dodawać rezerwę kierowniczą."
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### Ograniczenia organizacyjne\n",
|
|||
|
"**Ograniczenia organizacyjne** to ograniczenia wynikające z zależności pomiędzy kilkoma projektami realizowanymi:\n",
|
|||
|
" * w jednym zespole,\n",
|
|||
|
" * przez daną osobę, \n",
|
|||
|
" * z wykorzystaniem tych samych zasobów.\n",
|
|||
|
"\n",
|
|||
|
" * Wskazówki: jak radzić sobie z ograniczeniami organizacyjnymi?\n",
|
|||
|
" * Odpowiednio zarządzać zasobami: technicznymi i ludzkimi,\n",
|
|||
|
" * Współdzielić zasoby między projektami,\n",
|
|||
|
" * Ustawiać indywidualne czasy pracy."
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"## 1.2. Zarządzaj zapasem czasu"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<div class=\"alert alert-block alert-success\">\n",
|
|||
|
"<h3>Zapas czasu</h3> \n",
|
|||
|
" \n",
|
|||
|
"<b> Zapas czasu </b> to czas, o który może opóźnić się realizacja zadania, nie wpływając na termin ukończenia projektu.\n",
|
|||
|
"</div>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<div class=\"alert alert-block alert-success\">\n",
|
|||
|
" \n",
|
|||
|
"<h3>Ścieżka krytyczna</h3> \n",
|
|||
|
" \n",
|
|||
|
"<b> Ścieżka krytyczna </b> to sekwencja zadań od rozpoczęcia do zakończenia projektu, której czas przejścia jest najdłuższy.\n",
|
|||
|
"\n",
|
|||
|
"Zadania na ścieżce krytycznej mają zerowy zapas czasu.\n",
|
|||
|
"\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/ścieżka krytyczna.png\" alt=\"Przykład ścieżki krytycznej\" width=500px>\n",
|
|||
|
"<figcaption> Przykład ścieżki krytycznej </figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"</div>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"**Zarządzanie zapasem czasu** może polegać na:\n",
|
|||
|
"\n",
|
|||
|
" * dodawaniu zapasu czasu do zadań obarczonych ryzykiem,\n",
|
|||
|
" * dodawaniu zapasu czasu z powodów ograniczeń technicznych lub organizacyjnych, \n",
|
|||
|
" * zmniejszaniu zapasu czasu (dla zadań leżących poza ścieżką krytyczną),\n",
|
|||
|
" * analizie (i ew. modyfikacji) zadań leżących na ścieżce krytycznej."
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"## 1.3. Zarządzaj rezerwą kierowniczą\n",
|
|||
|
"**Rezerwa kierownicza** to fikcyjne zadanie dodane na końcu siatki zadań. Czas na jego realizację to około 10-15% czasu całego projektu.\n",
|
|||
|
" * Rezerwę kierowniczą dodajemy po stworzeniu całości harmonogramu.\n",
|
|||
|
" * Tworząc rezerwę pomocniczą, pamiętaj o prawie Parkinsona."
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<div class=\"alert alert-block alert-success\">\n",
|
|||
|
"<h3>Prawo Parkinsona</h3> \n",
|
|||
|
" \n",
|
|||
|
"Praca będzie się rozrastać, aby wypełnić cały czas na nią przewidziany.\n",
|
|||
|
"\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/prawo Parkinsona.png\" alt=\"Prawo Parkinsona\" width=500px>\n",
|
|||
|
"<figcaption> Prawo Parkinsona, źródło: https://www.timeflies.us/blog/what-is-parkinson-s-law-and-how-it-can-make-you-more-productive</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"</div>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"# 2. Struktura podziału pracy"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<div class=\"alert alert-block alert-success\">\n",
|
|||
|
"<h3>Struktura Podziału Pracy</h3> \n",
|
|||
|
" \n",
|
|||
|
"Struktura Podziału Pracy to hierarchiczna reprezentacja podziału pracy w projekcie.\n",
|
|||
|
"\n",
|
|||
|
"</div>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
" * Wykonanie prac w projekcie podzielone jest na **etapy**. \n",
|
|||
|
" * Etap jest częścią projektu, która musi być dokończona przed zaczęciem następnej. Etap składa się z **zadań**.\n",
|
|||
|
" * Zadania mogą być wykonywane równolegle.\n",
|
|||
|
" * Zadania mogą zostać podzielone na **podzadania**. \n",
|
|||
|
" \n",
|
|||
|
" * Elementy Struktury Podziału Pracy a efekty pracy: \n",
|
|||
|
" * Etap – efekt jest widoczny dla klienta,\n",
|
|||
|
" * Zadanie – efekt jest widoczny dla kierownika,\n",
|
|||
|
" * Podzadanie – efekt jest widoczny dla programisty.\n",
|
|||
|
" \n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/SPP.jfif\" alt=\"Struktura Podziału Pracy\" width=600px>\n",
|
|||
|
"<figcaption> Struktura Podziału Pracy, źródło: http://pm2pm.pl/slownik-project-managera-wbs/</figcaption>\n",
|
|||
|
"</figure>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<div class=\"alert alert-info alert-success\">\n",
|
|||
|
"<h3>Zasada 8 - 80</h3>\n",
|
|||
|
"Wykonanie najmniejszej jednostki harmonogramu powinno zajmować między 8 a 80 godzin.\n",
|
|||
|
"</div>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"# 3. Tworzenie harmonogramu w programie MS-Project"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"## 3.1. Ustawienie daty początku projektu\n",
|
|||
|
"<br> </br> \n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/ustawienie daty.png\" alt=\"Ustawienie daty\" width=300px>\n",
|
|||
|
"<figcaption> Ustawienie daty początku projektu</figcaption>\n",
|
|||
|
"</figure>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 3.2. Stworzenie Struktury Podziału Pracy\n",
|
|||
|
"\n",
|
|||
|
"W nomenklaturze MS Project wyróżniamy:\t\n",
|
|||
|
" * zadania sumaryczne (odpowiednik Etapu),\n",
|
|||
|
" * zadania,\n",
|
|||
|
" * podzadania. \n",
|
|||
|
"\n",
|
|||
|
"#### Wskazówka \n",
|
|||
|
"Ustawiaj hierarchię zadań poprzez tworzenie wcięć w zadaniach podrzędnych.\n",
|
|||
|
"\n",
|
|||
|
"<br> </br> \n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/stworzenie SPP.png\" alt=\"Stworzenie SPP\" width=300px>\n",
|
|||
|
"<figcaption> Stworzenie SPP</figcaption>\n",
|
|||
|
"</figure>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 3.3. Ustawienie trybów zadań\n",
|
|||
|
"\n",
|
|||
|
"* Tryb ręczny (oznaczony przez pineskę) stosujemy dla zadania, gdy chcemy mieć pełną kontrolę nad jego czasem trwania.\n",
|
|||
|
"* Tryb automatyczny wykonuje ważną jednak pracę wspomagającą - przesuwa na osi czasu zadania, które są od siebie zależne.\n",
|
|||
|
"\n",
|
|||
|
"Stosowanie trybu automatycznego oznacza, że brana jest pod uwagę wskazówka: \"Bierz pod uwagę ograniczenia czasowe\". \n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/tryby zadań.png\" alt=\"Ustawianie trybów zadań\" width=500px>\n",
|
|||
|
"<figcaption> Ustawianie trybów zadań</figcaption>\n",
|
|||
|
"</figure>\n"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 3.4. Określenie punktów kontrolnych"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<div class=\"alert alert-block alert-success\">\n",
|
|||
|
"<h3>Punkt kontrolny</h3> \n",
|
|||
|
" \n",
|
|||
|
"<b>Punkt kontrolny</b> (ang. milestone) – punkt na osi czasu, który podsumowuje określony zestaw zadań, bądź daną fazę projektu.\n",
|
|||
|
"<ul>\n",
|
|||
|
" <li> Może to być: podpisanie dokumentu, otrzymanie wyniku, ważne spotkanie, zatwierdzenie pracy itp.\n",
|
|||
|
" <li> Zazwyczaj osiągnięcie punktu kontrolnego wiąże się z dalszymi decyzjami odnośnie rozwoju projektu.\n",
|
|||
|
" <li> Punkt kontrolny ma zerowy czas trwania.\n",
|
|||
|
" <li> Pojęcie punktu kontrolnego zastąpiło pojęcie kamienia milowego.\n",
|
|||
|
"</ul>\n",
|
|||
|
"</div>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/ustawienie punktu kontrolnego.png\" alt=\"Ustawianie punktu kontrolnego\" width=900px>\n",
|
|||
|
"<figcaption> Ustawianie punktu kontrolnego</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/punkt kontrolny.png\" alt=\"Punkt kontrolny w MS-Project\" width=500px>\n",
|
|||
|
"<figcaption> Oznaczenie punktu kontrolnego w MS-Project</figcaption>\n",
|
|||
|
"</figure>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 3.5. Określenie tygodniowego kalendarza czasu pracy dla zespołu\n",
|
|||
|
"\n",
|
|||
|
"Tygodniowy plan pracy dla zespołu obowiązuje tych członków zespołu, dla których nie określono planu indywidualnego. \n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/czas pracy 1.png\" alt=\"Ustawianie czasu pracy dla zespołu\" width=500px>\n",
|
|||
|
"<figcaption> Ustawianie czasu pracy dla zespołu - przycisk</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/czas pracy 2.png\" alt=\"Ustawianie czasu pracy dla zespołu\" width=500px>\n",
|
|||
|
"<figcaption> Ustawianie czasu pracy dla zespołu - kalendarz</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
" "
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 3.6. Modyfikacja diagramu Gantta"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<div class=\"alert alert-block alert-success\">\n",
|
|||
|
"<h3>Diagram Gantta</h3> \n",
|
|||
|
" \n",
|
|||
|
"<b> Diagram Gantta </b> to graficzny sposób reprezentacji harmonogramu, w którym uwzględnia się podział projektu na \n",
|
|||
|
"poszczególne zadania, oraz rozplanowanie ich w czasie.\n",
|
|||
|
"\n",
|
|||
|
"<br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/diagram Gantta.png\" alt=\"diagram Gantta\" width=500px>\n",
|
|||
|
"<figcaption> Przykładowy diagram Gantta, źródło: https://kierownikprojektu.com/2020/06/11/16-zalet-wykresu-gantta/ </figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"\n",
|
|||
|
"<h4> Zalety wykresu Gantta </h4>\n",
|
|||
|
"<ul>\n",
|
|||
|
"<li> przedstawia następstwo zdarzeń, </li>\n",
|
|||
|
"<li> uwzględnia zadania wykonywane równolegle, </li>\n",
|
|||
|
"<li> dobrze sprawdza się dla niewielkich projektów. </li>\n",
|
|||
|
"</ul>\n",
|
|||
|
"\n",
|
|||
|
"<h4> Wady wykresu Gantta </h4>\n",
|
|||
|
"<ul>\n",
|
|||
|
"<li> nie zawiera szczegółowych opisów zadań, </li>\n",
|
|||
|
"<li> wymusza podanie konkretnych dat. </li>\n",
|
|||
|
"</ul>\n",
|
|||
|
"</div>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"#### Diagram Gantta w MS-Project\n",
|
|||
|
"\n",
|
|||
|
"Diagram Gantta tworzony jest częściowo manualne, a częściowo automatycznie.\n",
|
|||
|
"\n",
|
|||
|
" * Czas trwania zadania można wpisać ręcznie w kolumnie **czas trwania** (w godzinach, dniach).\n",
|
|||
|
" * W czasie trwania zadania uwzględniane są tylko dni robocze – zgodnie z kalendarzem.\n",
|
|||
|
" * Jeśli wpiszemy czasy rozpoczęcia i zakończenia, to czas trwania oblicza się sam. Analogicznie sam oblicza się koniec zadania o znanym rozpoczęciu i czasie trwania.\n",
|
|||
|
" * Dni wolne od pracy są zaznaczone kolorem szarym."
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 3.7. Ustawienie zależności między zadaniami"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<div class=\"alert alert-block alert-success\">\n",
|
|||
|
"<h3>Zależności między zadaniami</h3> \n",
|
|||
|
" \n",
|
|||
|
"Zadanie B jest <b>zależne</b> od A, gdy zmiana terminu wykonania A wpływa na termin wykonania B. Zadanie A nazywamy <b>poprzednikiem</b>, a B – <b>następnikiem </b>. \n",
|
|||
|
" \n",
|
|||
|
"<h4> Typy zależności </h4>\n",
|
|||
|
"<ul>\n",
|
|||
|
"<li> Zadania typu ZR (zakończenie-rozpoczęcie). Następnik (B) może się rozpocząć dopiero po zakończeniu poprzednika (A).\n",
|
|||
|
"<li> Zadania typu RR (rozpoczęcie-rozpoczęcie). Następnik (B) może się rozpocząć dopiero po rozpoczęciu poprzednika(A).\n",
|
|||
|
"<li> Zadania typu ZZ (zakończenie-zakończenie). Następnik (B) może się zakończyć dopiero po zakończeniu poprzednika (A).\n",
|
|||
|
"<li> Zadania typu RZ (rozpoczęcie-zakończenie). Następnik (B) może się zakończyć dopiero po rozpoczęciu poprzednika (A).\n",
|
|||
|
"</ul>\n",
|
|||
|
"</div>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"#### Ustawianie zależności między zadaniami w MS-Project\n",
|
|||
|
"\n",
|
|||
|
" * Aby określić zadania zależne, należy zaznaczyć dwa zadania i połączyć je (ikoną węzła).\n",
|
|||
|
" * Aby zmienić typ zależności między zadaniami, należy kliknąć na strzałeczkę łączącą zadania na wykresie Gantta.\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/zależności.png\" alt=\"Ustawianie zależności między zadaniami\" width=500px>\n",
|
|||
|
"<figcaption> Ustawianie zależności między zadaniami</figcaption>\n",
|
|||
|
"</figure>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 3.8. Ustawienie odstępów między zadaniami\n",
|
|||
|
"Pomiędzy zadaniami zależnymi można ustawić odstęp czasowy (tzw. zwłokę). Pełni on rolę bufora – aby zapewnić zakończenie zadania przed rozpoczęciem następnego.\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/odstęp czasowy.png\" alt=\"Ustawianie odstępów czasowych\" width=500px>\n",
|
|||
|
"<figcaption> Ustawianie odstępów czasowych</figcaption>\n",
|
|||
|
"</figure>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 3.9 Określenie zasobów w projekcie"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"<div class=\"alert alert-block alert-success\">\n",
|
|||
|
"<h3>Zasoby </h3> \n",
|
|||
|
" \n",
|
|||
|
"<b>Zasoby (ang. resources) </b> – wszystko, co jest potrzebne do wykonania projektu, a czego brak spowodowałby niewykonanie planu. \n",
|
|||
|
"W MS-Project wyróżniamy następujące typy zasobów:\n",
|
|||
|
"<ul>\n",
|
|||
|
"<li> Praca (ludzie lub komputery),\n",
|
|||
|
"<li> Materiał (np. energia),\n",
|
|||
|
"<li> Koszt (np. koszt podróży).\n",
|
|||
|
"</ul>\n",
|
|||
|
"</div> "
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"#### Zdefiniowanie zasobów w MS-Project\n",
|
|||
|
"\n",
|
|||
|
"Prawidłowe określenie wszystkich zasobów niezbędnych w projekcie umożliwia prawidłowe oszacowanie kosztów projektu.\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/zasoby 1.png\" alt=\"Zdefiniowanie zasobów w MS-Project\" width=400px>\n",
|
|||
|
"<figcaption> Definiowanie zasobów - arkusz zasobów</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/zasoby 2.png\" alt=\"Zdefiniowanie zasobów w MS-Project\" width=800px>\n",
|
|||
|
"<figcaption> Definiowanie zasobów - dane zasobów</figcaption>\n",
|
|||
|
"</figure>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 10. Ustawienie tygodniowego kalendarza czasu pracy dla poszczególnych osób (zasobów)\n",
|
|||
|
"\n",
|
|||
|
"W programie MS-Project możliwe jest zindywidualizowanie czasu pracy każdej osoby - lub ogólniej - dowolnego zasobu. \n",
|
|||
|
"\n",
|
|||
|
"Wykres Gantta reprezentujący harmonogram pracy dostosowuje się do czasu pracy zasobów. Na przykład wykonanie zadania szacowanego na 16 godzin przez osobę, która pracuje 8 godzin w tygodniu, będzie zajmowało dwa tygodnie w harmonogramie.\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/czas pracy zasobu.png\" alt=\"Czas pracy zasobu\" width=500px>\n",
|
|||
|
"<figcaption> Ustawianie indywidualnego czasu pracy - wybranie zasobu</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/czas pracy zasobu 2.png\" alt=\"Czas pracy zasobu 2\" width=500px>\n",
|
|||
|
"<figcaption> Ustawianie indywidualnego czasu pracy - zmiana tygodniowego planu pracy</figcaption>\n",
|
|||
|
"</figure>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 11. Przydzielenie zasobów do zadań\n",
|
|||
|
"Do kazego zadania powinny być przydzielone zasoby niezbędne do jego wykonania (w tym zasoby ludzkie). \n",
|
|||
|
"\n",
|
|||
|
" * Można przydzielić całość lub część zasobu do danego zadania (np. 50%). Będzie to oznaczało, że zasób jest zaangażowany w to zadanie tylko w określonym procencie swojego czasu.\n",
|
|||
|
" * Do jednego zadania można przydzielić kilka zasobów (np. osób).\n",
|
|||
|
" * Zasób (np. osoba) może być jednocześnie przypisany do kilku zadań.\n",
|
|||
|
" \n",
|
|||
|
" <br> </br>\n",
|
|||
|
"\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/przydzielanie zasobów.png\" alt=\"Przydzielanie zasobów do zadań\" width=500px>\n",
|
|||
|
"<figcaption> Przydzielanie zasobów do zadań</figcaption>\n",
|
|||
|
"</figure>\n"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 12. Sprawdzenie poprawności alokacji zasobów\n",
|
|||
|
"\n",
|
|||
|
"* Skoro zasób może być jednocześnie przypisany do kilku zadań, to można popełnić błąd, nadmiernie przeciążając zasób, tak że musiałby pracować więcej niż to wynika z jego kalendarza.\n",
|
|||
|
"\n",
|
|||
|
" * Obciążenie zasobów można sprawdzić następująco:\n",
|
|||
|
"\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/przeciążenie zasobów 1.png\" alt=\"Sprawdzenie przeciążenia zasobów\" width=400px>\n",
|
|||
|
"<figcaption> Sprawdzenie przeciążenia zasobów</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
" \n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/przeciążenie zasobów 2.png\" alt=\"Zasoby z nadmierną alokacją pracy\" width=800px>\n",
|
|||
|
"<figcaption> Zasoby z nadmierną alokacją pracy (zasoby przeciążone) - przykład</figcaption>\n",
|
|||
|
"</figure>\n"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 13. Wyeliminowanie przeciążeń zasobów\n",
|
|||
|
"\n",
|
|||
|
"Nadmierną alokację (przeciążenie) zasobów należy eliminować. Można to zrobić na dwa sposoby:\n",
|
|||
|
" * manualne odciążanie zasobów,\n",
|
|||
|
" * automatyczne bilansowanie zasobów.\n",
|
|||
|
" \n",
|
|||
|
"Manualne odciążanie zasobów może polegać na zmniejszeniu zaangażowania danego zasobu w zadanie:\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/odciążanie ręczne.png\" alt=\"Odciążanie ręczne\" width=500px>\n",
|
|||
|
"<figcaption> Zmniejszenie zaangażowania zasobu w zadanie</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"Automatyczne bilansowanie zasobu wykonywane jest przez MS-Porject na żądanie użytkownika.\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/automatyczne bilansowanie zasobów.png\" alt=\"automatyczne bilansowanie zasobów\" width=500px>\n",
|
|||
|
"<figcaption>Automatyczne bilansowanie zasobów</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"Efekt bilansowania może spowodować przesunięcie pracy w czasie, a co za tym idzie, opóźnienie realizacji projektu:\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/bilansowanie automatyczne 1.png\" alt=\"obciążenie zasobu przez bilansowaniem\" width=400px>\n",
|
|||
|
"<figcaption>Obciążenie zasobu przez bilansowaniem</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/bilansowanie automatyczne 2.png\" alt=\"obciążenie zasobu po bilansowaniu\" width=400px>\n",
|
|||
|
"<figcaption>Obciążenie zasobu po bilansowaniu</figcaption>\n",
|
|||
|
"</figure>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 14. Analiza ścieżki krytycznej\n",
|
|||
|
"\n",
|
|||
|
"Zadania leżące na ścieżce krytycznej nazywne są **zadaniami krytycznymi**.\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/zadania krytyczne.png\" alt=\"ścieżka krytyczne\" width=600px>\n",
|
|||
|
"<figcaption>Ścieżka krytyczna - przykład</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"W wyniku analizy ścieżki krytycznej można przykładowo:\n",
|
|||
|
" * zmienić zależności między zadaniami na ścieżce krytycznej (może to przyspieszyć realizację planu)\n",
|
|||
|
" * zwiększyć zapasy czasu dla zadań krytycznych (zwiększając bezpieczeństwo kosztem czasu)"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 15. Generowanie raportów\n",
|
|||
|
"MS-Project umożliwia generowanie różnego typu raportów. Umożliwiają one m.in:\n",
|
|||
|
" * obliczenie kosztów projektu,\n",
|
|||
|
" * wyznaczenie, jaki procent planu jest wykonany,\n",
|
|||
|
" * obliczenie zaangażowania poszczególnych osób w projekt,\n",
|
|||
|
" \n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/raport całościowy.png\" alt=\"raport całościowy\" width=600px>\n",
|
|||
|
"<figcaption>Przykład raportu całościowego</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/raport zasobów.png\" alt=\"raport zasobów\" width=600px>\n",
|
|||
|
"<figcaption>Przykład raportu zasobów</figcaption>\n",
|
|||
|
"</figure>\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/raport kosztów.png\" alt=\"raport kosztów\" width=600px>\n",
|
|||
|
"<figcaption>Przykład raportu kosztów</figcaption>\n",
|
|||
|
"</figure>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### 16. Poprawianie harmonogramu (czyli co robić, gdy harmonogram się „nie spina”)\n",
|
|||
|
"\n",
|
|||
|
"Następujące działania mogą pomóc w poprawieniu harmonogramu\n",
|
|||
|
"\n",
|
|||
|
"<br> </br>\n",
|
|||
|
"<figure> \n",
|
|||
|
"<img src=\"obrazy/modyfikacja planu.png\" alt=\"modyfikacja planu\" width=600px>\n",
|
|||
|
"<figcaption>Metody poprawiania harmonogramu</figcaption>\n",
|
|||
|
"</figure>"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"# Wnioski\n",
|
|||
|
" * Zarządzanie projektem jest procesem zindywidualizowanym\n",
|
|||
|
" * Gdyby tak nie było, to MS Project składałby się tylko z jednego przycisku "
|
|||
|
]
|
|||
|
}
|
|||
|
],
|
|||
|
"metadata": {
|
|||
|
"author": "Krzysztof Jassem",
|
|||
|
"email": "jassem@amu.edu.pl",
|
|||
|
"kernelspec": {
|
|||
|
"display_name": "Python 3",
|
|||
|
"language": "python",
|
|||
|
"name": "python3"
|
|||
|
},
|
|||
|
"lang": "pl",
|
|||
|
"language_info": {
|
|||
|
"codemirror_mode": {
|
|||
|
"name": "ipython",
|
|||
|
"version": 3
|
|||
|
},
|
|||
|
"file_extension": ".py",
|
|||
|
"mimetype": "text/x-python",
|
|||
|
"name": "python",
|
|||
|
"nbconvert_exporter": "python",
|
|||
|
"pygments_lexer": "ipython3",
|
|||
|
"version": "3.7.6"
|
|||
|
},
|
|||
|
"subtitle": "13. Planowanie prac badawczo-rozwojowych[wykład]",
|
|||
|
"title": "Przygotowanie do projektu badawczo-rozwojowego",
|
|||
|
"year": "2021"
|
|||
|
},
|
|||
|
"nbformat": 4,
|
|||
|
"nbformat_minor": 4
|
|||
|
}
|